FYI. The AH version started as something I did in ASM. I had a working prototype AH client and server that tested ok. It did things like send a copy of the player's mini-map back to the server so you could see instantly if they were mapping.
This was around the time my daughter was born (my son was 16 months) and I was saving to buy our house - working long shifts etc., so I couldn't put the time in.
I had to have a few years off WC2 at that stage. Before I left I sent blid the source code and notes, instructions, tools etc. to continue with. I'm not sure if they ended up using that as a base for the AH we have now or not, but that's how it started.
I think i have that source code. Not sure, i saw several antihack projects, one of them (client-server one) was interesting, but i'd prefer to implement it together with author. But i had no access to author, so my one implemented into war2ploader is one i made myself.
Also, i don't remember any AH projects written on ASM.
Would be very interesting to talk about antihack ideas with you.
The old forum at http://war2.warcraft.org/forum/ has gone or at least its down right now.
Looks like it's gone. All we have now is a static copy of a small part: http://occult.war2.ru
. Not sure if it's possible to find that there.
Might do a seperate post about that....
.... anyway the build hack detector... I'll re-write a short description here. I named it "anticrap" for lols. It was just a fairly simple proof-of-concept thing. It checks all newly made buildings to see if the player has the pre-requisites - or at least used to have them.
Because of the glitch/feature where you can, for instance, target placement of a dragon roost but not click to place it, then have your fort destroyed then click and place the roost with no fort, it just checks if the player has had ever had a fort, not if they currently have a fort.
There are ways to do it properly, but as this was just a simple demo (i think i wrote it over 2 evenings after work) it just does a quick reality check. If it detects something "suspicious" it sounds a chime and displays a message like "Player Dellam has built a suspicious Dragon Roost" or whatever. You have to tab out to see the message, but you can hear the alarm in game.
It also has a check-box so you can make black display as hot pink on the mini-map, without changing the color of the units themselves.
That project definitely deserves a separate topic here. Looks great!
I also had plans to make monitoring for build hack the same way.
With dropping the hacker by all the clients using my "anticrap".
I didn't plan to deny allowed buidlings on destroying something (or to just make a big timeout, like 1 min).
The main reason for build-hacking is to build dragons right after game starting or w/e. So, not a big deal, but difficult to handle it properly if someone build after destroying the required building. But warning is a good way to handle that.
Unfortunately that project should take much more than 2 evenings after work for me, so i thought to use my time to make antihack for everything instead.
So, i would appreciate your help with that.
I think, i can read a list of buildings for war2 memory (didn't try though and that should require much time for me), but i have no idea how to activate event on placement a new building. I'd just make a timer to check it every second or w/e.
Also, i have no idea if that's easy for several clients to drop one and to keep sync between each other (and probably clean clients with no "anticrap").
I also looked into your anticrap3 with IDA and understood nothing... Is it packed as anticrap2? Did you fix it without the source code and without unpacking?
Would be great to look into your project with comments about addresses in war2 memory.
My dream is to include this (or such) project into my loader for war2.
Also, black2pink on minimap as 1 checkbox is also great solution! Would be a good way to remove the whole black2pink patch from combat at all.
P.S: you looks very experienced in war2 process memory. I tried and i know how difficult for me to find all these addresses. Would be glad to see you as a part of our war2 development team!