Dota2Cheat
Dota2Cheat copied to clipboard
discussion
Hello I really appreciate what you did, all the functions are working properly. But the problem I have is related to the visibility section, the page it creates is completely black and does not show the background, which is Dota2. At first, I thought that it was related to VSync settings, which did not solve the problem by changing it.
Inside the source code is also an option GLFW_TRANSPARENT_FRAMEBUFFER was active. Is the problem related to the launch option of the game, which should be opened with OpenGL?
I do not launch the game with any special parameters, as the overlay is a separate window and should not interfere. If GLFW_TRANSPARENT_FRAMEBUFFER is indeed set to true, then my only guess is that in your case OpenGL is not properly supported. I haven't encountered this error, it should only be black in Debug mode(and also not fullscreen) If it's because of OpenGL I might make a DirectX ImGui version to try and test it there(also from the information I gathered I'll need it anyway if I want to render icons from Panorama)
Hi is there a way to get the attack speed of hero value and address? I'm trying to add auto last hit and auto deny.
Check out the Wiki page on Netvars, there is a link to a netvar dump, the class is C_DOTA_BaseNPC_Hero(they're in schema/classes/client.dll). Look for m_iBaseAttackSpeed and/or m_flBaseAttackTime(that "Base" can imply you/I'd need to reverse functions related to getting bonuses to it from items) I'm pondering autolasthit and autodeny too, though you would also need to track projectiles(for ranged heroes) and other entities' attacks on your target(since e. g. your own creeps may screw up the timing). The values for these are mentioned in a September version of the dump but I suppose they're not netvars
oh, I really appreciate the information you provided.

I changed revenant_brooch_ring_glow to selected_ring.vpcf with radius of 75 and RED color.
I think this one is more effective.
Whatever suits you. Maybe at some point when I'll be polishing existing features I could add variety(although it must be a fixed set of particles, end-users wouldn't want to find it themselves in Dota Workshop Tools). Customization is open-source's main feature, after all About auto-lasthit's ProjectileSpeed, I've got a lead from Liberalist, will investigate soon
On Thu, 2 Feb 2023, 20:58 Zero Ex, @.***> wrote:
[image: isvisible] https://user-images.githubusercontent.com/69420353/216435340-ed40c681-c443-45c3-8183-b9a3d55418bb.png
I changed revenant_brooch_ring_glow to selected_ring.vpcf with radius of 75 and RED color.
I think this one is more effective.
— Reply to this email directly, view it on GitHub https://github.com/ExistedGit/Dota2Cheat/issues/5#issuecomment-1414290207, or unsubscribe https://github.com/notifications/unsubscribe-auth/AP3EEWSTGM4G3HL2RRJTE2TWVQGVZANCNFSM6AAAAAAUMKC5Z4 . You are receiving this because you commented.Message ID: @.***>
oh nice, I think from C_DOTA_BaseNPC_Creep_Lane it should get the creep lane health.
Of course, health is the least of our concerns, it's already in my BaseEntity wrapper. At least towers have m_hTowerAttackTarget, though projectile speed is still necessary in their case
On Thu, 2 Feb 2023, 22:21 Zero Ex, @.***> wrote:
oh nice, I think from C_DOTA_BaseNPC_Creep_Lane it should get the creep lane health.
— Reply to this email directly, view it on GitHub https://github.com/ExistedGit/Dota2Cheat/issues/5#issuecomment-1414389381, or unsubscribe https://github.com/notifications/unsubscribe-auth/AP3EEWQPAY4XLFCZSHWCLJLWVQQO7ANCNFSM6AAAAAAUMKC5Z4 . You are receiving this because you commented.Message ID: @.***>
About ProjectileSpeed: you might've already noticed I hooked the file system(but have not yet added code for parsing, I already have it on my Test project) The entity that a unit is attacking is impossible to obtain directly(as it's server-side). The only solution left is to "ray-trace" to the entity in front of the unit + check if the unit is in the attack anim AND also is not turning(angle speed = 0)
oh, I didn't know that it's server-side, now it has been more complicated! Thank you for the information you give. I'm working on DirectX ImGui version menu.
I'm working on DirectX ImGui version menu.
Would be nice to add that to the project. Diversifying solutions can ensure we always have the fitting tools Instead of autolasthitting I'll now look towards a Lua/JS API like the universe's best cheat ever. Wouldn't want to repeat the mistake of putting lambdas everywhere like I did with my SFML project 2 years ago
I found out this fork of Shadow-Dance-Menu called Shadow-Dance-Panda that is updated and DirectX version. but it's not like yours, it just have :
- Display overlay if visible by enemy team
- Draw blink dagger range
- Change camera distance
- Change weather
- Remove fog
- Show Particles on map
As you've seen I already implemented the weather change thing from their repo(which I've found on UC) and credited them
The fork was made by the same Indonesian guy who forked&renamed this repo in its early stage. There's nothing more in his commits than number tweaks or commenting out parts of the original code
The naming tho...

I'm working on DirectX ImGui version menu.
Would be nice to add that to the project. Diversifying solutions can ensure we always have the fitting tools Instead of autolasthitting I'll now look towards a Lua/JS API like the universe's best cheat ever. Wouldn't want to repeat the mistake of putting lambdas everywhere like I did with my SFML project 2 years ago
And you know there are many LUA source codes like
- Autolast hit
- auto ult axe
- tinker auto script and many many stuffs
As you've seen I already implemented the weather change thing from their repo(which I've found on UC) and credited them The fork was made by the same Indonesian guy who forked&renamed this repo in its early stage. There's nothing more in his commits than number tweaks or commenting out parts of the original code The naming tho...
wow LMAO, I didn't see the commits.
I'm working on DirectX ImGui version menu.
Would be nice to add that to the project. Diversifying solutions can ensure we always have the fitting tools Instead of autolasthitting I'll now look towards a Lua/JS API like the universe's best cheat ever. Wouldn't want to repeat the mistake of putting lambdas everywhere like I did with my SFML project 2 years ago
And you know there are many LUA source codes like
- Autolast hit
- auto ult axe
- tinker auto script and many many stuffs
Idk about Lua scripts in dota(since it's more of a CS:GO thing) but there is a D2JS repo around with scripts like Rubick's auto-steal. For me sol3 looks easier to implement than V8, but we'll see
V8 is much more complicated, I just saw the Hello World example. Did you see the dota2-lua-engine? this repo is old but I think this one is much helpful.
10 year old repo
That LuaJIT bit is on point though, they say it's faster than normal Lua I'm now having the default problem of nothing working with embedding Lua into sol3 into a project, but I'll get through it
I've always looked for a skin changer like Overwolf and FEMIDA, but no one has progressed along the way, can you do something about it?

For your information, I too have always looked for a skinchanger. It's the primary underlying purpose of all these developments. Not that I don't make advances into that direction, but it's going to take a lof of time. I'm not a team of experienced hackers making a private cheat, after all
Hi there, after I injected your build, it seems to crash when my hero started to spawn in fountain. I had to run my client and inject again, and reconnect to game, and it works fine after that. Any special instructions to prevent crashing every first time I load the game?
The only thing I noticed is that it sometimes crashes right in the menu without visible reason(somewhen after initializing interfaces). I will try to reproduce the crash. Did you load into a filled lobby(with bots/someone else)? I remember there were some problems with that Maybe you can attach Visual Studio via Ctrl + Alt + P to see where the exception comes up and/or debug step-by-step to understand what step causes it EDIT: I just noticed it sometimes crashes when entering the game because of vtable hooking. Strange.
Is it possible to add automatic armlet mode for Huskar like magic wand?
Hi there, after I injected your build, it seems to crash when my hero started to spawn in fountain. I had to run my client and inject again, and reconnect to game, and it works fine after that. Any special instructions to prevent crashing every first time I load the game?
in Extreme injector I use Thread Hijacking method, and I didn't get any crashes in game.
Hi there, after I injected your build, it seems to crash when my hero started to spawn in fountain. I had to run my client and inject again, and reconnect to game, and it works fine after that. Any special instructions to prevent crashing every first time I load the game?
in Extreme injector I use
Thread Hijackingmethod, and I didn't get any crashes in game.
Same here, except that I additionally used "Start in Secure Mode".
The only thing I noticed is that it sometimes crashes right in the menu without visible reason(somewhen after initializing interfaces). I will try to reproduce the crash. Did you load into a filled lobby(with bots/someone else)? I remember there were some problems with that Maybe you can attach Visual Studio via Ctrl + Alt + P to see where the exception comes up and/or debug step-by-step to understand what step causes it EDIT: I just noticed it sometimes crashes when entering the game because of vtable hooking. Strange.
After injection, I start finding game, accept, loads in hero selection, loads loading screen, then crashes while I see a glimpse of fountain. Yes, its filled with 9 other players. I will try and debug and see.
Видел тебя на югейме. Как насчет коллаба? Уже перегораю 2+ года в соло реверсить.

Видел тебя на югейме. Как насчет коллаба? Уже перегораю 2+ года в соло реверсить.
![]()
![]()
![]()
Тебя тоже на югейме видел. Я только за, одному скучно Кодобаза выглядит внушительно, особенно тема с миникартой
2+ года
Так у вас же группа какая-то была, в хуманайзер-треде видел
Экстрим инжектор просто умер + что-то перепидорасило мою DLLку, да так, что LoadLibrary не работал. Откат сделан, буду смотреть что там такое EDIT: It was LWSS's Protobuf.h file, apparently
So I'm currently suffering with linking the protobufs in such a way that they will actually WORK It's painful
Так и не понял, что у тебя за проблемы с протобафами.
Пробовал просто через vcpkg установить? Я у себя так и сделал.
Да, там дллки создаются, но их можно просто лоудером при запуске копировать из папки чита в \dota 2 beta\game\bin\win64\.
И никаких проблем вообще не испытывать. Только не забудь debug-версию либы у себя туда же кинуть.
Я вообще не уверен, что получится через .lib это организовать. Я лично так и не осилил, постоянно инжектор (и мой мануалмапный, и Extreme) ошибками сыпал.
vcpkg-версия тебе и либы, и дллки, и компилятор protoc.exe даст. Потом простым батником (ps1 тащемта) можно обновлять\компилить протобафы с гитхаба.
Типа такого. Можно и получше сделать, но мне лень :^)
$BaseURL = "https://raw.githubusercontent.com/SteamDatabase/GameTracking-Dota2/master/Protobufs/" $SRCPath = "C:/CPP/vcpkg/installed/x64-windows/tools/protobuf/src/" $BuildPath = "C:\CPP\vcpkg\installed\x64-windows\tools\protobuf\build" $LibraryPath = "C:\CPP\Repos\CrimsonDota\Source\Library\proto"
Invoke-WebRequest -URI $BaseURL"network_connection.proto" -OutFile $SRCPath"network_connection.proto" Invoke-WebRequest -URI $BaseURL"networkbasetypes.proto" -OutFile $SRCPath"networkbasetypes.proto" Invoke-WebRequest -URI $BaseURL"netmessages.proto" -OutFile $SRCPath"netmessages.proto" Invoke-WebRequest -URI $BaseURL"usermessages.proto" -OutFile $SRCPath"usermessages.proto" Invoke-WebRequest -URI $BaseURL"dota_shared_enums.proto" -OutFile $SRCPath"dota_shared_enums.proto" Invoke-WebRequest -URI $BaseURL"dota_commonmessages.proto" -OutFile $SRCPath"dota_commonmessages.proto" Invoke-WebRequest -URI $BaseURL"dota_clientmessages.proto" -OutFile $SRCPath"dota_clientmessages.proto" Invoke-WebRequest -URI $BaseURL"dota_usermessages.proto" -OutFile $SRCPath"dota_usermessages.proto" Invoke-WebRequest -URI $BaseURL"steammessages.proto" -OutFile $SRCPath"steammessages.proto" Invoke-WebRequest -URI $BaseURL"steammessages_unified_base.steamworkssdk.proto" -OutFile $SRCPath"steammessages_unified_base.steamworkssdk.proto" Invoke-WebRequest -URI $BaseURL"steammessages_steamlearn.steamworkssdk.proto" -OutFile $SRCPath"steammessages_steamlearn.steamworkssdk.proto" Invoke-WebRequest -URI $BaseURL"gcsdk_gcmessages.proto" -OutFile $SRCPath"gcsdk_gcmessages.proto" Invoke-WebRequest -URI $BaseURL"econ_shared_enums.proto" -OutFile $SRCPath"econ_shared_enums.proto" Invoke-WebRequest -URI $BaseURL"econ_gcmessages.proto" -OutFile $SRCPath"econ_gcmessages.proto" Invoke-WebRequest -URI $BaseURL"dota_gcmessages_msgid.proto" -OutFile $SRCPath"dota_gcmessages_msgid.proto"
C:\CPP\vcpkg\installed\x64-windows\tools\protobuf\protoc.exe --proto_path=$SRCPath --cpp_out=$BuildPath $SRCPath\network_connection.proto C:\CPP\vcpkg\installed\x64-windows\tools\protobuf\protoc.exe --proto_path=$SRCPath --cpp_out=$BuildPath $SRCPath\networkbasetypes.proto C:\CPP\vcpkg\installed\x64-windows\tools\protobuf\protoc.exe --proto_path=$SRCPath --cpp_out=$BuildPath $SRCPath\netmessages.proto C:\CPP\vcpkg\installed\x64-windows\tools\protobuf\protoc.exe --proto_path=$SRCPath --cpp_out=$BuildPath $SRCPath\usermessages.proto C:\CPP\vcpkg\installed\x64-windows\tools\protobuf\protoc.exe --proto_path=$SRCPath --cpp_out=$BuildPath $SRCPath\dota_shared_enums.proto C:\CPP\vcpkg\installed\x64-windows\tools\protobuf\protoc.exe --proto_path=$SRCPath --cpp_out=$BuildPath $SRCPath\dota_commonmessages.proto C:\CPP\vcpkg\installed\x64-windows\tools\protobuf\protoc.exe --proto_path=$SRCPath --cpp_out=$BuildPath $SRCPath\dota_clientmessages.proto C:\CPP\vcpkg\installed\x64-windows\tools\protobuf\protoc.exe --proto_path=$SRCPath --cpp_out=$BuildPath $SRCPath\dota_usermessages.proto C:\CPP\vcpkg\installed\x64-windows\tools\protobuf\protoc.exe --proto_path=$SRCPath --cpp_out=$BuildPath $SRCPath\steammessages.proto C:\CPP\vcpkg\installed\x64-windows\tools\protobuf\protoc.exe --proto_path=$SRCPath --cpp_out=$BuildPath $SRCPath\steammessages_unified_base.steamworkssdk.proto C:\CPP\vcpkg\installed\x64-windows\tools\protobuf\protoc.exe --proto_path=$SRCPath --cpp_out=$BuildPath $SRCPath\steammessages_steamlearn.steamworkssdk.proto C:\CPP\vcpkg\installed\x64-windows\tools\protobuf\protoc.exe --proto_path=$SRCPath --cpp_out=$BuildPath $SRCPath\gcsdk_gcmessages.proto C:\CPP\vcpkg\installed\x64-windows\tools\protobuf\protoc.exe --proto_path=$SRCPath --cpp_out=$BuildPath $SRCPath\econ_shared_enums.proto C:\CPP\vcpkg\installed\x64-windows\tools\protobuf\protoc.exe --proto_path=$SRCPath --cpp_out=$BuildPath $SRCPath\econ_gcmessages.proto C:\CPP\vcpkg\installed\x64-windows\tools\protobuf\protoc.exe --proto_path=$SRCPath --cpp_out=$BuildPath $SRCPath\dota_gcmessages_msgid.proto
Get-ChildItem -Path "$BuildPath*.*" -Recurse | Move-Item -Destination $LibraryPath -Force
Кстати вспкг изначально и ставил, но что-то там не получилось и мне перехотелось Протобафы вполне себе собираются в статик-версию без лишней DLLки(но там CRT включается тогда и размер больше), мне лишь бы версию рабочую За скрипт пасиба, идея с закидыванием DLL в папку весьма интересная