/maniac

External cheats for osu!mania.

Primary LanguageC++MIT LicenseMIT

maniac

Simple external cheat for osu!mania.

Join the Discord server, if that's your thing.

Usage

maniac-demo.mp4
  1. Download the latest build from the releases tab. (Don't use the -debug version unless you are encountering issues and want debug information.)
  2. Start osu. You might get a pop-up with a title like "Windows protected your PC". This is a false positive, just click "More info" and "Run anyway".
  3. Start maniac.

Maniac will now automatically play any beatmap you open in osu. Make sure your keybinds are set to the defaults.

Contact

The preferred ways for getting in touch with me are

If you have encountered bugs or have a feature request, GitHub issues are usually best. For general questions or if you just want to get in touch please use Discord.

I'd prefer if you didn't send me emails regarding maniac, please just use one of the platforms above. Thanks.

Building

The following is only relevant to developers looking to build the project from source. This is not usually something done by regular users who are advised to download the automatically built binaries instead.

# Get the code
git clone https://github.com/fs-c/maniac.git

# Get submodule dependencies
git submodule init
git submodule update

# Building out-of-source is preferred
mkdir build
cd build

# Generate build files from the CMakeLists file in the parent directory
# Other generators should work as well too, but this is the supported one
cmake .. -G "Visual Studio 17 2022" -A Win32
# OR, if you want a release build
cmake .. -G "Visual Studio 17 2022" -A Win32 -DCMAKE_BUILD_TYPE="Release"

# Run the build
cmake --build . -- /p:Configuration=Debug
# OR, if you specified "Release" earlier
cmake --build . -- /p:Configuration=Release

For an example see the CI build steps in .github/workflows. Make sure to use Win32 or equivalent, maniac expects certain (implementation/architecture dependent) type sizes!

Release builds are optimized and don't contain debug information, unlike Debug builds which also have significantly more verbose logging.

Library

The following is only relevant to developers looking to use parts of the maniac codebase in their own projects. If none of this means anything to you, you can safely ignore this section.

You may have noticed that maniac consists of two parts: a library (lib) and the GUI application (app). Assuming you are using CMake, when including this project with add_subdirectory only the library will be built.

I doubt that anyone will come to use the library and I mostly separated it out because it was convenient for another related project. Therefore no proper documentation is provided, sorry. I recommend reading the header files in lib/include/maniac for an overview of the available functionality and to consult app/app.cpp for example usage.

Of course please also feel free to open an issue for any questions you may have.

Thanks

  • n0b453c0d3r on UC, mrflashstudio and daycheat for providing up-to-date signatures and offsets and helpful discussion
  • LSNM for particularly helpful suggestions and bug reports
  • ocornut for the imgui library
  • to everyone who reported bugs and provided feedback