I'm looking into making a mod for the game based on the Terran Confederacy of Aligned Systems from Ralts Bloodthornes Behold Humanity book series. my question is where do i start? a lot of the resources on here appear a decade or so old and i worry about development since then. I have no coding experience but want to learn and have some big plans for the mod. UAF really inspired me and i want to learn something new this year and this is it. Also if you haven't checked out the series its amazing!
I recently have similar questions. So I give you some links on tutorials I used.
First of all you should at least read Intro to Modding on wiki:
https://starsector.wiki.gg/wiki/Intro_to_ModdingIt goes over most basics and how to make your mod files.
Secondly your most definitely need to set up IDE. There as very good tutorial on Wiki:
https://starsector.wiki.gg/wiki/IntelliJ_IDEA_Setup - it's up to date, so no problems there
After to create basic faction there is few sources:
.faction file overview:
https://starsector.fandom.com/wiki/.faction_File_Overview#crestGuide on forums:
https://fractalsoftworks.com/forum/index.php?topic=1282.0Other than that you can use other mod code as example including UAF. Simply extract .jar using any zip manager and you can look on all code files. Another way is use base game code to do the same. It packed in starsector-core/starfarer.api.zip.
Note: there two types of file structures: one defined outside jar, which used by game only if all paths and files properly named. It's where game have most non java files, general data and graphics.
And where jars, pretty much only java code goes there and it there most interactive stuff originates from. For it you NEED IDE to properly save on pack jars. Advantage is you can sort files as you want, because jar you create directs game there it needed.
Outside of it, if you have no experience with coding I recommend to watch at least some tutorial on java code structure and coding. Game uses mostly custom functions, but there still basics you should understand to have ability to sparsely understand what given code tries to do.
That should give you directions to follow. Also always check for typos in code, especially outside IDE.
edit: first faction tutorial is not what I actually used. Instead I used code from other topic:
https://fractalsoftworks.com/forum/index.php?topic=29225.0 - their code easier to understand and i think works better. It's what helped my to make faction appear (after i fixed typo in .faction file).