ExistedGit / Dota2Cheat

A dota 2 cheat project aiming to provide an educational example to new developers
GNU General Public License v3.0
117 stars 42 forks source link
cheat dota-plus dota2 dota2cheat imgui lua

Dota2Cheat 7.35b: now with VPK decoding!

v4 image

There weren't many open-source Dota cheats. And so I decided to fix that. Written in C++20 with love.

Some SDK bits were fully or partionally taken from McDota by LWSS, which D2C is inspired by.

Using ImGui with DirectX 11 for the interface

also using Minhook for them trampolines

also using Google's Protocol Buffers for net message handling

Cheers to their wonderful creators!

Features

To open the cheat menu, press Insert

WARNING! Legit features ahead, no scripts that play the game for you!

Building

You need to install the protobuf library for it to work. Install vcpkg. Navigate to the folder with vcpkg.exe. Open the console in the folder and enter the following command:

.\vcpkg.exe install protobuf:x64-windows-static

This will install the heavier static version of the library.

Once the process completes, go to installed/x64-windows-static. Copy libprotobuf.lib and libprotobuf-lite.lib files from /lib to Dota2Cheat/lib. You can also copy the libs with a d suffix from debug/lib if you want to compile it in Debug

You also need to install the June 2010 DirectX SDK

Open the project in Visual Studio and build Dota2Cheat as Release x64

Injecting

This cheat can be safely reinjected at any point of the game

Build & run D2CUpdater to move/update all relevant resources to their destination in C:\Users\%user%\Documents\Dota2Cheat, then use any injector to do the job.

Use at own risk (also consider not using non-legit features that you can get reported/flagged for)

Troubleshooting

If you encounter an error and want to coherently report it:

Debugging

This method is for errors that are easily reproducible. You're meant to be playing either in the demo mode or a lobby(not on a VAC-protected server!) Build both the cheat and loader in Debug. Launch dota 2, then In Visual Studio Ctrl + Alt + P and select dota2.exe. Now that you're debugging the process, inject the cheat and trigger the error. VS will show you where the exception occurs.

What to do when an error appears

Upon an exception, examine the file and lines it happened on. In the Call Stack tab you'll be able to trace the call to the function(in case the exception place doesn't provide enough information). Screenshot all of this and then you can make an Issue here with the data.

For Developers

Check out the repo's Wiki, I add useful pieces of information about dota-specific cheat things there

Also has a guide on how to update it

AND I also consider translating my YouGame tutorials to a human language for the sake of preservation