Friday, April 20, 2012

Structure Creation System

Everything is beginning to come to fruition, with the code settling down towards a more finalized state. Since starting this project I've learned magnitudes more about programming than previously.

Most importantly I made my object hierarchy much more shallow, moving more towards composition. In my case, this has lead to much smaller light weight classes and less bugs. I have implemented state machines (along with an event handler) rather than using a convulsive system of case blocks.

Demonstration of attaching two objects

Nothing could possibly be more rewarding than creation. Everyone has a little bit of a god complex laying latent. I wish to give the player the since of creation. There's a difficult balance to maintain here, it must be simple enough that anyone can use while still allowing for creativity flourish.

To achieve this there must be an adequate number of choices, each of which must effect the game in some manner. While effecting the game aesthetically is easy to achieve, I hope that the choices will effect how the game plays out.

For instance, there will be a treasure chest which collects coins giving the player 60 gold for the Golden Doubloon rather than the standard 50. The player can also purchase a coral reef which the user will have the ability to manipulate the shape via adding and changing 'branches' by choosing the node they connect to and the angle at which they come off of. A clever player might realize through particular coral reef designs, you could route more coins towards the treasure chest resulting in more gold.

Chaotic Motion Demonstrated Through Pendulum Chains In Box2D

I had the opportunity to use my existing game engine in a theoretical physics project. Since I was already implementing Box2D in my game I thought it would be fun to show chaotic motion in Box2D, using my structure creation system as a way to allow the player to build arbitrarily long pendulum chains. Each pendulum bob leaves a trail of dots in an Angry Birds-esque manner. It's not too much but it's a good demo for what I've been working on.