A lot of blueprinting went by and also a lot of thinking and finding solutions. Obstacle avoidance should be easy, but add variable object size and physics simulation, and the potential for bugs multiplies tenfold. I managed to create a simple obstacle avoidance, which is far from perfect, but an AI ship can now check if there is an obstacle to its target, and if there is, fire several rays in a star pattern to find the closest open space it can go to and then resume its path to target. I will leave AI at that for now because it was pretty hardcore.
I started the mission system and made basic mission managing. It’s very simple and linear, but there can be as many missions as needed in a level. At the start of the level, Event Dispatchers are bound for Starting, Advancing and Completing the Mission. These will manipulate the array of objectives, and see what their state is. The events can be called by any actor, but I think the Level Blueprint will do most mission scripting, where references of level triggers can be easily grabbed. This was pretty interesting to do, but I’ve seen enough blueprints to last a lifetime now. I’m itching for some art now =D
After completing the racing course (you can see a video of it here https://www.youtube.com/watch?v=e_vIEi0v7h0 ) I decided to take my Patreon account down. In spite of having steady supporters from beginning to end, it wasn’t enough to stop me from worrying about bills and so I had to keep paying attention to commissions too. In effect, Patreon was straining me to complete some kind of content every month in addition to commissions and that workload wasn’t realistic nor it provided me with a large enough engaging audience, nor I could keep them interested for long. So, now I can work on the core game without worrying about dealing finished content to supporters.
About development proper: the good news is that now I have a pretty tidy spaceship class with all the core mechanics completely independent from the Controller class. This means that the Player should be able to pilot and fight in any spaceship in a level. Then I had to revamp other systems like the targeting system and docking. A complete revamp of the turret class was also made to be more clean, faster and to ensure that their convergence accounts for target distance and the currently selected camera. The navigation seen in the racing video is now called Drone mode (forward orientation controlled by mouse) it makes it easier to navigate in smaller ships without turrets.
With all that said, I wonder if in a real mission, the ship won’t be too hard to pilot, which probably begs for a tight control of a ship’s maximum speed and UI feedback of movement. So now I’ll be moving onto basic AI functions: seeking/fleeing, targeting and shooting, because shooting against drooling AI isn’t fun =)