Changes

Jump to navigation Jump to search
957 bytes removed ,  00:49, 20 May 2023
add pictorial guide link
Line 4: Line 4:  
{|
 
{|
 
|-
 
|-
|style="border: 2px solid rgb(0, 116, 72); background: rgba(3, 160, 7, 0.1); padding: 1em;"| <big>'''[[Modding:Player Guide/Getting Started|Using mods]]'''</big><br />How to install SMAPI, use mods, and troubleshoot them. Includes the compatibility list.
+
|style="border: 2px solid rgb(0, 116, 72); background: rgba(3, 160, 7, 0.1); padding: 1em;"| <span style="font-size: larger;">'''[[Modding:Player Guide/Getting Started|Using mods]]'''</span><br />How to install SMAPI, use mods, and troubleshoot them. Includes the compatibility list.
 
|}
 
|}
   Line 12: Line 12:     
==Creating mods==
 
==Creating mods==
''Looking for something specific? Try [{{fullurl:Special:Search|ns570=1}} searching the <tt>Modding</tt> namespace].''
     −
Some of the known framework mods are listed below, along with their capabilities. The framework mods are written in C#, so you can make content packs for them without needing to know coding yourself. They are available on Nexus Mods.
+
Making mods can be broadly divided into two categories: SMAPI mods, which use C#, and content packs, which don’t require coding knowledge, just making json files. Usually it’s easiest to start with making content packs, especially if there’s a framework that already does what you want, and in general it's better to use frameworks whenever possible for compatibility reasons. 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]].
 
  −
'''Content Patcher (CP)''' | [https://www.nexusmods.com/stardewvalley/mods/1915/ CP Nexus Mods page]
  −
 
  −
* Edit or replace literally any game file in the [[Modding:Player Guide/Getting Started#Find your game folder|game's <tt>Content</tt> folder]].
  −
 
  −
* Add new files, alter images, data, and maps
  −
 
  −
* Send the player basic mail
  −
 
  −
* Create entire NPCs
  −
 
  −
* Make changes dynamic, conditional, seasonal, and/or configurable
  −
 
  −
'''Content Patcher Animations (CP-A)''' | [https://www.nexusmods.com/stardewvalley/mods/3853/ CP-A Nexus Mods page]
  −
 
  −
* Images patched in with CP can be animated
  −
 
  −
'''Json Assets (JA)''' | [https://www.nexusmods.com/stardewvalley/mods/1720/ JA Nexus Mods page]
  −
 
  −
* Create new objects, Big Craftables (placeable, machine-sized), crops, fruit trees, hats, weapons, shirts, pants, and boots
  −
* Specify crafting, cooking, and tailor recipes for new items
  −
* Specify gift tastes for new items
  −
* New item data and images can also be targeted with CP
  −
 
  −
'''Custom Furniture (CF)''' | [https://www.nexusmods.com/stardewvalley/mods/1254/ CF Nexus Mods page]
  −
* Make new items that behave as furniture (e.g. rotatable, or placeable on walls)
  −
 
  −
'''TMXL (and PyTK)''' | [https://www.nexusmods.com/stardewvalley/mods/1820/ TMXL Nexus Mods page] | [https://www.nexusmods.com/stardewvalley/mods/1726/ PyTK Nexus Mods page]
  −
* Necessary to add new map locations
  −
* Tons of map features like crop layers and water color
  −
* Can use high resolution textures anywhere, even unrelated to maps
  −
* Extreme custom tile actions and Lua scripting
  −
 
  −
'''Farm Type Manager (FTM)''' | [https://www.nexusmods.com/stardewvalley/mods/3231/ FTM Nexus Mods page]
  −
* Spawn stumps, debris, forage, ores, meteors, etc.
  −
* Spawn monsters and create new monster types based on existing ones
  −
 
  −
'''Custom Ore Nodes (CON)''' | [https://www.nexusmods.com/stardewvalley/mods/5966/ CON Nexus Mods page]
  −
* Make new types of rocks you can break to get items, either custom or from the base game
  −
 
  −
'''Shop Tile Framework (STF)''' | [https://www.nexusmods.com/stardewvalley/mods/5005/ STF Nexus Mods page]
  −
* Add to or change what's for sale in base game shops
  −
* Create new shops with a wide variety of conditions
  −
 
  −
'''Mail Framework Mod (MFM)''' | [https://www.nexusmods.com/stardewvalley/mods/1536/ MFM Nexus Mods page]
  −
* Additional mail features (CP can already do basic mail)
  −
* Custom backgrounds, repeat mail, wider variety of mail attachments, and the ability add multiple attachments to mail
  −
 
  −
'''Train Station (TS)''' | [https://www.nexusmods.com/stardewvalley/mods/6183/ TS Nexus Mods page]
  −
* Make new locations accessible without patching vanilla maps
  −
 
  −
'''Custom Music'''
  −
* Replace or add new music tracks and sound effects
  −
 
  −
'''Quest Framework (QF)'''
  −
* Create new custom quests of different types
      
{|
 
{|
 
|-
 
|-
|style="border: 2px solid rgb(0, 116, 72); background: rgba(3, 160, 7, 0.1); padding: 1em;"| <big>'''[[Modding:Modder Guide/Get Started|Creating SMAPI mods]]'''</big><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;"| <big>'''[[Modding:Content Patcher|Creating Content Patcher packs]]'''</big><br />How to create content packs for Content Patcher, including links to more info.
+
|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;"| <big>'''[[Modding:Translations|Translating mods]]'''</big><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.)
 
|}
 
|}
    +
* ''Looking for something specific? Try [{{fullurl:Special:Search|ns570=1}} searching the <samp>Modding</samp> namespace].''
 
* [[Modding:Help|Get help or ask question]]
 
* [[Modding:Help|Get help or ask question]]
 
* [[Modding:Community|Join the community]]
 
* [[Modding:Community|Join the community]]
Line 87: Line 31:  
===Advanced topics===
 
===Advanced 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]'''
 
* [[Modding:Common tasks|Common tasks (SMAPI mods)]]
 
* [[Modding:Common tasks|Common tasks (SMAPI mods)]]
* [[Modding:Specific Examples|Specific Examples (SMAPI mods)]]
   
* [[Modding:Editing XNB files|Editing XNB files]]
 
* [[Modding:Editing XNB files|Editing XNB files]]
 
* [[Modding:IDE reference|IDE reference]]
 
* [[Modding:IDE reference|IDE reference]]
 +
 +
* Game:
 +
** [[Modding:Audio|Audio]]
 +
** [[Modding:Custom languages|Custom languages]]
 +
** [[Modding:Console commands|Console commands]]
    
* NPCs:
 
* NPCs:
Line 100: Line 49:  
** [[Modding:Schedule data|Schedules]]
 
** [[Modding:Schedule data|Schedules]]
   −
* Objects:
+
* Item data:
** [[Modding:Big craftables data|Craftable items]]
+
** [[Modding:Items|Items]]
 
** [[Modding:Crop data|Crops]]
 
** [[Modding:Crop data|Crops]]
** [[Modding:Furniture data|Furniture]]
+
** [[Modding:Fruit trees|Fruit trees]]
** [[Modding:Hat data|Hats]]
  −
** [[Modding:Object data|Objects]]
  −
** [[Modding:Weapon data|Weapons]]
     −
* Other:
+
* Other content:
 
** [[Modding:Animal data|Animals]]
 
** [[Modding:Animal data|Animals]]
 
** [[Modding:Achievement data|Achievements]]
 
** [[Modding:Achievement data|Achievements]]
 
** [[Modding:Blueprint data|Blueprints]]
 
** [[Modding:Blueprint data|Blueprints]]
 
** [[Modding:Bundles|Bundles]]
 
** [[Modding:Bundles|Bundles]]
** [[Modding:Debug commands|Debug commands]]
   
** [[Modding:Farmer sprite|Farmer sprite]]
 
** [[Modding:Farmer sprite|Farmer sprite]]
 
** [[Modding:Festival data|Festivals]]
 
** [[Modding:Festival data|Festivals]]
 
** [[Modding:Fish data|Fish]]
 
** [[Modding:Fish data|Fish]]
 
** [[Modding:Fish Pond data|Fish Ponds]]
 
** [[Modding:Fish Pond data|Fish Ponds]]
** [[Modding:Location_data|Locations]]
+
** [[Modding:Location data|Locations]]
 
** [[Modding:Maps|Maps]]
 
** [[Modding:Maps|Maps]]
 
** [[Modding:Mail data|Mail]]
 
** [[Modding:Mail data|Mail]]
 
** [[Modding:Monster data|Monsters]]
 
** [[Modding:Monster data|Monsters]]
 +
** [[Modding:Movie theater data|Movie theater]]
 
** [[Modding:Recipe data|Recipes]]
 
** [[Modding:Recipe data|Recipes]]
 +
** [[Modding:Special orders|Special orders]]
 
** [[Modding:Weather data|Weather]]
 
** [[Modding:Weather data|Weather]]
   Line 143: Line 90:  
| [[Modding:Migrate to SMAPI 3.0|SMAPI 3.0]] || November 2019
 
| [[Modding:Migrate to SMAPI 3.0|SMAPI 3.0]] || November 2019
 
|-
 
|-
| [[Modding:Migrate to Harmony 2.0|Harmony 2.0]] || TBD
+
| [[Modding:Migrate to Stardew Valley 1.5|Stardew Valley 1.5]] || December 2020
 +
|-
 +
| [[Modding:Migrate to 64-bit on Windows|64-bit on Windows]] || May 2021
 +
|-
 +
| [[Modding:Migrate to Harmony 2.0|Harmony 2.0]] || July 2021
 +
|-
 +
| [[Modding:Migrate to Stardew Valley 1.5.5|Stardew Valley 1.5.5]] || November 2021
 +
|-
 +
| [[Modding:Migrate to SMAPI 4.0|SMAPI 4.0]] || ''upcoming''
 +
|-
 +
| [[Modding:Migrate to Stardew Valley 1.6|Stardew Valley 1.6]] || ''upcoming''
 
|}
 
|}
    
===See also===
 
===See also===
* [[User:Kdau#Notes on Android SMAPI modding]]
+
* Pixel art resources:
 +
** [https://sundrop.kvdk.net/art-guide Stardew Valley art style guide]
 +
** [https://pixeljoint.com/forum/forum_posts.asp?TID=11299&PID=139322 Pixel art tutorial on Pixel Joint]
 +
** [https://medium.com/pixel-grimoire/how-to-start-making-pixel-art-2d1e31a5ceab Pixel art guide on Medium]
 +
* Content pack resources:
 +
** [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]
 +
* Useful tools:
 +
** [https://smapi.io/mods SMAPI mod compatibility list] ([[Modding:Mod compatibility|you can edit it!]])
 +
** [https://smapi.io/log SMAPI log parser]
 +
** [https://smapi.io/json JSON validator]
 +
* [[User:Kdau#Notes on Android SMAPI modding|Kdau's notes on Android SMAPI modding]]
 +
* [[User:Dem1se#Getting_Started_with_Making_UIs| Dem1se's getting started guide on mod UIs]]
    
[[Category:Modding| ]]
 
[[Category:Modding| ]]
Line 153: Line 122:  
[[de:Modding:Index]]
 
[[de:Modding:Index]]
 
[[es:Modding:Índice]]
 
[[es:Modding:Índice]]
 +
[[fr:Modding:Index]]
 
[[pt:Modificações:Índice]]
 
[[pt:Modificações:Índice]]
 
[[ru:Модификации:Индекс]]
 
[[ru:Модификации:Индекс]]
 
[[zh:使用模组:目录]]
 
[[zh:使用模组:目录]]
249

edits

Navigation menu