Hey, congrats on starting your modding journey!
I also just started creating mods, and though I had a little bit of coding experience, it was pretty sporadic/basic. After considering several mod ideas I had, I found starting with a dialogue mod to be the easiest and best place to start, for several reasons:
- It doesn't require any assets (i.e., art) to be created.
- At the same time, it's helped me learn things like where some of those assets are, and gain a basic understanding of how ContentPatcher works (which is one of the two main SDV modding tools).
- It also doesn't require you to understand any complex code/coding logic. But again, you'll still learn some coding essentials with JSON, like making sure there are commas at the end of your lines, close and open brackets in the right place (and always a pair), and checking that your key/value name pairings are all spelled correctly/the same if you're trying to refer to them for decisions, such as you would when writing a question in the dialogue.
- It can start out very simple and get more complicated as you go. For example, perhaps your very first mod is just changing the intro line your favourite character has. You could create a dialogue mod that only does that, load it into the game, start a new testing save, go say hi to that character and get immediate confirmation (and a great feeling!) that it worked . Then, you can start modding their dialogue based on season, day of the week, and relationship level. You could eventually mod their festival dialogue to have it change from year to year, or their marriage dialogue. I'm already planning to see if it's possible to load a different set of dialogue on days when it's raining. It's easy to start small with dialogue mods and go bigger as you learn!
There's a tool that can also help check your code and tell you if any lines are going to cause issues: it's called
JSON validator. I'd highly recommend using it so you don't run into any errors with SMAPI loading in your mod. It can be a bit confusing if you're new to code, because the errors it will tell you aren't always in plain language. But it will tell you what line the error is in, and again, usually the issues I've run into is that I forgot to add a comma after a line, or a closed bracket, or I've misspelled something in a name. The ContentPatcher documentation I linked above should be fairly helpful in getting you off to a good start, and there's a section on the wiki about
modding dialogue as well.
Finally - whatever mod you choose to begin with, I'd recommend downloading a mod that does similar things and taking a look at what it contains. You can also take a look at the original SDV files after unpacking them (again, explained in the ContentPatcher documentation) - though be careful not to edit them. Using other mods for reference can be invaluable as you begin learning how things are done and how the code is written.
Best of luck and I hope you enjoy it!