Posted September 18, 2022 by kifirer
The allies system was a nightmare to make, as you can probably tell by how long it took for me to make a new devlog. School has also started, which might slow down development. I haven't worked much on anything other than the allies system. Detailed explanation below:
I changed the teams system so that it no longer uses numbers. So ITS is no longer "team 98", but "team ITS". This should make making more factions easier, as there's no longer a ~13 billion faction limit. This should also make modding easier, if a modding system is ever implemented. I also made a global script to handle common functions between objects, so instead of having a "isAlly" function on every object that has a team, I simply made one "isAlly" function and put it in that global script. So a ship can check if an artillery piece is an ally by simply checking if "Utils.isAlly(self,artilleryNode)" is true. I also made a "isTargetValid" function to reduce crashes, it works the same way.
I also found out about an AI system called GOAP (Goal-Oriented Action Planning), which seems like an ideal AI system to use in the boarding system. I'll keep using the simple state machine system for the ships, though.
In general, very little but extremely important progress has been made in the last few weeks. Ideally, the Unstable 2 update will release before December. That's all. As always, any suggestions/feedback is appreciated.