I've been doing some touching up on Siphon Spirit to get it ready for the demo, and it's a lot like I'm working in the past. I got the game working quite some time ago, and made March to the Moon while I was waiting. March to the Moon was made with the FlatRedBall engine. I decided to go the engine route because I was concerned that I wasn't using screens for Siphon Spirit and the whole game was basically in a single file with switch statements checking what 'screen' was currently active and running the related update and draw functions.
Using FlatRedBall taught me a lot about how to use the current game state and a lot of other things. I was happy with it for March to the Moon, but near the end of development I started to get tired of it. When you made changes with the program for controlling entities and screens, Glue, it would delete the related file and recreate it with the changes. But for me, sometimes it would throw an error telling me that it couldn't make the file. But it had already deleted the file first. I would lose a good chunk of time because I developed most of it on the train with no web access so I couldn't just grab my latest backed up copy. Then I had issues with how slow it was loading stuff in on the Xbox. March to the Moon isn't a very intensive game, but every time I did something for the first time it would take time to load it all into memory, freezing the game during the process. I had to make a new loading screen which I had to just loop for 14 frames after each group of objects loaded their art so that the rats showing the progress would actually move. This baffled me, but the lead developer of FlatRedBall wasn't part of the creator's club anymore and couldn't run ccgame files on his Xbox. I started making the Japanese game with FlatRedBall, but had issues with getting Japanese to display. I eventually gave up and started building my own set of tools to help me make games. It's slowed down the development time on the Japanese game, that's for sure, but now that it's becoming more mature it's so much nicer to use.
Siphon Spirit hasn't taken much from it yet. I did go through and make everything into their own separate screens, but haven't changed much else. So when I do go back and work on Siphon Spirit I need to remember that I don't have a Sprite class to handle positioning, and when I do position things it needs to be placed at the top right of the image instead of the center. I don't have a nice text manager, but I can still write text to the screen. Development's come easier than ever for me with these nice new tools. We have a smaller puzzle game being planned out to pull people into looking at Siphon Spirit, and I'm excited to get his art from it and see how quickly I can build it into a full-fledged game.
This has been on my mind recently because I have been working on a new screen for Siphon Spirit. It is going to be the most complicated one in the entire game by far. More news on that next week.