Programming and other useless stuff: December 2008

Sunday, December 28, 2008

The end of the year is nearby...

First of all I wish you a Happy Christmas (a bit late, I know) :)

It has been a long time since my last blog entry. The primary reason for this is that currently I'm submerged in work. I've several clients who were waiting for stuff. For at least one client, the situation will be stressful until end of January.

Nevertheless from time to time you have to take some days off for a special occasion (well... Christmas is special, isn't it?), get some clear ideas about the future and think of some New Year's resolutions.

I've spent a couple of hours thinking of mine... here's a work related list:

  1. Simple SCXML:

    - Improve the underlying code.
    - Modularize the code base (data module, parser module, script module, ...)
    - Make parallel states being parallel threads.
    - Make a C# version of SSCXML.
    - Create a simple editor for state machines.
    - Make a Linux compatible version (I might need some help here).
    - Think of how to integrate behavior trees into SSCXML (I'm still convinced that this is more or less easily possible).
    - Enable the user to write his own executable.
    - And finally: Think of how to promote SSCXML. While I got some companies interested into SCXML and my implementation, the sales are quite low...
  2. Serve my clients even better by improving my knowledge (AKA read some books and write some test code).
  3. Write at least 2 articles that get published somewhere (Note: I wrote some comments in an online games magazine forum and another games magazine took my comments and patched them together into a ten pages article. It's about the working conditions in the games industry in Germany and the overall situation for the developers. The main intention of my comments was to sensitise the gamers out there to the hard working conditions we encounter and that, although we must have a masochist vein, we are not into getting insulted. It's all in German but for those who are interested: Offen, ehrlich, lesenwert - ein Programmierer spricht Klartext ("Open, honest, worth reading - a programmer speaks plain language").
  4. Continue working on Prohibition. The game currently is "On Hold" due to my work charge. Nevertheless, the idea still is there. Unfortunately, some of my ideas must be changed because either the technical part is not good enough (IE. Navi as the Gui or etwork for the network part), or my game ideas are too complex (IE. the mixing of role playing and strategy creates just too much work, the idea to enable the in game characters to make usage of the environment (chairs, tables, etc) creates to much work on the AI implementation).

This is already quite much for an entire year and I'm not sure that I can realize or progress the way I would like to. Especially the Prohibition stuff creates me some head ache. The idea spins around since almost 10 years and I'm no further than 10 years ago. I wanted to focus more on the game development part and I fall back into the technical part which is not as I wanted it to be.

SSCXML has not done the progress I wanted it to have. The idea of a state machine entirely defined by an XML is very good, but then you encounter problems on the developer side: While game AI developers currently are more into behavior trees (which in my opinion is more or less a special case of a state machine), application developers either have their own state machine (if applicable) or don't see the need of using a) a state machine middleware or b) an external expertize on that matter. A small part of developers are waiting of a Linux version of SSCXML, which is a whole history of it's own.

I'll try to write more often in the future. I'll refocus on SSCXML, start my own network library implementation (based upon etwork), and talk about the progress done on Prohibition.

Have fun,
Stefan