News
ECWolf 1.4.0 and WolfstoneExtract 1.2 2023-01-18 07:48:57
ECWolf 1.4.0 is now available for download! The full list of changes is available on the wiki.
The big highlight feature is of course rudimentary LAN multiplayer. At this stage it's kind of a technical preview as the community will need to develop assets for a proper user experience since Wolf3D for example doesn't have a player sprite. For those interested in this feature read the multiplayer notes. Expect a fairly raw minimum viable product experience, but should there be interest in the feature this should improve over time.
This release also supports the Wolfstone 3D game data from Wolfenstein II and Wolfenstein Youngblood. Version 1.2 of the extraction tool is also available which most notably sets the pushwall movement distance to 3 tiles for these games as the Elite Hans levels and some of the modifications to the Wolfenstein 3D levels were made with the 3 tile movement glitch in mind. It also now automatically find the GOG Wolfenstein II data if installed.
Steam and GOG support has been updated to support the new releases of Wolfenstein 3D. The Steam detection code on Windows is also aware of any additional Steam libraries that may have been setup beyond the default. This change also applies to WolfstoneExtract.
As one might expect from the version bump, this release comes with a bunch of new modding features which mod authors have already been taking advantage of over the past few years. Some highlights include visual z-heights and parallax skies. Billboarded "3D sprites" common in Wolf4SDL mods are also now supported.
The MIDI to OPL code from vanilla Super 3D Noah's Ark is also integrated (thanks to NY00123) with a fix for playing back at the correct tempo (according to the MIDI files). This process is fairly limited in capabilities so really only useful for playing back the Super 3D Noah's Ark music as it would be heard in DOS. Other MIDIs may produce hilarious results.
This release is mostly backwards compatible with 1.3 mods, but there are a few that have broken due to conflicts with the partial/hidden Blake Stone and Mac Wolfenstein support. Most notable break is Operation Serpent. It is trivial to fix by renaming the problematic actor in the DECORATE code, and hopefully the author of these mods will release an update.
Starting with this release ARM binaries are being provided for Windows, macOS, and Ubuntu. The macOS binary is thus now a four way universal binary supporting Apple Silicon, Intel 64 and 32-bit, and 32-bit PowerPC. The Android binary has been updated to use latest SDL2 and work on current devices. You may be prompted about the app being built for an old version of Android, which is due to some dependencies on legacy permissions but this has been tested to work on Android 12 at least. The signing key for Android has changed so the old version may need to be uninstalled before the new one can be loaded. Although given that 1.3.3 was broken on the last few versions of Android this probably won't affect many.
Looking towards ECWolf 1.5, as I've mentioned here before, the code base will finally be migrating to modern C++. At the moment the plan is to target C++17. It is not believed that any platforms are on the chopping block at this time since C++17 tool chains exist for all of them. (However official 32-bit Linux binaries may come to a close as Ubuntu 18.04 is due to go end of life soon taking 32-bit support with it.) In order to try to prevent a multi-year release drought, I'm setting the goals for 1.5 fairly small and primarily want to look at the LZWolf feature set and see how much can be accepted back and close the delta (which in turn I hope will allow Linuxwolf to refork from the latest code). This should lay the foundation for getting back to more interesting features in 1.6 and beyond.