Last of 2008
I just wrote my last lines of Python for this year. I haven't got to particle explosions (I'm going to try lepton for those) or other interesting bits yet, and the code doesn't actually even run at the moment... as usual, one thing led to another while working on small fixes, and I'm just about to finish a huge reorganization and cleanup of the entity system. The good thing is, even if I decide to ditch Artillery Brawl, this code will be useful for other projects, as it's starting to come together really nicely.
One of the biggest changes has been the move of messaging from individual components to the entity itself. I might write about the details later when I've finished my changes and actually used the system for a while, but I can already tell it has reduced dependencies between parts of the code; always a good thing. The biggest test for my entity system will come when I start to implement some more complex gameplay, but so far, so good.
See you next year, happy 2009 everyone!
Holiday coding
As promised (to myself and readers), I have continued game development during the holidays. Not much, mind you, I've mostly been enjoying the chance of being lazy for a change, but it's something, and I hope I don't get any more months-long breaks in the near future.
I have been working on Artillery Brawl, with stuff that was left incomplete when I stopped working on it in July. I haven't started on prototyping shooting yet, because I have some related stuff to do first. I have completely changed the units are represented in the code. Instead of a single entity for a unit, there are now several entities for the different parts of a unit; body, turret, later tracks and wheels. To keep all these together, I made a component (an entity is composed of components) that groups several entities together, so I can still essentially handle the unit as a single entity. At least to me, it's a very clean solution, as all these features are in self-contained components, with the entity only containing components which it doesn't know about. At some point, I'm going to have to write about my final entity system in detail, but first I need to actually finish it...
After this change is complete, I will probably work on fixing shell collisions and then move on to particle systems, camera improvements and other stuff related to trying to make shooting fun.
Happy belated holidays, everyone!
Business as usual
It's time to poke a hole in the wall of silence. I just finished selecting university courses for the next semester, which is going to be a bit special. Special, because if I pass every course, I will have finished all the courses needed for my Master's degree! I still have a thesis to write, but it's still a great – and strange – feeling. I have some interesting courses coming up, including pattern recognition, digital image processing and knowledge discovery (which is about data mining, visualization and such).
Since this will hopefully be my last year at the university, and for other reasons, I have been quite busy. As such, I have had to make some sacrifices, such as game development (as evidenced by the lack of updates to this blog). Again. But since I will be less busy after I finish my studies for this Autumn, which should happen next week, I will be free to continue working on Artillery Brawl, and hope I will be at least slightly less busy during the next semester! After all, it would be nice to have something in my portfolio to show when I start applying for jobs to write my thesis at.
I also promise to try and get the card game I wrote about playable in the near future.
In other news, Python 3.0 was released while I was away. The improvements, especially to Unicode handling, look really interesting and I would really like to switch, but unfortunately, I can't... None of the libraries I'm using for Artillery Brawl - setuptools, pyglet and pymunk – have been updated for Python 3.0 yet. There's not much I can do except wait, so for now, I'm sticking with Python 2.6.
