Added L4D1 support (incomplete):
PHP Code:
"Games"
{
"#default"
{
"MemPatches"
{
"tongue_ability"
{
"signature" "CTongue::IsAbilityReadyToFire"
"linux"
{
"patch" "\x90\x90"
}
"windows"
{
"patch" "\x90\x90"
}
}
"tongue_update_attach_state"
{
"signature" "CTongue::OnUpdateAttachedToTargetState"
"linux"
{
"patch" "\x90\x90\x90\x90\x90\x90"
}
"windows"
{
"verify" "\x75"
"patch" "\xEB"
}
}
"vomit"
{
"signature" "CVomit::IsAbilityReadyToFire"
"linux"
{
"patch" "\x90\x90"
}
"windows"
{
"verify" "\x74\xC9"
"patch" "\x90\x90"
}
}
"zoom"
{
"signature" "CTerrorGun::ShouldUnzoom"
"windows"
{
"verify" "\x75"
"patch" "\xEB"
}
}
}
"Signatures"
{
"CTongue::IsAbilityReadyToFire"
{
"linux" "@_ZNK7CTongue20IsAbilityReadyToFireEv"
}
"CTongue::OnUpdateAttachedToTargetState"
{
"linux" "@_ZN7CTongue29OnUpdateAttachedToTargetStateEv"
}
"CVomit::IsAbilityReadyToFire"
{
"linux" "@_ZNK6CVomit20IsAbilityReadyToFireEv"
}
"CTerrorGun::ShouldUnzoom"
{
"linux" "@_ZNK10CTerrorGun12ShouldUnzoomEv"
"windows" "\x56\x57\x8B\xF9\xE8\x2A\x2A\x2A\x2A\x8B\xF0\x85\xF6\x75\x2A\x5F\x32\xC0\x5E\xC3\x8B\xCE"
/* 56 57 8B F9 E8 ? ? ? ? 8B F0 85 F6 75 ? 5F 32 C0 5E C3 8B CE */
}
}
}
"left4dead"
{
"MemPatches"
{
"tongue_ability"
{
"linux"
{
"offset" "???"
"verify" "\x74\xCC"
}
"windows"
{
"offset" "???"
"verify" "\x74\x31"
}
}
"tongue_update_attach_state"
{
"linux"
{
"offset" "???"
"verify" "\x0F\x84\x73\x01\x00\x00"
}
"windows"
{
"offset" "???"
}
}
"vomit"
{
"linux"
{
"offset" "???"
"verify" "\x74\xBF"
}
"windows"
{
"offset" "???"
}
}
"zoom"
{
"linux"
{
"offset" "???"
"verify" "\x74\x63"
"patch" "\x90\x90"
}
"windows"
{
"offset" "???"
}
}
}
"Signatures"
{
"CTongue::IsAbilityReadyToFire"
{
"windows" "\x56\x57\x8B\xF9\x8B\x87\x74\x03\x00\x00\x83\xF8\xFF\x74\x2A\x8B\x15\x2A\x2A\x2A\x2A\x8B\xC8\x81\xE1\xFF\x0F\x00\x00\xC1\xE1\x04\x8D\x4C\x11\x04\xC1\xE8\x0C\x39\x41\x04\x75\x2A\x8B\x31\x85\xF6\x74"
/* 56 57 8B F9 8B 87 74 03 00 00 83 F8 FF 74 ? 8B 15 ? ? ? ? 8B C8 81 E1 FF 0F 00 00 C1 E1 04 8D 4C 11 04 C1 E8 0C 39 41 04 75 ? 8B 31 85 F6 74 */
}
"CTongue::OnUpdateAttachedToTargetState"
{
"windows" "\x56\x8B\xF1\x8B\x86\x74\x03\x00\x00\x83\xF8\xFF\x0F\x84"
/* 56 8B F1 8B 86 74 03 00 00 83 F8 FF 0F 84 */
}
"CVomit::IsAbilityReadyToFire"
{
"windows" "\x56\x57\x8B\xF9\x8B\x87\x74\x03\x00\x00\x83\xF8\xFF\x74\x2A\x8B\x15\x2A\x2A\x2A\x2A\x8B\xC8\x81\xE1\xFF\x0F\x00\x00\xC1\xE1\x04\x8D\x4C\x11\x04\xC1\xE8\x0C\x39\x41\x04\x75\x2A\x8B\x31\x85\xF6\x75\x2A\x5F\x32\xC0\x5E\xC3\x8B\x06\x8B\x90\xF8\x04\x00\x00\x8B\xCE\xFF\xD2\x84\xC0\x75\x2A\xF7\x86\xF8\x0A\x00\x00\x00\x08\x00\x00"
/* 56 57 8B F9 8B 87 74 03 00 00 83 F8 FF 74 ? 8B 15 ? ? ? ? 8B C8 81 E1 FF 0F 00 00 C1 E1 04 8D 4C 11 04 C1 E8 0C 39 41 04 75 ? 8B 31 85 F6 75 ? 5F 32 C0 5E C3 8B 06 8B 90 F8 04 00 00 8B CE FF D2 84 C0 75 ? F7 86 F8 0A 00 00 00 08 00 00 */
}
}
}
"left4dead2"
{
"MemPatches"
{
"tongue_ability"
{
"linux"
{
"offset" "103"
"verify" "\x74\xC8"
}
"windows"
{
"offset" "51h"
"verify" "\x74\x30"
}
}
"tongue_update_attach_state"
{
"linux"
{
"offset" "105h"
"verify" "\x0F\x84\x95\x01\x00\x00"
}
"windows"
{
"offset" "???"
}
}
"vomit"
{
"linux"
{
"offset" "75h"
"verify" "\x74\xBA"
}
"windows"
{
"offset" "66h"
}
}
"charger"
{
"signature" "CCharge::ActivateAbility"
"linux"
{
"offset" "99h"
"verify" "\x0F\x84\x11\x01\x00\x00"
"patch" "\x90\x90\x90\x90\x90\x90"
}
"windows"
{
"offset" "80h"
"verify" "\x75"
"patch" "\xEB"
}
}
"zoom"
{
"linux"
{
"offset" "29h"
"verify" "\x0F\x84\x98\x00\x00\x00"
"patch" "\x90\x90\x90\x90\x90\x90"
}
"windows"
{
"offset" "1Dh"
}
}
}
"Signatures"
{
"CTongue::IsAbilityReadyToFire"
{
"windows" "\x56\x57\x8B\xF9\x8B\x87\x38\x04\x00\x00\x83\xF8\xFF\x74\x2A\x8B\x15\x2A\x2A\x2A\x2A\x8B\xC8\x81\xE1\xFF\x0F\x00\x00\x03\xC9\x8D\x4C\xCA\x04\xC1\xE8\x0C\x39\x41\x04\x75\x2A\x8B\x31\x85\xF6\x74"
/* 56 57 8B F9 8B 87 38 04 00 00 83 F8 FF 74 ? 8B 15 ? ? ? ? 8B C8 81 E1 FF 0F 00 00 03 C9 8D 4C CA 04 C1 E8 0C 39 41 04 75 ? 8B 31 85 F6 74 */
}
"CTongue::OnUpdateAttachedToTargetState"
{
"windows" "\x55\x8B\xEC\x83\xEC\x08\x56\x8B\xF1\x8B\x86\x38\x04\x00\x00\x83\xF8\xFF\x0F\x84"
/* 55 8B EC 83 EC 08 56 8B F1 8B 86 38 04 00 00 83 F8 FF 0F 84 */
}
"CVomit::IsAbilityReadyToFire"
{
"windows" "\x56\x57\x8B\xF9\x8B\x87\x38\x04\x00\x00\x83\xF8\xFF\x74\x2A\x8B\x15\x2A\x2A\x2A\x2A\x8B\xC8\x81\xE1\xFF\x0F\x00\x00\x03\xC9\x8D\x4C\xCA\x04\xC1\xE8\x0C\x39\x41\x04\x75\x2A\x8B\x31\x85\xF6\x75\x2A\x5F\x32\xC0\x5E\xC3\x8B\x06\x8B\x90\x54\x05\x00\x00\x8B\xCE\xFF\xD2\x84\xC0\x75\x2A\xF7\x86\xB4\x1C\x00\x00\x00\x08\x00\x00"
/* 56 57 8B F9 8B 87 38 04 00 00 83 F8 FF 74 ? 8B 15 ? ? ? ? 8B C8 81 E1 FF 0F 00 00 03 C9 8D 4C CA 04 C1 E8 0C 39 41 04 75 ? 8B 31 85 F6 75 ? 5F 32 C0 5E C3 8B 06 8B 90 54 05 00 00 8B CE FF D2 84 C0 75 ? F7 86 B4 1C 00 00 00 08 00 00 */
}
"CCharge::ActivateAbility"
{
"linux" "@_ZN7CCharge15ActivateAbilityEv"
"windows" "\x57\x8B\xF9\x8B\x07\x8B\x90\x28\x03\x00\x00\xFF\xD2\x84\xC0\x0F\x84\x2A\x2A\x2A\x2A\x8B\x87\x38\x04\x00\x00\x53"
/* 57 8B F9 8B 07 8B 90 28 03 00 00 FF D2 84 C0 0F 84 ? ? ? ? 8B 87 38 04 00 00 53 */
}
}
}
}