im so open minded , if you want to rephrase anything , add or remove sentences please commend with what you want to edit for better understanding for others
GM/PM commands :a gm/pm commands or commands in general are just a chat packet with special char (most common @) at the very first that process some data to the source to take actions ex. @level 139 or even just taking actions without processing data ex. @restart
but that it not and will never be fixed commands in every source , maybe programmers who writing sources tends to have common commands like level , item , scrolls , tele but that's just common sense that lead to this naming nothing the less
there is no limits for what you may do in your server using a command , you just pre-define any processes to be done when this command match (after legitimacy checks , special char check and sending to lower/upper case) i was controlling general/personal drop rates through commands , mobs properties and respawns through commands
if i recall correctly i've had once controlling a quest to start and ends within a command which was moving npcs to there normal places from jail and after the quest ends with the command all go to the jail but one npc which gets his pram changed after this command
and to talk in more professional way , with a command you can set variables in your source also update/create values in the database
finally in open sources like c# ones ex. trinity , you may add/remove/edit commands , but that is most likely not possible if you using binary
Packet :it's series of bytes/bits used in networking communication between clients and servers , it's usually encrypted to make the information more safe , packets are not just limited to conquer/tq it's widely used around , people tends to add the packet length in the very first 2 bytes and packet type in the second 2 bytes but that's not a must , you can struct the packets the way you want
in tq packets always have a seal of "TQServer" and "TQClient" to manage where this packet is coming from and where it's going to
you will need to know packets structures to be able to edit them and use them for your own good and that's what we call packet sniffing
Packet sniffing :it's the process of which you either hook the client functions or use a man in the middle proxy to get a copy of the packets in a try to get the packet structure
there is many packet sniffers out there ex. comon , all you need beside that is trail and error with a bit of sense , you should check older packet structures if you are updating one , you should always notice your old and new coords of x,y in your are trying to sniff a jump/walk packet , you should notice your entity id , you should have some knowledge about bitwise , by time you gets better at this
BOT/Proxy :it's an applications that process/block/edit/create packets from and to client also from and to server
bot/proxy may jump for you , attack monsters and loot stuff , they have been more advanced than that to do more automated processes that is made up from simple functions all made up together in loops including farming , mining , teleporting and even doing quests
bot/proxy back to few years ago have had average speed compared to it's speed nowadays , you may split it down into 2 main cat.
memory base bot which is a bot that is dealing with memory , it hook functions in the client including send/recieve functions then take control from over there , there is a better detailed guide for such bots for Angelius , find it at
proxy bot which is a man in the middle proxy that takes packet from client and server then it decided to edit/block it for your own good , it may also create packets as if it was you doing something on the client
here is a better detailed guide for pro4never
there is no free bots/proxies anymore , it's all paied ex. chrome conquerai and cogen
there is some free code sources which is not ready to use ex. proxyparadise and evolution which needs load of work to get it working as good as paid proxies
Exploit :An exploit (from the verb to exploit, in the meaning of using something to one’s own advantage) is a piece of software, a chunk of data, or sequence of commands that takes advantage of a bug, glitch or vulnerability in order to cause unintended or unanticipated behaviour to occur on computer software, hardware, or something electronic (usually computerised). Such behavior frequently includes such things as gaining control of a computer system or allowing privilege escalation or a denial-of-service attack.
most common exploits people use here is the sequence of commands and what follow it
for better understanding please check this thread
OnEventAction :it's a term i always use which means to have the actions of the events itself which is the best way of handling anything instead of saving actions and apply them later
that's including but not limited to saving/updating accounts information , people tends to save everything while player disconnects instead of updating accounts on the action itself , this does not apply at everything but it works in most of cases
some definitions and explanations by Cptsky about cryptology
Pre-5017 clients :COAC : Conquer Online Asymmetric Cipher (4096-bit key) :We'll say that Alice is the client and Bob is the server.
Alice and Bob agreed on an initialization vector (IV) for the COAC algorithm. This IV is generated from the P seed (0x13FA0F9D) and the G seed (0x6D5C7962).
Alice send a connection request to Bob which validate the account/password and return to Alice a unique ID (B seed) and a connection token (A seed). Alice takes those two keys and generates a new key for the COAC algorithm. The key is used to encrypt the data, while Bob will generate the same new key using A, B values to decrypt the data.RC5 :Rivest Cipher 5 (128-bit key, 64-bit blocks, 12 rounds)N.B. The P, Q magics shouldn't be changed but TQ already changed them. (RC5_PW32 = 0xB7E15163, RC5_QW32 = 0x9E3779B9)
Alice and Bob agreed on a 128-bit seed ({ 0x3C, 0xDC, 0xFE, 0xE8, 0xC4, 0x54, 0xD6, 0x7E, 0x16, 0xA6, 0xF8, 0x1A, 0xE8, 0xD0, 0x38, 0xBE }). They'll generate the key with the seed. Alice will encrypt the password using RC5 and Bob will decrypt it.
Post-5017 clients (using Blowfish):COAC : Conquer Online Asymmetric Cipher (4096-bit key)Alice and Bob agreed on an initialization vector (IV) for the COAC algorithm. This IV is generated from the P seed (0x13FA0F9D) and the G seed (0x6D5C7962).
Alice send a connection request to Bob which validate the account/password.Diffie-HellmanAlice and Bob agreed on the P (A320A85EDD79171C341459E94807D71D39BB3B3F3B5161CA8 4894F3AC3FC7FEC317A2DDEC83B66D30C29261C6492643061A ECFCF4A051816D7C359A6A7B7D8FB), G (05) keys which are public. P is prime and G is primitive root mod P. When Alice will establish a connection with Bob, Bob chose a secret key a and send to Alice the public key A which is G ^ a mod P. Alice chose a secret key b and send to Bob the public key B which is G ^ b mod P. Both compute the secret key s which will be used to decrypt and encrypt the following code. s is B ^ a mod P or A ^ b mod P.
During this exchange, Bob will also send the IVs to be used by Alice for encryption and decryption. Each IV blocks is 64-bit.Blowfish (448-bit key max, 64-bit blocks, 16 rounds, CFB64 mode)N.B. A block is XORed with an IV block for encryption/decryption. So, the IV blocks are 64-bit too.
Alice and Bob agreed on a default seed (can't remember the key...) for generating the Blowfish key and doing the DH exchange. Also, both IVs are zero-filled. When the exchange is done, Alice and Bob generate the new key using their secret s key and they set the new IVs that Bob choose. Following that point, they should have a safe tunnel to communicate using Blowfish.RC5 : Rivest Cipher 5 (128-bit key, 64-bit blocks, 12 rounds)N.B. The P, Q magics shouldn't be changed but TQ already changed them. (RC5_PW32 = 0xB7E15163, RC5_QW32 = 0x9E3779B9)
Alice and Bob agreed on a 128-bit seed ({ 0x3C, 0xDC, 0xFE, 0xE8, 0xC4, 0x54, 0xD6, 0x7E, 0x16, 0xA6, 0xF8, 0x1A, 0xE8, 0xD0, 0x38, 0xBE }). They'll generate the key with the seed. Alice will encrypt the password using RC5 and Bob will decrypt it.
ill be adding more .. thanks for reading