UPDATE: Check my new blog about developing a Bullet Hell game at https://bhsalpha.blogspot.com/
Work continue apace on my Flash game, Bullet Hell Surive. Actually, no it doesn’t. What’s the opposite of apace? Slowly? That will do.
With most of my time now taken up by housedad duties, I’m finding it hard to get enough time to get things done on the project. Occasionally I get an uninterrupted hour or two and get lots done, but usually it’s half an hour here or there and once I’ve got settled in the time is half gone. I get the distinct impression that, were I working on this fulltime, I could have got to this stage in the project in a single week.
So what’s new in this version? First up is the level editor. You can use this to create your own levels, which you can then play. All of the levels in the game are built using this editor, so it’s a complete toolset. I’m currently in two minds as to whether I should include the editor in the final version of the game or not. On the one hand, it’s great to allow end users to create and share their own levels. On the other, it requires a fair amount of work to make it solid enough and straight forward enough for them to get to grips with. There’s also the whole back end code, which isn’t something that I have much experience with. My current plan is to keep the editor at a level where I will use it to create my own levels but not to worry about it too much. The thinking here is that I can continue to use it to edit and tweak my levels, and then if I do decide to include it in the final release it shouldn’t be too much work to polish it up.
As well as the level editor, I’ve also recently improved the placeholder assets a bit. Every sprite, every level and every piece of audio is still placeholder – it’s just that they’re a bit better now. I strongly believe that prototypes can almost always work with just simple placeholders. I’d even say that adding anything other than really basic assets at an early stage actually detracts from the game mechanics that you are trying to prove. But I do think there comes a time when improving these assets can help to improve the feel of the game. I think of this as staged delivery: You start with simple gameplay and very simple assets, just as in the first build of BHS. But once you improve the gameplay, you also need to improve the tools (ie: the editor) the game wrapper (eg: level select and game ceremonies) and the assets. If you don’t then you end up with a game that is unbalanced and inconsistent and, as much as we like to believe otherwise, I think we find it difficult to look at such a game objectively. I think that people also have a tendency to work on the areas of hobby projects that they like most, leaving the other areas far behind. This is all fine until you get to the end of the project and remember that you’ve still got to write all that stuff anyway, but now there’s not going to be any respite. And maybe that’s why so many promising looking hobby projects never get finished?
Apart from the level editor then, the two areas in the game that have recently been added are the sound effects (all created by Dr Petter’s excellent audio tool, SFXR) and the scrolling background. Both are fairly simple, it took only an hour or so to complete both, but both massively improve the atmosphere of the game. I’ve also made an effort to put some decent levels together. There are only six in there at the moment, but they follow a simple learning curve that shows you the basics of the game. Again, I think this has made a big difference to the feel of the game without needing much, if any, new code.
Next up I would like to start tweaking the gameplay. I’ve reduced the time of a level down to 20 seconds from the 30 seconds of the last build. Remember that in the original PC prototype it was 60 seconds. 20 feels much better, but I’m still not convinced that it shouldn’t be a little longer. I’m also going to play around with some new enemy weapon types – probably some homing weapons and laser beams. I’d also like to start working on the graphics and the audio, and that’s where I need to start getting the other team members involved ;)