|
You last visited: Today at 19:38
Advertisement
[Question] House Permit Bot (AutoIt3)
Discussion on [Question] House Permit Bot (AutoIt3) within the CO2 Programming forum part of the Conquer Online 2 category.
04/27/2009, 16:26
|
#46
|
elite*gold: 0
Join Date: Feb 2007
Posts: 348
Received Thanks: 2,175
|
Quote:
Originally Posted by _fobos_
I just went to check thats not the right function 
This is the right function, it doesnt take item ID as parameter but inventory slot ID starting at 0 as first slot
Code:
00490768 FFB6 40F30A00 PUSH DWORD PTR DS:[ESI+AF340]
0049076E 8BCF MOV ECX,EDI ; Conquer.005DABB8
00490770 E8 D6270400 CALL Conquer.004D2F4B
|
Thanks _fobos_ ur my Hero  ,, i was checking the function i just found again and it only stopped at the breakpoint for some of the items.
Edit: hmmm.... i dont get it, i looked up 00490770 in olly, added a break point, put an item in my WH, and the code didn't stop at break point.
|
|
|
04/27/2009, 16:32
|
#47
|
elite*gold: 0
Join Date: Sep 2008
Posts: 490
Received Thanks: 595
|
Quote:
Originally Posted by clintonselke
Thanks _fobos_ ur my Hero  ,, i was checking the function i just found again and it only stopped at the breakpoint for some of the items.
|
But it looks like theres another check, because i cant directly change it 
but maybe when its called it will work as i thought just play with in in C++  .
Also make sure to also check if theres enough slots free its the function above it it will compare EBX with EAX and will jump past the " not enough w.h space" if 14 (hex) is larger then free w.h slots.
I quarantee if ur not gonna do that one aswell that your game will crash if u try to deposit when ur w.h is full
|
|
|
04/27/2009, 16:42
|
#48
|
elite*gold: 0
Join Date: Feb 2007
Posts: 348
Received Thanks: 2,175
|
Quote:
Originally Posted by _fobos_
But it looks like theres another check, because i cant directly change it 
but maybe when its called it will work as i thought just play with in in C++  .
Also make sure to also check if theres enough slots free its the function above it it will compare EBX with EAX and will jump past the " not enough w.h space" if 14 (hex) is larger then free w.h slots.
I quarantee if ur not gonna do that one aswell that your game will crash if u try to deposit when ur w.h is full 
|
Code:
00490742 E8 746D0400 CALL Conquer.004D74BB
00490747 3BC3 CMP EAX,EBX
00490749 7C 1D JL SHORT Conquer.00490768
yea, i see that now. Thanks for the heads up.
Edit: Alright, can't get olly to break at that point atm, time to try it in C++.
Edit: Ok, had a few attempts.
The telnet
Code:
Welcome to Microsoft Telnet Client
Escape Character is 'CTRL+]'
Microsoft Telnet> send item2wh 0
Sent string item2wh 0
Microsoft Telnet> send item2wh 1
Sent string item2wh 1
Microsoft Telnet> send item2wh 2
Sent string item2wh 2
Microsoft Telnet> send item2wh 3
Sent string item2wh 3
Microsoft Telnet> send exit
Sent string exit
Microsoft Telnet>
Connection to host lost.
The function
PHP Code:
static int ConquerItemToWh_slot;
void ConquerItemToWh(int slot)
{
cout << "ConquerItemToWh(" << slot << ")" << endl;
ConquerItemToWh_slot = slot;
/*
00490768 FFB6 40F30A00 PUSH DWORD PTR DS:[ESI+AF340]
0049076E 8BCF MOV ECX,EDI ; Conquer.005DABB8
00490770 E8 D6270400 CALL Conquer.004D2F4B
*/
asm("pushl 0x689EF8;\n"
"movl $0x5DABB8, %ecx;\n"
"movl $0x4D2F4B, %eax;\n"
"call *%eax;\n");
}
The log (CO2Claw.log)
Code:
Binding to port 12345
Listening for connections
Accepting connection
Recieved command: item2wh 0
ConquerItemToWh(0)
Recieved command: item2wh 1
ConquerItemToWh(1)
Recieved command: item2wh 2
ConquerItemToWh(2)
Recieved command: item2wh 3
ConquerItemToWh(3)
Recieved command: exit
Shutting down.
Unfortunately the items did not move from my inventory to my wh, are u sure about this function??
this one here "pushl 0x689EF8;\n" means "push [0x689EF8]", and i assumed ESI would take the same value as EDI of 0x005DABB8. So i went 0x5DABB8 + 0xAF340 = 0x689EF8.
Maybe its the correct function but TQ have a protection on it.
Edit: Wait a sec, nvm that. I'm so silly. I'm ment to push my slot number instead of the address TQ uses. 1 sec lol
Edit:
Fixed but not yet working nor breaking in that location for me in olly
PHP Code:
static int ConquerItemToWh_slot;
void ConquerItemToWh(int slot)
{
cout << "ConquerItemToWh(" << slot << ")" << endl;
ConquerItemToWh_slot = slot;
/*
00490768 FFB6 40F30A00 PUSH DWORD PTR DS:[ESI+AF340]
0049076E 8BCF MOV ECX,EDI ; Conquer.005DABB8
00490770 E8 D6270400 CALL Conquer.004D2F4B
*/
asm("pushl _ConquerItemToWh_slot;\n"
"movl $0x5DABB8, %ecx;\n"
"movl $0x0490450, %eax;\n"
"call *%eax;\n");
}
sorry to bug like this
Edit: This is really interesting, the breakpoint only triggers sometimes when i put an item in. Are we sure this isn't a function for something else??
Edit: WAIT! I know whats happening now, the code is only triggering the breakpoint if u drop an item onto on another item in the wh. It is not dropping when u drop an item in a free spot inside the wh. I think its a item sorting function or something, not a item insert into wh from inventory function.
|
|
|
04/27/2009, 17:50
|
#49
|
elite*gold: 0
Join Date: Sep 2008
Posts: 490
Received Thanks: 595
|
Quote:
Originally Posted by clintonselke
Yeap, the UID  ... sorry im new
Edit: Those UIDs on the items are gonna be a pain to work out. I remember from ur thread how the PlayerNames are close to the Player's UIDs, maybe the items ID will sit closely to the items UID (or item name if im extremely lucky).
|
Quote:
Originally Posted by _fobos_
I just went to check thats not the right function 
This is the right function, it doesnt take item ID as parameter but inventory slot ID starting at 0 as first slot
Code:
00490768 FFB6 40F30A00 PUSH DWORD PTR DS:[ESI+AF340]
0049076E 8BCF MOV ECX,EDI ; Conquer.005DABB8
00490770 E8 D6270400 CALL Conquer.004D2F4B
|
Quote:
Originally Posted by clintonselke
Thanks _fobos_ ur my Hero  ,, i was checking the function i just found again and it only stopped at the breakpoint for some of the items.
Edit: hmmm.... i dont get it, i looked up 00490770 in olly, added a break point, put an item in my WH, and the code didn't stop at break point. 
|
Quote:
Originally Posted by _fobos_
But it looks like theres another check, because i cant directly change it 
but maybe when its called it will work as i thought just play with in in C++  .
Also make sure to also check if theres enough slots free its the function above it it will compare EBX with EAX and will jump past the " not enough w.h space" if 14 (hex) is larger then free w.h slots.
I quarantee if ur not gonna do that one aswell that your game will crash if u try to deposit when ur w.h is full 
|
Quote:
Originally Posted by clintonselke
Code:
00490742 E8 746D0400 CALL Conquer.004D74BB
00490747 3BC3 CMP EAX,EBX
00490749 7C 1D JL SHORT Conquer.00490768
yea, i see that now. Thanks for the heads up.
Edit: Alright, can't get olly to break at that point atm, time to try it in C++.
Edit: Ok, had a few attempts.
The telnet
Code:
Welcome to Microsoft Telnet Client
Escape Character is 'CTRL+]'
Microsoft Telnet> send item2wh 0
Sent string item2wh 0
Microsoft Telnet> send item2wh 1
Sent string item2wh 1
Microsoft Telnet> send item2wh 2
Sent string item2wh 2
Microsoft Telnet> send item2wh 3
Sent string item2wh 3
Microsoft Telnet> send exit
Sent string exit
Microsoft Telnet>
Connection to host lost.
The function
PHP Code:
static int ConquerItemToWh_slot;
void ConquerItemToWh(int slot) { cout << "ConquerItemToWh(" << slot << ")" << endl; ConquerItemToWh_slot = slot; /* 00490768 FFB6 40F30A00 PUSH DWORD PTR DS:[ESI+AF340] 0049076E 8BCF MOV ECX,EDI ; Conquer.005DABB8 00490770 E8 D6270400 CALL Conquer.004D2F4B */ asm("pushl 0x689EF8;\n" "movl $0x5DABB8, %ecx;\n" "movl $0x4D2F4B, %eax;\n" "call *%eax;\n"); }
The log (CO2Claw.log)
Code:
Binding to port 12345
Listening for connections
Accepting connection
Recieved command: item2wh 0
ConquerItemToWh(0)
Recieved command: item2wh 1
ConquerItemToWh(1)
Recieved command: item2wh 2
ConquerItemToWh(2)
Recieved command: item2wh 3
ConquerItemToWh(3)
Recieved command: exit
Shutting down.
Unfortunately the items did not move from my inventory to my wh, are u sure about this function??
this one here "pushl 0x689EF8;\n" means "push [0x689EF8]", and i assumed ESI would take the same value as EDI of 0x005DABB8. So i went 0x5DABB8 + 0xAF340 = 0x689EF8.
Maybe its the correct function but TQ have a protection on it.
Edit: Wait a sec, nvm that. I'm so silly. I'm ment to push my slot number instead of the address TQ uses. 1 sec lol
Edit:
Fixed but not yet working nor breaking in that location for me in olly
PHP Code:
static int ConquerItemToWh_slot; void ConquerItemToWh(int slot) { cout << "ConquerItemToWh(" << slot << ")" << endl; ConquerItemToWh_slot = slot; /* 00490768 FFB6 40F30A00 PUSH DWORD PTR DS:[ESI+AF340] 0049076E 8BCF MOV ECX,EDI ; Conquer.005DABB8 00490770 E8 D6270400 CALL Conquer.004D2F4B */ asm("pushl _ConquerItemToWh_slot;\n" "movl $0x5DABB8, %ecx;\n" "movl $0x0490450, %eax;\n" "call *%eax;\n"); }
sorry to bug like this
Edit: This is really interesting, the breakpoint only triggers sometimes when i put an item in. Are we sure this isn't a function for something else??
|
It always breaks for me o.O and slot ID's seem to be right hold on leme look at something..
damn i cant login CO kinda freezes on the conmnecting to login server >.>
|
|
|
04/27/2009, 17:53
|
#50
|
elite*gold: 0
Join Date: Feb 2007
Posts: 348
Received Thanks: 2,175
|
Quote:
Originally Posted by _fobos_
It always breaks for me o.O and slot ID's seem to be right hold on leme look at something..
|
I know whats happening
Try dropping an item in a free cell in ur wh.
It only breaks when u try to drop ur item pick on top of another item pic in ur wh.
Edit:  ... these posts are so many, we should use an IM like msn or yahoo for this, people might complain xD
Edit: Wow, QuizShow is on... 1 sec gotta play xD
|
|
|
04/27/2009, 18:03
|
#51
|
elite*gold: 0
Join Date: Sep 2008
Posts: 490
Received Thanks: 595
|
Quote:
Originally Posted by clintonselke
I know whats happening
Try dropping an item in a free cell in ur wh.
It only breaks when u try to drop ur item pick on top of another item pic in ur wh.
Edit:  ... these posts are so many, we should use an IM like msn or yahoo for this, people might complain xD
|
I agree lol!
|
|
|
04/30/2009, 08:51
|
#52
|
elite*gold: 0
Join Date: Nov 2005
Posts: 158
Received Thanks: 35
|
speaking of quiz show  feel free to check out my recent request in this sub-forum after you finish your marvelous house permit botly goodness ^^
|
|
|
 |
|
Similar Threads
|
[help]making house permit and upgrade cert undroppable
06/06/2009 - CO2 Private Server - 2 Replies
Hi what I made a little house code nothing much. Might actually make the whole proccess like the vouchers and stuff but what I need now is how to make a house permit and upgrade certificate undroppable and untradable.
Thanks,
|
Question about house item box
04/30/2008 - Conquer Online 2 - 2 Replies
Ok, so we all now know we need to be trade partner to get things out of wifes house. I got a chance at 550m right now if I can by this. I dont know if I can remain with this same partner for 72 hrs (its just an exp thing). Anyway is this a client side thing telling me I cant do it meaning if I revert to an older version stop the AP and login in can I access it or is this codded into the sever? If so somone please help me get by it!
|
house permit cost
01/02/2008 - Conquer Online 2 - 1 Replies
hey guys,
I'm playing this game after a year's break now so i don't know the prices of many things so.....
I wanted to know the average prices of house permits in the venus server.
If anyone knows, please tell me.
thnx
Akshay
|
house permit again
08/01/2007 - Conquer Online 2 - 6 Replies
wondering how much a house permit cocts in the market, any server, i dont really care, and do u think its worth it to go for 62.5 trips?
|
a house permit
08/01/2007 - Conquer Online 2 - 7 Replies
Anyone know how many ores needs to get house permit? I calculate it is 2500 ores.
|
All times are GMT +1. The time now is 19:38.
|
|