Customized Quake2 engine with Heretic2 code parts.
Heretic 2 SDK code based on Ht2Toolkit
Updated code based on Heretic 2 Reconstruction Project
Tested with Heretic 2 Loki release.
sed -i 's/[[:blank:]]*$//' */*.{c,h}
Comments:
It's on really initial steps, it could be complied ;-), it runs mostly without crashes. That's all what is good.
Drawbacks:
To check:
Minimal file set from Loki release:
7f705e54da770186abd84f1a904faa28 baseq2/default.cfg
75cd6a0e878f24bb934e640b4d4dd18c baseq2/htic2-0.pak
d771f54be69f8fb9054c5a84a2b61dff baseq2/players/male/Corvus.m8
4633cc6801f36898f0d74ab136ce013e baseq2/players/male/tris.fm
b90b7cc08ec002297a320e06bae6a5eb baseq2/video/bumper.mpg
b92d295e769b2c5a94ee2dbf1bbe12e4 baseq2/video/intro.mpg
9c201601fdd82754068d02a5474a4e60 baseq2/video/outro.mpg
Code checked with:
map ssdocks
Goals:
This is an experimental fork of Yamagi Quake II with ongoing work to add support for Quake II Enhanced aka Q2 Remaster(ed). This enhanced version has a lot non trivial changes, adding support isn't easy and takes time. Feel free to try this code but you mileage may vary.
Have a look at the yquake2 repository for the "normal" Yamagi Quake II: https://github.com/yquake2/yquake2
Alpha windows 64 bit binaries. Saves format is unstabled and could change between alpha releases.
State:
Q2Game.kpf
file in root directory of game,Monsters:
Models support:
Format | Original Game | Frame vertex | Meshes | Comments |
---|---|---|---|---|
mdl | Quake 1 | 8 bit | Single | Unsupported grouped textures |
md2 | Quake 2 | 8 bit | Single | |
mda | Anachronox | Part of md2 | Single | No tagged surfaces |
md2 | Anachronox | 8/10/16 bit | Single | No tagged surfaces, unchecked with game |
mdx | Kingpin | 8 bit | Multiple | No sfx support, unchecked with game |
fm | Heretic 2 | 8 bit | Multiple | |
def | SiN | Part of sam | Multiple | Unchecked with game |
dkm | Daikatana DKM1 | 8 bit | Multiple | Unchecked with game |
dkm | Daikatana DKM2 | 10 bit | Multiple | Unchecked with game |
md3 | Quake 3 | 16 bit | Multiple | No tags support |
mdr | EliteForce | float | Multiple | No tags support. Uses first LOD only |
md5 | Doom 3/Quake 4 | float | Multiple | Requires md2 for skins |
sbm | SiN | Part of sam | Multiple | Unchecked with game |
sam | SiN | 8 bit | Multiple | Unchecked with game |
All models support only single texture for all meshes and frames limit based on game protocol.
Texture support:
Format | Original Game | Comments |
---|---|---|
wal | Quake 2 | 8 bit |
wal | Daikatana | 8 bit |
swl | SiN | 8 bit |
m8 | Heretic 2 | 8 bit |
m32 | Heretic 2 | 24 bit |
pcx | Quake2 | 24 bit |
tga | Quake2 | 24 bit |
png | retexturing | 24 bit |
jpg | retexturing | 24 bit |
bmp | Daikatana | 24 bit |
Maps support:
Format | Version | Game |
---|---|---|
IBSP | 39 | Quake 2 / Anachronox / Kingpin / Heretic 2 |
IBSP | 41 | Daikatana / SIN |
RBSP | 1 | SIN |
QBSP | 39 | Quake 2 ReRelease |
BSPX | 39 | Quake 2 ReRelease (Extension to IBSP) |
Note:
maptype 1
before load any Heretic 2 maps. Look to
maptype_t for more info.Games:
Games check videos:
Goals:
it_pic
images in vulkan render,target_camera
,misc_flare
,Not a goal:
Code tested with such maps.
Yamagi Quake II is an enhanced client for id Software's Quake II with focus on offline and coop gameplay. Both the gameplay and the graphics are unchanged, but many bugs in the last official release were fixed and some nice to have features like widescreen support, reliable support for high framerates, a modern sound backend based upon OpenAL, support for modern game controllers and a modern OpenGL 3.2 renderer were added. Unlike most other Quake II source ports Yamagi Quake II is fully 64-bit clean. It works perfectly on modern processors and operating systems.
This code is built upon Icculus Quake II, which itself is based on Quake II 3.21. Yamagi Quake II is released under the terms of the GPL version
Officially supported operating systems are:
Beside theses Yamagi Quake II has community support for MacOS and most other unixoid operating systems, including NetBSD, OpenBSD and Solaris.
This repository contains Yamagi Quake II itself. The official addons have their own repositories:
Yamagi Quake II Remaster is a project providing optional support for the assets of Quake II Remaster by Nightdive Studios and has a less conservative approach in regards to new features. It also lives in it's own repository:
Yamagi Quake II is a community driven project and lives from community involvement. Please report bugs in our issue tracker:
We are always open to code contributions, no matter if they are small bugfixes or bigger features. However, Yamagi Quake II is a conservative project with big focus on stability and backward compatibility. We don't accept breaking changes. When in doubt please open an issue and ask if a contribution in welcome before putting too much work into it. Open a pull request to submit code:
Also have a look at our contributors guide:
Yamagi Quake II has rather extensive documentation covering all relevant areas from installation and configuration to package building. Have a look at the documentation index:
Yamagi Quake II releases at an irregular schedule. The official releases with source code tarballs and prebuild Windows binaries can be found at the homepage:
Our CI builds unsupported Linux, MacOS and Windows binaries at every commit. The artifacts can be found here: