Vanilla-Conquer
Vanilla-Conquer copied to clipboard
[RA] Timequake Bugs
There are two bugs relating to timequakes:
The first is that they simply don't happen. Westwood accidentally broke the "mapwide timequake as a possible consequence of chronoshift" code in Aftermath when they reused the TimeQuake global variable for MAD Tanks in such a way that it would get reset to false every tick unless a MAD tank was detonating that tick. (This has been broken so long I'd bet most people don't even remember mapwide timequakes as a possible consequence of chronoshift.) Fixing this requires splitting the variable into two -- one for the mapwide timequake and one for the local (MAD tank) timequake.
The second is that only a single coordinate is stored for the location of a pending MAD tank localized timequake. This means that if multiple MAD tanks detonate on the same tick, only one will deal damage. Fixing this requires using a vector or some other dynamically allocated structure to hold an indefinite number of coordinates.
I've got a commit for this on CFE Patch Redux. Unfortunately, it was a very big commit, so you'll have to search for "TimeQuake".
My fix does not handle the possibility that the game is saved and reloaded during the 1 tick delay while one or more localized timequakes are pending. I'm unsure how to go about integrating a dynamic structure into C&C save files. Given the rarity of this scenario, it may not be worth the hassle to figure out.