xlogfile, or the extended logfile, is a compile-time option for NetHack that makes the game log more data at the end of a game. The data is saved into a file xlogfile in the same directory as the normal logfile. Each line contains several field=value pairs, separated by a colon. For example:
version=3.4.3:points=55590:deathdnum=0:deathlev=7:maxlvl=12:hp=-14:maxhp=92:deaths=1:deathdate=20090502:birthdate=20090501:uid=5:role=Tou:race=Hum:gender=Fem:align=Neu:name=gibbas:death=killed by a mumak:conduct=0xf86:turns=16662:achieve=0x400:realtime=18452:starttime=1241195443:endtime=1241214565:gender0=Fem:align0=Neu
The xlogfile began as a patch for NetHack 3.4.3. It was incorporated into the mainline in NetHack 3.6.0. It is an optional feature, and can be removed by commenting out the definition of XLOGFILE in include/config.h.
Most of the fields are self-explanatory, or are the same as in the normal logfile, except:
- conduct: A bitfield in hexadecimal format:
- 0x001: Foodless
- 0x002: vegan
- 0x004: Vegetarian
- 0x008: Atheist
- 0x010: Weaponless
- 0x020: Pacifist
- 0x040: Illiterate
- 0x080: Polypileless
- 0x100: Polyselfless
- 0x200: Wishless
- 0x400: Artifact wishless
- 0x800: Genocideless
- achieve: A bitfield in hexadecimal format:
- 0x001: Got the Bell of Opening
- 0x002: Entered Gehennom
- 0x004: Got the Candelabrum of Invocation
- 0x008: Got the Book of the Dead
- 0x010: Performed the Invocation
- 0x020: Got the Amulet of Yendor
- 0x040: Was in Endgame
- 0x080: Was on The Astral Plane
- 0x100: Ascended
- 0x200: Got the Luckstone at the Mine's End
- 0x400: Finished Sokoban
- 0x800: Killed Medusa
- realtime: How long the game was, in seconds.
- starttime and endtime: Seconds since UNIX Epoch.
- gender0: The original (starting) gender.
- align0: The original (starting) alignment.
- death: all colons are replaced with underscores, otherwise the same as in normal logfile.
- flags: A bitfield in hexadecimal format: