Re: Reflection Keen (ports of Keen Dreams, 3D Catacombs and Wolfenstein 3D)

Here is where to post about the latest Commander Keen fangame or modification you've finished, a new website you've made, or another Keen-related creation.
Vorticon Elite
Posts: 462
Joined: Sun Sep 06, 2009 19:36

Re: Reflection Keen (ports of Keen Dreams and all 3D Catacombs)

Post by NY00123 »

It is time for another release.

The most significant change, which is relevant for some Catacombs titles, is probably a port of (recreated) DEMOCAT.EXE/HINTCAT.EXE executables. That's right, access to the slides of the Electronic Catalog and the Hint Books is now available. This is based on recreated code for DOS, which I uploaded to this repository:

Note that unlike the situation under DOS, you can't directly send anything in the Electronic Catalog to a printer, but that's probably expected.

If any of you had the issue of an unexpectedly low framerate on Android, hopefully it's resolved in this release. This was previously a side-effect of high audio latencies. Unfortunately, due to the way things are working in the last release, there may be some sound stutters. In case of a problem, see the README for a few details on the "sndinterthreadbufferratio" setting.

[A summary of technical details: The main thread is now responsible for the game's timing, as well as generating audio samples (which is somewhat tied to the timing). This thread merely passes the samples to an SDL audio callback thread, which was previously responsible for the rest.]

Further note that you might fail to find external files like egahead.kdr (originally present in kdreams.exe) being written anywhere. That's because they're not anymore: Once you start, for instance, a game of Keen Dreams v1.13, egahead.kdr is loaded right from kdreams.exe. In case you're wondering, yes, kdreams.exe is packed, so it gets temporarily unpacked transparently, in memory.

Again, the README has the change log, and the git repository has a more detailed log.

See the first post for downloads (or GitHub link). You should find the README over there.

Vorticon Elite
Posts: 462
Joined: Sun Sep 06, 2009 19:36

Re: Reflection Keen (ports of Keen Dreams, 3D Catacombs and Wolfenstein 3D)

Post by NY00123 »

Hi all,

It's been a while, but I wanted to mention that I've added support for another game, which is Wolfenstein 3D.

This is a 6 years anniversary release. On September 26 2014, I released a new port of Keen Dreams, initially titled "Chocolate Keen Dreams".
Although Keen Dreams was released earlier in the same month, I actually started some work on it even earlier, after the Catacombs were open-sourced (in June 2014). Reason is that I already knew that a lot of the code was common.

Following Keen Dreams, I added Catacomb Abyss, then Catacomb 3-D, and finally the rest of the Catacomb Adventure Series.

Recently, I've been working on the source ports again. With the assistance of the gamesrc-ver-recreation/wolf3d tree, the last release introduces support for Wolfenstein 3D, Spear of Destiny (excluding the mission packs) and Super 3-D Noah's Ark (DOS version).

For Wolfenstein 3D, this currently covers Apogee shareware versions 1.0, 1.1, 1.2 and 1.4 (the one with cheats), as well as 6-episodes Activision v1.4.
For Spear of Destiny, this covers FormGen demo v1.0 and Activision v1.4.
For Super 3-D Noah's Ark, this covers the one Wisdom Tree DOS version that I'm aware of.

There are still some problems. In particular:
- You can't save games or load saved games in Wolf3D and the games based on it.
- These games have no support for the "modern" game controller scheme. I think that the other games should still have it, though.
- For technical reasons, you can't load the Spear of Destiny mission packs.
- More generally, you can't load TCs made to work with original EXEs from the 90s (as released by id and/or related publishers). I still haven't decided how to approach this.
- In order to detect game data, you also need the original DOS exe (albeit the 2015 edition of Keen Dreams is an exception).
- For Super 3-D Noah's Ark, this exe currently has to be named noah3dos.exe, as this is the way it arrives from Steam right now. Currently, there's no good way to support auto-detection of data with alternative file names.
- The rate of palette updates in Wolfenstein 3D is at least somewhat imprecise.
- VSync is disabled by default for now. There are other potential problems with timing in Wolfenstein 3D, which might partially be related to instances in which the game tries to render more often than the host display's refresh rate.
- Stereo panning remains unimplemented.
- For the Wolfenstein 3D based games, if you try to use a wall right after pushing it, the behaviors are essentially undefined.

Post Reply