Line 12: |
Line 12: |
| | | |
| ==Creating mods== | | ==Creating mods== |
| + | |
| + | Making mods can be broadly divided into two categories: C# mods and content packs (formatted text files that rely on a framework C# mod). Content packs can make new NPCs, edit maps, add new items, add shops, and more, while C# mods can change fundamental game mechanics. Usually it’s easiest to start with making content packs, since you don't need to learn how to program in C#. If you're confused and want to look at a picture of what kinds of modding is possible, see [[Modding:Modder Guide/Get Started/Pictorial Guide]]. |
| + | |
| {| | | {| |
| |- | | |- |
− | |style="border: 2px solid rgb(0, 116, 72); background: rgba(3, 160, 7, 0.1); padding: 1em;"| <span style="font-size: larger;">'''[[Modding:Modder Guide/Get Started|Creating SMAPI mods]]'''</span><br />How to create SMAPI mods, with tutorials and documentation. This includes the full SMAPI API + event reference. | + | |style="border: 2px solid rgb(0, 116, 72); background: rgba(3, 160, 7, 0.1); padding: 1em;"| <span style="font-size: larger;">'''[[Modding:Content pack frameworks|Creating content mods with jsons]]'''</span><br />How to create content packs for frameworks like Content Patcher. |
| |- | | |- |
− | |style="border: 2px solid rgb(0, 116, 72); background: rgba(3, 160, 7, 0.1); padding: 1em;"| <span style="font-size: larger;">'''[[Modding:Content pack frameworks|Creating content packs]]'''</span><br />How to create content packs for frameworks like Content Patcher. | + | |style="border: 2px solid rgb(0, 116, 72); background: rgba(3, 160, 7, 0.1); padding: 1em;"| <span style="font-size: larger;">'''[[Modding:Modder Guide/Get Started|Creating SMAPI mods with C#]]'''</span><br />How to create SMAPI mods, with tutorials and documentation. This includes the full SMAPI API + event reference. |
| |- | | |- |
| |style="border: 2px solid rgb(0, 116, 72); background: rgba(3, 160, 7, 0.1); padding: 1em;"| <span style="font-size: larger;">'''[[Modding:Translations|Translating mods]]'''</span><br />How to contribute mod translations for any language supported by the game. (And for modders, how to enable and request translations.) | | |style="border: 2px solid rgb(0, 116, 72); background: rgba(3, 160, 7, 0.1); padding: 1em;"| <span style="font-size: larger;">'''[[Modding:Translations|Translating mods]]'''</span><br />How to contribute mod translations for any language supported by the game. (And for modders, how to enable and request translations.) |
Line 26: |
Line 29: |
| * [[Modding:Open source|Open source]] | | * [[Modding:Open source|Open source]] |
| | | |
− | ===Advanced topics=== | + | ===Specific topics=== |
| * '''[[Modding:Modder Guide/APIs|SMAPI API reference]]''' (also on the sidebar in the "Creating SMAPI mods" guide above) | | * '''[[Modding:Modder Guide/APIs|SMAPI API reference]]''' (also on the sidebar in the "Creating SMAPI mods" guide above) |
− | * '''[https://stardewmodding.miraheze.org Modding tutorials wiki]''' | + | * '''[https://stardewmodding.wiki.gg Modding tutorials wiki]''' |
| * [[Modding:Common tasks|Common tasks (SMAPI mods)]] | | * [[Modding:Common tasks|Common tasks (SMAPI mods)]] |
| * [[Modding:Editing XNB files|Editing XNB files]] | | * [[Modding:Editing XNB files|Editing XNB files]] |
Line 34: |
Line 37: |
| | | |
| * Game: | | * Game: |
| + | ** [[Modding:Modder Guide/Game Fundamentals|Game fundamentals]] |
| ** [[Modding:Audio|Audio]] | | ** [[Modding:Audio|Audio]] |
| ** [[Modding:Custom languages|Custom languages]] | | ** [[Modding:Custom languages|Custom languages]] |
| ** [[Modding:Console commands|Console commands]] | | ** [[Modding:Console commands|Console commands]] |
| + | ** {{upcoming|version = 1.6|content = [[Modding:World map|World map]]|inline=1}} |
| + | ** {{upcoming|version = 1.6|content = [[Modding:Game state queries|Game state queries]]|inline=1}} |
| + | ** {{upcoming|version = 1.6|content = [[Modding:Item queries|Item queries]]|inline=1}} |
| + | ** {{upcoming|version = 1.6|content = [[Modding:Trigger actions|Trigger actions]]|inline=1}} |
| + | ** {{upcoming|version = 1.6|content = [[Modding:Tokenizable strings|Tokenizable strings]]|inline=1}} |
| + | ** {{upcoming|version = 1.6|content = [[Modding:Shops|Shops]]|inline=1}} |
| + | ** {{upcoming|version = 1.6|content = [[Modding:Custom Farms|Farm map]]|inline=1}} |
| | | |
| * NPCs: | | * NPCs: |
Line 68: |
Line 79: |
| ** [[Modding:Special orders|Special orders]] | | ** [[Modding:Special orders|Special orders]] |
| ** [[Modding:Weather data|Weather]] | | ** [[Modding:Weather data|Weather]] |
| + | |
| + | * Specialized (normally linked from other pages): |
| + | ** {{upcoming|version = 1.6|content = [[Modding:Common data field types|Common data field types]]|inline=1}} |
| | | |
| ===Migration guides=== | | ===Migration guides=== |
Line 107: |
Line 121: |
| * Content pack resources: | | * Content pack resources: |
| ** [https://docs.google.com/spreadsheets/d/1CpDrw23peQiq-C7F2FjYOMePaYe0Rc9BwQsj3h6sjyo The great ID spreadsheet] | | ** [https://docs.google.com/spreadsheets/d/1CpDrw23peQiq-C7F2FjYOMePaYe0Rc9BwQsj3h6sjyo The great ID spreadsheet] |
− | ** [https://stardewmodding.miraheze.org/wiki/Custom_NPC_Tiles Custom NPC festival tile positions] | + | ** [https://stardewmodding.wiki.gg/wiki/Custom_NPC_Tiles Custom NPC festival tile positions] |
| * Useful tools: | | * Useful tools: |
| ** [https://smapi.io/mods SMAPI mod compatibility list] ([[Modding:Mod compatibility|you can edit it!]]) | | ** [https://smapi.io/mods SMAPI mod compatibility list] ([[Modding:Mod compatibility|you can edit it!]]) |