DOTA icon indicating copy to clipboard operation
DOTA copied to clipboard

future of this mod

Open ryouik1 opened this issue 2 years ago • 38 comments

https://www.reddit.com/r/DotA2/comments/s46mj8/dota_2_update_for_11422_11522_utc/?utm_source=share&utm_medium=web2x&context=3

Is it possible to do smth to bypass this block?

ryouik1 avatar Jan 15 '22 10:01 ryouik1

no

Wolf49406 avatar Jan 15 '22 20:01 Wolf49406

no

ryouik1 avatar Jan 15 '22 20:01 ryouik1

@Wolf49406 any update so far ?

XkTheMaster avatar Jan 16 '22 16:01 XkTheMaster

@Wolf49406 any update so far ?

Not really. Valve removed -tempcontent, so the only way to do vkp is by editing gameinfo.gi. There is hardcoded CRC32-hash of gameinfo and pretty stupid check of it and file size. Wich i can easily bypass by patching just one byte and there will be no "VAC" error. But there is also same check of (AFAIK) literally EVERY file in vpk. I can bypass it by hooking GC, but it's not a legit way. So... yeah. Work in progress.

Wolf49406 avatar Jan 16 '22 17:01 Wolf49406

Theres 1 more way with -language , same thing as tempcontent but u have to create a folder in game like dota_xxx then adding -language xxx @Wolf49406

XkTheMaster avatar Jan 16 '22 17:01 XkTheMaster

@XkTheMaster yeah for now at leas. But you still have to patch some dll's to back vpk. I'm pretty sure it's just a generic if\else check like with gameinfo.gi so it's not a big deal to bypass. The problem is to find right place in code.

Wolf49406 avatar Jan 16 '22 17:01 Wolf49406

I have stopped improving this mod, after an avalanche of "you're killing dota" feedback. Maybe I should have disregarded the loud opinions of $$ invested moddota cunts, content creators, pro-players, slacks and friends, making waves behind reddit aliases. But they are well connected to the scene, and repeatedly tried to push Valve into disabling mods. So I've "disappeared".

Did they finally get their wish? While it seems so, it might just be Valve's janitor fault so I won't raise any pitchfork.

  • This mod started out with -lv launch option (for dota_lv folder).

  • Was removed I think with Source 2.

  • Switched to -language but that one was less convenient (to override english and keep ui language files & etc had to invent stuff like -language english% with dota_english% folder).

  • So I've introduced the better -tempcontent and has been fine for years. Other mods adopted it. Now that's gone. Guess we go back to the cumbersome -language as it appears to still work fine. Winter is here, so the soon™ No-Bling update, is happening.

AveYo avatar Jan 17 '22 13:01 AveYo

Guys i did it. Screen with NoBling enabled. Fun fact: You need to patch just one byte. image

Wolf49406 avatar Jan 17 '22 13:01 Wolf49406

Саш, ну теперь рассказывай, что и где нажимать. :)

Wolf49406, instruction incoming?

MadSochi avatar Jan 17 '22 14:01 MadSochi

@AveYo there's no way you actually came back XD and giving an update for this project, i think im dreaming. But for now is there a safe fix for mod ?

XkTheMaster avatar Jan 17 '22 14:01 XkTheMaster

Hex editing client.dll like Wolf49406 does has always been a huge no-no for VAC

-language switch has always been VAC safe

If Valve wants to really kill modding, they can block resource loading outside dota I'm not sure is something they want, tho. So I'm gonna update the mod and see if they take further action.

AveYo avatar Jan 17 '22 14:01 AveYo

@AveYo

I have stopped improving this mod, after an avalanche of "you're killing dota" feedback. Maybe I should have disregarded the loud opinions of $$ invested moddota cunts, content creators, pro-players, slacks and friends, making waves behind reddit aliases.

create your own community and surround yourself with like minded people, no point of trying to win the respect of computer illiterate scrubs on reddit. And as for the moddota crowd, I just take advantage of them haha when they get suspicious of me asking questions about editing props and terrain and stuff in the dota map I just say it's some how related to a custom map project.

If you make a forum I'll share all my mods there.

robbyz512 avatar Jan 17 '22 15:01 robbyz512

@ryouik1 @MadSochi

Someone found a fix and I will try to explain how to do it until Aveyo will update No-Bling. We will need this tool https://github.com/rr-/CRC-manipulator extract it, inside it there should be crcmanip-cli.exe which we would use it later in CMD.

Now go to common\dota 2 beta\game\dota directory

  1. Inside it there is gameinfo.gi we will edit it (remember the original gameinfo.gi has 7.708 bytes)
  2. Rename gameinfo.gi to gameinfoModified.gi then go inside it with notepad++
  3. There you will add new lines above Game -- dota and Mod -- dota line 43 and 47 (in notepad)
  • Game dota_tempcontent (4 tab's between Game and dota_tempcontent)

  • Mod dota_tempcontent (4 tab's between Mod and dota_tempcontent)

  1. At line 4 "gameinfo.gi is the non-branch-varying content and can be integrated between branches." Remove text until you get "gameinfo.gi is the non-"
  2. Save the file, now the file should have 7.704 bytes.
  3. Go into CMD, change directory to crcmanip-0.5.2-bin
  4. Now paste this command crcmanip-cli.exe patch "C:\Program Files (x86)\Steam\steamapps\common\dota 2 beta\game\dota\gameinfoModified.gi" "C:\Program Files (x86)\Steam\steamapps\common\dota 2 beta\game\dota\gameinfo.gi" 4a52fc4f -p 18 -a CRC32
  5. After that it should create a new gameinfo.gi with 7.708 bytes and you should still have the old gameinfoModified.gi with 7.704 bytes
  6. If ur new gameinfo.gi did not get +4 bytes after the patch, u did something wrong.
  7. You can now enjoy and play with No-Bling Mod.

XkTheMaster avatar Jan 17 '22 23:01 XkTheMaster

Patching client.dll was never a problem because VAC never checked it. It's just stupid, stop misleading people, @AveYo. I know exactly which files dota checks and none of these are dlls.

Anyway, here's what i found. Open client.dll in ida, go to strings, search for "PlayDisabled_LocalFiles".

Here it is, simple CRC and file size check. image

The green one -- is our place to patch. image

So all you have to do is change jz short loc_18170E520 to jmp (74 >> EB) Now you can do generic gameinfo stuff. Pattern, if someone needs it "44 38 67 39 74 39". Our byte is (Pattern + 4);

Ghetto way: Open HxD Hex Editor > Ctrl+F > Hex > My Sig > Change 74 to EB image

I'll probably release "AIO patcher & gameinfo editor" later.

Wolf49406 avatar Jan 18 '22 00:01 Wolf49406

@lordamir20132 are you retarded? We gave you 3 ways to fix your shit. Do somethings yourself.

Wolf49406 avatar Jan 18 '22 13:01 Wolf49406

Please don't make from this Issues forum the scum forum.

MadSochi avatar Jan 18 '22 13:01 MadSochi

@robbyz512 hey man u have been away from ur discord for a long time are you doing ok? how is the mods going?

lordamir20132 avatar Jan 18 '22 13:01 lordamir20132

@XkTheMaster

Thank you for the perfect step by step instruction. But... A little misunderstanding. How must looks like the lines from line 40 to line 60. Like this? https://gyazo.com/a0dc69ee13026ab867c17c8147ffd156

or like that? https://gyazo.com/358ef2bd09faba638c142b9bc2da57c4

Anyway i can not get 7.704 bytes of gameinfoModified.gi

With line 4 is everything fine i think. https://gyazo.com/f055e1a59b6500fac7d95d8a3a2a56d5

And one more question. Is this changes are legal? Or i can get banned for this? If it illegal - i'll better wait for a new No-Bling from developer. If its legal - please edit my mistakes in gameinfoModified.gi

MadSochi avatar Jan 19 '22 03:01 MadSochi

@MadSochi like this image

Is this changes are legal

How can it not be? Dota will looks on CRC but CRC is ok. But you better use client.dll patch bc it's just completely turns this check off (always return true), it's way more safe. Valve can change gaminfo in every second and your CRC will be wrong. And no, VAC never bother about dlls. Otherwise, launching Dota would take as much time as checking the integrity of the game files.

UPD: Also with patching you can even customize main menu and remove annoying fps-eating Aghanim and "last match". Here is link on this VPK. To use it with NoBling just rename this one to pak02_dir.vpk, to pak03, pak04... you got the idea.

image

Wolf49406 avatar Jan 19 '22 04:01 Wolf49406

@MadSochi as you may already notice my english is not that good to do conversation :roll_eyes: You better white me on TG if you have a questions.

Wolf49406 avatar Jan 19 '22 04:01 Wolf49406

Hey, @Wolf49406

I just tried your method of patching the client. dll but I'm a n00b at this and I think it didn't work because I can launch the game and hit Find Match with no problems but no-bling isn't there and isn't working, if you could help me out and tell me what I did wrong, I'd be grateful!

So, like I said, I'm a total noob at this and have never used HxD before, but here's what I did:

  1. I launched HxD and then Opened client.dll with it.
  2. I press Ctrl+R and the replace window appears, so I select "Hex-values" and fill in the boxes as shown. https://i.imgur.com/0ttC6ol.png
  3. I pressed the OK button.
  4. This is the end result. https://i.imgur.com/hWnc23z.png
  5. I save and launch Dota 2.

But no-bling isn't working; please let me know what I'm doing wrong here ;')

EternalTranquility1 avatar Jan 19 '22 06:01 EternalTranquility1

@Lgazana

Here is instruction of how get back NoBling to work. ALL REGARDS AND THANKS GOES TO @Wolf49406 WHO PERSONALLY HELPED ME TO MAKE IT REAL !

  1. Launch Hex Editor (like HxD Hex Editor) Open file client.dll in directory \Steam\steamapps\common\dota 2 beta\game\dota\bin\win64\

Press Ctrl+F and enter this simbols 44 38 67 39 74 39 in the search tab named HEX-VALUE . When you found the line with that 44 38 67 39 74 39 then change 74 to EB and you will get this 44 38 67 39 EB 39 Save file.

  1. Open file gameinfo.gi by Notepad++ programm. File gameinfo.gi is in directory \Steam\steamapps\common\dota 2 beta\game\dota
    and Change line 39 to Game dota_tempcontent and line 40 to Mod dota_tempcontent

It will looks like this:

https://gyazo.com/918713fc4d59eeb9a6ede8a37231aeb9

Save file gameinfo.gi

Now you can start Dota 2 and enjoy with NoBling functions.

MadSochi avatar Jan 19 '22 07:01 MadSochi

Oh my goodness, it's working again!!! @MadSochi, thank you so much for your detailed instructions; I followed them and it worked!!

ALL REGARDS AND THANKS GOES TO @Wolf49406 WHO PERSONALLY HELPED ME TO MAKE IT REAL !

True, many thanks to @Wolf49406!!

EternalTranquility1 avatar Jan 19 '22 07:01 EternalTranquility1

Also you can just change the line 2086 (Ctrl+f > "dota_tempcontent") in NoBling's vpkmod.cs from string sourcefile = GAMEPATH + "/dota/pak01_dir.vpk", outputfile = GAMEPATH + "/dota_tempcontent/pak01_dir.vpk"; to string sourcefile = GAMEPATH + "/dota/pak01_dir.vpk", outputfile = GAMEPATH + "/NoBling/pak01_dir.vpk";

Wolf49406 avatar Jan 19 '22 07:01 Wolf49406

Niice, now i don't even have to worry about moving the vpk file to the correct folder each time it is generated. @Wolf49406 Thanks again! Also, I believe the launch option '-tempcontent' is no longer required, so I'll remove it for the time being ;P

EternalTranquility1 avatar Jan 19 '22 08:01 EternalTranquility1

@Lgazana yup, actually -tempcontent was completely removed.

Wolf49406 avatar Jan 19 '22 08:01 Wolf49406

Did something wrong? https://gyazo.com/8a5123bfcd3e71ebf4372b1e11831bbe

warden1437 avatar Jan 19 '22 14:01 warden1437

@warden1437 obviously. Describe step by step what you did. image

Wolf49406 avatar Jan 19 '22 14:01 Wolf49406

@Wolf49406 Actually idk why but i did 2nd and 3rd step there, but couldnt do the 1st bc of that (2nd scrntsht) just cant found 44 38 67 39 74 39, mb i should reintstall dota? https://gyazo.com/82f63c8930ca7727c498ce8c85d25e3e https://gyazo.com/160304c8f19e0602134e0c0996a5d1e7

warden1437 avatar Jan 19 '22 14:01 warden1437

@warden1437 Are you sure you're on the right tab? (no idea how to change the interface language here, lmao) image

Wolf49406 avatar Jan 19 '22 15:01 Wolf49406