Quickie status update

Welcome again. Almost two months without any update, you should all blame me. Unfortunately I’ve been busy coding, writing, struggling with clients, work and everyday crap we all know too good about. I know I promised describing MOO2 graphics formats, but it won’t happen this time. Next time maybe. After somewhat off-topic last post I decided not to do this again, however I’m not going to abandon such rants, however shorter, from time to time. 😉 But I promise it won’t be anytime soon.

My Content Management System for websites stalled at version 0.0.86, but when I’ve taken a look at it I decided not to continue it further. It wasn’t meant to mix dynamic javascript with PHP5 and because of some requests from my client I had to introduce complex hacks to the code. That broke down universality principle I had in mind writing this software. I thought, ok after I finish it I’ll be able to cleanup the code and align it again with this principle. But it turned out that if I had to sacrifice time for code cleanup I’d rather take pieces of good code and rewrite the rest from scratch. This will take much less time, simplify the system and make it truly universal. After almost two years of writing this CMS I have learned few things that could be used for improved development process and make it much better from the programmers and users perspective. I don’t want to go into details, but now I have much better understanding of how should I create various managers mostly the plugin subsystem. Also some of the complex process handling within the system could be simplified by a factor of few times with introduction of truly Model-View-Controller programming paradigm, despite the fact of non-looping nature of the system; introduction of fully XML’ized structure for layouts, articles, configuration and plugin description files; and perhaps even introduction of simple home-brewed application server in Python or C++ that would make PHP5-only code dumb thin-client running on top of application server middleware. Of course this would mean writing from scratch large portions of the code, but speaking in RPG terminology… I’ve gained few experience points along the way. After all I’m still learning good programming techniques and methods. I expect another half year to create something useful, but I hope it’ll be worth it.

Besides the fact of coding my CMS system, I’ve been in contact with few programmers for quite some time and I must say that experience and idea sharing is taking it’s toll. I’ve had few small side-projects that I have completed in the meantime. But nothing worth mentioning. However my dream was to create a game to learn, to make something creative and to have just pure fun. For a few years I’ve been thinking about this, but being lazy and in my opinion quite inexperienced I’ve never completed any game projects. But the time has come that I’ve decided to seriously give it a try and write a simple game. Due to lucky coincidence, I’ve found really cool graphics library named Rabbyt for Python. It is an accelerated 2D graphics library that uses OpenGL and PyGame for rendering, but it’s so easy to use and powerful, despite the fact it’s version is 0.0.4 only, that I’ve decided to give it a try. And because I’m literally in love with Python programming language, yesterday I’ve began prototyping the engine for simple 4X game. 😀 Oh yes. I love the genre and why not mix pure programming fun with gaining new experience points. After all writing games is the best way to do it.

The game has a working title Galaxy Lords (I know it’s not very cool and fancy, but I couldn’t come up with anything better for the time being). It will be 2D game with somewhat MOO2-ish look and feel to it, but not so complicated, because I don’t think I’ll be able to embark on such large-scale project now. However I want the game to be fun and have things every 4X game has. That means colonizing space, waging wars and perhaps simple diplomatic actions, managing resources, researching new technologies and things like that. The game would be turn based. However I don’t want to make a copy of existing 4X space-themed games, but rather create something new and unique. Ideas are welcome. 🙂 I think that after finishing the game I’ll release it under Open Source license (probably GPL) and the game content under Creative Commons Attribution Non-Commercial Non-Derivative License. The game will be written in Python with extensive usage of PyGame, Rabbyt and Twisted if I decide to do multiplayer. I’m currently planning game engine. My for it goals are: simple, relatively fast, easily extensible and using common formats like XML, PNG, JPG and OGG Vorbis. I want to write few tools for this engine like Animation and Sprite Editor, Animation Sequencer for creating intros, cut-scenes, dynamic GUI and menus and in-game actors animations. perhaps GUI editor and some other tools for rapid content creation for the engine.

Unfortunately I’m going on my holidays tomorrow and won’t be available for some time, but I’ll have time to plan the engine and the game. After coming back I’m going to give this project full time for fun and gaining experience. As for now, I’d like to show you what I was able to do in just under one day. Excuse me for bad quality of the videos, but the capture program was capturing at 3 FPS and youtube converted it to 25 FPS so the video looks very fast. XVidCap is not really meant for capturing OpenGL. Anyway. Enjoy.




About Wolverine

If you are looking for IT consultant, let me know! karol at karoltomala dot REMOVE com Just remove the REMOVE word from the e-mail above!
This entry was posted in Coding, Galaxy Lords, General. Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *