The core engine code is actually pretty stable now. In fact, I don’t have to make changes to this code very often at all. However, I decided it was time to finally go back and address a few problematic issues before moving forward.
I made some minor changes to the base particle system class. There is now a parameter that can be used to set the render pass that will be used to draw the particles. This allows better control of what the particles are actually blended with during rendering. The particle systems look even better in the game now.
The 2D window/control library was also given some recent attention. The control mouse over state is more accurate now. Before, while moving the mouse quickly, the old code would sometimes select more than one control (i.e. a button) at a time. There were also certain circumstances that caused more than one popup text window to be stacked up on top of each other. These bugs, as well as some others, have all been fixed. The user interface in the game feels a lot more solid now.
I tried to use the red-black tree container template the other day and discovered that the iterator does not work correctly. I need to look into this and find out what the problem is. Then I’m going to get back to the game code again right away. The latest game client updates are looking awesome!