yangyuan/hearthrock

Another new version

Closed this issue · 2 comments

So,

I know that new versions are release every time, and that the main developer has other stuff to do. So instead of just complaining from time to time that a new version was released, is there any way to update the project (a guide at least) to update it and keep it up and running for each blizzard update to update.

If anyone can help me with that I will try to update it from time to time or even fork it.

Regards

zzk0 commented

#54

Hi,

In hex editor you should open assembly-csharp (original from hs folder) and open hs ram

And search in hs ram something familiar with assembly-csharp

I'm usually search assembly-csharp end sections in hs ram, than search back for start section, than just right click - select block - write start point, and end point, copy selected
File-new-paste

The method work fine for me. Replace the assembly-csharp.dll, then run Hearthrock.Client.exe, it will work.
But when try to build the project using the new assembly-csharp.dll, it failed.

So first you need to decrypt assembly-csharp.dll
This is the code I use
https://gist.github.com/yangyuan/14444ccbc08517f64b31cf24165fccf2

If you are using binaries (AKA Hearthrock.Client.exe), replacing assembly-csharp.dll and updating pegasus.json should be good enough for most of the blizzard update.

If you are using the project source code you need a new Nuget which contains the decrypted assembly-csharp.dll, and update the source code to use the new Nuget. pegasus.json also needs to be updated.

I tried to automatic above process (decryption, packing Nuget, update the project to use new Nuget). But I do need manual integration tests... which seems to be not avoidable. Also, I'm not able to find a reliable way to get up to date "assembly-csharp.dll"

I can post this in somewhere I suppose....