Register for your free account! | Forgot your password?

Go Back   elitepvpers > MMORPGs > Conquer Online 2 > CO2 Programming
You last visited: Today at 23:12

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Conquer Proxy's; How do they work?

Discussion on Conquer Proxy's; How do they work? within the CO2 Programming forum part of the Conquer Online 2 category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Mar 2009
Posts: 518
Received Thanks: 238
Conquer Proxies; How do they work?

Hello all you wonderful coders out there, I come to you today with a question. I have really been wanting to make something to contribute to EPVP, and a proxy seems like a hard way to start, but I figure if I take it bit by bit, not only do I think I can do it, but I will also learn a lot along the way.

I am requesting a bit about proxy's and how they work, and also some good info on packets. A graphical diagram of how a proxy works would be the best, but textual information also works.

Thanks in advanced
,DeathByMoogles

**** this forum for not allowing Indentations!
DeathByMoogles is offline  
Old 07/13/2010, 16:31   #2
 
Huseby's Avatar
 
elite*gold: 106
Join Date: Oct 2006
Posts: 6,047
Received Thanks: 1,165
A proxy is a bridge between the Conquer client and the TQ server, it can maniupluate, send new and block so called packages

Heres how it usually works(This is a really really simple illustration, not taking with the network layers etc)

Conquer Client >><< TQ server

Heres an example proxy for CO

Conquer client >><<Proxy>><<TQs servers

The > and < illustrates in and out coming packages

Good luck, i guess someone else should help you what a program language to choose.
Huseby is offline  
Old 07/13/2010, 17:36   #3
 
elite*gold: 21
Join Date: Jul 2005
Posts: 9,193
Received Thanks: 5,380
HHmmm... seems like lots of questions like this recently... maybe if i have time next time i'm on a real comp i'll do a simple writeup (although there are far better people than me to shed light on it).

As already said it basicly is a bridge to handle packets between server and client.


You simply create a program that listens on the auth and game ports (from client), client is then set to con to the proxy ip. Proxy then connnects to tq's server and modifies the information being returned (game server ip/port) which will then cause the client to connect to the proxy rather than the gameserver. Once this is doe and eryptio has been set up using dhkey exchange then you can read, write, block packets in either direction. This means you can use server>client packets to pull your surroundings such as monsters/players and use that + scripts to control things like attacking (create a new fastblade atkk packet at target x/y) and boom, you have an aimbot (or w/e else you want)

Anyways, that's all the detail i care to type using a phone lol
pro4never is offline  
Thanks
1 User
Old 07/14/2010, 00:27   #4
 
elite*gold: 0
Join Date: May 2008
Posts: 164
Received Thanks: 16
woot woot really quite good i think i wish to learn all this too so i can create my own bot without leeching other people creatition !!
skykaiwen is offline  
Old 07/14/2010, 11:02   #5
 
elite*gold: 0
Join Date: Sep 2008
Posts: 1,683
Received Thanks: 506
First of all, you need to know what the client, and server are.
The client is the game itself, it displays everything, and you can interact with it, and it will react on this as well.
The server is what handles, saves, loads, checks, all the things for the client, and connects all the clients to 1 server. It also secures you to not get access to the database since the Client doesn't have it, only the server does.

So, the server and client have to communicate, they send bytes to each other instead of talking like humans.
The proxy, is like a tunnel.
Normally it would be Client>><<Server
But now there's a proxy, receiving all data, modifying it, using it, creating new data etc.
So the client sends his info to the proxy, the proxy handles this, and sends it to the server, the server responds to the proxy. So what you will get is:
Client>><<Proxy>><<Server
Basser is offline  
Old 07/14/2010, 15:20   #6
 
elite*gold: 0
Join Date: Mar 2009
Posts: 518
Received Thanks: 238
Ahh okay thanks a lot.
I guess now I need to learn about packets, then?
DeathByMoogles is offline  
Old 07/14/2010, 17:42   #7
 
elite*gold: 21
Join Date: Jul 2005
Posts: 9,193
Received Thanks: 5,380
Quote:
Originally Posted by DeathByMoogles View Post
Ahh okay thanks a lot.
I guess now I need to learn about packets, then?
There is an excellent guide posted somewhere aboout packet structure but every time i try to look for iit i can't find it lol.... i'll stumble po it soon i'mm sure and i'll post in my thread and here.


Basicly though, once decrypted you will have byted (0-255) in hex format (0-FF), they are grouped into sections of 2, 4, 8 for MOST things strings and stuff can use varying lengths more often. The values in these are reversed though.


Eg:

01 00 would be 1 (1 in hex is still 1 in dec)

01 01 would be 101 in hex (no comp here atm so you can do your own hex conversion lol)


In tq's packets, you should be able to find MOST structures easily through logging, trial and error and some common sense (look for coord/map/uid values then solve vague stuff after!)

First 2 bytes = packet length (excluding the 8 byte seal)
second 2 bytes = packet type

Past that variies w/ the packet, the wiki has lots of documented packets though.

The last 8 bytes consists of a 'seal' this is an 8 byte text string encoded to bytes. It is one of two values.

TqClient or TqServer which dictates which direction the packet is going (send to the wrong place and you get dc'd!)

I'll post more when not typing on cellphone
pro4never is offline  
Old 07/14/2010, 21:37   #8
 
elite*gold: 0
Join Date: May 2008
Posts: 164
Received Thanks: 16
oh so I have to make sure I get the right bytes from the packet lenght ? what program I have to used to search the bytes n how to I learn look for the hex ?


so sorry I am really a noob >< !
skykaiwen is offline  
Old 07/14/2010, 22:01   #9
 
elite*gold: 21
Join Date: Jul 2005
Posts: 9,193
Received Thanks: 5,380
You don't use a program... if you have a proxy or w/e then you should have your packets receiving/sending properly. You can then print out packets to the console or to a text file and interpret them manually.

Use windows calculator to find the values from hex>dec. I posted the link in my proxy thread that contains all sorts of info on understanding packets.
pro4never is offline  
Old 07/15/2010, 12:21   #10
 
elite*gold: 0
Join Date: Mar 2009
Posts: 518
Received Thanks: 238
Quote:
Originally Posted by skykaiwen View Post
oh so I have to make sure I get the right bytes from the packet lenght ? what program I have to used to search the bytes n how to I learn look for the hex ?


so sorry I am really a noob >< !
lol, maybe you aren't ready for a proxy, or didn't read pro's explanation of them

But thanks a lot pro4never, I'm not so sure I would be able to do this on my own right now. I would probably have to learn a lot more about packets.
DeathByMoogles is offline  
Old 07/19/2010, 17:47   #11
 
elite*gold: 0
Join Date: May 2008
Posts: 164
Received Thanks: 16
DeathByMoogles : lol if there is someone willing to teach me i what also learn sure i am a fast learner in IT programming code but my cousre haven start yet so I dunno anything at all LOL only know basic C++ and abit of advance C++ tat all
skykaiwen is offline  
Old 07/20/2010, 00:52   #12
 
Ian*'s Avatar
 
elite*gold: 0
Join Date: Nov 2006
Posts: 805
Received Thanks: 464
DeathByMoogles,

Packets are very simple to use. Setting up the environment in which to use them is the only difficult part.

A packet is just a set of data that represents anything sent over a network threw a socket, which you could consider a pipe with two ends.

A when you read the data being sent out or getting received will look something like this in hexadecimal,

08 00 27 1A 56 AC B2 C1

Now this is just a random packet.
Bytes 0 and 1 are the size 0x08 , a short.
Bytes 2 and 3 are the type 0x271A, a short.
And bytes 4 threw 7 are let's say hero uid, an int.

Soo assign pointers or write up your own way of structuring that and you're set to use them.

To figure out what is what just compare packet values of the same type
Ian* is offline  
Old 07/20/2010, 21:52   #13
 
elite*gold: 0
Join Date: Mar 2009
Posts: 518
Received Thanks: 238
Quote:
Originally Posted by Ian* View Post
DeathByMoogles,

Packets are very simple to use. Setting up the environment in which to use them is the only difficult part.

A packet is just a set of data that represents anything sent over a network threw a socket, which you could consider a pipe with two ends.

A when you read the data being sent out or getting received will look something like this in hexadecimal,

08 00 27 1A 56 AC B2 C1

Now this is just a random packet.
Bytes 0 and 1 are the size 0x08 , a short.
Bytes 2 and 3 are the type 0x271A, a short.
And bytes 4 threw 7 are let's say hero uid, an int.

Soo assign pointers or write up your own way of structuring that and you're set to use them.

To figure out what is what just compare packet values of the same type
err.
It looks to me like you explained that pretty well, but could you go into more detail about the structure of the packet?
Sorry, i have literally NO EXPERIENCE in this whatsoever.
the closest thing to packets i have ever done was a TCP pipe for a basic simulated instant messenger (client/server, client sends messages to server, server retrieves messages from local stream, then reads and writes to textbox)
DeathByMoogles is offline  
Old 07/20/2010, 22:00   #14
 
elite*gold: 21
Join Date: Jul 2005
Posts: 9,193
Received Thanks: 5,380
Quote:
Originally Posted by DeathByMoogles View Post
err.
It looks to me like you explained that pretty well, but could you go into more detail about the structure of the packet?
Sorry, i have literally NO EXPERIENCE in this whatsoever.
the closest thing to packets i have ever done was a TCP pipe for a basic simulated instant messenger (client/server, client sends messages to server, server retrieves messages from local stream, then reads and writes to textbox)
Check the sticky in the main discussion section. I posted a link for a post that explains how to interpret packets.

Basicy you chunk up sections of the packet. Switch their rder ( 01 02 = 201 in hex, then convert to dec using windows calculator) and figure out what each chunk reresents (player id, timer, packet type/subtype, target... etc) and boom, you have a packet structure. Then write a code to build a custom packet of that type (eg, attack packet) and then send to client or server.
pro4never is offline  
Old 07/20/2010, 22:20   #15
 
elite*gold: 0
Join Date: Mar 2009
Posts: 518
Received Thanks: 238
okay so
08 00 27 1A 56 AC B2 C1
Open calc
put in A172 in hex mode
switch to dec
and i get 41330
that right?

if it is, what can i do with that info?
DeathByMoogles is offline  
Reply


Similar Threads Similar Threads
proxy's
10/16/2007 - Conquer Online 2 - 2 Replies
I know proxy's can be unsafe, but I'm not sure exactly how. What I really want to know is, is a proxy only dangerous while it's running? Can i run it and log in with a character that I won't mind losing and then close the proxy and log in on my main, only putting the worthless account (or my whole computer) at risk until I close the proxy?
Conquer wont work?
03/01/2007 - Conquer Online 2 - 2 Replies
it keeps saying error that its under maintance or something :S every my friend got same problem but not at one of my friends does conquer work at you? sorry my english :hm:
How can I get Conquer to work at school?
03/22/2006 - Conquer Online 2 - 14 Replies
I as wondering if there was a way for me to play conquer off my Ipod at school I got everything on there, but my problem is the game wont connect to the servers I think my school blocked the Conquer port w/e that is can anyone tell me 1. waht port conquer uses, 2 if i can change it somehow and how, and 3 if does anyone have like a edited exe that works at school i could use?
Will Conquer Partner work in co 0.2 ?
11/15/2005 - Conquer Online 2 - 9 Replies
As the topic says :rolleyes: Anyone know if it'll work ? =(



All times are GMT +1. The time now is 23:12.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.