libtcod 1.5.1b1 released

A lot of people have been asking for a compiled 1.5.1 version. Here it is ! You can put your roguelike dev greasy hands on it on the download page :D. Note that, as stated on the download page, it’s been compiled “as is” without being in a particularly stable state. During the beta, the renderer defaults to GLSL (with fallback to OpenGL, then SDL) but there are known issues with it (fullscreen and fading, not even speaking of openGL drivers), so you’d better force SDL use when you release a stable version of your game.

A big thank to anyone involved in this release, especially :
– Donblas for his work on cmake, swig, C# and OSX versions
– Mingos for various bugfixes, work on gaussian distribution and colors and an upcoming butt-peeling MRPAS2 fov algorithm.
– Dividee for python polishing and various bugfixes
– Jotaf as always, for his unshakable support and suggestions
I’m probably forgetting people, so have a look at the credits file 😉

Also a big thank to all the developers who put their trust in libtcod for their game. Have a look at the projects page to check the latest promising games.

10 comments so far

Add Your Comment
  1. I dumped MRPAS2. I required excessive CPU power and a costly precalculation. I realised I could easily do the same with MRPAS1 code base and a slightly different approach to angle calculation.

    Still, I hereby promise MRPAS in libtcod will be improved soon(ish) 🙂

  2. There’s a bug (or a feature?) in 1.5.1. When switching to fullscreen or changing the desktop, the libtcod-window is not automatically redrawn, like in version 1.5.0.

  3. Nice 😀 Ah, you should warn people about compatibility issues — especially the print functions, the changes make a lot of sense but some will be puzzled when their code doesn’t compile anymore. And libtcod has a history of being especially kind with regards to backward compatibility, so an API change in a minor version change may take some by surprise 🙂

  4. @dkson what do you mean by “changing the desktop” ?

  5. Could be “changing the desktop resolution”?

  6. “Changing the desktop” can refer to changing the virtual workspace that you are using. This is more of a Linux concept. Virtual workspaces are basically groups of windows, which you can switch between.

  7. Oh indeed. Maybe you should provide more info. turn by turn or real time ? what renderer ? the samples have no issue with fullscreen switch on windows/sdl renderer

  8. turn by turn. When you create a real time game, you draw the screen already every frame. When creating a turn-based game, you draw the screen only every ‘turn’, waiting for player input between two calls to your render-function. But when using libtcod 1.5.1, the window does not redraw itself when it should. “Changing the desktop” means indeed using virtual desktops, but the problem appears while changing to fullscreen-mode too. Running on linux via python-bindings using the standard-renderer. The samples have no issue because they run ‘realtime’, drawing the screen every frame.

  9. Ok that makes sense because while waiting for input, the game is not handling any window redraw events. What’s weird is that it works on 1.5.0 !! I have to look at my crappy event code…

  10. I’m pretty sure nothing’s changed in the waitForKeypressed function between 1.5.0 and 1.5.1. You’re probably using an OpenGL renderer. Try with the SDL renderer and everything should go back to normal…