Register for your free account! | Forgot your password?

Go Back   elitepvpers > MMORPGs > Conquer Online 2 > CO2 Private Server
You last visited: Today at 19:20

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

Advertisement



[TQ Binaries] Discussion and documentation

Discussion on [TQ Binaries] Discussion and documentation within the CO2 Private Server forum part of the Conquer Online 2 category.

Reply
 
Old   #1
 
elite*gold: 21
Join Date: Jul 2005
Posts: 9,193
Received Thanks: 5,380
[TQ Binaries] Discussion and documentation

This thread is a response to a suggestion by Lateralus . Seeing as I have no power to make sub sections to the forum I thought this could serve as a temporary area for people who enjoy binaries to discuss them and document how they work/interact with the TQ database.

WARNING: The epvp rules state that no illegal 'warez' are allowed to be posted. As such we do NOT allow posting the actual binary files. This is for discussion and documentation only! Anyone posting binary files will be infracted and the files removed. Posts requesting they be released will be deleted.


That being said... There is the actual Eudemons server AND client source code on epvp. I have no idea why eud seems to be exempt from the warez rule but that's not my concern. If you wish to look through it and work on reverse engineering various game systems or just understanding better how tq handles their database then I'd suggest a look through it (quite interesting although I've barely touched them)

Client:
Server:


Feel free to make large 'all in one' posts if you have stuff to share about how binaries work and I'll link to them from this post that way it will be somewhat easier for people to navigate through.
pro4never is offline  
Old 01/13/2012, 09:19   #2


 
Korvacs's Avatar
 
elite*gold: 20
Join Date: Mar 2006
Posts: 6,126
Received Thanks: 2,518
Lets start again shall we...
Korvacs is offline  
Thanks
1 User
Old 01/13/2012, 10:25   #3

 
Kiyono's Avatar
 
elite*gold: 20
Join Date: Jun 2006
Posts: 3,296
Received Thanks: 925
Well this might or not be become successful. I doubt that there are people around that come here to ask for download links but you'll never know.
Quote:
Originally Posted by pro4never View Post
I have no idea why eud seems to be exempt from the warez rule but that's not my concern.
I know you said that it's not your concern but apparently this is the reason:
Quote:
Originally Posted by Korvacs View Post
The Eudemons section really shouldnt be exempt, the moderators of that section have always defended it because without being exempt the section would basically have to be closed since no one has written an Eudemons source themselves, atleast thats the reason that was used the last time.

I dont really agree with it to be honest.
On a sidenote, I have seen the actual database posted before, is it fine to post that? It probably is seeing how there are flatfile databases around that are nothing else than TQ's database batched to ini files but I'll ask anyway.
Kiyono is offline  
Old 01/13/2012, 13:33   #4
 
elite*gold: 21
Join Date: Jul 2005
Posts: 9,193
Received Thanks: 5,380
Yes it's only the TQ .exe's that are not allowed.
pro4never is offline  
Old 01/13/2012, 13:37   #5


 
Korvacs's Avatar
 
elite*gold: 20
Join Date: Mar 2006
Posts: 6,126
Received Thanks: 2,518
Was just curious if anyone else has tried converting the AI from the binaries into a source?
Korvacs is offline  
Old 01/13/2012, 14:09   #6
 
InfamousNoone's Avatar
 
elite*gold: 20
Join Date: Jan 2008
Posts: 2,012
Received Thanks: 2,885
To my (very limited) knowledge of what's going on in the p-server world, Ultimation got the furthest with trying to do so. Not sure if he ever fully completed it (I doubt it) but I believe he got quit far.
InfamousNoone is offline  
Old 01/14/2012, 21:11   #7

 
Kiyono's Avatar
 
elite*gold: 20
Join Date: Jun 2006
Posts: 3,296
Received Thanks: 925
So how exactly does cq_action interact with cq_task?
Kiyono is offline  
Old 01/14/2012, 21:33   #8
 
Lateralus's Avatar
 
elite*gold: 0
Join Date: May 2005
Posts: 1,892
Received Thanks: 920
Quote:
Originally Posted by Kiyono View Post
So how exactly does cq_action interact with cq_task?
The columns `id_next` and `id_nextfail` in cq_task correspond directly to the IDs in cq_action. Some tables use the task table instead to trigger an action (cq_npc comes to mind).
Lateralus is offline  
Old 01/14/2012, 21:50   #9

 
Kiyono's Avatar
 
elite*gold: 20
Join Date: Jun 2006
Posts: 3,296
Received Thanks: 925
So cq_npc the task0, 1, 2, ... 7 are ids in cq_task and the id_next/fail in the cq_task refers to an id in cq_action.
While you're here anyway, mind explaining the cq_task table?
I see some really weird values for certain columns e.g. profession is 0, *** is 999, min_pk is -10000 etc. I honestly don't know what the heck they mean.
Kiyono is offline  
Old 01/14/2012, 21:55   #10
 
Lateralus's Avatar
 
elite*gold: 0
Join Date: May 2005
Posts: 1,892
Received Thanks: 920
Quote:
Originally Posted by Kiyono View Post
So cq_npc the task0, 1, 2, ... 7 are ids in cq_task and the id_next/fail in the cq_task refers to an id in cq_action.
While you're here anyway, mind explaining the cq_task table?
I see some really weird values for certain columns e.g. profession is 0, *** is 999, min_pk is -10000 etc. I honestly don't know what the heck they mean.
Yep. That's right. The columns check for values, if the checks succeed, it uses to id_next, else id_nextfail. I don't really think they're used very often... maybe 3 or 4 tasks use them. Those weird values are sentinels to ignore the checks.
Lateralus is offline  
Old 01/14/2012, 22:00   #11

 
Kiyono's Avatar
 
elite*gold: 20
Join Date: Jun 2006
Posts: 3,296
Received Thanks: 925
Quote:
Originally Posted by Lateralus View Post
Yep. That's right. The columns check for values, if the checks succeed, it uses to id_next, else id_nextfail. I don't really think they're used very often... maybe 3 or 4 tasks use them. Those weird values are sentinels to ignore the checks.
I see so source wise it's handled like this for example:
if (itemname1 != null)
{
if has item
id_next
else
id_fail
}
else
//next check
}

And then for all checks like that.
Kiyono is offline  
Old 01/14/2012, 22:17   #12
 
Lateralus's Avatar
 
elite*gold: 0
Join Date: May 2005
Posts: 1,892
Received Thanks: 920
Quote:
Originally Posted by Kiyono View Post
I see so source wise it's handled like this for example:
if (itemname1 != null)
{
if has item
id_next
else
id_fail
}
else
//next check
}

And then for all checks like that.
Yeah, basically. To save you some time, from what I know, the columns `client_active` and `query` aren't processed. I got that from EO though, not sure if they're processed in the binaries... I didn't check because it's not a big deal.
Lateralus is offline  
Old 01/14/2012, 22:20   #13

 
Kiyono's Avatar
 
elite*gold: 20
Join Date: Jun 2006
Posts: 3,296
Received Thanks: 925
The values for columns money, profession, metempsychosis, query and client_active are always 0 so i guess that those are never used.
Kiyono is offline  
Old 01/14/2012, 22:24   #14
 
Lateralus's Avatar
 
elite*gold: 0
Join Date: May 2005
Posts: 1,892
Received Thanks: 920
Quote:
Originally Posted by Kiyono View Post
The values for columns money, profession, metempsychosis, query and client_active are always 0 so i guess that those are never used.
That's true that they aren't used, but they're still processed (with the exceptions of query and client_active).
Lateralus is offline  
Old 01/14/2012, 22:55   #15
 
nTL3fTy's Avatar
 
elite*gold: 0
Join Date: Jun 2005
Posts: 692
Received Thanks: 353
Basically how the Npc dialog system works is like this:
  • Player clicks Npc in-game
  • Server has the cq_npc info for that npc, and cycles through task0-7 until it finds one that has a corresponding entry in cq_task.
  • Once a cq_task entry is found, it then tests the task variables (pk, marriage, ***, etc).
  • Depending on whether the player passes the test or not, it selects id_next or id_nextfail from the task entry.
  • With the id_next or id_nextfail selected, it then finds the entry with that id in cq_action and processes it.

Now, with the dialog open, any 'button' the player presses then looks for the corresponding task_id (from the param in cq_action for that specific button) and performs the tests again and selected id_next or id_nextfail from the cq_task entry. ...and repeat.

Also, client_active is used. It's used for guild member removal.
nTL3fTy is offline  
Thanks
3 Users
Reply


Similar Threads Similar Threads
[Moved] Binaries vs C# sources discussion and donation debate (aka the mods are mean)
01/13/2012 - CO2 Private Server - 37 Replies
Note: This was spawned in response to various server discussions in another thread.. I felt it was going extremly off topic. It's NOT designed as an attack and (at least from my standpoint) has nothing to do with Zero or his server. That being said I felt that deleting 10-15 posts that broke no rule (besides being a tangent from original topic) would be unfair to members and I feel that the conversation is at least somewhat relevant to the forum. </disclaimer> <In regards to pvp...
New packets documentation website
11/30/2011 - SRO Coding Corner - 1 Replies
I have opened new website where you will find packets + tools + mini emulator(open source) for beginners and advance developers wich will let you research on packets. For now there is not much on the website, i will public more packets every day. I posted it in new thread because many peoples may looking for knowledge here. I hope you will like it. website adres: SSE packets center http://img192.imageshack.us/img192/7762/strea.jpg
Request: MXI usage documentation (no PXI
08/13/2010 - Final Fantasy XI - 0 Replies
I know that MXI and (PXI svn change documentation only!!!) data is becoming hard to find let alone obtain. I wanted to know if anyone has any documentation from MXI (that you will post, so we can download it) mainly the svn stuff or usage of MXI theres plenty of PXI stuff, so please don't post it here



All times are GMT +1. The time now is 19:20.


Powered by vBulletin®
Copyright ©2000 - 2026, 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 ©2026 elitepvpers All Rights Reserved.