jonetiz / H3Randomizer

Character and Weapon Randomizer for Halo 3 on the Master Chief Collection (Steam Only)
https://haloruns.com
1 stars 0 forks source link

Handle Marines in Phantoms and Covenant in Pelicans #2

Open jonetiz opened 2 years ago

jonetiz commented 2 years ago

The solution burnt devised for HCE doesn't seem that it will work quite as simply in H3 due to how jmad tags work, and since I am not very adept at reverse engineering, I may need help.

Potential idea: build a custom map/use mod tools to play around with vehicle_load_magic and try to find function address?

jonetiz commented 2 years ago

After further investigation, it seems that vehicle_load_magic and ai_vehicle_enter_immediate are handled differently and have different issues; Looks like a fix for marines/flood being ai_vehicle_enter_immediate'd into phantoms is to replace jae halo3.dll+569180 at halo3.dll+569092 with nop. It seems that the RAX register is supposed to be set just before the check to a certain value, but not sure what that value is. This does not solve covenant getting put in pelicans.

Additional important notes for future reference:

jonetiz commented 2 years ago

Similar fix to above for vehicle_load_magic, replace je halo3.dll+39985A at halo3.dll+39980C with NOP and they will do a similar thing where they t-pose and fully simulate once they spawn in. Same issue right now, where they just sit inside the phantom and don't actually move or anything.

jonetiz commented 2 years ago

Consolidation of above: To make marines able to enter phantoms, replace halo3.dll+39980C and halo3.dll+569092 with NOP. Need to find a way to get them to exit.