6/13/14

Akradion Update 3

With another productive week over, I'm feeling pumped! I haven't felt this good about a project in a very long time, maybe even as far back as the old rpg project. With any luck, you should be able to expect a demo some time in the near future. If it doesn't come next week, it'll almost certainly come the week after.

Changelog:

Akradion

Added Powerups! Currently there are 3: extra life, speed up, and speed down.

Added support for multiple levels! Clearing a level of bricks now takes you to the next after a short delay.

Made things a little bit prettier.

DFEngine

When creating physics components, you can now set collision masks. Basically, this lets you control what the entity can/can't collide with.

Added timer components.

Added some basic sound support. No streaming yet, and only wav files can be loaded, but it's a start!

Added sprite support. They're not as advanced as they were in AMAZE yet.

All game assets(sprites, fonts, audio, etc) are now loaded from lua scripts.

Timers:

Now that objects can have timer components, a whole bunch of new possibilities have opened up. Also of note is that switching from AMAZE's 'delay' function to an asynchronous setup is intentional. Had a system like this been in place to begin with, that one crash bug from the factory stages would never have existed. Of course, this engine alone is a massive improvement over anything AMAZE was capable of, at least on the scripting side of things. Anyway, I've started using timers to try and add some more animations to things. Bricks now 'pop' a little when hit, for instance.

Sound:

Another feature that's improved the game tremendously is the addition of sound effects. I've started putting sounds in early, because putting things off in AMAZE was a terrible, terrible idea. Specifically, it made adding new aesthetic features to the game's levels extremely difficult. Rather than naturally adding things as I went along, I ended up having to go back through every level just to add these sorts of things, and then test them all again.

Finally, I should address the asset files. In the previous iteration of DFEngine, I spent lots of time and energy designing specialized asset files for my games, and yet this time around I currently only have support for regular image/audio/font files. In short, the specialized assets won't be going away, but I've realized that it really makes no sense to require them. I won't be adding them during Akradion's development, but they'll probably get put in some time this summer. The problem with only having specialized assets is that every time you make even the smallest change to the base file, the whole thing needs to be recompiled. This makes rapid development and testing much slower than it would otherwise be. Thus, I think it's best to use regular files when working on a game, then package them up once I'm ready to put up a build. That way, I can get the best of both worlds.