2008
06.03

100th post !

“Come on, 100 posts and no TCOD binary ? And it’s not vapourware ?”

( just an allusion to one of my favorite roguelike developers 😀 )

Nothing really hot here, but I couldn’t resist writing the post #100. To refer to another roguelike legend, I’m not going to step in the room, guns blazing. No need to duck.

Indeed, I started dusting the old TCOD code. After a few months on the brand new clean Arena, it takes courage to get back to that old bag with his geological layers of code stacked the ones on the others… I even forgot that TCOD time code was completely based on frames. I have a lot of work to bring it to the level of the Arena where I can tweak the game speed with a single float parameter… Anyway, cleaning things here and there is a good way to slowly get back to the real work. I even already backported a few things from Arena, like the red flashing effect when you’re hit and the player’s conditions panel. If the Arena and libtcod don’t take me too much time, you may here from TCOD soon (not for a release, but at least for new features).

Concerning libtcod, it seems that the BSP toolkit is going to win. I may also add a default parser listener in the parser module. For basic config files, it would save yourself from writing it and you could simply read properties with a basic getProperty( name ) function. For more advanced configuration files, writing your own listener is still the most flexible solution. There are also a lot of feedback on the various artefacts in the Fov toolkit. I won’t get out of it, I’ll have to add a more robust algorithm. Maybe in the 1.4 too.

Finally, I started fixing a few bugs on the Arena. There are still some missing features like the armor and tiresome bugs like the sleeping AI, but I’ll treat this more in a coffee break fashion, getting back to Arena from time to time when I’m bored with TCOD or libtcod.

2 comments so far

Add Your Comment
  1. Congrats on your 100th post!

    The file parser sounds like a wonderful idea and would be very helpful indeed!

    Today I compiled Aviel’s Stand using Visual C++ Express which worked perfectly well (and the worlds better debugger let me find lots of bugs leading to random crashes at times). This weekend I’ll try to compile it under windows.

    Good luck with your TCOD progress! (btw, my time management is also based on frames and it rulez :P)

  2. You probably mean Linux (except if you have a working version of VC++ Express on Linux!) 😛

    Concerning the frame based time system, it rules until you run your game on a slower computer. If your framerate is limited, you won’t have issue with faster computers, but with slower ones…

    The arena system has two main advantages over this :
    – the game speed should be constant, even on very slow computers that can’t render 25 frames per second
    – you can easily increase or decrease the speed