diff --git a/gamedata/core.games/engine.css.txt b/gamedata/core.games/engine.css.txt deleted file mode 100644 index 2c92e9a4d..000000000 --- a/gamedata/core.games/engine.css.txt +++ /dev/null @@ -1,53 +0,0 @@ -/** - * Do not edit this file. Any changes will be overwritten by the gamedata - * updater or by upgrading your SourceMod install. - * - * To override data in this file, create a subdirectory named "custom" and - * place your own gamedata file(s) inside of it. Such files will be parsed - * after SM's own. - * - * For more information, see http://wiki.alliedmods.net/Gamedata_Updating_(SourceMod) - */ - -"Games" -{ - /* CGlobalEntityList */ - "#default" - { - "Offsets" - { - /* Offset into LevelShutdown */ - "gEntList" - { - "windows" "11" - } - - "EntInfo" - { - "windows" "4" - "linux" "4" - "mac" "4" - } - } - - "Signatures" - { - "LevelShutdown" - { - "library" "server" - "windows" "\xE8\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\xB9\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\xE8" - } - "gEntList" - { - "library" "server" - "linux" "@gEntList" - "mac" "@gEntList" - } - } - - "Keys" - { - "UseInvalidUniverseInSteam2IDs" "1" - } - } -} diff --git a/gamedata/core.games/master.games.txt b/gamedata/core.games/master.games.txt index 86c19f83e..82719f12a 100644 --- a/gamedata/core.games/master.games.txt +++ b/gamedata/core.games/master.games.txt @@ -55,11 +55,6 @@ "engine" "bms" } - "engine.css.txt" - { - "engine" "css" - } - "engine.ep1.txt" { "engine" "original" diff --git a/gamedata/sdkhooks.games/engine.ep2v.txt b/gamedata/sdkhooks.games/engine.ep2v.txt index 32beb30e5..c7e55dd82 100644 --- a/gamedata/sdkhooks.games/engine.ep2v.txt +++ b/gamedata/sdkhooks.games/engine.ep2v.txt @@ -1,6 +1,6 @@ "Games" { - // tf, hl2mp, and dods are in the same file for legacy reasons + // tf, hl2mp, dods, css "tf" { "Offsets" @@ -474,4 +474,186 @@ } } } + + "cstrike" + { + "Offsets" + { + "EntityListeners" + { + "windows" "131108" + "windows64" "262200" + "linux" "131108" + "linux64" "262200" + } + "Blocked" + { + "windows" "104" + "windows64" "104" + "linux" "105" + "linux64" "105" + } + "EndTouch" + { + "windows" "102" + "windows64" "102" + "linux" "103" + "linux64" "103" + } + "FireBullets" + { + "windows" "114" + "windows64" "114" + "linux" "115" + "linux64" "115" + } + "GetMaxHealth" + { + "windows" "119" + "windows64" "119" + "linux" "120" + "linux64" "120" + } + "GroundEntChanged" + { + "windows" "180" + "windows64" "180" + "linux" "182" + "linux64" "182" + } + "OnTakeDamage" + { + "windows" "64" + "windows64" "64" + "linux" "65" + "linux64" "65" + } + "OnTakeDamage_Alive" + { + "windows" "278" + "windows64" "278" + "linux" "279" + "linux64" "279" + } + "PreThink" + { + "windows" "338" + "windows64" "338" + "linux" "339" + "linux64" "339" + } + "PostThink" + { + "windows" "339" + "windows64" "339" + "linux" "340" + "linux64" "340" + } + "Reload" + { + "windows" "276" + "windows64" "276" + "linux" "277" + "linux64" "277" + } + "SetTransmit" + { + "windows" "22" + "windows64" "22" + "linux" "23" + "linux64" "23" + } + "ShouldCollide" + { + "windows" "17" + "windows64" "17" + "linux" "16" + "linux64" "16" + } + "Spawn" + { + "windows" "29" + "windows64" "29" + "linux" "30" + "linux64" "30" + } + "StartTouch" + { + "windows" "100" + "windows64" "100" + "linux" "101" + "linux64" "101" + } + "Think" + { + "windows" "49" + "windows64" "49" + "linux" "50" + "linux64" "50" + } + "Touch" + { + "windows" "101" + "windows64" "101" + "linux" "102" + "linux64" "102" + } + "TraceAttack" + { + "windows" "62" + "windows64" "62" + "linux" "63" + "linux64" "63" + } + "Use" + { + "windows" "99" + "windows64" "99" + "linux" "100" + "linux64" "100" + } + "VPhysicsUpdate" + { + "windows" "160" + "windows64" "160" + "linux" "161" + "linux64" "161" + } + "Weapon_CanSwitchTo" + { + "windows" "272" + "windows64" "272" + "linux" "273" + "linux64" "273" + } + "Weapon_CanUse" + { + "windows" "266" + "windows64" "266" + "linux" "267" + "linux64" "267" + } + "Weapon_Drop" + { + "windows" "269" + "windows64" "269" + "linux" "270" + "linux64" "270" + } + "Weapon_Equip" + { + "windows" "267" + "windows64" "267" + "linux" "268" + "linux64" "268" + } + "Weapon_Switch" + { + "windows" "270" + "windows64" "270" + "linux" "271" + "linux64" "271" + } + } + } } diff --git a/gamedata/sdkhooks.games/game.cstrike.txt b/gamedata/sdkhooks.games/game.cstrike.txt deleted file mode 100644 index 59b46942c..000000000 --- a/gamedata/sdkhooks.games/game.cstrike.txt +++ /dev/null @@ -1,153 +0,0 @@ -"Games" -{ - "#default" - { - "Offsets" - { - "Blocked" - { - "windows" "102" - "linux" "103" - "mac" "103" - } - "EndTouch" - { - "windows" "100" - "linux" "101" - "mac" "101" - } - "FireBullets" - { - "windows" "112" - "linux" "113" - "mac" "113" - } - "GetMaxHealth" - { - "windows" "117" - "linux" "118" - "mac" "118" - } - "GroundEntChanged" - { - "windows" "177" - "linux" "179" - "mac" "179" - } - "OnTakeDamage" - { - "windows" "62" - "linux" "63" - "mac" "63" - } - "OnTakeDamage_Alive" - { - "windows" "272" - "linux" "273" - "mac" "273" - } - "PreThink" - { - "windows" "332" - "linux" "333" - "mac" "333" - } - "PostThink" - { - "windows" "333" - "linux" "334" - "mac" "334" - } - "Reload" - { - "windows" "270" - "linux" "271" - "mac" "271" - } - "SetTransmit" - { - "windows" "20" - "linux" "21" - "mac" "21" - } - "ShouldCollide" - { - "windows" "16" - "linux" "17" - "mac" "17" - } - "Spawn" - { - "windows" "22" - "linux" "23" - "mac" "23" - } - "StartTouch" - { - "windows" "98" - "linux" "99" - "mac" "99" - } - "Think" - { - "windows" "47" - "linux" "48" - "mac" "48" - } - "Touch" - { - "windows" "99" - "linux" "100" - "mac" "100" - } - "TraceAttack" - { - "windows" "60" - "linux" "61" - "mac" "61" - } - "Use" - { - "windows" "97" - "linux" "98" - "mac" "98" - } - "VPhysicsUpdate" - { - "windows" "157" - "linux" "158" - "mac" "158" - } - "Weapon_CanSwitchTo" - { - "windows" "266" - "linux" "267" - "mac" "267" - } - "Weapon_CanUse" - { - "windows" "260" - "linux" "261" - "mac" "261" - } - "Weapon_Drop" - { - "windows" "263" - "linux" "264" - "mac" "264" - } - "Weapon_Equip" - { - "windows" "261" - "linux" "262" - "mac" "262" - } - "Weapon_Switch" - { - "windows" "264" - "linux" "265" - "mac" "265" - } - } - } -} diff --git a/gamedata/sdkhooks.games/master.games.txt b/gamedata/sdkhooks.games/master.games.txt index b6249593b..20a718d02 100644 --- a/gamedata/sdkhooks.games/master.games.txt +++ b/gamedata/sdkhooks.games/master.games.txt @@ -156,11 +156,6 @@ "game" "ag2" } - "game.cstrike.txt" - { - "game" "cstrike" - } - "game.nmrih.txt" { "game" "nmrih" diff --git a/gamedata/sdktools.games/engine.ep2valve.txt b/gamedata/sdktools.games/engine.ep2valve.txt index 721f56c25..4e3546bd2 100644 --- a/gamedata/sdktools.games/engine.ep2valve.txt +++ b/gamedata/sdktools.games/engine.ep2valve.txt @@ -81,12 +81,6 @@ /* CBaseEntityOutput::FireOutput */ "#default" { - "#supported" - { - "game" "dod" - "game" "tf" - "game" "hl2mp" - } "Signatures" { "FireOutput" @@ -104,13 +98,6 @@ /* SetUserInfo data */ "#default" { - "#supported" - { - "game" "dod" - "game" "tf" - "game" "hl2mp" - } - "Offsets" { /** diff --git a/gamedata/sdktools.games/game.cstrike.txt b/gamedata/sdktools.games/game.cstrike.txt index 923d16d74..e2ba6cd04 100644 --- a/gamedata/sdktools.games/game.cstrike.txt +++ b/gamedata/sdktools.games/game.cstrike.txt @@ -29,107 +29,123 @@ { "SetOwnerEntity" { - "windows" "17" - "linux" "18" - "mac" "18" + "windows" "18" + "windows64" "18" + "linux" "19" + "linux64" "19" } "GiveNamedItem" { - "windows" "401" - "linux" "402" - "mac" "402" + "windows" "408" + "windows64" "408" + "linux" "409" + "linux64" "409" } "RemovePlayerItem" { - "windows" "270" - "linux" "271" - "mac" "271" + "windows" "276" + "windows64" "276" + "linux" "277" + "linux64" "277" } "Weapon_GetSlot" { - "windows" "268" - "linux" "269" - "mac" "269" + "windows" "274" + "windows" "274" + "linux" "275" + "linux64" "275" } "Ignite" { - "windows" "209" - "linux" "210" - "mac" "210" + "windows" "215" + "windows64" "215" + "linux" "216" + "linux64" "216" } "Extinguish" { - "windows" "213" - "linux" "214" - "mac" "214" + "windows" "219" + "windows64" "219" + "linux" "220" + "linux64" "220" } "Teleport" { - "windows" "108" - "linux" "109" - "mac" "109" + "windows" "110" + "windows64" "110" + "linux" "111" + "linux64" "111" } "CommitSuicide" { - "windows" "440" - "linux" "440" - "mac" "440" + "windows" "447" + "windows64" "447" + "linux" "447" + "linux64" "447" } "GetVelocity" { - "windows" "140" - "linux" "141" - "mac" "141" + "windows" "143" + "windows64" "143" + "linux" "144" + "linux64" "144" } "EyeAngles" { - "windows" "131" - "linux" "132" - "mac" "132" + "windows" "134" + "windows64" "134" + "linux" "135" + "linux64" "135" } "AcceptInput" { - "windows" "36" - "linux" "37" - "mac" "37" + "windows" "38" + "windows64" "38" + "linux" "39" + "linux64" "39" } "SetEntityModel" { - "windows" "24" - "linux" "25" - "mac" "25" + "windows" "26" + "windows64" "26" + "linux" "27" + "linux64" "27" } "WeaponEquip" { - "windows" "261" - "linux" "262" - "mac" "262" + "windows" "267" + "windows64" "267" + "linux" "268" + "linux64" "268" } "Activate" { - "windows" "33" - "linux" "34" - "mac" "34" + "windows" "35" + "windows64" "35" + "linux" "36" + "linux64" "36" } "PlayerRunCmd" { - "windows" "419" - "linux" "420" - "mac" "420" + "windows" "426" + "windows64" "426" + "linux" "427" + "linux64" "427" } "GiveAmmo" { - "windows" "252" - "linux" "253" - "mac" "253" + "windows" "258" + "windows64" "258" + "linux" "259" + "linux64" "259" } "GetAttachment" { - "windows" "205" - "linux" "206" - "mac" "206" + "windows" "211" + "windows64" "211" + "linux" "212" + "linux64" "212" } } } -} - +} \ No newline at end of file diff --git a/gamedata/sdktools.games/master.games.txt b/gamedata/sdktools.games/master.games.txt index 50a5e1188..c8a98c11b 100644 --- a/gamedata/sdktools.games/master.games.txt +++ b/gamedata/sdktools.games/master.games.txt @@ -50,11 +50,6 @@ "engine" "sdk2013" } - "engine.css.txt" - { - "engine" "css" - } - "engine.ep1.txt" { "engine" "original" diff --git a/gamedata/sm-cstrike.games/game.css.txt b/gamedata/sm-cstrike.games/game.css.txt index 773ec1f37..b4577deda 100644 --- a/gamedata/sm-cstrike.games/game.css.txt +++ b/gamedata/sm-cstrike.games/game.css.txt @@ -57,93 +57,78 @@ "library" "server" "windows" "\x55\x8B\xEC\x51\x89\x2A\x2A\x8B\x2A\x2A\x8B\x10\x8B" "linux" "@_ZN9CCSPlayer12RoundRespawnEv" - "mac" "@_ZN9CCSPlayer12RoundRespawnEv" } "SwitchTeam" { "library" "server" "windows" "\x55\x8B\xEC\x83\xEC\x2A\x89\x4D\x2A\x8B\x45\x2A\x50\xE8\x2A\x2A\x2A\x2A\x83\xC4\x04\x85\xC0\x74" "linux" "@_ZN9CCSPlayer10SwitchTeamEi" - "mac" "@_ZN9CCSPlayer10SwitchTeamEi" } "HandleCommand_Buy_Internal" { "library" "server" "windows" "\x55\x8B\xEC\x83\xEC\x2A\x89\x4D\x2A\x6A\x00\x8B\x2A\x2A\xE8\x2A\x2A\x2A\x2A\x0F\xB6\xC0\x85\xC0\x74" "linux" "@_ZN9CCSPlayer26HandleCommand_Buy_InternalEPKc" - "mac" "@_ZN9CCSPlayer26HandleCommand_Buy_InternalEPKc" } "GetWeaponPrice" { "library" "server" "windows" "\x8B\x81\x04\x09\x00\x00\xC3" "linux" "@_ZNK13CCSWeaponInfo14GetWeaponPriceEv" - "mac" "@_ZNK13CCSWeaponInfo14GetWeaponPriceEv" } "CSWeaponDrop"//Wildcard first 6 bytes for CS:S DM { "library" "server" "windows" "\x2A\x2A\x2A\x2A\x2A\x2A\x01\x00\x00\x89\x4D\xFC\xC6\x45\x2A\x2A\x8B\x4D\x2A\xE8\x2A\x2A\x2A\x2A\x0F\xB6\xC0" "linux" "@_ZN9CCSPlayer12CSWeaponDropEP17CBaseCombatWeaponbb" - "mac" "@_ZN9CCSPlayer12CSWeaponDropEP17CBaseCombatWeaponbb" } "TerminateRound" { "library" "server" "windows" "\x55\x8B\xEC\x83\xEC\x2A\x8B\x45\x0C\x53\x56\x57\x33\xF6" "linux" "@_ZN12CCSGameRules14TerminateRoundEfi" - "mac" "@_ZN12CCSGameRules14TerminateRoundEfi" } "GetTranslatedWeaponAlias" { "library" "server" "windows" "\x55\x8B\xEC\x56\x57\x8B\x7D\x2A\x33\xF6\x8D\x9B\x00\x00\x00\x00\x57\xFF\x34\xF5\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\x83\xC4\x08\x85\xC0\x74\x2A\x46\x83\xFE\x1A\x72\x2A\x8B\xC7\x5F\x5E\x5D\xC3" "linux" "@_Z24GetTranslatedWeaponAliasPKc" - "mac" "@_Z24GetTranslatedWeaponAliasPKc" } "GetWeaponInfo" { "library" "server" "windows" "\x55\x8B\xEC\x8B\x4D\x08\x85\xC9\x75\x2A\x33\xC0\x5D\xC3\x83\x2A\x2A\x7C\x2A\x69\xC9" "linux" "@_Z13GetWeaponInfo10CSWeaponID" - "mac" "@_Z13GetWeaponInfo10CSWeaponID" } "SetClanTag" { "library" "server" "windows" "\x55\x8B\xEC\x51\x89\x2A\x2A\x83\x2A\x2A\x2A\x74\x2A\x6A\x2A\x8B\x2A\x2A\x50" "linux" "@_ZN9CCSPlayer10SetClanTagEPKc" - "mac" "@_ZN9CCSPlayer10SetClanTagEPKc" } "AliasToWeaponID" { "library" "server" "windows" "\x55\x8B\xEC\x56\x57\x8B\x7D\x08\x85\xFF\x74\x2A\x33\xF6\x8B\xFF" "linux" "@_Z15AliasToWeaponIDPKc" - "mac" "@_Z15AliasToWeaponIDPKc" } "WeaponIDToAlias" { "library" "server" "windows" "\x55\x8B\xEC\x8B\x4D\x08\x33\xC0\xEB\x2A\x8D\x9B\x00\x00\x00\x00\x39\x0C\xC5\x2A\x2A\x2A\x2A\x74\x2A\x40\x83\xF8\x26\x72\x2A\x33\xC0\x5D" "linux" "@_Z15WeaponIDToAliasi" - "mac" "@_Z15WeaponIDToAliasi" } - - //For mac we use think since CheckWinLimit dosnt exist on mac. "CheckWinLimit" { "library" "server" "windows" "\xA1\x2A\x2A\x2A\x2A\x56\x8B\xF1\x8B\x48\x30\x85\xC9\x74\x2A\x0F" "linux" "@_ZN12CCSGameRules13CheckWinLimitEv" - "mac" "@_ZN12CCSGameRules5ThinkEv" } "SetModelFromClass" { "library" "server" "windows" "\x55\x8B\xEC\x83\xEC\x34\x89\x4D\xFC\x8B\x4D\xFC\xE8\x2A\x2A\x2A\x2A\x83\xF8\x02" "linux" "@_ZN9CCSPlayer17SetModelFromClassEv" - "mac" "@_ZN9CCSPlayer17SetModelFromClassEv" } } } diff --git a/gamedata/sm-tf2.games.txt b/gamedata/sm-tf2.games.txt index 52316d49d..fb9d5c9fc 100644 --- a/gamedata/sm-tf2.games.txt +++ b/gamedata/sm-tf2.games.txt @@ -31,37 +31,37 @@ /* String : "reveal_disguised_victim_on_hit", follow the xref, RemoveDisguise is the subroutine that's called if the return value of CALL_ATTRIB_HOOK_INT( iRevealDisguisedSpyOnHit, reveal_disguised_victim_on_hit ); was true */ "library" "server" - "windows" "\x55\x8B\xEC\x51\x56\x8B\xF1\x57\xF7\x86\xD0\x00\x00\x00\x00\x00\x02\x00" - "windows64" "\x48\x89\x5C\x24\x10\x48\x89\x74\x24\x18\x57\x48\x83\xEC\x20\x48\x8B\xD9\xBA\x03\x00\x00\x00" + "windows" "\x55\x8B\xEC\x81\xEC\x10\x01\x00\x00\x53\x56\x57\x8B\x7D\x0C\x8B\xF1" + "windows64" "\x4D\x85\xC0\x0F\x84\x2A\x2A\x2A\x2A\x48\x8B\xC4\x55\x53" "linux" "@_ZN15CTFPlayerShared14RemoveDisguiseEv" "linux64" "@_ZN15CTFPlayerShared14RemoveDisguiseEv" } "Disguise" { /* CTFPlayerShared::Disguise */ - /* String : "disguise", follow the xref to function that involves a lot of other commands "uncloak", "taunt", "despawn"... CTFPlayerShared::Disguise is the only subroutine that is called with the return value of RandomInt */ + /* String : "mod_disguise_consumes_cloak" */ "library" "server" "windows" "\x55\x8B\xEC\x83\xEC\x24\x56\x57\x8B\xF9\x8B\x8F\x8C\x01\x00\x00" - "windows64" "\x40\x53\x55\x56\x57\x41\x54\x48\x81\xEC\x90\x00\x00\x00" + "windows64" "\x40\x53\x55\x56\x57\x41\x54\x48\x81\xEC\x80\x00\x00\x00" "linux" "@_ZN15CTFPlayerShared8DisguiseEiiP9CTFPlayerb" "linux64" "@_ZN15CTFPlayerShared8DisguiseEiiP9CTFPlayerb" } "Regenerate" { /* CTFPlayer::Regenerate */ - /* String : "item_meter_resupply_denied" -> guessing game on which one, should be the one with "player_regenerate"*/ + /* String : "item_meter_resupply_denied" -> subroutine with string "player_regenerate"*/ "library" "server" - "windows" "\x55\x8B\xEC\x83\xEC\x5C\x53\x56\x57\x8B\xF9\x8B\x07" - "windows64" "\x48\x8B\xC4\x88\x50\x10\x48\x81\xEC\xE8\x00\x00\x00" + "windows" "\x55\x8B\xEC\x83\xEC\x44\x53\x56\x57\x8B\xF9" + "windows64" "\x48\x8B\xC4\x88\x50\x10\x48\x81\xEC\xD8\x00\x00\x00" "linux" "@_ZN9CTFPlayer10RegenerateEb" "linux64" "@_ZN9CTFPlayer10RegenerateEb" } "AddCondition" { /* CTFPlayerShared::AddCond */ - /* String: "mult_medigun_overheal_decay" -> most bottom function, its called twice in the same "cube" of function*/ + /* String: "#TF_HALLOWEEN_MERASMUS_YOU_ARE_BOMB" -> walk back the graph, right before there should two subroutines call (CTFPlayerShared::AddCond) with 0x20 & 0x35 as parameter */ "library" "server" - "windows" "\x55\x8B\xEC\x83\xEC\x08\x56\x8B\xF1\x8B\x8E\x2A\x2A\x2A\x2A\x85\xC9\x0F\x84\x2A\x2A\x2A\x2A\x8B\x01\x8B" + "windows" "\x55\x8B\xEC\x83\xEC\x08\x56\x8B\xF1\x8B\x8E\x8C\x01\x00\x00\x85\xC9" "windows64" "\x48\x89\x5C\x24\x18\x48\x89\x7C\x24\x20\x41\x56\x48\x83\xEC\x40" "linux" "@_ZN15CTFPlayerShared7AddCondE7ETFCondfP11CBaseEntity" "linux64" "@_ZN15CTFPlayerShared7AddCondE7ETFCondfP11CBaseEntity" @@ -72,7 +72,7 @@ /* String: "damage_prevented" */ "library" "server" "windows" "\x55\x8B\xEC\x83\xEC\x08\x53\x8B\x5D\x08\x56\x53" - "windows64" "\x40\x53\x57\x41\x56\x48\x83\xEC\x20" + "windows64" "\x40\x53\x57\x41\x56\x48\x83\xEC\x20\x45\x0F\xB6\xF0" "linux" "@_ZN15CTFPlayerShared10RemoveCondE7ETFCondb" "linux64" "@_ZN15CTFPlayerShared10RemoveCondE7ETFCondb" } @@ -81,7 +81,7 @@ /* CTFPlayer::SetPowerplayEnabled */ /* String: "scenes/player/pyro/low/1485.vcd" -> Main fuction -> That main function again.*/ "library" "server" - "windows" "\x55\x8B\xEC\x51\x80\x7D\x08\x00\x56\x57" + "windows" "\x55\x8B\xEC\x80\x7D\x08\x00\x56\x57\x8B\xF9" "windows64" "\x48\x89\x5C\x24\x08\x57\x48\x83\xEC\x20\x48\x8D\x99\x60\x28\x00\x00" "linux" "@_ZN9CTFPlayer19SetPowerplayEnabledEb" "linux64" "@_ZN9CTFPlayer19SetPowerplayEnabledEb" @@ -89,9 +89,9 @@ "SetInWaitingForPlayers" { /* CTeamplayRoundBasedRules::SetInWaitingForPlayers */ - /* String: "teamplay_restart_round" -> first call on the most bottom "cube" of function */ + /* Locate "mp_waitingforplayers_time" convar. It's used in the only subroutine with no strings */ "library" "server" - "windows" "\x55\x8B\xEC\x51\x56\x8B\xF1\xE8\x2A\x2A\x2A\x2A\x84\xC0\x0F\x85\x2A\x2A\x2A\x2A" + "windows" "\x55\x8B\xEC\x56\x8B\xF1\xE8\x2A\x2A\x2A\x2A\x84\xC0\x0F\x85\x2A\x2A\x2A\x2A" "windows64" "\x48\x89\x5C\x24\x08\x57\x48\x83\xEC\x20\x0F\xB6\xFA\x48\x8B\xD9\xE8\x2A\x2A\x2A\x2A\x84\xC0\x0F\x85\x2A\x2A\x2A\x2A" "linux" "@_ZN24CTeamplayRoundBasedRules22SetInWaitingForPlayersEb" "linux64" "@_ZN24CTeamplayRoundBasedRules22SetInWaitingForPlayersEb" @@ -109,7 +109,7 @@ "MakeBleed" { /* CTFPlayerShared::MakeBleed */ - /* String: "spell_batball_red" follow the xref to the function that also has "spell_batball_blue", in graph view, pick the node that validates the dynamic cast, MakeBleed is the only subroutine called in that node.*/ + /* String: "InputBleedPlayer"/"BleedPlayer" follow to the input subroutine (CTFPlayer::InputBleedPlayer), MakeBleed is the last called subroutine.*/ "library" "server" "windows" "\x55\x8B\xEC\x83\xEC\x10\x53\x8B\xD9\x89\x5D\xF8\x8B\x8B\x8C\x01\x00\x00" "windows64" "\x40\x56\x41\x55\x41\x57" @@ -121,8 +121,8 @@ /* DuelMiniGame_IsInDuel */ /* String: "CTFPlayer::ForceChangeTeam( %d ) - invalid team index.\n", follow the xref, go back to the top of the subroutine, DuelMiniGame_IsInDuel is the subroutine that is called with 3 arguments and a constant value of 1.*/ "library" "server" - "windows" "\x55\x8B\xEC\x83\xEC\x08\x81\x65\x2A\x2A\x2A\x2A\x2A\x8D\x45\xF8\x8B\x4D\x08\xC6\x45\xFF\x00\x81\x65\x2A\x2A\x2A\x2A\x2A\x50\xC7\x45\x2A\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\x84\xC0\x75\x04" - "windows64" "\x48\x83\xEC\x28\x81\x64\x24\x3C\xFF\xFF\x0F\xFF" + "windows" "\x55\x8B\xEC\x83\xEC\x10\x81\x65\xF4\xFF\xFF\x0F\xFF\x8D\x45\xF0\x8B\x4D\x08\xC6\x45\xF7\x00\x81\x65\xF4\x00\x00\xF0\xFF\x50\xC7\x45\xF0\x00\x00\x00\x00\xE8\x2A\x2A\x2A\x2A\x84\xC0\x0F\x84\x2A\x2A\x2A\x2A\x8D\x45\xF0\x57\x50\xE8\x2A\x2A\x2A\x2A\x8B\xF8\x83\xC4\x04\x85\xFF\x0F\x84\x2A\x2A\x2A\x2A\x81\x65\xFC\xFF\xFF\x0F\xFF\x8B\x0D\x2A\x2A\x2A\x2A\x53\xC6\x45\xFF\x00\xBB\x01\x00\x00\x00\x81\x65\xFC\x00\x00\xF0\xFF\xC7\x45\xF8\x00\x00\x00\x00\x39\x59\x14\x0F\x8C\x2A\x2A\x2A\x2A\x56\x8D\xA4\x24\x00\x00\x00\x00\x53\xE8\x2A\x2A\x2A\x2A\x8B\xF0\x83\xC4\x04\x85\xF6\x74\x2A\x8B\x16\x8B\xCE\x8B\x92\x48\x01\x00\x00\xFF\xD2\x84\xC0\x74\x2A\x3B\x75\x08\x74\x2A\x8D\x45\xF8\x8B\xCE\x50\xE8\x2A\x2A\x2A\x2A\x84\xC0\x74\x2A\x8B\x4D\xF8\x8B\x45\xFC\x3B\x0F\x75\x2A\x3B\x47\x04\x74\x2A\x3B\x4F\x08\x75\x2A\x3B\x47\x0C\x74\x2A\xA1\x2A\x2A\x2A\x2A\x43\x3B\x58\x14\x7E\x2A\x5E\x5B\x5F\x8B\xE5\x5D\xC3\x8B\x5D\x0C" + "windows64" "\x48\x89\x5C\x24\x18\x55\x41\x56\x41\x57\x48\x83\xEC\x30\x81\x64\x24\x24\xFF\xFF\x0F\xFF" "linux" "@_Z21DuelMiniGame_IsInDuelP9CTFPlayer" "linux64" "@_Z21DuelMiniGame_IsInDuelP9CTFPlayer" }