64-bit support for CSGO on Linux and macOS (#705)

This commit is contained in:
Scott Ehlert
2017-12-20 01:56:23 -06:00
committed by GitHub
parent 057a5790e2
commit ce1a4dcac0
90 changed files with 15682 additions and 947 deletions
+2
View File
@@ -108,7 +108,9 @@
{
"windows" "11"
"linux" "12"
"linux64" "12"
"mac" "12"
"mac64" "12"
}
}
}
+6
View File
@@ -31,12 +31,16 @@
"EntInfo"
{
"linux" "4"
"linux64" "8"
"mac64" "8"
}
/* Offset into LevelShutdown */
"gEntList"
{
"linux" "13"
"linux64" "13"
"mac64" "13"
}
}
@@ -53,6 +57,8 @@
{
"library" "server"
"linux" "\xE8\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\xC7\x2A\x2A\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\xE8"
"linux64" "\xE8\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\x48\x8B\x3D\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\xE8"
"mac64" "\xE8\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\x48\x8D\x3D\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\xE8"
}
}
}
+50 -25
View File
@@ -8,145 +8,169 @@
{
"windows" "105"
"linux" "106"
"mac" "106"
"linux64" "106"
"mac64" "106"
}
"EndTouch"
{
"windows" "103"
"linux" "104"
"mac" "104"
"linux64" "104"
"mac64" "104"
}
"FireBullets"
{
"windows" "117"
"linux" "118"
"mac" "118"
"linux64" "118"
"mac64" "118"
}
"GetMaxHealth"
{
"windows" "121"
"linux" "122"
"mac" "122"
"linux64" "122"
"mac64" "122"
}
"GroundEntChanged"
{
"windows" "175"
"linux" "177"
"mac" "177"
"linux64" "177"
"mac64" "177"
}
"OnTakeDamage"
{
"windows" "67"
"linux" "68"
"mac" "68"
"linux64" "68"
"mac64" "68"
}
"OnTakeDamage_Alive"
{
"windows" "295"
"linux" "296"
"mac" "296"
"linux64" "296"
"mac64" "296"
}
"PreThink"
{
"windows" "368"
"linux" "369"
"mac" "369"
"linux64" "369"
"mac64" "369"
}
"PostThink"
{
"windows" "369"
"linux" "370"
"mac" "370"
"linux64" "370"
"mac64" "370"
}
"Reload"
{
"windows" "306"
"linux" "312"
"mac" "312"
"linux64" "312"
"mac64" "312"
}
"SetTransmit"
{
"windows" "22"
"linux" "23"
"mac" "23"
"linux64" "23"
"mac64" "23"
}
"ShouldCollide"
{
"windows" "17"
"linux" "18"
"mac" "18"
"linux64" "18"
"mac64" "18"
}
"Spawn"
{
"windows" "24"
"linux" "25"
"mac" "25"
"linux64" "25"
"mac64" "25"
}
"StartTouch"
{
"windows" "101"
"linux" "102"
"mac" "102"
"linux64" "102"
"mac64" "102"
}
"Think"
{
"windows" "51"
"linux" "52"
"mac" "52"
"linux64" "52"
"mac64" "52"
}
"Touch"
{
"windows" "102"
"linux" "103"
"mac" "103"
"linux64" "103"
"mac64" "103"
}
"TraceAttack"
{
"windows" "65"
"linux" "66"
"mac" "66"
"linux64" "66"
"mac64" "66"
}
"Use"
{
"windows" "100"
"linux" "101"
"mac" "101"
"linux64" "101"
"mac64" "101"
}
"VPhysicsUpdate"
{
"windows" "154"
"linux" "155"
"mac" "155"
"linux64" "155"
"mac64" "155"
}
"Weapon_CanSwitchTo"
{
"windows" "287"
"linux" "288"
"mac" "288"
"linux64" "288"
"mac64" "288"
}
"Weapon_CanUse"
{
"windows" "281"
"linux" "282"
"mac" "282"
"linux64" "282"
"mac64" "282"
}
"Weapon_Drop"
{
"windows" "284"
"linux" "285"
"mac" "285"
"linux64" "285"
"mac64" "285"
}
"Weapon_Equip"
{
"windows" "282"
"linux" "283"
"mac" "283"
"linux64" "283"
"mac64" "283"
}
"Weapon_Switch"
{
"windows" "285"
"linux" "286"
"mac" "286"
"linux64" "286"
"mac64" "286"
}
}
}
@@ -158,7 +182,8 @@
"EntityListeners"
{
"linux" "196644"
"mac" "196644"
"linux64" "393272"
"mac64" "393272"
}
}
+58 -18
View File
@@ -33,21 +33,29 @@
{
"windows" "4"
"linux" "20"
"linux64" "18"
"mac64" "21"
}
"GetTEName"
{
"windows" "4"
"linux" "4"
"linux64" "8"
"mac64" "8"
}
"GetTENext"
{
"windows" "8"
"linux" "8"
"linux64" "16"
"mac64" "16"
}
"TE_GetServerClass"
{
"windows" "0"
"linux" "0"
"linux64" "0"
"mac64" "0"
}
}
@@ -58,6 +66,8 @@
"library" "server"
"windows" "\x89\x41\x04\xA1\x2A\x2A\x2A\x2A\x89\x41\x08\x89\x0D\x2A\x2A\x2A\x2A\xC7"
"linux" "\x55\x89\xE5\x8B\x45\x08\x8B\x55\x0C\xC7\x00\x2A\x2A\x2A\x2A\x89\x50\x04\x8B\x15\x2A\x2A\x2A\x2A"
"linux64" "\x48\x8D\x05\x2A\x2A\x2A\x2A\x55\x48\x89\x07\x48\x89\xE5\x5D\x48\x8B\x05\x2A\x2A\x2A\x2A"
"mac64" "\x55\x48\x89\xE5\x48\x8D\x05\x2A\x2A\x2A\x2A\x48\x89\x07\x48\x89\x77\x08\x48\x8B\x05\x2A\x2A\x2A\x2A"
}
}
}
@@ -73,6 +83,8 @@
"library" "server"
// Fallback to IServerTools method instead on Windows, lest we add custom logic since it's no longer a thiscall on Windows in CS:GO
"linux" "\x55\x89\xE5\x57\x56\x53\x83\xEC\x1C\x8B\x45\x0C\x8B\x5D\x08\x8B\x7D\x10\x85\xC0\x0F\x84\x2A\x2A\x2A\x2A\x8B\x10\x89\x04\x24\xFF\x52\x0C\x8B\x10\xB8\xFF\x1F\x00\x00\x0F\xB7\xCA\x83\xFA\xFF\x0F\x45\xC1\x8D\x04\x40\x8B\x5C\xC3\x10\xEB\x2A\x90\x2A\x2A\x2A\x2A\x89"
"linux64" "\x55\x48\x89\xE5\x41\x55\x49\x89\xD5\x41\x54\x53\x48\x89\xFB\x48\x83\xEC\x08\x48\x85\xF6\x0F\x84\xBC\x00\x00\x00"
"mac64" "\x55\x48\x89\xE5\x41\x57\x41\x56\x41\x54\x53\x49\x89\xD7\x48\x89\xFB\x48\x85\xF6\x74\x29\x48\x8B\x06\x48\x89\xF7\xFF\x50\x18\x8B\x00\x83\xF8\xFF\x0F\xB7\xC0\xB9\xFF\x1F\x00\x00\x48\x0F\x45\xC8\x48\x8D\x04\x49\x48\xC1\xE0\x04\x48\x8D\x5C\x03\x20\xEB\x07\x48\x81\xC3\x08\x00\x06\x00\x48\x8B\x1B\x45\x31\xE4\x48\x85\xDB\x74\x58\x4C\x8D\x35\x2A\x2A\x2A\x2A\x0F"
}
}
}
@@ -102,6 +114,8 @@
*/
"CreateFakeClient_Windows" "\x55\x8B\xEC\x56\xFF\x2A\x2A\xB9\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\x8B"
"CreateFakeClient_Linux" "\x55\x89\xE5\x53\x83\xEC\x14\x8B\x45\x0C\xC7\x04\x24\x2A\x2A\x2A\x2A"
"CreateFakeClient_Linux64" "\x55\x48\x89\xE5\x53\x48\x83\xEC\x08\x48\x8B\x3D\x2A\x2A\x2A\x2A\xE8"
"CreateFakeClient_Mac64" "\x55\x48\x89\xE5\x53\x50\x48\x8D\x3D\x2A\x2A\x2A\x2A\x48\x8B\x07\xFF\x90\x78"
}
"Offsets"
@@ -111,6 +125,8 @@
{
"windows" "8"
"linux" "13"
"linux64" "12"
"mac64" "9"
}
}
@@ -132,6 +148,8 @@
{
"library" "server"
"linux" "\x55\x89\xE5\x53\x83\xEC\x14\x8B\x5D\x08\xE8\x2A\x2A\x2A\x2A\x8B\x10\x89\x04\x24"
"linux64" "\x55\x48\x89\xE5\x53\x48\x89\xFB\x48\x83\xEC\x08\xE8\x2A\x2A\x2A\x2A\x48\x89\xDE\x48\x8B\x10\x48\x89\xC7\xFF\x52\x08"
"mac64" "\xE8\x2A\x2A\x2A\x2A\x48\x8B\x08\x48\x89\xC7\x4C\x89\xFE\xFF\x51\x08"
}
}
@@ -144,6 +162,8 @@
"EntityFactoryCallOffset"
{
"linux" "11"
"linux64" "13"
"mac64" "1"
}
}
}
@@ -158,6 +178,8 @@
"library" "server"
"windows" "\x55\x8B\xEC\x83\x2A\x2A\x81\xEC\x2A\x2A\x2A\x2A\x8B\xC1\x53\x56\x57\x8B\x2A\x2A\x89\x2A\x2A\x2A\x33"
"linux" "\x55\x89\xE5\x57\x56\x53\x81\xEC\x7C\x01\x00\x00\x8B\x55\x08\x8B\x75\x14"
"linux64" "\x55\x48\x89\xE5\x41\x57\x41\x56\x49\x89\xF6\x41\x55\x41\x54\x49\x89\xCC\x53"
"mac64" "\x55\x48\x89\xE5\x41\x57\x41\x56\x41\x55\x41\x54\x53\x48\x81\xEC\x88\x01\x00\x00\xF3\x0F\x11\x85\x8C\xFE\xFF\xFF"
}
}
}
@@ -178,7 +200,8 @@
/* Not 100% sure on this, why would windows change and not linux - TEST ME */
"windows" "31"
"linux" "69"
"mac" "69"
"linux64" "69"
"mac64" "69"
}
/**
* CBaseClient::SetName(char const*);
@@ -189,7 +212,8 @@
{
"windows" "30"
"linux" "68"
"mac" "68"
"linux64" "68"
"mac64" "68"
}
/**
* Offset into CBaseClient - Used by CBaseServer::UpdateUserSettings to determine when changes have been made.
@@ -203,7 +227,8 @@
{
"windows" "484"
"linux" "464"
"mac" "464"
"linux64" "592"
"mac64" "608"
}
}
}
@@ -221,91 +246,106 @@
{
"windows" "450"
"linux" "451"
"mac" "451"
"linux64" "451"
"mac64" "451"
}
"RemovePlayerItem"
{
"windows" "293"
"linux" "294"
"mac" "294"
"linux64" "294"
"mac64" "294"
}
"Weapon_GetSlot"
{
"windows" "289"
"linux" "290"
"mac" "290"
"linux64" "290"
"mac64" "290"
}
"Ignite"
{
"windows" "223"
"linux" "224"
"mac" "224"
"linux64" "224"
"mac64" "224"
}
"Extinguish"
{
"windows" "226"
"linux" "227"
"mac" "227"
"linux64" "227"
"mac64" "227"
}
"Teleport"
{
"windows" "113"
"linux" "114"
"mac" "114"
"linux64" "114"
"mac64" "114"
}
"CommitSuicide"
{
"windows" "500"
"linux" "500"
"mac" "500"
"linux64" "500"
"mac64" "500"
}
"GetVelocity"
{
"windows" "138"
"linux" "139"
"mac" "139"
"linux64" "139"
"mac64" "139"
}
"EyeAngles"
{
"windows" "129"
"linux" "130"
"mac" "130"
"linux64" "130"
"mac64" "130"
}
"AcceptInput"
{
"windows" "40"
"linux" "41"
"mac" "41"
"linux64" "41"
"mac64" "41"
}
"SetEntityModel"
{
"windows" "26"
"linux" "27"
"mac" "27"
"linux64" "27"
"mac64" "27"
}
"WeaponEquip"
{
"windows" "282"
"linux" "283"
"mac" "283"
"linux64" "283"
"mac64" "283"
}
"Activate"
{
"windows" "37"
"linux" "38"
"mac" "38"
"linux64" "38"
"mac64" "38"
}
"PlayerRunCmd"
{
"windows" "470"
"linux" "471"
"mac" "471"
"linux64" "471"
"mac64" "471"
}
"GiveAmmo"
{
"windows" "275"
"linux" "276"
"mac" "276"
"linux64" "276"
"mac64" "276"
}
}
}
+49 -13
View File
@@ -24,7 +24,8 @@
{
"windows" "4"
"linux" "4"
"mac" "4"
"linux64" "8"
"mac64" "8"
}
// In HandleCommand_Buy_Internal
// -*(_DWORD *)(v34 + 204)
@@ -32,46 +33,54 @@
{
"windows" "204"
"linux" "204"
"mac" "204"
"linux64" "324"
"mac64" "324"
}
//Offset into CheckRestartRound
"CTTeamScoreOffset"
{
"windows" "98"
"linux" "115"
"mac" "150"
"linux64" "117"
"mac64" "148"
}
//Offset into CheckRestartRound
"TTeamScoreOffset"
{
"windows" "125"
"linux" "148"
"mac" "185"
"linux64" "148"
"mac64" "177"
}
"ClanTagOffset"
{
"windows" "12"
"linux" "29"
"mac" "22"
"linux64" "13"
"mac64" "12"
}
//Offset into HandleCommand_Buy_Internal
"CCSPlayerInventoryOffset"
{
"windows" "60"
"linux" "97"
"mac" "109"
"linux64" "108"
"mac64" "73"
}
"GetItemInLoadout"
{
"windows" "8"
"linux" "9"
"mac" "9"
"linux64" "9"
"mac64" "9"
}
"GetItemDefintionByName" //_ZN15CEconItemSchema23GetItemDefinitionByNameEPKc
{
"windows" "42"
"linux" "41"
"mac" "41"
"linux64" "41"
"mac64" "41"
}
// Search for "%s (ID %llu) at backpack slot %d" (CCSPlayerInventory::DumpInventoryToConsole(bool))
// Jump to the vtable 2 functions above calls CCStrike15ItemDefinition::GetLoadoutSlot(CCStrike15ItemDefinition *this, int)
@@ -80,7 +89,8 @@
{
"windows" "588"
"linux" "588"
"mac" "588"
"linux64" "908"
"mac64" "908"
}
// Offset into CEconItemSchema * to a hashmap of all itemdefs
// Offset can be found in... GetItemDefinitionMutable (easy to get offset on windows should be the same)
@@ -88,7 +98,8 @@
{
"windows" "172"
"linux" "172"
"mac" "172"
"linux64" "232"
"mac64" "232"
}
}
"Signatures"
@@ -98,42 +109,56 @@
"library" "server"
"windows" "\xA1\x2A\x2A\x2A\x2A\x85\xC0\x75\x2A\xA1\x2A\x2A\x2A\x2A\x56\x68\x2A\x2A\x00\x00\x8B"
"linux" "\x55\x89\xE5\x83\xEC\x08\xE8\x2A\x2A\x2A\x2A\xC9\x83\xC0\x04\xC3"
"linux64" "\x55\x48\x89\xE5\xE8\x2A\x2A\x2A\x2A\x5D\x48\x83\xC0\x08\xC3"
"mac64" "\x55\x48\x89\xE5\x41\x56\x53\x48\x8B\x1D\x2A\x2A\x2A\x2A\x48\x85\xDB\x75"
}
"RoundRespawn"
{
"library" "server"
"windows" "\x55\x8B\xEC\x83\xEC\x0C\x53\x56\x8B\xF1\x8B\x0D\x2A\x2A\x2A\x2A\x57\x8B\x01"
"linux" "\x55\x89\xE5\x57\x56\x53\x83\xEC\x4C\xA1\x2A\x2A\x2A\x2A\x8B\x5D\x08\x89\x04\x24"
"linux64" "\x55\x48\x89\xE5\x41\x56\x41\x55\x41\x54\x53\x48\x89\xFB\x48\x83\xEC\x10\x4C\x8B\x25"
"mac64" "\x55\x48\x89\xE5\x41\x57\x41\x56\x41\x54\x53\x48\x83\xEC\x10\x49\x89\xFC\x4C\x8D\x3D"
}
"SwitchTeam"
{
"library" "server"
"windows" "\x55\x8B\xEC\x83\xEC\x10\x53\x56\x8B\x75\x08\x57\x8B\xF9\x85\xF6\x0F\x88\x2A\x2A\x2A\x2A\x3B\x35"
"linux" "\x55\x89\xE5\x83\xEC\x68\x89\x75\xF8\x8B\x75\x0C\x89\x5D\xF4\x8B\x5D\x08\x89\x7D\xFC\x89\x34\x24\xE8\x2A\x2A\x2A\x2A\x85\xC0"
"linux" "55\x89\xE5\x83\xEC\x68\x89\x75\xF8\x8B\x75\x0C\x89\x5D\xF4\x8B\x5D\x08\x89\x7D\xFC\x89\x34\x24\xE8\x2A\x2A\x2A\x2A\x85\xC0"
"linux64" "\x55\x48\x89\xE5\x48\x89\x5D\xD8\x48\x89\xFB\x89\xF7\x4C\x89\x65\xE0\x41\x89\xF4"
"mac64" "\x55\x48\x89\xE5\x41\x57\x41\x56\x41\x55\x41\x54\x53\x48\x83\xEC\x18\x89\xF3\x49\x89\xFC"
}
"HandleCommand_Buy_Internal"//Wildcard first 6 bytes for getting address for weapon price.
{
"library" "server"
"windows" "\x2A\x2A\x2A\x2A\x2A\x2A\x83\xEC\x0C\x53\x56\x57\x6A\x01"
"linux" "\x2A\x2A\x2A\x2A\x2A\x2A\x0F\xB6\x55\x14\x89\x75\xF8\x8B\x75\x08"
"linux64" "\x2A\x2A\x2A\x2A\x2A\x2A\x5D\xD8\xBB\x03\x00\x00\x00"
"mac64" "\x2A\x2A\x2A\x2A\x2A\x2A\x41\x56\x41\x55\x41\x54\x53\x48\x83\xEC\x58\x41\x89\xCF\x49\x89\xD4"
}
"CSWeaponDrop"//Wildcard first 6 bytes for CS:S DM (kept for backcompat with old SM versions)
{
"library" "server"
"windows" "\x2A\x2A\x2A\x2A\x2A\x2A\x81\xEC\x2A\x2A\x2A\x2A\x53\x8B\x5D\x08\x56\x57\x6A\x00\x68"
"linux" "\x2A\x2A\x2A\x2A\x2A\x2A\x56\x53\x81\xEC\x7C\x02\x00\x00\x8B\x5D\x0C\x8B\x75\x08\x85\xDB\x74\x2A\xC7\x44\x24\x2A\x2A\x2A\x2A\x00"
"linux64" "\x2A\x2A\x2A\x2A\x2A\x2A\x41\x56\x41\x55\x45\x31\xED\x41\x54\x49\x89\xFC\x53\x48\x89\xF3\x48\x81\xEC\xE8"
"mac64" "\x2A\x2A\x2A\x2A\x2A\x2A\x41\x56\x41\x55\x41\x54\x53\x48\x81\xEC\x78\x03\x00\x00\x49\x89\xF4"
}
"CSWeaponDropBB" //Revert back to using CSWeaponDrop(weapon, bool, bool)
{
"library" "server"
"windows" "\x2A\x2A\x2A\x2A\x2A\x2A\x83\xE4\xF8\x83\xC4\x04\x55\x8B\x6B\x04\x89\x6C\x24\x04\x8B\xEC\x83\xEC\x34\x56"
"linux" "\x2A\x2A\x2A\x2A\x2A\x2A\x83\xEC\x7C\x8B\x5D\x08\x0F\xB6\x7D\x14"
"linux64" "\x55\x48\x89\xE5\x48\x89\x5D\xE0\x48\x89\xFB\x4C\x89\x65\xE8\x49\x89\xF4\x4C\x89\x6D\xF0\x41\x89\xD5\x4C\x89\x75\xF8\x48\x83\xEC\x70"
"mac64" "\x55\x48\x89\xE5\x41\x57\x41\x56\x41\x54\x53\x48\x83\xEC\x30\x41\x89\xCC\x41\x89\xD7"
}
"TerminateRound"
{
"library" "server"
"windows" "\x55\x8B\xEC\x83\xE4\xF8\x83\xEC\x2A\x53\x8B\xD9\xF3\x0F\x2A\x2A\x2A\x2A\x56\x57\x89\x2A\x2A\x2A\x83\xBB"
"linux" "\x55\x89\xE5\x57\x56\x53\x81\xEC\xBC\x00\x00\x00\x8B\x7D\x08\x8B\x9F"
"linux64" "\x55\x48\x89\xE5\x41\x57\x41\x56\x49\x89\xFE\x41\x55\x41\x54\x53\x48\x81\xEC\xE8"
"mac64" "\x55\x48\x89\xE5\x41\x57\x41\x56\x41\x55\x41\x54\x53\x48\x81\xEC\x08\x01\x00\x00\x41\x89\xF6"
}
//In CS:GO this is actually CCSGameRules::CheckRestartRound(void) but to keep same gamedata as cs:s.
"CheckWinLimit"
@@ -141,18 +166,24 @@
"library" "server"
"windows" "\x55\x8B\xEC\x83\xE4\xF8\x83\xEC\x2A\x53\x56\x57\x8B\xF9\x8B\x0D\x2A\x2A\x2A\x2A\x81\xF9"
"linux" "\x55\x89\xE5\x56\x53\x83\xEC\x70\xA1\x2A\x2A\x2A\x2A\x8B\x35\x2A\x2A\x2A\x2A\x8B"
"linux64" "\x55\x48\x89\xE5\x41\x56\x41\x55\x41\x54\x53\x48\x89\xFB\x48\x83\xEC\x50\x4C\x8B\x25\x2A\x2A\x2A\x2A\x49"
"mac64" "\x55\x48\x89\xE5\x41\x57\x41\x56\x41\x55\x41\x54\x53\x48\x83\xEC\x58\x49\x89\xFD\x48\x8B\x1D"
}
"SetClanTag"
{
"library" "server"
"windows" "\x55\x8B\xEC\x8B\x55\x08\x85\xD2\x74\x2A\x8D\x81\x34\x25\x00\x00"
"linux" "\x55\x89\xE5\x83\xEC\x18\x8B\x45\x0C\x85\xC0\x74\x2A\x89\x44\x24\x04\x8B\x45\x08\xC7\x44\x24\x08\x10\x00\x00\x00"
"linux64" "\x55\x48\x85\xF6\x48\x89\xE5\x74\x17\x5D\x48\x81\xC7\x2A\x2A\x2A\x2A\xBA\x10"
"mac64" "\x55\x48\x89\xE5\x48\x85\xF6\x74\x12\x48\x81\xC7\x2A\x2A\x2A\x2A\xBA\x10"
}
"SetModelFromClass"
{
"library" "server"
"windows" "\x53\x56\x57\x8B\xF9\x8B\x87\x00\x03\x00\x00"
"linux" "\x55\x89\xE5\x83\xEC\x28\x89\x5D\xF4\x8B\x5D\x08\x89\x75\xF8\x89\x7D\xFC\x89\x1C\x24\xE8\x2A\x2A\x2A\x2A\x83\xF8\x02"
"linux64" "\x55\x48\x89\xE5\x48\x89\x5D\xE0\x48\x89\xFB\x4C\x89\x65\xE8\x4C\x89\x6D\xF0\x4C\x89\x75\xF8\x48\x83\xEC\x20\xE8\x2A\x2A\x2A\x2A\x83\xF8\x02"
"mac64" "\x55\x48\x89\xE5\x41\x57\x41\x56\x41\x54\x53\x49\x89\xFC\xE8\x2A\x2A\x2A\x2A\x83\xF8\x02"
}
//GetCCSWeaponData Found in HandleCommand_Buy_Internal
//Uses an econitemview
@@ -161,6 +192,8 @@
"library" "server"
"windows" "\x85\xC9\x75\x2A\x33\xC0\xC3\xE8\x2A\x2A\x2A\x2A\x8B"
"linux" "\x55\x89\xE5\x83\xEC\x18\x8B\x45\x08\x85\xC0\x74\x2A\x89\x04\x24"
"linux64" "\x55\x48\x85\xFF\x48\x89\xE5\x74\x17\xE8\x2A\x2A\x2A\x2A\x5D"
"mac64" "\x55\x48\x89\xE5\x41\x56\x53\x31\xC0\x48\x85\xFF\x74\x2E"
}
}
}
@@ -178,7 +211,8 @@
{
"windows" "4"
"linux" "4"
"mac" "4"
"linux64" "4"
"mac64" "4"
}
}
}
@@ -196,7 +230,8 @@
{
"windows" "75"
"linux" "75"
"mac" "75"
"linux64" "75"
"mac64" "75"
}
}
}
@@ -214,7 +249,8 @@
{
"windows" "15"
"linux" "15"
"mac" "15"
"linux64" "15"
"mac64" "15"
}
}
}