Skip to content

Guide · Agent skill

How to use the Reverse engineering for mods agent skill

Updated · written with AI from the project's own documentation and checked against our catalogue data

The reverse-engineering skill is an add-on for an AI coding agent that tells it to work from a game's actual files, code and memory instead of guessing how the game works. It is for modders who need to understand a single-player game's logic or an undocumented file format before writing a mod. After this guide you will know how to install the skill, how to ask for help with natural requests, which tools it expects, and where its safety limits are.

Reverse engineering for modsrehan-remade/universal-modder · MIT

Quick start

  1. 1Download and unzip. Download the ZIP from this page and unzip it so the reverse-engineering folder is in a skills folder.
  2. 2Place or upload the skill. Put the folder in ~/.claude/skills/ or a project's .claude/skills/ folder, or upload it under Settings → Capabilities → Skills in the Claude apps.
  3. 3Install the tools your game needs. Choose decompilers, debuggers or MCP servers based on the code type, such as ilspycmd for .NET or Ghidra for native binaries.
  4. 4Describe the mod goal. Ask a natural question about game internals, name the game and attach the files you have.
  5. 5Confirm and log findings. Ask the agent to verify guesses dynamically and write confirmed names, IDs, offsets and formats into MODLOG.md.

What the skill makes the agent do

The skill's core rule is to read the real thing and not guess. Decompiled code, actual data, a live memory view or a GPU capture counts as the spec. As the agent works, it writes confirmed names, IDs, offsets and formats into MODLOG.md so the findings build up over time.

It covers managed .NET and Mono code, Unity IL2CPP, Java, native binaries, data and asset formats, live memory, and render passes. For Unreal Engine 3 packages it also includes a helper script, unpack_upk.py, for unpacking certain compressed packages.

  • Decompile .NET/Mono code with ILSpy, and IL2CPP code with Cpp2IL or Il2CppDumper.
  • Decompile Java with Vineflower or CFR, and native code with Ghidra or IDA through MCP servers.
  • Dump data and asset formats, and reverse-engineer a binary format and check it with a round trip.
  • Read live memory with Cheat Engine, Frida or x64dbg, and find render passes with RenderDoc.

How to install the reverse-engineering skill

Download the ZIP from this page. Unzip it so the reverse-engineering folder sits in a skills folder. For a personal install, use ~/.claude/skills/. For one project, use the .claude/skills/ folder inside that project.

If you use the Claude apps instead, open Settings, go to Capabilities, then Skills, and upload the skill there.

  • Personal install: place the folder in ~/.claude/skills/.
  • Project install: place the folder in the project's .claude/skills/ folder.
  • Claude apps: upload it under Settings → Capabilities → Skills.

How to trigger the skill with natural requests

You do not need a special command. Describe what the mod needs in plain language and the agent will load the skill when the request is about game internals. The skill's description gives examples such as asking how a boss AI works, where to find a damage function, what a file format is, or where the player position is in memory.

Name the game and the file if you have them. Good requests say what you want to change or understand, and what files you can share with the agent.

  • How does the boss AI work in this game? Here is the install folder.
  • Find the damage function in Game.exe and tell me how it is called.
  • What format is this .pak file? Here are three stock copies.
  • Where is the player position in memory while I walk left?

Choose the right tool for the kind of code

The skill's first step is to identify the code type, using a scan. For managed .NET games, the skill suggests installing ilspycmd and decompiling the main assembly into a project you can search. For Unity IL2CPP, it runs Cpp2IL or Il2CppDumper on GameAssembly.dll and global-metadata.dat, then loads the binary in Ghidra or IDA.

For native code, Ghidra and IDA are the main options, ideally driven through MCP servers so the agent can rename and follow references. The skill also covers Cheat Engine, Frida and x64dbg for live work, and RenderDoc for frame captures. Use the tools the game actually needs, not all of them.

  • Managed .NET: ilspycmd, dnSpyEx, or ILSpy-MCP and dnspy-mcp.
  • Unity IL2CPP: Cpp2IL or Il2CppDumper, then Ghidra or IDA.
  • Java: Vineflower, CFR or Recaf.
  • Live memory: Cheat Engine, x64dbg, Frida and ReClass.NET.
  • Graphics: RenderDoc (renderdoc-mcp) to inspect draws and matrices.
dotnet tool install -g ilspycmd ilspycmd -p -o ~/<game>-decomp <Game>.exe

Reverse an undocumented file format

Collect several stock files first and compare their sizes. Hex-dump the headers and look for magic numbers, counts, offsets and tables of fixed-size records. Form a hypothesis for the header, then the record layout, then any compression, and check it by parsing every stock file without errors.

Write a reader that turns the data into something you can view, such as PNG or JSON, and look at the output. Only after the reader works should you write a writer, and prove it with a round trip: decode, encode, then decode and compare with the original. Test any new file in the game with one asset before converting a batch.

  • Use the community tool first: UABEA or AssetRipper for Unity, FModel or UAssetGUI for Unreal, and xEdit or BSArch for Bethesda games.
  • Check the community archives such as XeNTaX before reversing a format yourself.
  • Do not download game files, leaked code, SDKs or license keys from those archives.
xxd | head

Safety, limits and what you need installed

The skill is designed for single-player games you own, offline games, or servers you run. It says never to attach debuggers or scanners to games with anti-cheat. Doing so could break terms of service or get accounts banned. Keep decompiled output and extracted assets outside the mod repo, and do not publish them.

The skill runs scripts and uses the network. Most of its workflows need external tools that the agent cannot supply on its own, such as decompilers, debuggers or MCP servers. The unpack_upk.py helper needs Python, uv, the minilzo package and a C compiler. The skill refers to two other skills, blitz3d-decomp and mod-any-game, which are not included in these files.

  • Do not use it on games with anti-cheat or online competitive play.
  • Keep decompiled code and extracted assets out of any shared or published repo.
  • Install the external tools for your game before you start.

Tips for better results

Ask the agent to write confirmed facts to MODLOG.md as it goes, and to confirm dynamically before building on a guess. Agents can misidentify things with confidence. For long runs, keep a journal, take small verified steps, and stop after about three identical failures to change approach.

For engine logic you want to port, record real traces from the game, such as positions and velocities per tick, and replay them against your port. Replays catch differences that reading the code can miss.

  • Work in small verified steps and commit every confirmed fact.
  • Cap repeated failures at about three, then change approach.
  • Record real traces and replay them to check a port.

What people use it for

  • Finding the function that calculates damage in a single-player .NET game before writing a balance mod.
  • Mapping an Unity IL2CPP game's types and method addresses so a mod can hook them.
  • Reverse-engineering an undocumented sprite or archive format and checking the writer with a round trip.
  • Finding the memory address of a player value with a Cheat Engine or Frida workflow in an offline game you own.

Frequently asked questions

How do I install the reverse engineering agent skill?

Download the ZIP from this page and unzip it into ~/.claude/skills/ for personal use, or into a project's .claude/skills/ folder. You can also upload it in the Claude apps under Settings → Capabilities → Skills.

Is the reverse engineering skill free?

The skill is published under the MIT licence. Many of the tools it recommends are free, such as Ghidra and ilspycmd, but the source does not list prices for every tool, so check each tool's own terms.

What tools do I need to use this skill?

You need the external tools for your game's code type, such as ilspycmd for .NET, Cpp2IL or Il2CppDumper for IL2CPP, Vineflower or CFR for Java, and Ghidra or IDA for native code. Most workflows need these installed, because the agent cannot provide them.

Can I use it on online games with anti-cheat?

No. The skill says never to attach debuggers or scanners to games with anti-cheat or online competitive play, since that could break terms of service or get accounts banned.

What is the alternative to this skill for reading game files?

For many formats, the source recommends community tools first, such as UABEA or AssetRipper for Unity, FModel or UAssetGUI for Unreal, and xEdit or BSArch for Bethesda games. Use the skill when you need the agent to work through code, memory or an unknown format.

Why does unpack_upk.py fail on my Unreal package?

The source says some UE3 packages are fully compressed and tools like UELib stop at the header. Try Gildor's Unreal Package Decompressor first. If you use unpack_upk.py, it needs Python, uv, the minilzo package and a C compiler.

New agent skills, repos and AI tools — every week

The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.

Our verdict

Use this skill if you are modding a single-player or offline game you own and need the agent to work from real code, data, memory or frames rather than guesses. Pick something else if the game has anti-cheat or online competitive play, or if you cannot install the decompilers and debuggers the workflows depend on.

Download the skill