Commit Graph
62 Commits
Author SHA1 Message Date
ricardoofnl a1748ca81f [saco] Implement/match UnkAB; the trailing GetAt only survives DCE when its result gates a return 2026-09-05 09:07:34 +07:00
ricardoofnl 88f696841e [saco] Implement/match Unk3D; the dialog id widens with movsx, so the local is a signed short 2026-09-05 08:45:38 +07:00
ricardoofnl ac18ccbe0a [saco] Implement/match Unk24; it builds a 3D text label and the flag init lands between rep stosd and stosb 2026-09-05 08:45:38 +07:00
ricardoofnl 1ba74d3c0e [saco] Implement/match Unk3B; it sets a chat bubble and caps the text at 0x90 bytes 2026-09-05 08:45:38 +07:00
ricardoofnl 479436d28c [saco] Implement/match UpdateScoresPingsIPs; the row count is an unsigned divide and the loop index is a WORD 2026-09-05 08:45:38 +07:00
ricardoofnl 791edd231d [saco] Implement/match Unk22; MSVC parks the 2-byte locals below the 4-byte ones under the BitStream 2026-09-05 08:45:38 +07:00
ricardoofnl dcf5887c29 [saco] Implement/match EditObject; the WORD init widens to a dword store over the dead padding 2026-09-05 08:45:38 +07:00
ricardoofnl 8bac5c0eb0 [saco] Add FUNC_10011990; the inlined Write copies each by-value parameter into a temp slot first 2026-09-05 08:45:38 +07:00
ricardoofnl 77f69b96f2 [saco] Implement/match EditAttachedObject; the zero-init of the read target sits after the BitStream ctor 2026-09-05 08:45:38 +07:00
ricardoofnl ab2512f919 [saco] Implement/match SelectObject; it cancels all three editor globals, the last one without a state check 2026-09-05 08:45:38 +07:00
ricardoofnl 2eedb90411 [saco] Implement/match Unk1C; the +0x80 guard needs mov/test while the +0 one folds into a cmp 2026-09-05 08:45:38 +07:00
ricardoofnl 4fca89b828 [saco] Add FUNC_1000EBA0; the second member call reloads the global because the first one can move it 2026-09-05 08:45:38 +07:00
ricardoofnl 37db7dc3b2 [saco] Add FUNC_1000EC30; caching the global inside the guard keeps it in eax and copies to ecx 2026-09-05 08:45:38 +07:00
ricardoofnl 441f89429a [saco] Implement/match UnkAA; the Read(bool&) specialization cannot throw so the frame carries no EH state 2026-09-04 22:28:01 +07:00
ricardoofnl 1a2d8d76ad [saco] Match SvrStats; it reads straight into the global RakServerStats 2026-09-03 05:09:24 +07:00
ricardoofnl f1ca3e849c [saco] Match RequestClass; the 46-byte SPAWN_INFO comes off the stream whole 2026-09-03 05:09:24 +07:00
ricardoofnl 653054feaf [saco] Match SetRaceCheckpoint; the size read reuses the fX temp 2026-09-03 05:09:23 +07:00
ricardoofnl 811f4f61bf [saco] Match SetCheckpoint; the single radius fills all three extent components 2026-09-03 05:09:23 +07:00
ricardoofnl 9f8466f0bb [saco] Match Chat; local text goes to the chat window, remote text to the player 2026-09-03 05:09:23 +07:00
ricardoofnl b62d35175c [saco] Match ConnectionRejected; four reject reasons then a 500ms Disconnect 2026-09-03 05:09:23 +07:00
ricardoofnl dee26ca679 [saco] Match ClientMessage; the 256-byte buffer forces the 8-byte stack realign 2026-09-03 05:09:23 +07:00
ricardoofnl 442c3fcf57 [saco] Add matching Checksum and LoadModelsThread; both were missing from the TU 2026-09-03 05:09:23 +07:00
ricardoofnl 0ee9dcba50 Remove the duplicate declarations and leftover stubs left by the merge 2026-09-03 02:40:51 +07:00
ricardoofnl 1cb6783ace [saco] Match ExitVehicle; it only acts inside a 200-unit radius 2026-09-03 02:32:57 +07:00
ricardoofnl 5bf5327765 [saco] Match WorldPlayerDeath; CPlayerPool::GetAt inlines into the handler 2026-09-03 02:32:57 +07:00
ricardoofnl db9020f727 [saco] Annotate RegisterRPCs and UnRegisterRPCs; both already match retail 2026-09-03 01:32:43 +07:00
ricardoofnl 85da1dd8ee [saco] Match DamageVehicle; panel/door/light then tyre damage on the pooled vehicle 2026-09-03 01:32:43 +07:00
ricardoofnl 3b68777e5a [saco] Match RequestSpawn; outcome 2 or a pending request re-enters spawn 2026-09-03 01:32:43 +07:00
ricardoofnl 00d883b2d4 [saco] Annotate the verified net/netrpc.cpp handlers 2026-09-03 01:32:43 +07:00
ricardoofnl e988b6c8e8 [saco] Match ScmEvent; five reads forwarded to the vehicle event dispatcher 2026-09-03 01:32:43 +07:00
ricardoofnl c5d8ac9dba [saco] Match EnterVehicle; the passenger byte is widened into a BOOL before the call 2026-09-03 01:32:43 +07:00
ricardoofnl f9453b7236 [saco] Match ExitVehicle; it only acts inside a 200-unit radius 2026-09-03 01:32:43 +07:00
ricardoofnl 7cc98ddfda [saco] Match UnkAC; it removes an actor and needs CNetGame::GetActorPool 2026-09-03 01:32:17 +07:00
ricardoofnl 7121aed4c9 [saco] Match WorldPlayerRemove; it re-fetches the pool for the GetAt lookup 2026-09-03 01:32:17 +07:00
ricardoofnl 8a582bc5e0 [saco] Match WorldPlayerDeath; CPlayerPool::GetAt inlines into the handler 2026-09-03 01:32:17 +07:00
ricardoofnl b403f3c79e [saco] Match ServerQuit; the player pool is fetched before the two reads 2026-09-03 01:31:09 +07:00
ricardoofnl 71a9be0c83 [saco] Match Pickup; the payload is a 20-byte PICKUP read straight off the stream 2026-09-03 01:31:09 +07:00
ricardoofnl 8ad6483554 [saco] Match DestroyPickup 2026-09-03 01:31:09 +07:00
ricardoofnl a0eaa4f2f7 [saco] Match Unk3A; it deletes a 3D text label, bailing early when the pool is absent 2026-09-03 01:31:09 +07:00
ricardoofnl 6dc168b664 [saco] Match Unk3C; it zeroes the DWORD after constructing the BitStream 2026-09-03 01:31:09 +07:00
ricardoofnl 4ed43428b9 [saco] Match SetTimeEx; hour and minute are cached in the settings block after CGame::SetWorldTime 2026-09-03 01:31:09 +07:00
ricardoofnl f6476121ef [saco] Match Weather; it mirrors the byte into the settings block before CGame::SetWorldWeather 2026-09-03 01:31:09 +07:00
ricardoofnl f05bdb8647 [saco] Match WorldTime; the hour goes through an inline CNetGame::SetWorldTime 2026-09-03 01:31:09 +07:00
ricardoofnl 222d5d1bc5 [saco] Match DestroyWeaponPickup; the pickup pool entry point takes a WORD 2026-09-03 01:31:09 +07:00
ricardoofnl ad88643db4 [saco] Implement/match DisableCheckpoint, DisableRaceCheckpoint and GameModeRestart 2026-08-30 13:28:58 +07:00
RD42 15ab1d056a [saco] Fix compilation errors 2024-10-28 00:00:41 +08:00
RD42 d9976bb678 [bot] Implement WorldVehicleAdd(...) 2024-06-26 23:21:06 +08:00
RD42 a94fbc924b [bot] Implement WorldVehicleRemove(...) 2024-06-26 23:12:06 +08:00
RD42 5ce9095241 [bot] Implement WorldPlayerRemove(...) 2024-06-08 21:44:02 +08:00
RD42 0902c67707 [bot] Implement WorldPlayerDeath(...) 2024-06-08 21:42:42 +08:00