~/projects/meccha-chameleon
Meccha Chameleon — No Decoy Death
Shoot the clone, lose the clone — not your life. A host-side UE4SS mod for Meccha Chameleon.Pucaj u klona, izgubiš klona — ne život. Host-side UE4SS mod za Meccha Chameleon.
No Decoy Death is a mod for Meccha Chameleon, a hide-and-seek party game on Steam (built in Unreal Engine 5.6). In the base game a Survivor's decoy is meant to be a distraction — but if a Hunter shoots the decoy, the game kills the Survivor and converts them into a Hunter anyway, and the decoy doesn't even disappear. This mod fixes that: a shot decoy simply pops, the way it would if you'd deleted it yourself, and you stay a Survivor. A real body shot still kills you.
Getting there meant reverse-engineering the game's host-authoritative hit check. I first shipped the fix as a Blueprint bytecode patch — a one-instruction edit to the Hunter's `ExecuteUbergraph`, repacked into an IoStore `.pak`, with a `repatch.sh` pipeline (retoc, UAssetAPI, and a custom Kismet disassembler) that re-locates the edit by content so it survives game updates. The public release is a cleaner UE4SS Lua hook (~170 lines): it hooks `AntiChatTrace` at runtime, detects a decoy hit, destroys the decoy with the game's own functions, and steers the shot into the game's existing 'validation failed' path — no game files modified. It's host-only, opens no sockets, and bypasses no anti-cheat (the game has none). Published open-source on GitHub as an unofficial fan mod, with a 24-hour takedown process for the developer.
No Decoy Death je mod za Meccha Chameleon, party igru skrivača na Steamu (izrađenu u Unreal Engineu 5.6). U osnovnoj igri klon Survivora trebao bi biti smetnja — ali ako Hunter puca u klona, igra svejedno ubije Survivora i pretvori ga u Huntera, a klon čak ni ne nestane. Ovaj mod to popravlja: pogođeni klon jednostavno nestane, kao da si ga sam obrisao, i ostaješ Survivor. Direktan pogodak u tijelo i dalje te ubije.
Do toga je trebalo reverse-engineerati serversku (host-authoritative) provjeru pogotka. Popravak sam prvo objavio kao Blueprint bytecode zakrpu — izmjenu jedne instrukcije u Hunterovom `ExecuteUbergraph`, prepakiranu u IoStore `.pak`, uz `repatch.sh` pipeline (retoc, UAssetAPI i vlastiti Kismet disassembler) koji izmjenu ponovno locira po sadržaju pa preživi ažuriranja igre. Javno izdanje je čišći UE4SS Lua hook (~170 linija): hooka `AntiChatTrace` u runtimeu, prepozna pogodak u klona, makne klona igrinim vlastitim funkcijama i preusmjeri hitac u postojeći 'validation failed' put igre — bez ikakve izmjene datoteka igre. Radi samo na hostu, ne otvara sockete i ne zaobilazi anti-cheat (igra ga nema). Objavljen open-source na GitHubu kao neslužbeni fan mod, s procesom uklanjanja unutar 24 sata na zahtjev razvojnog tima.
HighlightsIstaknuto
Fixes a real gameplay bug: in Meccha Chameleon a Hunter shooting your decoy kills and converts you into a Hunter — this mod pops the decoy instead and keeps you a Survivor, while direct body shots still kill normally.
Reverse-engineered the game's server-side hit validation (`AntiChatTrace`) in Unreal Engine 5.6 to pinpoint exactly where a decoy hit was being accepted as a body hit.
Two implementations of the same fix: a shipped ~170-line UE4SS Lua runtime hook that touches no game files, and an earlier version-specific Blueprint bytecode patch shipped as an IoStore .pak.
In-lobby Shift+F7 toggle with a runtime-built, click-through on-screen indicator that locks the moment the match countdown starts.
Host-only and transparent by design — no networking, no memory patching, no anti-cheat bypass — plus a self-relocating re-patch pipeline (retoc + UAssetAPI + a custom Kismet disassembler) that survives game updates.
Popravlja stvaran bug u igri: u Meccha Chameleon Hunter koji puca u tvog klona ubije te i pretvori u Huntera — ovaj mod umjesto toga makne klona i ostaviš Survivor, dok direktan pogodak u tijelo i dalje ubija normalno.
Reverse engineering serverske validacije pogotka (`AntiChatTrace`) u Unreal Engineu 5.6 kako bih točno locirao gdje se pogodak u klona prihvaćao kao pogodak u tijelo.
Dvije izvedbe istog popravka: objavljeni UE4SS Lua hook od ~170 linija koji ne dira datoteke igre, i ranija verzijski-specifična Blueprint bytecode zakrpa objavljena kao IoStore .pak.
Shift+F7 toggle u lobbyju s runtime-generiranim, click-through indikatorom na ekranu koji se zaključa čim krene odbrojavanje meča.
Radi samo na hostu i transparentan je po dizajnu — bez mreže, bez memory patchinga, bez zaobilaženja anti-cheata — uz vlastiti re-patch pipeline (retoc + UAssetAPI + vlastiti Kismet disassembler) koji preživi ažuriranja igre.