Terminal Quake 2 - Porting Quake 2 to QUAKE Wars
Arne Olav Hallingstad15th December 2007
Home
Port of Quake 2 to the QUAKE Wars engine.
Mod (created using the 1.2 SDK): Terminal Quake 2 V1.zip
Doom and Quake 2 are GPL'ed, source code is available upon request.
== Terminal Quake 2 for QUAKE Wars == Changelog 23. December 2007 - Packaged release - gamex86.dll now includes the complete Doom and Quake 2 source code (Doom is broken), release version file size went from 7389KB to 8212KB. - Improved how the GUI fits on the screen while in locked view. - Added loading/splash screen image. 18. December 2007 - Fade Quake 2 sounds based on distance to GUI if player is not in locked view. - Fixed not returning QW sound volume on shutdown while in locked view. - Fixed staying in locked view when focus UI was NULL because player crouched while locking on. 16. December 2007 - Next steps: Play all sounds on the GUI unless you are in locked view. - Added support for dynamically changing the Quake 2 resolution to anything up to 1600x1200. 15. December 2007 - Added key/mouse input support and support for locked view while playing. - Rendering Quake 2 to a Quake Wars image now works! - Added support for using a palette, creation of video buffer at run-time. - Code cleanup and changes since Terminal Doom implementation. 14. December 2007 - Next steps: Don't create a separate window for Quake 2, create the back buffer/front buffer for use by Quake Wars. - Statically link the software rasterizer, don't have to think about people accidentally loading the unmodified ref_soft.dll. - Creates a separate Quake 2 window just as it normally would, all console output is seen in the Quake Wars console. - Runs the init/main loop functions fine, loads Quake 2 pak files fine. 13. December - Quake 2 added to game class factory. - Added the required guis/load screen/materials/scratch textures/map/console entity. - Pulled the functions Draw/GetViewPos/IsPlaying into the parent class of aoDoom as they were generic enough to be used by both Doom and Quake 2. - Split Quake 2 code into an init function and a main loop function. - Quake 2 EXE project intergrated into etqw sdk, compiles and links. Does not run any Quake 2 code. - Started Quake 2 Terminal project. Based off of Doom Terminal project.
Screenshots
Final screenshots
Uploading Quake 2 back buffer to a QUAKE Wars texture.
Fixed all palette issues.
The width is now correct.
The software rasterizer has been made a statically linked library in QUAKE Wars. Uploads the Quake 2 back buffer to a QUAKE Wars texture, but I have not solved the issue of Quake 2 using palette. That's why the height is correct, but the width is 1/4th of what it should be.
Quake 2 file system successfully loads the required pak files.
Quake 2 executable running as part of QUAKE Wars.