About BJX Conquer Bot

03/23/2005 02:22 UltimateApocalypse#1
OK, the BJX bot that used to work now no longer works since the last update.
That bot, when run, first checks if Conquer.exe is running, then it checks the version of the conquer then it connects to the author's server.

After hours of reverse engineering, I have managed to bypass the version check and the connection to author's server. Now the problem is, once inside Conquer, the bot will start to do random things. I think that is because the offset of the memory has changed. If I can somehow figure out the new offset and change it in BJX, then I think I can get that bot working again.

Any idea of how to find out the new offset for Conquer and the offset's location in BJX.exe?

Thanks!
03/23/2005 03:03 vDrag0n#2
you'd have to know what offset ur looking for first =.=.
03/23/2005 05:30 UltimateApocalypse#3
I think BJX finds the pointer to the memory block used by Conquer.exe. Then from there read the memory to find out the necessary info. I think the pointer has now changed....... Hmm..... I am not very experienced in this, so I could be totally wrong.
03/23/2005 15:12 NoName#4
you talk about: "After hours of reverse engineering"
and then you ask : "Any idea of how to find out the new offset for Conquer and the offset's location in BJX.exe?"

so i ask me what is for you "reverse engineering"?
03/24/2005 00:30 UltimateApocalypse#5
Yeah, well I did all I could to figure out how to bypass the version check and server check by disassemble the file and reach through the assembly line by line. But that's all I understand. I have no idea how to find out the memory pointer offset for conquer and so forth.

Knowing how to do 1+1 doens't necessarily lead me to understand how to do 1*1. Both involves math, and yet there is a limit of what I understand and can do.
03/25/2005 15:13 DeathWalker#6
Well.Nice job. At least you put off some effort better than people who sit there and ask for hacks. =) Mind posting what you dd in details such that we can help you? Like where you were stuck
03/27/2005 11:09 UltimateApocalypse#7
Here is what I have done.
Right now you can load BJX but it will keep clicking the top left corner and then quit.
the englishBJX.bak is a backup, which only removed the connection with author's server.

Not sure how to make BJX work for the updated CO client.
Well, if any of you can figure this out, please post.

RAR format gives me 280KB while ZIP format gives me 720KB.
The fileis compressed using RAR format but since I can only upload ZIP files here, so I changed the extension to ZIP.

Remember to change file extension from ZIP to RAR or else you will not be able to unzip it

EnglishBJX can be downloaded from the following location
[Only registered and activated users can see links. Click Here To Register...]
03/27/2005 13:25 Ultima#8
Quote:
Originally posted by UltimateApocalypse@Mar 24 2005, 00:30
Yeah, well I did all I could to figure out how to bypass the version check and server check by disassemble the file and reach through the assembly line by line. But that's all I understand. I have no idea how to find out the memory pointer offset for conquer and so forth.

Knowing how to do 1+1 doens't necessarily lead me to understand how to do 1*1. Both involves math, and yet there is a limit of what I understand and can do.
You have to tale the old conquer look where the BJX reads the memory and checks if its the same (version check) and then look for the new offset in the new conquer file and then patch the bjx file for that

so far i managed to get it to start but it doesnt work there is some more i ave to patch but i think it will work sooner or later
03/27/2005 22:25 UltimateApocalypse#9
That's nice. I am looking forward to have you fix BJX for the rest of us. :P

I understand what you said but still not sure how to start. I don't know how to find out where BJX reads the memory from Conquer. :(
03/28/2005 00:35 Ultima#10
Quote:
Originally posted by UltimateApocalypse@Mar 27 2005, 21:25
That's nice. I am looking forward to have you fix BJX for the rest of us. :P

I understand what you said but still not sure how to start. I don't know how to find out where BJX reads the memory from Conquer. :(
just hook every readmemory call of the bjx and then you get the adresses ;)
03/28/2005 02:48 UltimateApocalypse#11
lol, I understand a bit about programming and assembly, but not much. So I don't know how to write a hook function to capture the readmemory call from BJX. :(
03/29/2005 21:25 craiglincs#12
maybe this will help.

I have the chinese version which i believe is still working (not 100% sure) as this onyl works on the chinese p2p servers, this is bjx 2.2 however this one was purely subscription based, might have the information you are looking for though.

Worth a try, drop me a post here and i can up upload it somewhere.....btw its ALL in chinese!
03/29/2005 21:58 craiglincs#13
also, you can still use an old version of conquer, download the older patch and try running on that?
04/07/2005 02:37 b33asy#14
Think again about that, you cannot use the older versions because of some new protection system to stop people form using the Superman bug. I guess that they have blocked all clients with versions less then the current updated, i have tried to stop it at all points of patch and still nothing works.
04/09/2005 18:27 KitsunePaws#15
lemmie know if you get it working! :)