ObHack

ObHack is a procedural random map generator for various Doom games, including Doom, Doom2, Heretic, Freedoom, and Blasphemer. It is a fork of OBLIGE version 2 which was actively developed and updated from 2009 until 2017 (with a single bugfix done in 2020).

Obtaining ObHack
The most recent update to the post-2009 codebase (ObHack 008) is in ObHack-8-final release of ObHack.

ObHack can also be downloaded at its home page https://samiam.org/slump. This is an older version which has not been updated since 2017.

More recent developments can be downloaded from the Git tree for ObHack at GitHub. This Git tree is mirrored at GitLab, Bitbucket, and Sourcehut.

Features
ObHack adds a number of features to OBLIGE 2, including:


 * The ability to choose swarms of monsters
 * The ability to have both letters and numbers in map seeds, and to have arbitrarily long seeds.
 * Real secret rooms
 * The ability to have the player be immediately given a weapon
 * Monster traps
 * Selectable room size
 * A mode which makes maps which can be played either as single player or as deathmatch
 * Very basic capture the flag support (no, the maps are not symmetrical)
 * Support for tiny and small levels
 * Progressive level size, where maps gets bigger as one goes through a megawad

History
ObHack was developed by Sam Trenholme from 2007 until 2009; Fritz took over development between 2009 and 2012. Trenholme resumed ObHack development from 2015 to 2017, adding very basic capture the flag support (no, the levels are not symmetrical), Blasphemer support, and randomly generated boss arenas.

In 2020, a bug was found where the same random seed would generate somewhat different maps. This bug was mostly fixed (about 5% of maps are still non-deterministic); this is the only update done to the 2017 version of ObHack.

Current development
While there have been a number of recent commits to ObHack, they are being done against an older version of ObHack from 2009, adding tests (now that ObHack is mostly deterministic) and some minor adjustments to the 2009 ObHack code base, including a lot more firepower in single player maps when they are played in Deathmatch mode.

Legacy
ObHack added a number of features which made it in to OBLIGE in later releases, including a greatly improved Heretic theme in Oblige 0.97, secret rooms, progressive level sizes (where earlier levels in a megawad are smaller then later levels), and a choice of initial weapon.