Codemasters has posted a new developer diary. This time it features Nicola, one of the programmers for Dragon Empires. It is rich with technical details about the code behind the magic! Here is a snippet:
Currently I am working on automatic code generation - writing code to automatically generate code. So today I'll tell you a little about this.
For each base a large number of C++ classes is required and the contents vary for the different properties. The variance comes from the different options for a property (in previous paragraph), and its type (e.g. basic integers, floats or more complex data types). Therefore, each time a new base is required, or properties are changed on an existing base, this large number of classes has to be altered. The code itself is basically straightforward, but it is tedious and there is plenty of room for errors to creep in.
One example of how one such error could affect you is say for example you have you the XP property written in two ways on the base, one as lowercase 'xp' and the other as uppercase 'XP'. What could happen in this case is that your character loads in 'xp' at 67, but then after a couple of hours of killing monsters and gaining a lot of XP, your character logs out and saves 'XP' (uppercase), an altogether different value. Automatic code generation eliminates the possibility of this ever happening.
To read the full article, just follow this link.