Closed Raptor007 closed 2 years ago
This is looking like it might be a huge pain, but I started a branch to try: https://github.com/Raptor007/aq2-tng/tree/quetoo
First step is making G_LoadGame
(Quetoo's version of GetGameAPI
) and the relevant data structures:
Quake2: https://github.com/Raptor007/aq2-tng/blob/b704373848c930347cb044c52dc5c375930dbb15/source/g_main.c#L505
Quetoo: https://github.com/Raptor007/aq2-tng/blob/ee2c8279e5751b004775f10bda4e810c7c6162c8/source/quetoo/g_main.c#L1554
Some of the imported/exported functions may need wrappers, especially if their arguments or data structures are different than the Quake2 versions.
I'll need to reconcile some data structures, especially how they handle game-specific entity/client members. It might be easiest to set Quetoo's locals.opaque
to the unmodified Quake2 data structures, and synchronize the parts they have in common every frame:
Quake2: https://github.com/Raptor007/aq2-tng/blob/b704373848c930347cb044c52dc5c375930dbb15/source/g_local.h#L1722-L1723
Quetoo: https://github.com/Raptor007/aq2-tng/blob/ee2c8279e5751b004775f10bda4e810c7c6162c8/source/quetoo/game.h#L94
At least the fact that Quetoo runs at 40fps shouldn't be a problem. I'll just need to set game.framerate
to QUETOO_TICK_RATE
and calculate the other relevant values from that:
https://github.com/Raptor007/aq2-tng/blob/b704373848c930347cb044c52dc5c375930dbb15/source/g_save.c#L586
Working on it... https://github.com/Raptor007/aq2-tng/commits/quetoo
make QUETOO=y
At this point, I think it makes more sense (and would be much less work) to simply clean up AQ2 for Quake 2 RTX. The main issue to solve is that there are .md3 models of Quake2 weapons and items in baseq2/q2rtx_media.pkz, which seem to override the .md2 files in any mod directory.
Per the Quetoo issue tracker, their code is now too significantly different to support a Quake2-style mod. Action Quetoo will have to be a total rewrite forked from Quetoo, not a fork of the AQ2 code. https://github.com/jdolan/quetoo/issues/550#issuecomment-1013217238
Try to build AQ2:TNG for Quetoo: https://github.com/jdolan/quetoo/tree/master/src/game
@deluv @stan0x