New ioq3 fork, ioq3ztm

Ever since Turtle Arena was started I maintained the ability to compile it as unmodified ioquake3, or as ioquake3 with some additional changes from Turtle Arena (which I called ioq3ztm). However, it has been coming increasingly difficult (and messy), so support for compiling ioq3 has been dropped. Support for ‘ioq3ztm’ build will most likely be removed as well.

I am now creating ioq3ztm as a separate project, by porting things from Turtle Arena back to a clean ioq3 source. It will contain fixes and features that don’t fit in ioq3 for one reason or another. This is an effort to make a better base engine for standalone ioq3 games and to clean up the Turtle Arena source code. ioq3ztm, unlike Turtle Arena, does not add “#ifdef”s around new code, this results in cleaner code. ioq3ztm is not planned to change q3 gameplay, only to fix things and add features to enhance to standalone games.

Turtle Arena’s four player splitscreen will be ported to ioq3ztm.

ioq3ztm is not compatible with quake3 qvms, this means q3 mods can’t be used with it. I don’t see this as being an issue, people can still create new mods using ioq3ztm source code. Might be considered an issue if a standalone ioq3 game wanted to switch to ioq3ztm (and wanted existing mods to work).

ioq3ztm is planned to not add an additional data requirements, so that it will work with q3 data or q3 replacement data (such as q3min or OpenArena?). I will probably create a full q3 data replacement based on Turtle Arena data someday, “baseioq3ztm” or something, which would be included in a playable ioq3ztm download.

Turtle Arena will now be based on ioq3ztm, instead of ioq3 directly.  I will probably port some of the changes to ioq3 (but only ones that fit in of course). I may port ogg theora video playback to ioq3, which is originally from XreaL, World of Padman.

It should be possible to port standalone ioq3 games (Q3Rally, Smokin’ Guns, OpenArena, World of Padman, etc) to ioq3ztm and use ioq3ztm as a single engine for multiple games. Though merging features like four player splitscreen wouldn’t be easy.

In short; I’m porting features from Turtle Arena to a new ioq3 fork, ioq3ztm, and merging the changes into Turtle Arena/ioq3ztm “properly”.