So I was trying to figure out why my old PacketHooker test wasn't working and noticed something interesting....
After a decent amount of debugging and bashing my head against the wall i found out that it's not able to attach to the process (but being as the exceptions are all handled so nicely it doesn't complain).
For my client selector I have a simple PopulateClientList() which runs through each process on the computer, checks if it's a conquer process and if so tries to pull a client name from it.
I've tried ReadString as well as using ReadByteArray and ofc cause I cant attach it doesn't work (with trying to attach or not)
Anything I'm missing? I know it worked the first time I tested all this out.
Code:
foreach (Process theprocess in processlist)
{
if (theprocess.ProcessName == "Conquer")
{
Console.WriteLine("Process name found with: " + theprocess.ProcessName);
Console.WriteLine("Attached successfully? " + new Debuggee(theprocess.Id).AttachDebugger());
}
}
Always says false when I'm trying to attach debugger.
So I was trying to figure out why my old PacketHooker test wasn't working and noticed something interesting....
After a decent amount of debugging and bashing my head against the wall i found out that it's not able to attach to the process (but being as the exceptions are all handled so nicely it doesn't complain).
For my client selector I have a simple PopulateClientList() which runs through each process on the computer, checks if it's a conquer process and if so tries to pull a client name from it.
I've tried ReadString as well as using ReadByteArray and ofc cause I cant attach it doesn't work (with trying to attach or not)
Anything I'm missing? I know it worked the first time I tested all this out.
Code:
foreach (Process theprocess in processlist)
{
if (theprocess.ProcessName == "Conquer")
{
Console.WriteLine("Process name found with: " + theprocess.ProcessName);
Console.WriteLine("Attached successfully? " + new Debuggee(theprocess.Id).AttachDebugger());
}
}
Always says false when I'm trying to attach debugger.
What's the best way to detect when the client disconnects?
This requires that you log in through the bot though so that it can capture when WS2_32.connect gets called.
Edit:
Another option is to just hook the MessageBoxA function in user32.dll and check if the message box is saying "Error: Disconnected with the game server"
Just a thought here, since my proxy dosn't use hooking (it uses loopbacks), I've never really looked into it. But, if I'm not mistaken, doesn't the client use a Mutex to check for already running clients in order to limit it to 3? Most tuts on making multi-clients that I have read seem to be to do with that. Seeing as hexing the client is now more dangerous than it used to be, wouldn't it be possible to hook CreateMutexA, intercept the multi-client mutex check, change the name of the mutex to something random, call the original CreateMutexA and return the HANDLE to the client. Would that allow multi clienting with an unmodified client?
Just a thought here, since my proxy dosn't use hooking (it uses loopbacks), I've never really looked into it. But, if I'm not mistaken, doesn't the client use a Mutex to check for already running clients in order to limit it to 3? Most tuts on making multi-clients that I have read seem to be to do with that. Seeing as hexing the client is now more dangerous than it used to be, wouldn't it be possible to hook CreateMutexA, intercept the multi-client mutex check, change the name of the mutex to something random, call the original CreateMutexA and return the HANDLE to the client. Would that allow multi clienting with an unmodified client?
Yes it would, in fact I once released a versionless multi-client here that did exactly that
[RELEASE] Make a more Advanced NPC 02/02/2011 - CO2 PServer Guides & Releases - 55 Replies This guide will show you how to make a NPC. I will update this post daily with new things to add to your NPC.
First. We are going to take this NPC from Paralyzer and modify this a little bit. here is the link if you have never made a simple NPC.
http://www.elitepvpers.com/forum/co2-pserver-guide s-releases/492901-release-how-code-decent-npc-npcs -txt-entry.html
Easiest stuff first.
How to make an NPC check for a specific level.
To make an NPC check for a level we can do this by adding...
Advanced Tribalwars Bot Release 05/31/2010 - Browsergames - 20 Replies Ein Bot für das Browsergame "Die Stämme".
Features:
Multiaccountfähig
baut Dörfer selbstständig aus
Bot merkt sich, wann ein Gebäude gebaut werden kann, bzw. wann es fertiggestellt ist
Information: Bei "Server" z.B. de60.die-staemme.de o.ä. eingeben.
ReViSiOn [Advanced Public Release] 02/13/2009 - WarRock Hacks, Bots, Cheats & Exploits - 5 Replies http://i295.photobucket.com/albums/mm150/gfx_forum s/revvv3.png
ReViSiOn Public Beta 1.2
_____
Working features:
No Recoil
No Spread