The idea here is that the horns on the skulls indicate the same shapes
as those used for the keycards:
* Blue: X shape
* Red: Horizontal (horns point horizontally atop head)
* Yellow: Vertical
In order to do this I color-swapped and exchanged the graphics for the
red and blue skull keys. This commit updates the skull key sprites,
status bar key icons and the skull key wall textures. As well as as the
color swap, I've also tweaked the skulls to increase emphasis on the
horn directions.
A generic term like this isn’t really suitable for trademark, nor
likely to ever be disputed. The community and the engine both heavily
bias toward “episode” and indeed most other games do.
Closes: #682
Despite using ASCII for the other definitions, Doom used 121 (“y”) for
the pipe character (“|”) instead. This repairs a crash on SMMU’s
startup process when it looks for this graphic.
Python 2 is very near end-of-life, and Python3-compatible changes to a
few scripts introduced compatibility problems with 2.7 again. It went
unnoticed for me since my system symlinks "python" to "python3", but
it broke the build on systems where that symlink is still python2. At
this point in time, I feel it is worth targetting modern Python and
forgetting about 2.7.
Organize .gitignore by moving all patterns into a top level sorted
.gitignore file. With this change both "git status" and
"git-ls-ignore-index" should return cleanly. The later checks if any
files in the index are ignored.
Using the black code reformatter, pass it over all our Python files.
This allows for a consistent style across the code base.
Exception: lumps/dmxgus/stats.py, for readability.
This is one of the built-in variables for Make and can increase
portability on different operating systems (eg, on Windows, the
built-in $(RM) may be defined as "del" instead of "rm -f").
Deduplicates effort from copying between multiple patch files, and we
now have unique outputs for each of our IWADs.
Having just "No Clipping 1 = idclip" proved to be troublesome with at
least prboom-plus, the engine running its cheat detecting twice and
becoming unable to activate no-clipping mode. Worked around it by
also defining "No Clipping 2 = idspispopd", restoring that cheat's
functionality in most source ports and keeping both variants unique.
Chocolate Doom will only use the "idclip" version.
Might have been a nice idea to be able to run under absolutely any
Doom engine, this has caused problems with PrBoom-Plus for
compatibility, with that engine detecting our game as a BFG Edition
IWAD and applying certain workarounds that don’t actually make sense
in this case.
It is a rather niche use case to run under BFG Edition, and proper
PrBoom-Plus compatibility is much preferred.
Some of the sprites have changed since the help screen was first put
together and are now overlapping with each other slightly. In
particular the box of shells is overlapping with the weapon above it.
Adjust positions by a couple of pixels and give some extra space.
FreeDM had a special override to use an animated rocket for the menu
selector, a tweak to make it more deathmatch-appropriate. Unfortunately
the rocket animation is too wide and causes Chocolate Doom to error out
when the help screen is brought up (F1) with "Bad V_DrawPatch". Even if
the horizontal offset is adjusted it will overlap with parts of the help
screen and obscure them. I think the easiest solution is to just remove
the override.
Updated Chapter 4: Double Impact with the fixes included in the
hotfix. C4M7 was already updated for Freedoom with the fixes, but not
C4M4 and C4M8. Both were updated to be up to par with the
hotfix. C4M8's old edits to lowering the lifts won't be needed
anymore. C4M8 was also edited to be vanilla-compatible, removing some
details at one of the final rooms. Hopefully Vanilla won't crash
anymore.
The endpic for Chapter 4 has been updated to match with the current
Freedoom assets, bye bye that old Imp sprite and floor texture.
DOOM2.WAD contains a MAP33, which is being represented here as only
the dummy map, and also M_EPI1 and M_EPI2 lumps for the “Hell on Earth”
and “No Rest for the Living” texts, both of which are now replicated
here as well (using “Phase 2” and “The Missing Levels” as names instead).
No, we still don’t plan on having a real MAP33, the inclusion here is
only to avoid engine crashes.
Fixes: #533
Ref: #529
Doom engines stretch the the images with 20% extra height. This,
together with the already slim jaw and sharp chin in the face of the
freedoom guy, makes it look very juvenile, stretched.
This change tweaks the face images to have a thicker jaw and a more mature
look. It also tweaks the lip position a bit and reduces the excessively
dark outline along the chin.
There are a few lumps added to the Doom IWADs required by the BFG Edition
of the game that would cause it to crash abnormally if the IWADs were
replaced by Freedoom. We add these news graphics lumps to the game here.
BFG Edition also changes m_gdhigh to "Fullscreen:" and m_scrnsz to
"Gamepad:", neither change of which will ever be reflected in Freedoom,
but it won't crash in this engine anymore.
Closes: #529