Oblige V2 started development in June 2006, using Lua scripts for the level creation logic and C++ for the GUI front-end and WAD output code. This evolved with many features and support for several games to become the first public release: OBLIGE 0.81 (January 2007). The last release of the V2 codebase was version 0.97 (May 2008).
Oblige V3 is the current incarnation. Severe limitations in the previous code prompted a huge rewrite, a process which is still on-going as many earlier features have not been re-implemented yet. The first public release of the V3 codebase occurred in April 2009 (at version 3.39) and it is planned to release future versions as often as possible.
Version 0.97 : 2008-05-30
Version 0.94 : 2007-07-05
Version 0.85 : 2007-02-19
Version 0.81 : 2007-01-21 (first public release)
- new GUI layout, more room for modules - GUI uses larger fonts in higher resolutions - new 'Strength' button (for monsters) - new 'Progressive' choice for monster numbers - more choices for the 'Outdoors' button - levels are somewhat smaller - reinstated Co-op mode - worked on a new theme system - new URBAN and HELL themes for DOOM games - preliminary work on Strife and HacX - preliminary work on Chex Quest 3 (courtesy Enhas) - further work on Quake (better BSP algorithms etc) - fixed some texture glitches and sky gaps + new modules: - Monster Control for DOOM - Weapon Control for DOOM - Stealth Monsters : Fine Control (thanks Enhas) - ZDoom Marines : Fine Control (Enhas) - Skulltag : Fine Control (Enhas) - Level Control (Enhas) - ZDoom Beastiary (Mr Chris)
+ fixed too much chaingun/plasma ammo (fight sim bug) - fixed non-working lifts and pedestals - fixed bug: levels reduced to 2 rooms + better name generator (thanks to JohnnyRancid) - new just-for-kicks theme 'Psychedelic' - new choice for Monsters: 'Crazy' - support for huge monsters in maps + new Material system - reorganised DOOM code : doom.lua & dm_tex.lua - added 'density' field to MONSTER tables - cleaner brush/entity transformations + boss arenas for E1M8 and E2M8 (thanks Mr. Chris) - more color schemes for skies (JohnnyRancid) - improved support for DOOM I - worked on the module system - new program for extracting Quake textures - a bit of progress with Tiled games (Wolf3d) - added 'replaces' field for monsters - support monster/weapon preferences again + various new modules: - Immoral Conduct - Special Edition - Skulltag Monsters (by Mr. Chris) - ZDoom Marines (thanks Enhas) - Stealth Monsters (by Enhas)
Version 3.39 was the huge rewrite, with over 1500 SVN commits since the 0.97 release. The most significant changes were: * The map representation changed to a completely different system. The old method had 64x64 squares (which could be sub-divided into 16x16 "fragments"), with very limited support for angled walls. The new method uses "brushes" like in Quake mapping, which are solid regions of space, and can support arbitrary shapes on the 2D map (and will allow more freedom in the Z dimension). * Nearly all of the level building logic (Lua code) was rewritten from scratch. A key concept in the rewrite is "seeds", which are a grid of 256x256 blocks on the 2D map, and each seed is responsible for building itself (floor, ceiling, any walls, and anything special in it like a staircase or pillar). * All the game definitions were moved to a 'games' folder, and each Lua file in that folder is loaded when OBLIGE starts up, hence new games defs can simply be dropped in without having to change anything. The same system is used for engine defs and module defs too. + The new planning code supports really big rooms, and also "parent" rooms which can contain other rooms. Often the parent rooms are outdoor and the child rooms are buildings, leading to areas similar to DOOM II's MAP13. + The room layout code supports symmetrical rooms, and uses a "room fab" system which selects a usable shape for the room (which major elements like stairs, different height areas, solid and diagonal blocks). These room fabs can also be used recursively, which can lead to some very interesting rooms. + The user interface was improved, with distinct panels for Game Settings, Level Architecture and Playing Style, and a scrollable area for custom modules. + Preliminary support for Quake and Quake II. With all this work going on, a lot of features which were available before have not been re-implemented yet: - only supports DOOM 1 and DOOM 2 - only one available theme: TECH - no traps, no cages - no secrets, no powerups - very limited scenery
+ greatly improved Heretic themes (Sam Trenholme) + fixed the stair-building error (Sam) + add some Cyberdemons into DOOM maps - don't put monsters or things on crates - don't put blaze doors in Heretic maps (Sam) - add a few armor helmets in DOOM maps (Enhas) - removed the Archvile from FreeDoom maps (Enhas) - prevent cross windows being passable (Enhas) - don't use shiny Wolf-3d door in Nature theme
+ new prefab system, lots of cool prefabs. + new theme system for more consistent levels. + different sized rooms. + greatly improved Hexen support. - new adjustments for level size and puzzles. - adjustments for deathmatch games. - secret areas and levels. - balconies. - experimental Wolfenstein-3D support. - later levels get progressively harder. - slightly better Heretic maps. - more DOOM themes. Note: some things also broke in this release, e.g. traps :-(
+ Hallways! Crates! New Exits! + better algorithm for choosing floor/ceiling heights. + user adjustments for health/ammo/monsters/traps. + current settings are remembered when you quit. - support for FreeDOOM, TNT Evilution and Plutonia. - levels are watermarked with some Oblige logos. - delete temporary wad when build has finished. - collect all log messages into a file (LOGS.txt). - removed the unnecessary menu bar. - fixed the (rare) non-working switches and lifts. - surprise traps: improved placement, fairer monsters. - tweaked battle simulation to provide more ammo. - neater placement for health and ammo items.
This was the first public release of OBLIGE.