Line 22: |
Line 22: |
| *:* <p>'''Scenario A: you're new to programming.'''<br />Many mod developers start with little or no programming experience. You can certainly learn along the way if you're determined, but you should be prepared for a steep learning curve. Don't be too ambitious at first; it's better to start with a small mod when you're figuring it out. It's easy to become overwhelmed at first and give up. The modding community is very welcoming, so don't be afraid to ask questions!</p><p>Since mods are written in C#, it's a good idea to get acquainted with it first. [https://mva.microsoft.com/en-us/training-courses/c-fundamentals-for-absolute-beginners-16169 ''C# Fundamentals for Absolute Beginners''] will walk you through the basics of C# needed to write SMAPI mods, from the basic concepts to event-driven programming (which is what SMAPI mods use).</p> | | *:* <p>'''Scenario A: you're new to programming.'''<br />Many mod developers start with little or no programming experience. You can certainly learn along the way if you're determined, but you should be prepared for a steep learning curve. Don't be too ambitious at first; it's better to start with a small mod when you're figuring it out. It's easy to become overwhelmed at first and give up. The modding community is very welcoming, so don't be afraid to ask questions!</p><p>Since mods are written in C#, it's a good idea to get acquainted with it first. [https://mva.microsoft.com/en-us/training-courses/c-fundamentals-for-absolute-beginners-16169 ''C# Fundamentals for Absolute Beginners''] will walk you through the basics of C# needed to write SMAPI mods, from the basic concepts to event-driven programming (which is what SMAPI mods use).</p> |
| *:* '''Scenario B: you already have programming experience.'''<br />You should be fine. Programming experience in C# or Java will make things easier, but it isn't critical. If you're unfamiliar with C#, you can skim through [https://mva.microsoft.com/en-us/training-courses/c-fundamentals-for-absolute-beginners-16169 ''C# Fundamentals for Absolute Beginners''] to fill in any gaps. | | *:* '''Scenario B: you already have programming experience.'''<br />You should be fine. Programming experience in C# or Java will make things easier, but it isn't critical. If you're unfamiliar with C#, you can skim through [https://mva.microsoft.com/en-us/training-courses/c-fundamentals-for-absolute-beginners-16169 ''C# Fundamentals for Absolute Beginners''] to fill in any gaps. |
− |
| |
− | * '''What do I need?'''
| |
− | *: Before you start:
| |
− | *:# Read the [[Modding:Index#Using mods|intro for players]] which explains the basic modding concepts.
| |
− | *:# Install Stardew Valley and [[Modding:Installing SMAPI|SMAPI]].
| |
− | *:# Install...
| |
− | *:#* on Windows: [https://www.visualstudio.com/vs/community/ Visual Studio 2017 Community] (when the installer asks about workloads, enable ''.NET Desktop Development'').
| |
− | *:#* on Linux: [http://www.monodevelop.com/ MonoDevelop].
| |
− | *:#* on Mac: [https://www.visualstudio.com/vs/visual-studio-mac/ Visual Studio 2017 for Mac].
| |
− | *:# If you're not familiar with Visual Studio 2017 (on Windows/Mac) or MonoDevelop (on Linux), [[Modding:IDE reference]] explains how to do the important stuff you need for this guide.
| |
| | | |
| * '''<span id="help">Where can I get help?</span>''' | | * '''<span id="help">Where can I get help?</span>''' |
| *: The Stardew Valley modding community is very welcoming. Feel free to [https://discord.gg/kH55QXP come chat on Discord] or [http://community.playstarbound.com/forums/mods.215/ post in the forums]. | | *: The Stardew Valley modding community is very welcoming. Feel free to [https://discord.gg/kH55QXP come chat on Discord] or [http://community.playstarbound.com/forums/mods.215/ post in the forums]. |
| + | |
| + | ==Requirements== |
| + | Before you start: |
| + | <ol> |
| + | <li>Read the [[Modding:Index#Using mods|intro for players]] which explains the basic modding concepts.</li> |
| + | <li>Install Stardew Valley.</li> |
| + | <li>Install [[Modding:Installing SMAPI|SMAPI]].</li> |
| + | <li>Install the IDE (''integrated development environment''): |
| + | {| class="wikitable" |
| + | |- |
| + | ! OS |
| + | ! what to install |
| + | ! notes |
| + | |- |
| + | | Linux |
| + | | [http://www.monodevelop.com/ MonoDevelop] |
| + | | |
| + | |- |
| + | | Mac |
| + | | [https://www.visualstudio.com/vs/visual-studio-mac/ Visual Studio 2017 for Mac] |
| + | | |
| + | |- |
| + | | Windows |
| + | | [https://www.visualstudio.com/vs/community/ Visual Studio 2017 Community] |
| + | | When the installer asks about workloads, enable ''.NET Desktop Development''. |
| + | |} |
| + | If you're not familiar with Visual Studio 2017 (on Windows/Mac) or MonoDevelop (on Linux), [[Modding:IDE reference]] explains how to do the important stuff you need for this guide.</li> |
| + | </ol> |
| | | |
| ==Create a mod== | | ==Create a mod== |