Commit Graph

109 Commits

Author SHA1 Message Date
ricardoofnl 10dddab97e [saco] Implement/match FUNC_10016370, the bullet sync handler; per-component float assignments keep the direct displacements a VECTOR copy would hide behind a lea 2026-09-05 10:07:58 +07:00
ricardoofnl df4b6ce913 [saco] Implement/match FUNC_100A47B0; every statement after the first reloads the aim pointer because the store through it may alias the global 2026-09-05 08:45:38 +07:00
ricardoofnl 2f1bbe95af [saco] Implement/match FUNC_100A4F60; the two byte nop is a memset, a plain WORD store would fold the immediate 2026-09-05 08:45:38 +07:00
ricardoofnl aad45bc751 [saco] Implement/match sub_100A5410; copying a VECTOR element wise avoids the scratch base register a struct assignment would need 2026-09-05 08:45:37 +07:00
ricardoofnl 83a6d7e517 [saco] Implement/match FUNC_100A2FC0 and FUNC_100A46F0; the flag clear masks with a literal 0xBF, ~0x40 would fit a sign extended imm8 2026-09-05 08:45:37 +07:00
ricardoofnl 487ea99c5f [saco] Implement/match FUNC_100A3070, FUNC_100A4670, FUNC_100A4E20 and FUNC_100A5F30; the single add esp, 0x20 is MSVC pooling the cleanup of three __cdecl calls 2026-09-05 08:45:37 +07:00
ricardoofnl 75c7514fcc [saco] Implement/match FUNC_100A4DC0, FUNC_100A5570 and FUNC_100A5EB0; AddDebugMessage is variadic so its this is pushed as the leftmost argument 2026-09-05 08:45:37 +07:00
ricardoofnl 3bcd9ffbde [saco] Implement/match FUNC_100A41A0, FUNC_100A4340, FUNC_100A43B0, FUNC_100A4D40, FUNC_100A2F60 and FUNC_100A5530; the load-then-push argument pairs are asm, a C call would use push dword ptr 2026-09-05 08:45:37 +07:00
ricardoofnl 9b7439cb06 [saco] Implement/match the three plate raster helpers; the mov edx, 0x34/lea pair is hand written asm and the trailing return 0 is what keeps the zero path last 2026-09-05 08:45:37 +07:00
ricardoofnl 366fbef654 [saco] Implement/match eight naked hook stubs; the bare pushad/popad pair marks where a body was compiled out 2026-09-05 08:45:37 +07:00
ricardoofnl e4c72ce5f7 [saco] Implement/match the four ped heading patch helpers; each is an inlined memcpy/memset over the saved code arrays 2026-09-04 22:28:01 +07:00
ricardoofnl 96a893c87a [saco] Match FUNC_100A3BB0; the local-target flag is a byte and its if/else arms are inverted 2026-09-04 19:32:02 +07:00
ricardoofnl b25e6281da Move CObject into net/objectpool.h and name field_44; the GTA handle the object RPCs pass 2026-09-03 04:24:35 +07:00
ricardoofnl aed6c4dd6f Repoint the four aliased CPlayerPed calls at their real members; the aliases were declared but never defined 2026-09-03 03:18:52 +07:00
ricardoofnl c478c7dbfe [saco] Match FUNC_100A5240; the team-damage test compares two bytes, not two ints 2026-09-03 02:32:56 +07:00
ricardoofnl d1d2e66989 [saco] Match FUNC_100A3AE0; the vehicle fallback assigns and breaks instead of returning 2026-09-03 02:02:39 +07:00
ricardoofnl 89f12d3d55 [saco] Match FUNC_100A3B80; it maps a ped pointer to its actor id 2026-09-03 02:02:39 +07:00
ricardoofnl 37237dd629 [saco] Match ProcessControlRemotePed; the SEH handler kicks the player whose ped faulted 2026-09-03 02:02:39 +07:00
ricardoofnl 6f2ce72101 [saco] Implement CWorld__ProcessAttachedEntities_Hook; still 3 bytes short on the pool + i*4 CSE 2026-09-03 01:31:09 +07:00
ricardoofnl 2245f13b46 [saco] Match CHud__DrawRadar_Hook and CHud__DrawCrossHairs_Hook; FUNC_100A24C0 is inline 2026-09-03 01:31:09 +07:00
ricardoofnl 6a18c48699 [saco] Match GameInstallHooks and four more installers; InstallMethodHook/InstallCallHook are inline 2026-09-03 01:31:09 +07:00
ricardoofnl a5e0fa788f [saco] Drop the hooks.cpp prototypes now declared in util.h 2026-08-30 15:01:16 +07:00
ricardoofnl 149c1cc22b [saco] Implement/match CWorld__ProcessLineOfSight_Hook 2026-08-30 14:36:40 +07:00
ricardoofnl 6cc15841d5 [saco] Implement/match AllVehicles_ProcessControl_Hook 2026-08-30 14:18:18 +07:00
ricardoofnl a0ec3c86e7 [saco] Fold the duplicate 0x1014FFAC object pool extern 2026-08-30 14:15:22 +07:00
ricardoofnl cb64661381 [saco] Implement/match CGame__Process_Hook 2026-08-30 14:10:32 +07:00
ricardoofnl f50bad1c84 [saco] Implement/match CWeapon__FireInstantHit_Hook 2026-08-30 14:05:35 +07:00
ricardoofnl 9b134f0932 [saco] Implement/match CCollision__BuildCacheOfCameraCollision_Hook 2026-08-30 14:05:35 +07:00
ricardoofnl 90115c3135 [saco] Implement/match CAutomobile__BreakTowLink_Hook 2026-08-30 14:03:10 +07:00
ricardoofnl 31e410e44d [saco] Fold the duplicate 0x10151628 scratch global shared by TaskUseGun and GetText 2026-08-30 13:53:01 +07:00
ricardoofnl d2ab3f0b8d [saco] Implement/match TaskUseGun_Hook 2026-08-30 13:50:42 +07:00
ricardoofnl b5ca28bc77 [saco] Implement/match CCivillianPed__ProcessControl_Hook 2026-08-30 13:49:52 +07:00
ricardoofnl f4cddb25f0 [saco] Unify the ped ProcessControl globals shared by two hooks 2026-08-30 13:47:10 +07:00
ricardoofnl 8e9614dfcc [saco] Implement/match CPlayerPed_ProcessControl_Hook 2026-08-30 13:43:48 +07:00
ricardoofnl 773875d698 [saco] Implement/match CRenderer__AddEntityToRenderList_Hook 2026-08-30 13:38:00 +07:00
ricardoofnl 72ce063c0b [saco] Implement/match CObject__CreateRwObject_Hook 2026-08-30 13:36:25 +07:00
ricardoofnl 39788d4a83 [saco] Implement/match GetText_Hook 2026-08-30 13:34:41 +07:00
ricardoofnl b8a63d47fb [saco] Implement/match CVehicle__UsesSiren_Hook 2026-08-30 13:33:06 +07:00
ricardoofnl 38b804b176 [saco] Implement/match CVehicle__InflictDamage_Hook 2026-08-30 13:33:06 +07:00
ricardoofnl 15f82a725f [saco] Implement/match CBulletInfo__AddBullet_Hook 2026-08-30 13:33:06 +07:00
ricardoofnl 793b1593a6 [saco] Implement/match CWeapon__FireSniper_Hook 2026-08-30 13:33:06 +07:00
ricardoofnl 001f9bbacc [saco] Implement/match WeaponRender__GetWeaponSkill_Hook 2026-08-30 13:33:06 +07:00
ricardoofnl 8762250ea7 [saco] Implement/match PedDamage_Hook 2026-08-30 13:33:06 +07:00
ricardoofnl 9e2ddf0623 [saco] Implement/match CPed_Render_Hook 2026-08-30 13:33:06 +07:00
ricardoofnl 8461b67d24 [saco] Reconcile CObject/CObjectPool declarations after merging hook batches 2026-08-30 13:12:47 +07:00
ricardoofnl fd4cfd4951 [saco] Implement/match TaskExitVehicle 2026-08-30 13:06:25 +07:00
ricardoofnl 4c07a78bd8 [saco] Implement/match CAnimManager__BlendAnimation_Hook 2026-08-30 13:06:25 +07:00
ricardoofnl 4aa2c1af2d [saco] Implement/match CAnimManager__AddAnimation_Hook 2026-08-30 13:06:25 +07:00
ricardoofnl ceec9a4f8d [saco] Implement/match TaskEnterVehicleDriver_Hook 2026-08-30 13:06:25 +07:00
ricardoofnl 6632d8ece4 [saco] Implement/match CWorld__ProcessAttachedEntities__PositionAttachedEntity_Hook 2026-08-30 13:06:25 +07:00