by StroggVorbis » Mon Oct 22, 2018 8:04 pm
Taking inspiration from the Duke Nukem 3D source port of choice is the proposal of adding something akin to the Maphack Language, plaintext files to fix map bugs in case where distributing a modified version would be on shaky legal ground. For anyone interested, here's the source material:
https://wiki.eduke32.com/wiki/Maphack_Language
In a nutshell, this allows one to:
-change the position of entities in a given map (out of a wall or bounds)
-apply rotation, pitch and roll to an object (if you replace sprites with models or voxels and don't want all of them to face the same direction) and in addition offset the centerpoint of a model's axes
-add spotlights
To go a step further, I suggest expanding on this formular and add stuff like applying texture orientation correction or replacement to squash halls of mirrors.
As a starting point Brad Harding's Doom Retro source port has over thousand individual fixes for every official Doom IWAD, however I think they are compiled into the executable and applied in real time on map load if r_fixmaperrors is set to true. One could ask him for permission to use the corresponding source code on his GitHub as a base to create a GZDoom-specific MAPHACK.lmp or maybe extend this information to the MAPINFO lump. If desired, other engines like Eternity or EDGE could follow suit. Since the UDMF format was the result of such a collaboration, why not let them benefit from this too?
Taking inspiration from the Duke Nukem 3D source port of choice is the proposal of adding something akin to the Maphack Language, plaintext files to fix map bugs in case where distributing a modified version would be on shaky legal ground. For anyone interested, here's the source material:
https://wiki.eduke32.com/wiki/Maphack_Language
In a nutshell, this allows one to:
-change the position of entities in a given map (out of a wall or bounds)
-apply rotation, pitch and roll to an object (if you replace sprites with models or voxels and don't want all of them to face the same direction) and in addition offset the centerpoint of a model's axes
-add spotlights
To go a step further, I suggest expanding on this formular and add stuff like applying texture orientation correction or replacement to squash halls of mirrors.
As a starting point Brad Harding's Doom Retro source port has over thousand individual fixes for every official Doom IWAD, however I think they are compiled into the executable and applied in real time on map load if r_fixmaperrors is set to true. One could ask him for permission to use the corresponding source code on his GitHub as a base to create a GZDoom-specific MAPHACK.lmp or maybe extend this information to the MAPINFO lump. If desired, other engines like Eternity or EDGE could follow suit. Since the UDMF format was the result of such a collaboration, why not let them benefit from this too?