Line 1: |
Line 1: |
| ←[[Modding:Index|Index]] | | ←[[Modding:Index|Index]] |
| | | |
− | ==Go open-source==
| + | A mod is '''open-source''' if its code is public and covered by [https://choosealicense.com/ an open-source license]. Open-source is core to a healthy mod ecosystem, and modders are highly encouraged to make their mods open-source (both SMAPI mods and content packs). |
− | ===Common questions===
| + | |
| + | ==Common questions== |
| ; What is 'open source'? | | ; What is 'open source'? |
| : Open source means your mod's code is public and others can change ''a copy of it'' subject to a license you choose. You still have full control of your original code and mod pages; nobody can change those without your approval! However, open source lets others create unofficial updates or publish their own versions. | | : Open source means your mod's code is public and others can change ''a copy of it'' subject to a license you choose. You still have full control of your original code and mod pages; nobody can change those without your approval! However, open source lets others create unofficial updates or publish their own versions. |
Line 15: |
Line 16: |
| : Nope! Although content packs aren't compiled, other modders can't legally make changes without a code license. Note that 'permissions' options on sites like Nexus are legally iffy (e.g. who has copyright on derivatives? Can derivatives be relicensed?), so it's a good idea to have a code license for content packs too. That also lets other modders contribute pull requests and updates. | | : Nope! Although content packs aren't compiled, other modders can't legally make changes without a code license. Note that 'permissions' options on sites like Nexus are legally iffy (e.g. who has copyright on derivatives? Can derivatives be relicensed?), so it's a good idea to have a code license for content packs too. That also lets other modders contribute pull requests and updates. |
| | | |
− | ===First-time setup===
| + | ==First-time setup== |
| This looks like a lot of steps, but don't worry: it's pretty straightforward. If you need help, come ask in [[Modding:Community#Discord|#modding on the Stardew Valley Discord]]. :) | | This looks like a lot of steps, but don't worry: it's pretty straightforward. If you need help, come ask in [[Modding:Community#Discord|#modding on the Stardew Valley Discord]]. :) |
| | | |
− | ====Create the Git repository====
| + | ===Create the Git repository=== |
| First, let's create the public repository which will contain your code. | | First, let's create the public repository which will contain your code. |
| | | |
Line 40: |
Line 41: |
| That's the hard part done! Now you have a repository on GitHub that's synced with the folder on your computer. | | That's the hard part done! Now you have a repository on GitHub that's synced with the folder on your computer. |
| | | |
− | ====Add the mod files====
| + | ===Add the mod files=== |
| Next, let's add your files to the repository. | | Next, let's add your files to the repository. |
| | | |
Line 54: |
Line 55: |
| | | |
| That's it: all your files will appear on GitHub. Your mod is now open-source! | | That's it: all your files will appear on GitHub. Your mod is now open-source! |
| + | |
| + | ==Making changes== |
| + | The steps above are all first-time setup. When you want to make changes, it's much easier: |
| + | |
| + | # Edit your code in the repository folder. |
| + | # In SourceTree, commit and push your changes (see step 4 in the previous section). |
| | | |
| [[Category:Modding]] | | [[Category:Modding]] |