Underworld Adventures logo part 1 Underworld Adventures logo part 2

uwadv dev log

The dev log is the place where I write about the daily ongoings of the project. It is updated occasionally. An RSS feed is also available:


Started working on code debuggers by adding the ability to send messages to the client and send "start" and "end" messages for code debuggers. On the client side one or more code debuggers can be active, all with their own breakpoint lists, etc. Actually in uwadv there will be two different code debuggers, one for conversation code, and one for Lua code. A code debugger can be set in one of several states, such as running, stopped, single-stepping, stepping out. The client can set and query breakpoints. When in "running" mode it gets a message when a breakpoint is reached. Also fixed the ua_physics_check_point_in_triangle() where I introduced a bug that shows in physics code when fixing some compiler warnings.


Improved master object list viewing and client interface. Added editing for all values.


Added common base class for docking and child windows. Added project info docking window that later should show all Lua source files and all active code debuggers.


Added the new Underworld Adventures Debugger that is done using WTL and uses several third-party source libs such as docking windows, tabbed windows and xp-style menus. Added needed project files. Updated version info of all generated binaries.


Many minor changes at several places. Removed some tools and added project files for some tools.


Added sources for Underworld Adventures Studio project. The uastudio basically is a stripped-down game that doesn't display graphics and has no user interaction, but it hosts a full game. The debugger is started automatically, so in the end it looks as the user has started a "Studio" application to develop and test custom games. Also enabled new-style browsing for folders to the "Underworld Adventures Config" program.


Started adding project files for vc71. Now every subfolder (and "component", such as "base", etc.) gets its own project file and thus static library.


Worked on the underworld debugger and put tabbed MDI browsing, XP Menu and docked windows together. Here's a screenshot showing the look of the program so far: user interface

Fixed tilemap rendering slowness by using a memory DC. And on the tilemap view there are now two boxes with infos about the currently clicked tile and it's objects. I plan to use icons directly from the games for the objects.


Worked on the tilemap view and improved rendering. Drawing the diagonal tiles is painfully slow, though (GDI polygons). Here's a screenshot:

tilemap view

Clicking on any tile in the view lets you view the tile info. The button teleports the player to the new position (makes hotspot list almost useless). Later the objects in the current tile should be listed in the empty box below the tile's data. Each object should get it's 16x16 icon from the game, and object properties can then be edited in another dockable window for "object properties".

You can also see David Bowen's Tabbed MDI window magic. It has a tab for any MDI (non-dockable windows) that are in the app's working area. Unfortunately Sergey Klimov's Docking framework doesn't quite work together with the tabbing framework. And the XP style menu of course doesn't work together with all other frameworks. Oh well ...


Improved RSS output a bit, Feedreader had some problems with RFC 822 dates without correct time. Also added a limiter so that html output is limited to the last 10 items, and RSS is limited to the last 8. I guess good RSS aggregators store the older articles somewhere. At the end of the html output is a link to retrieve the full log.

show all entries