Skip to content
This repository was archived by the owner on Aug 22, 2025. It is now read-only.
/ AssaultCubeDMA Public archive

My first implementation of a cheat trainer using Direct Memory Access (DMA) for AssaultCube. Created as a learning exercise in external memory manipulation and reverse engineering

License

Notifications You must be signed in to change notification settings

kaveOO/AssaultCubeDMA

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


Logo

AssaultCube DMA Cheat

AssaultCubeDMA is a proof-of-concept external cheat for AssaultCube using DMA (Direct Memory Access) techniques. It demonstrates reading and manipulating game memory externally, featuring ESP and other basic functionalities. Intended for educational and research purposes only.

View Demo on YouTube

About The Project

AssaultCubeDMA

(back to top)

Built With

  • C++
  • VisualStudio
  • IdaPro

(back to top)

Getting Started


Warning

This project requires a Direct Memory Access (DMA) card to operate.


No Compilation Needed

  1. Download from Releases
    Download CompiledCheat.zip from the Releases tab of the Repository
  2. Extract the .zip
    Extract the CompiledCheat.zip archive
  3. Enjoy !
    Start AssaultCube and run AssaultCubeDMA.exe
    

Installation & Compilation

  1. Clone the repo
    git clone https://github.com/1337Corporation/AssaultCubeDMA.git
  2. Build DMALibrary (Release)
    Open DMALibrary.sln change the configuration to Release and build it
  3. Build AssaultCubeDMA (Debug)
    Open AssaultCubeDMA.sln keep the Debug config and build it.
  4. Add MemProcFS binaries
    Download MemProcFS binaries from Releases tab of the Repo
  5. Navigate to x64/Debug directory
    cd AssaultCubeDMA\AssaultCubeDMA\x64\Debug
  6. Extract all binaries
    Extract all binaries at the root of directory (not inside a MemProcFS directory)
  7. Enjoy !
    Start AssaultCube and run AssaultCubeDMA.exe

(back to top)

Roadmap

  1. Reverse Engineering AssaultCube

    • Used IDA Pro and other tools to analyze AssaultCube's memory structure and game logic.
    • Identified player, entity, and game state addresses.
  2. Researching DMA Techniques

    • Studied DMA hardware and external memory access methods.
    • Selected compatible DMA cards and libraries (e.g., DMALibrary, MemProcFS).
  3. Setting Up the DMA Environment

    • Integrated DMALibrary for low-level memory access.
    • Verified communication between DMA card and target system.
  4. Implementing Memory Reading/Writing

    • Developed C++ classes to read/write game memory externally.
    • Ensured safe and reliable access to game data structures.
  5. Building ESP Features

    • Coded basic ESP overlays (player positions, boxes, etc.) using ImGui for rendering.
    • Linked ESP data to real-time memory reads.
  6. Testing and Debugging

    • Ran the cheat alongside AssaultCube, iteratively fixing bugs and improving stability.
    • Used debug builds and logging for troubleshooting.
  7. Packaging and Documentation

    • Created build scripts and release instructions.
    • Documented setup, usage, and technical details in the README.

(back to top)

License

Distributed under the MIT License. See LICENSE.txt for more information.

(back to top)

Acknowledgments

(back to top)

About

My first implementation of a cheat trainer using Direct Memory Access (DMA) for AssaultCube. Created as a learning exercise in external memory manipulation and reverse engineering

Resources

License

Stars

Watchers

Forks