Jump to content

AZICKO

Management
  • Posts

    1500
  • Joined

  • Days Won

    13
  • Feedback

    100%

Everything posted by AZICKO

  1. I don't know if he changed the hashing method. You need to check the source code. PS -> The PHP code I mentioned is the one used on this page ([Hidden Content])
  2. If you use PASSWORD() default format in MySQL, in PHP you can use : $passwordRaw = 'ton mot de passe'; $password = '*'.strtoupper(sha1(sha1($passwordRaw, true)));
  3. MiaW I'm currently dedicated to enriching and improving my Discord bot project, MiaW, which takes advantage of the power of GPT artificial intelligence. My ambition is to provide MiaW with an extensive suite of innovative modules, inspired by the most popular features of existing Discord bots. However, my approach is distinguished by a unique customization and reinterpretation of these functionalities, in order to breathe new life and increased efficiency into them. One of these features is the development of an advanced ticket management module, designed to offer an intuitive and robust solution. This new module is set to become the standard for ticket management on M2Dev, with implementation planned in the coming weeks. This bot willn't be interconnected to the forum, that isn't its purpose. Additionally, I plan to make MiaW accessible by allowing it to be invited to other Discord servers. This expansion aims to provide other communities with the opportunity to benefit from the advanced features and improved user interaction that MiaW promises. Deploying MiaW on multiple servers will represent a major step towards more widespread use, allowing everyone to experiment and take advantage of its highly customized modules (Except GPT). coreTicket -> Complete and customizable ticket manager corePray -> Useless, but fun module that allows members to pray for cats so they can continue to dominate the world coreDownloader -> Download the content of a channel, this is intended for attachments coreModeration -> Complete moderation tools coreAI -> Today ChatGPT, tomorrow MistralAI where it's possible to interact with artificial intelligence Ticket Instance Creating a ticket Ticket PS → Yes I like cats, and this bot is a wonderful cat
  4. Use the Metin2.Download link from the first post, it's exactly the same thing.
  5. There was nothing wrong with my post either, it was just funny
  6. Are you an archaeologist? His topic was created in 2016.
  7. You suffered a port scanning attack to check whether known services (SSH, MySQL...) were active and if you left the default credentials... Securing your database is your responsibility.
  8. Thanks for the download link, I was able to check all the archives already saved on Metin2 Download and the SG, PL and US clients were updated. A link regarding EN clients has been added.
  9. Send the link of the 87gb and see what I can do
  10. Some people create temporary Metin2 private servers to make as much money as possible. Others, like here, will create temporary forums for the same purpose... Now known for xpro / metin2.network / 1150512358570065931 capone / caponem2 / 1021496360014458940 (Owner of Solana PServer) https://metin2.dev/profile/48926-emerald/ In short, be vigilant and do not place any trust in this user who is scamming everyone and who is harming the Metin2 development community. Scam, leak and hungry for money are the words that best define this user, it's just a matter of time with his new forum. Beneath its laudable appearance of offering help, tutorials and sharing, lies a completely different truth which is to gain your trust and then sell you its shit. By going and registering on his forum you are encouraging him, don't do it!
  11. No idea if this is possible but it might give some ideas. I use a dedicated server running Debian with the Proxmox virtualization manager. You can create VMs like VMWare or VirtualBox and also LCX containers (a bit like docker, or almost) and for this, you need OVH Failover IPs in order to have a specific IP for each LCX / VM. However, you need to know how to configure and route IPs, it's a bit technical. Metin2 Dev - Server
  12. Core X has been updated! Update 5.6.0 for Core X... Changelogs Core Download Deploying and adding enriched structural data CSS optimization with performance of over +90% Core Top Breadcrumb deployment Deploying and adding enriched structural data Improved description for Statistics and Gamesmap Added alternative hreflang for languages Adding the avatar when voting via Discord Sitemap improvement Adding an RSS feed Fix robots.txt Improved documentation CSS optimization with performance of over +90% New contextual captcha PS -> Start of HTML & CSS refactoring work... PS -> TailWind CSS is currently being implemented...
  13. AZICKO

    About

    The M2Dev Docs is powered by the M2Dev Community. You need to have an account on our forum to be able to contribute here. If you want to learn more about the development of a metin2 private server or just getting started, the M2Dev Community, its forum and the docs are a great place to start. Feel free to ask your questions on our forum. Please keep in mind, that all changes to this wiki need to be approved by the M2Dev Team.
  14. This page aims to list the Client to Server packet information. A list of the known Client to Server packets aka Client Game(CG) Structures Here are the following packet content regarding the Packets list: CG Packet Login Header: 1 (0x01) Type: Constant Sequenced: True Description: A packet used to send basic account credentials to the server in order to make login Structure Name Type Size (bytes) Description name char 31 The account username characters password char 17 The account password characters CG Packet Attack Header: 2 (0x02) Type: Constant Sequenced: True Description: A packet used to send attack and magic cube information to the server Structure Name Type Size (bytes) Description type unsigned char 1 The type of attack to perform victim unsigned long 4 The account password characters magicCubeProcessPieceCRC unsigned char 1 The CRC of the magic cube process procedure magicCubeProcessFileCRC unsigned char 1 The CRC of the magic cube process file CG Packet Chat Header: 3 (0x03) Type: Constant Sequenced: True Description: A packet used to send a chat message to the server Structure Name Type Size (bytes) Description length unsigned short 2 The length of the message type char 1 The type of the message message char length The message to send CG Packet Player Create Header: 4 (0x04) Type: Constant Sequenced: True Description: A packet used to create a new character Structure Name Type Size (bytes) Description index unsigned char 1 The slot index in the account name char 24 The name of the character job unsigned short 2 The race and sex of the character shape unsigned char 1 The model index of the character con unsigned char 1 The CON stat attribute of the character int unsigned char 1 The INT stat attribute of the character str unsigned char 1 The STR stat attribute of the character dex unsigned char 1 The DEX stat attribute of the character CG Packet Player Destroy Header: 5 (0x05) Type: Constant Sequenced: True Description: A packet used to delete an existing character Structure Name Type Size (bytes) Description index unsigned char 1 The slot index in the account name char 8 The character deletion code CG Packet Player Select Header: 6 (0x06) Type: Constant Sequenced: True Description: A packet used to select a character Structure Name Type Size (bytes) Description index unsigned char 1 The slot index in the account CG Packet Character Move Header: 7 (0x07) Type: Constant Sequenced: True Description: A packet used to delete an existing character Structure Name Type Size (bytes) Description function unsigned char 1 The action/function to perform argument unsigned char 1 The argument for the action/function x long 8 The X target position to move into y long 8 The Y target position to move into time unsigned long 8 The current time of the server CG Packet Sync Position Header: 8 (0x08) Type: Dynamic Sequenced: True Description: A packet used to synchronize the position of entities Structure Name Type Size (bytes) Description vid (ordered, repeatable) unsigned long 8 The virtual id of the entity x (ordered, repeatable) long 8 The X position of the entity y (ordered, repeatable) long 8 The Y position of the entity CG Packet Direct Enter Header: 9 (0x09) Type: Constant Sequenced: True Description: A packet used to synchronize the position of entities Structure Name Type Size (bytes) Description index unsigned char 1 username char 31 password char 17 CG Packet Enter Game Header: 10 (0xA) Type: Constant Sequenced: True Description: A packet used to synchronize the position of entities Structure Name Type Size (bytes) Description index unsigned char 1 username char 31 password char 17 CG Packet Item Use Header: 11 (0xB) Type: Constant Sequenced: True Description: A packet used to use an item from an inventory Structure Name Type Size (bytes) Description windowType unsigned char 1 The type of window cell unsigned short 2 The cell of the window CG Packet Item Drop Header: 12 (0xC) Type: Constant Sequenced: True Description: A packet used to drop an item from an inventory Structure Name Type Size (bytes) Description windowType unsigned char 1 The type of window cell unsigned short 2 The cell of the window money unsigned long 8 The money/gold currency to drop (if any) CG Packet Item Move Header: 13 (0xD) Type: Constant Sequenced: True Description: A packet used to move an item within inventories Structure Name Type Size (bytes) Description sourceWindowType unsigned char 1 The type of window sourceCell unsigned short 2 The cell of the window targetWindowType unsigned char 1 The type of window targetCell unsigned short 2 The cell of the window amount unsigned char 1 The amount of the stacked item to move CG Packet Item Pickup Header: 15 (0xF) Type: Constant Sequenced: True Description: A packet used to move an item within inventories Structure Name Type Size (bytes) Description vid unsigned long 8 The virtual id of the item in the game world CG Packet Quickslot Add Header: 16 (0x10) Type: Constant Sequenced: True Description: A packet used to add an item into a quickslot Structure Name Type Size (bytes) Description position unsigned char 1 The global position of the item position unsigned char 1 The global position of the item quickslotType unsigned char 1 The type of quickslot quickslotPosition unsigned char 1 The position in the quickslot CG Packet Quickslot Delete Header: 17 (0x11) Type: Constant Sequenced: True Description: A packet used to delete an item from the quickslot Structure Name Type Size (bytes) Description position unsigned char 1 The global position of the item CG Packet Quickslot Swap Header: 18 (0x12) Type: Constant Sequenced: True Description: A packet used to delete an item from the quickslot Structure Name Type Size (bytes) Description sourcePosition unsigned char 1 The global position of the item to swap targetPosition unsigned char 1 The global position to swap into CG Packet Whisper Header: 19 (0x13) Type: Dynamic Sequenced: True Description: A packet used to send a whisper message Structure Name Type Size (bytes) Description name char 25 The name of who to send the whisper message to message char 255 (up to) The message to whisper CG Packet Item Drop 2 Header: 20 (0x14) Type: Constant Sequenced: True Description: A packet used to drop an item amount from an inventory Structure Name Type Size (bytes) Description windowType unsigned char 1 The type of window cell unsigned short 2 The cell of the window money unsigned long 8 The money/gold currency to drop (if any) amount unsigned char 1 The amount of the item to drop CG Packet On Click Header: 26 (0x1A) Type: Constant Sequenced: True Description: A packet used to click on a entity Structure Name Type Size (bytes) Description vid unsigned long 8 The virtual id of the entity CG Packet Exchange Header: 27 (0x1B) Type: - Sequenced: True Description: A packet used to make exchange operations with another player Structure Name Type Size (bytes) Description subHeader unsigned char 1 The sub header Subheader Exchange Start SubHeader: 0 (0x0) - Type: Constant Description: Starts an exchange with a player Structure Name Type Size (bytes) Description vid unsigned long 8 The virtual id of the character Subheader Exchange Item Add SubHeader: 1 (0x1) - Type: Constant Description: Adds an item to the exchange Structure Name Type Size (bytes) Description position unsigned char 1 The position of the item in the exchange windowType unsigned char 1 The type of window cell unsigned short 2 The cell of the window Subheader Exchange Item Delete SubHeader: 2 (0x2) - Type: Constant Description: Removes an item from the exchange Structure Name Type Size (bytes) Description position unsigned long 1 The position of the item in the exchange Subheader Exchange Elk Add SubHeader: 3 (0x3) - Type: Constant Description: Adds elk/gold/money currency to the exchange Structure Name Type Size (bytes) Description elk unsigned long 1 The amount of elk/gold/money to add Subheader Exchange Accept SubHeader: 4 (0x4) - Type: Constant Description: Accepts the current exchange empty Structure Name Type Size (bytes) Description Subheader Exchange Cancel SubHeader: 5 (0x5) - Type: Constant Description: Cancels the current exchange empty Structure Name Type Size (bytes) Description CG Packet Character Position Header: 28 (0x1C) Type: Constant Sequenced: True Description: Undefined Structure Name Type Size (bytes) Description position unsigned char 1 The position of a character (?) CG Packet Script Answer Header: 29 (0x1D) Type: Constant Sequenced: True Description: A packet used to answer a script(quest) Structure Name Type Size (bytes) Description answer unsigned char 1 The index of the answer CG Packet Quest Input String Header: 30 (0x1E) Type: Constant Sequenced: True Description: A packet used to send a quest input string Structure Name Type Size (bytes) Description string char 64 The input string CG Packet Quest Confirm Header: 31 (0x1F) Type: Constant Sequenced: True Description: A packet used to confirm/answer a quest Structure Name Type Size (bytes) Description answer unsigned char 1 The index of the answer request unsigned long 8 The id of the request CG Packet Shop Header: 50 (0x32) Type: - Sequenced: True Description: A packet used to make interaction with the Shop system Structure Name Type Size (bytes) Description subHeader unsigned char 1 The sub header Subheader Shop End SubHeader: 0 (0x0) - Type: Constant Description: Closes the active shop Structure Name Type Size (bytes) Description empty Subheader Shop Buy SubHeader: 1 (0x1) - Type: Constant Description: Buys an item from the shop Structure Name Type Size (bytes) Description amount unsigned char 1 The amount to buy (default 1) position unsigned char 1 The position of the item Subheader Shop Sell SubHeader: 2 (0x2) - Type: Constant Description: Sells an item to the shop Structure Name Type Size (bytes) Description position unsigned long 1 The position of the item in the inventory Subheader Shop Sell 2 SubHeader: 3 (0x3) - Type: Constant Description: Sells an item to the shop Structure Name Type Size (bytes) Description position unsigned char 1 The position of the item amount unsigned char 1 The amount to buy Subheader Exchange Elk Add SubHeader: 3 (0x3) - Type: Constant Description: Adds elk/gold/money currency to the exchange Structure Name Type Size (bytes) Description elk unsigned long 1 The amount of elk/gold/money to add Subheader Exchange Accept SubHeader: 4 (0x4) - Type: Constant Description: Accepts the current exchange empty Structure Name Type Size (bytes) Description Subheader Exchange Cancel SubHeader: 5 (0x5) - Type: Constant Description: Cancels the current exchange empty Structure Name Type Size (bytes) Description CG Packet Fly Target Header: 51 (0x33) Type: Constant Sequenced: True Description: A packet used to send a fly target into a position Structure Name Type Size (bytes) Description target unsigned long 8 The target virtual id x long 8 The X global position of the target y long 8 The Y global position of the target CG Packet Use Skill Header: 52 (0x34) Type: Constant Sequenced: True Description: A packet used to use a skill onto a target in the game world Structure Name Type Size (bytes) Description vnum unsigned long 8 The virtual number index of the skill target unsigned long 8 The target virtual id CG Packet Add Fly Target Header: 53 (0x35) Type: Constant Sequenced: True Description: A packet used to add a fly target into a position Structure Name Type Size (bytes) Description target unsigned long 8 The target virtual id x long 8 The X global position of the target y long 8 The Y global position of the target CG Packet Shoot Header: 53 (0x35) Type: Constant Sequenced: True Description: A packet used to shoot a target with a skill Structure Name Type Size (bytes) Description type unsigned char 1 The type/vnum of the skill CG Packet My Shop Header: 55 (0x37) Type: Constant Sequenced: True Description: A packet used to create a private shop Structure Name Type Size (bytes) Description name unsigned char 33 The type/vnum of the skill count unsigned char 1 The amount of items to sell vnum (repeatable, ordered) unsigned long 8 The vnum of the item amount (repeatable, ordered) unsigned char 1 The amount to buy windowType (repeatable, ordered) unsigned char 1 The type of the window windowCell (repeatable, ordered) unsigned short 2 The cell of the window price (repeatable, ordered) unsigned long 8 The sell price of the item position (repeatable, ordered) unsigned char 1 The position of the item CG Packet Item Use Into Item Header: 60 (0x3C) Type: Constant Sequenced: True Description: A packet used to use an item into another item Structure Name Type Size (bytes) Description sourceWindowType unsigned char 1 The type of window sourceCell unsigned short 2 The cell of the window targetWindowType unsigned char 1 The type of window targetCell unsigned short 2 The cell of the window CG Packet Target Header: 61 (0x3D) Type: Constant Sequenced: True Description: A packet used to target an entity Structure Name Type Size (bytes) Description vid unsigned long 8 The virtual id of the entity CG Packet Script Button Header: 66 (0x42) Type: Constant Sequenced: True Description: A packet used to click a script/quest button Structure Name Type Size (bytes) Description index unsigned int 4 The index of the button CG Packet Messenger Header: 67 (0x43) Type: - Sequenced: True Description: A packet used to perform actions with the messenger system Structure Name Type Size (bytes) Description subHeader unsigned char 1 The sub header Subheader Messenger Add By Vid SubHeader: 0 (0x0) - Type: Constant Description: Adds a player ot the messenger by virtual id Structure Name Type Size (bytes) Description vid unsigned long 8 The virtual id of the character Subheader Messenger Add By Name SubHeader: 1 (0x1) - Type: Constant Description: Adds a player to the messenger by name Structure Name Type Size (bytes) Description name char 24 The name of the player Subheader Messenger Remove SubHeader: 2 (0x2) - Type: Constant Description: Removes a player in the messenger by name Structure Name Type Size (bytes) Description name char 24 The name of the player CG Packet Mall Checkout Header: 69 (0x45) Type: Constant Sequenced: True Description: A packet used to move an item from the mall into an inventory Structure Name Type Size (bytes) Description mallPosition unsigned char 1 The slot index of the mall position targetWindowType unsigned char 1 The type of window targetCell unsigned short 2 The cell of the window CG Packet Safebox Checkin Header: 70 (0x46) Type: Constant Sequenced: True Description: A packet used to move an item from the safebox into an inventory Structure Name Type Size (bytes) Description targetWindowType unsigned char 1 The type of window targetCell unsigned short 2 The cell of the window safeboxPosition unsigned char 1 The slot index of the mall position CG Packet Safebox Checkout Header: 71 (0x47) Type: Constant Sequenced: True Description: A packet used to move an item from the safebox into an inventory Structure Name Type Size (bytes) Description targetWindowType unsigned char 1 The type of window targetCell unsigned short 2 The cell of the window safeboxPosition unsigned char 1 The slot index of the mall position CG Packet Party Invite Header: 72 (0x4 Type: Constant Sequenced: True Description: A packet used to send a party invite to a player Structure Name Type Size (bytes) Description vid unsigned long 8 The virtual id of the player CG Packet Party Invite Answer Header: 73 (0x49) Type: Constant Sequenced: True Description: A packet used to send a response to a given party invite Structure Name Type Size (bytes) Description inviterVid unsigned long 8 The virtual id of the player response unsigned char 1 The response to the invite CG Packet Party Set State Header: 75 (0x4B) Type: Constant Sequenced: True Description: A packet used to set the state of a party member Structure Name Type Size (bytes) Description memberVid unsigned long 8 The virtual id of the party member state unsigned char 1 The state of the party member flag unsigned char 1 The flag of the state CG Packet Party Use Skill Header: 76 (0x4C) Type: Constant Sequenced: True Description: A packet used to use a party skill Structure Name Type Size (bytes) Description skill unsigned char 1 The party skill index targetVid unsigned char 1 The virtual id of the target CG Packet Safebox Item Move Header: 77 (0x4D) Type: Constant Sequenced: True Description: A packet used to use move an item from the safebox Structure Name Type Size (bytes) Description sourceWindowType unsigned char 1 The type of window sourceCell unsigned short 2 The cell of the window amount unsigned char 1 The amount to move targetWindowType unsigned char 1 The type of window targetCell unsigned short 2 The cell of the window CG Packet Party Parameter Header: 78 (0x4E) Type: Constant Sequenced: True Description: A packet used to change the party parameter Structure Name Type Size (bytes) Description parameter unsigned char 1 The party distribution mode/parameter CG Packet Guild Header: 79 (0x4F) Type: - Sequenced: True Description: A packet used to interact with the guild system Structure Name Type Size (bytes) Description subHeader unsigned char 1 The sub header Subheader Guild Add Member SubHeader: 0 (0x0) - Type: Constant Description: Adds a member to the Guild by virtual id Structure Name Type Size (bytes) Description vid unsigned long 8 The virtual id of the character Subheader Guild Remove SubHeader: 1 (0x1) - Type: Constant Description: Removes a member from the Guild by virtual id Structure Name Type Size (bytes) Description vid unsigned long 8 The virtual id of the character Subheader Guild Change Grade Name SubHeader: 2 (0x2) - Type: Constant Description: Changes member grade name definition in the Guild Structure Name Type Size (bytes) Description grade unsigned char 1 The grade number to change name char 8 The grade name Subheader Guild Change Grade Authority SubHeader: 3 (0x3) - Type: Constant Description: Changes member grade authority in the Guild Structure Name Type Size (bytes) Description grade unsigned char 1 The grade number to change authority unsigned char 1 The authority to change into Subheader Guild Offer SubHeader: 4 (0x4) - Type: Constant Description: Offers current experience to the Guild Structure Name Type Size (bytes) Description experience unsigned long 8 The amount of experience to offer Subheader Guild Post Comment SubHeader: 5 (0x5) - Type: Constant Description: Posts a commentary in the Guild Structure Name Type Size (bytes) Description length unsigned char 255 (up to) The length of the post message to send message unsigned char length The post message to send Subheader Guild Delete Comment SubHeader: 6 (0x6) - Type: Constant Description: Deletes a commentary in the Guild Structure Name Type Size (bytes) Description index unsigned long 8 The length of the post message to send Subheader Guild Refresh Comments SubHeader: 7 (0x7) - Type: Constant Description: Requests a comments refresh Structure Name Type Size (bytes) Description empty Subheader Guild Change Member Grade SubHeader: 8 (0x8) - Type: Constant Description: Changes a given member's grade Structure Name Type Size (bytes) Description vid unsigned long 8 The virtual id of the player grade unsigned char 8 The grade to set Subheader Guild Use Skill SubHeader: 9 (0x9) - Type: Constant Description: Uses a guild skill Structure Name Type Size (bytes) Description skill unsigned long 8 The virtual id of the player target unsigned long 8 The entity target virtual id to use the skill Subheader Guild Change Member General SubHeader: 10 (0x10) - Type: Constant Description: Changes a member general role state Structure Name Type Size (bytes) Description vid unsigned long 8 The virtual id of the player flag unsigned char 8 The general role flag to set Subheader Guild Invite Answer SubHeader: 11 (0x11) - Type: Constant Description: Gives an answer to a Guild invitation Structure Name Type Size (bytes) Description guildId unsigned long 8 The id of the guild answer unsigned char 1 The answer to the invite Subheader Guild Charge GSP SubHeader: 12 (0x12) - Type: Constant Description: Charges the Guild Skill Power Structure Name Type Size (bytes) Description guildId unsigned long 8 The amount of money/currency used to charge Subheader Guild Deposit Money SubHeader: 13 (0x13) - Type: Constant Description: Deposits an amount of money/currency in the Guild Structure Name Type Size (bytes) Description money unsigned long 8 The amount of money/currency to deposit Subheader Guild Withdraw Money SubHeader: 14 (0x14) - Type: Constant Description: Withdraws an amount of money/currency from the Guild Structure Name Type Size (bytes) Description money unsigned long 8 The amount of money/currency to withdraw CG Packet Answer Make Guild Header: 81 (0x51) Type: Constant Sequenced: True Description: A packet used to answer a guild creation prompt Structure Name Type Size (bytes) Description name char 13 The name of the guild CG Packet Fishing Header: 82 (0x52) Type: Constant Sequenced: True Description: A packet used to start fishing Structure Name Type Size (bytes) Description rotation unsigned char 1 The rotation to fish CG Packet Give Item Header: 83 (0x53) Type: Constant Sequenced: True Description: A packet used to give an item to a player Structure Name Type Size (bytes) Description vid unsigned long 8 The virtual id of the player WindowType unsigned char 1 The type of window cell unsigned short 2 The cell of the window amount unsigned char 1 The amount of the item CG Packet Empire Header: 84 (0x54) Type: Constant Sequenced: True Description: A packet used to select an empire Structure Name Type Size (bytes) Description empire unsigned char 1 The index of the empire CG Packet Refine Header: 84 (0x54) Type: Constant Sequenced: True Description: A packet used to refine an item Structure Name Type Size (bytes) Description position unsigned char 1 The position of the item in the inventory type unsigned char 1 The type of refinement to perform CG Packet Mark Login Header: 100 (0x64) Type: Constant Sequenced: True Description: A packet used to login into the mark server Structure Name Type Size (bytes) Description handle unsigned long 8 The current mark handle randomKey unsigned long 8 The random key CG Packet Mark CRC List Header: 100 (0x64) Type: Constant Sequenced: True Description: A packet used to send the current image index for the CRC List Structure Name Type Size (bytes) Description imageIndex unsigned char 1 The current image index CG Packet Mark Upload Header: 101 (0x65) Type: Constant Sequenced: True Description: A packet used to upload an image into the mark server Structure Name Type Size (bytes) Description guildId unsigned long 1 The current image index image unsigned char 768 The image to upload CG Packet Mark Index List Header: 102 (0x66) Type: Constant Sequenced: True Description: A packet used to increment an index(?) Structure Name Type Size (bytes) Description empty CG Packet Hack Header: 105 (0x68) Type: Constant Sequenced: True Description: A packet used to report hack messages to the server Structure Name Type Size (bytes) Description message char 256 The message of the hack to report CG Packet Change Name Header: 106 (0x69) Type: Constant Sequenced: True Description: A packet used to change the name of a character Structure Name Type Size (bytes) Description index unsigned char 1 The index of the character name char 25 The new name of the character CG Packet SMS Header: 107 (0x6A) Type: Dynamic Sequenced: True Description: A packet used to use the SMS(short message service) to send a message Structure Name Type Size (bytes) Description name char 25 The name of the player to send the message to message char 4294967295 (up to) The "short" message to send CG Packet China Matrix Card Header: 108 (0x6B) Type: Constant Sequenced: True Description: A packet used to send the china matrix card answer Structure Name Type Size (bytes) Description answer char 9 The answer to the china matrix card CG Packet Login 2 Header: 109 (0x6C) Type: Constant Sequenced: True Description: A packet used to login into the server(second version) Structure Name Type Size (bytes) Description name char 31 The username of the account loginKey unsigned long 8 The login key encryptionKey unsigned long 32 The current encryption key CG Packet Login 3 Header: 111 (0x6F) Type: Constant Sequenced: True Description: A packet used to login into the server(third version) Structure Name Type Size (bytes) Description name char 31 The username of the account password char 17 The password of the account encryptionKey unsigned long 32 The current encryption key CG Packet Guild Symbol Upload Header: 112 (0x70) Type: Dynamic Sequenced: True Description: A packet used to upload a guild symbol Structure Name Type Size (bytes) Description symbol unsigned long 4294967295 (up to) The symbol of the guild CG Packet Guild Symbol CRC Header: 113 (0x71) Type: Constant Sequenced: True Description: A packet used to send the CRC of each symbol listed Structure Name Type Size (bytes) Description guildId unsigned long 8 The guild id crc unsigned long 8 The CRC of the symbol size unsigned long 8 The size of the symbol CG Packet Script Select Item Header: 114 (0x72) Type: Constant Sequenced: True Description: A packet used to select an item from a script/quest Structure Name Type Size (bytes) Description selection unsigned long 8 The index selection of the item CG Packet Login 4 Header: 115 (0x73) Type: Constant Sequenced: True Description: A packet used to login into the server (forth version) Structure Name Type Size (bytes) Description empty CG Packet Login 5 Open Id Header: 116 (0x74) Type: Constant Sequenced: True Description: A packet used to login into the server with Open Identification (fifth version) Structure Name Type Size (bytes) Description authKey char 33 The Open Id authentication key encryptionKey unsigned long 32 The current encryption key CG Packet Runup Matrix Answer Header: 201 (0xC9) Type: Constant Sequenced: True Description: A packet used to answer the matrix card runup Structure Name Type Size (bytes) Description answer char 5 The matrix card answer CG Packet NewCIBN Passpod Answer Header: 202 (0xCA) Type: Constant Sequenced: True Description: A packet used to send the Passpod anwser (used in NewCIBN) Structure Name Type Size (bytes) Description answer char 9 The passpod answer CG Packet Hackshield Hack Header: 203 (0xCB) Type: Constant Sequenced: True Description: A packet used to report a hack detected by HackShield(?) Structure Name Type Size (bytes) Description buffer unsigned char 400 Undefined length unsigned short 2 The length of the buffer CG Packet Xtrap Hack Header: 204 (0xCC) Type: Constant Sequenced: True Description: A packet used to verify given Xtrap data(?) Structure Name Type Size (bytes) Description data unsigned char 128 The received Xtrap data to verify CG Packet Dragon Soul Refine Header: 204 (0xCC) Type: Constant Sequenced: True Description: A packet used to refine a dragon soul item Structure Name Type Size (bytes) Description refineType unsigned char 1 The type of the refine method windowType unsigned char 1 The type of window windowCell unsigned short 2 The cell of the window CG Packet State Checker Header: 204 (0xCE) Type: Constant Sequenced: True Description: A packet used to check the state of the server channels Structure Name Type Size (bytes) Description empty CG Packet Key Agreement Header: 251 (0xFB) Type: Constant Sequenced: True Description: A packet used to check the state of the server channels Structure Name Type Size (bytes) Description empty CG Packet Time Sync Header: 252 (0xFC) Type: Constant Sequenced: True Description: A packet used to synchronize the time with the server Structure Name Type Size (bytes) Description handshake unsigned long 8 The current handshake time unsigned long 8 The handshake time + (handshake delta * 2) delta long 8 The delta (default 0) CG Packet Client Version Header: 253 (0xFD) Type: Constant Sequenced: True Description: A packet used to send the current client version to the server Structure Name Type Size (bytes) Description filename char 33 The current process filename timestamp char 33 The current process timestamp CG Packet Client Version 2 Header: 241 (0xF1) Type: Constant Sequenced: True Description: A packet used to send the current client version to the server (second version) Structure Name Type Size (bytes) Description filename char 33 The current process filename timestamp char 33 The current process timestamp (constant default "1215955205") CG Packet Pong Header: 254 (0xFE) Type: Constant Sequenced: True Description: A packet used to send a pong response Structure Name Type Size (bytes) Description empty
  15. A list of the known Server to Client packets aka Game Client(GC Structures Here are the following packet content regarding the list: GC Packet Character Add Header: 1 (0x01) Type: Constant Sequenced: True Description: A packet used to add a character instance Structure Name Type Size (bytes) Description vid unsigned long 8 The virtual id of the character angle float 8 The angle of the character x long 8 The X position of the character y long 8 The Y position of the character z long 8 The Z position of the character type unsigned char 8 The type of the character race unsigned short 8 The race/sex of the character movementSpeed unsigned char 8 The movement speed of the character attackSpeed unsigned short 8 The attack speed of the character stateFlag unsigned short 1 The state flag of the character affectFlags unsigned long[2] 16 The affect flags of the character GC Packet Character Delete Header: 2 (0x02) Type: Constant Sequenced: True Description: A packet used to delete a character instance by virtual id Structure Name Type Size (bytes) Description vid unsigned long 8 The virtual id of the character GC Packet Character Move Header: 3 (0x03) Type: Constant Sequenced: True Description: A packet used to move a character instance Structure Name Type Size (bytes) Description function unsigned char 1 The function of the movement argument unsigned char 1 The argument to the function rotation unsigned char 1 The rotation of the character vid unsigned long 8 The virtual id of the character x long 8 The X position of the movement y long 8 The Y position of the movement time unsigned long 8 The time of the movement duration unsigned long 8 The duration of the movement GC Packet Chat Header: 4 (0x04) Type: Constant Sequenced: True Description: A packet used to handle a new chat message Structure Name Type Size (bytes) Description size unsigned short 2 The size of the message type unsigned char 1 The type of the message vid unsigned long 8 The virtual id of the sender(?) empire unsigned char 1 The empire from where the message was sent message char 1012 (up to) The chat message GC Packet Sync Position Header: 5 (0x05) Type: Constant Sequenced: True Description: A packet used to sync position Structure Name Type Size (bytes) Description vid (ordered, repeatable) unsigned long 8 The virtual id of the entity x (ordered, repeatable) long 8 The X position of the entity y (ordered, repeatable) long 8 The Y position of the entity
  16. AZICKO

    Packets

    This page aims to explain how packets are handled in terms of structure and functionality Properties A packet has several data properties, them being game and networking information as: Header - A byte that identifies the packet Data - The data that is being sent/received Sequence - A byte that signs if the packet is sequenced On sending/receiving packets may be encrypted, check Network Encryption for more information Structure The packets have two different structures, constant and dynamic The goals of each type is predefined by the type of data handled Note: The sequence byte is always the last byte in a packet, no matter the structure and its optional Constant The constant packet structure follows the expected order of data: Structure Type Size (bytes) Description Header 1 Byte The number identifier of the packet Data X Bytes The expected constant data values Sequence 1 Byte The sequence value which defines if this packet is sequenced (optional) Dynamic The dynamic packet structure follows the expected order of data: Structure Type Size (bytes) Description Header 1 Byte The number identifier of the packet Size 2 Bytes The size of the entire packet, Header + Size + Data (excluding sequence) Data ? Bytes The expected dynamic data values Sequence 1 Byte The sequence value which defines if this packet is sequenced (optional) Flow/Direction The packets have different type denominations of directions regarding from who to who they are sent: CG(Client Game) - Client to Server GC(Game Client) - Server to Client GG(Game Game) - Server to Server GD(Game Database - Server to Database DG(Database Game) - Database to Server Note: The meaning of 'Server' in this case is a server core such authentication/game core and the meaning of 'Database' is the database core Known Packets Here is a list table of the known packets and its directions: Client to Server Client to Game - CG Header Identification - Byte (Hex) Description Sequenced Structure 1 (0x01) Holds account credentials to perform a login True #CG Packet Login 2 (0x02) Holds target, attack and cube information to perform several actions True #CG Packet Attack 3 (0x03) Holds length and type of a chat string to perform a chat command True #CG Packet Chat 4 (0x04) Holds information to create a new character True #CG Packet Player Create 5 (0x05) Holds an index and a key to delete an existing character True #CG Packet Player Destroy 6 (0x06) Holds an index to select an existing character True #CG Packet Player Select 7 (0x07) Holds movement, positional and duration information to move the main character True #CG Packet Player Move 8 (0x08) Holds identification and positional information of entities to perform synchronization True #CG Packet Sync Position 9 (0x09) Holds account credentials and character index to perform a direct entrance in the game True #CG Packet Direct Enter 10 (0xA) Signals the server to enter the game world True #CG Packet Enter Game 11 (0xB) Holds inventory position to perform an item use True #CG Packet Item Use 12 (0xC) Holds inventory position and Elk(game currency) to perform an item/elk drop in the game world True #CG Packet Item Drop 13 (0xD) Holds source, target position and count to perform a item move inside the inventory True #CG Packet Item Move 15 (0xF) Holds position of game world item to perform a pickup True #CG Packet Pickup 16 (0x10) Holds position and quickslot information to perform a quickslot addition True #CG Packet Quickslot Add 17 (0x11) Holds position to perform a quickslot removal True #CG Packet Quickslot Delete 18 (0x12) Holds source and target position to perform a quickslot swap True #CG Packet Quickslot Swap 19 (0x13) Holds a chat string to perform a whisper action True #CG Packet Whisper 20 (0x14) Holds inventory position and Gold(game currency) to perform an item/gold drop in the game world True #CG Packet Item Drop 2 26 (0x1A) Holds entity information to perform a click action True #CG Packet On Click 28 (0x1C) Holds character position information (undefined reason) True #CG Packet Character Position 29 (0x1D) Holds answer information for a script/quest True #CG Packet Script Answer 30 (0x1E) Holds an input string for a quest response True #CG Packet Quest Input String 31 (0x1F) Holds answer information for a quest confirmation True #CG Packet Quest Confirm
  17. AZICKO

    Tutorial

    Before starting to work on your server you need to understand some important things: The development and administration IS NOT an easy task. You need some fundamental knowledge about computers and servers. You will work with copyrighted/proprietary material. Depending on which country you come from, this may violate applicable laws. You can get help from the community but don't expect too much. Use Google (or other search engines) before you ask something that is actually easy to find out. This wiki will only help you in case you want to understand the development of Metin2. Note: General knowledge of computers and servers and even programming languages is not included in this wiki. But it is required to work on specific things of a Metin2 Server. That's the part we want you to use Google for! Roles and needed Skills Server Administrator Expert knowledge of the system you are running the server, which includes, for example, firewall, package managing, services. Advanced knowledge of the database storage server. (Required for diagnose issues on the MySQL part) Server Developer Basic knowledge of the FreeBSD operative system and its API. Advanced knowledge of the Client and Server protocol/structure. (which includes Unix sockets) Expert knowledge of the C and C++ programming language. Advanced knowledge of the GNU makefile syntax and the GNU C Compiler or CLang Client Developer Basic knowledge of the Windows operative system and its API. Basic knowledge of the Client and Server protocol/structure. (Metin2 already wraps all the socket calls) Expert knowledge of the C and C++ programming language. Advanced knowledge of the Python 2.7 programming language. (required for making internal changes in the python part of the game) Advanced knowledge of the Visual Studio IDE. Tools Developer (e.g. WorldEditor, Autopatcher) Basic knowledge of transfer protocols (this may vary on the tool you are developing) Basic knowledge of managing file system and webhosting (this may vary on the tool you are developing) Advanced knowledge of File Formats Basic knowledge of PHP (this may vary on which language you want to use for the scripts) Advanced knowledge of C# (this may vary on which language you want to use for the tool) Quest Developer Expert knowledge of LUA 5.0 programming language. All available quest commands and how to use them 2D / Graphic Artist xxx 3D / Model Artist xxx
  18. M2 uses a lot of third party libraries. For each segment there is at least one that handles correct functionality. It requires a lot of programming knowledge to implement, edit or replace any of these. Please be aware of some of the libraries are proprietal and you have to own a license to use them for commercial usage (depends on license type). To learn more about 3rd party software please use Google, as this wiki is only M2 related. List of Third Party Libraries Client Armadillo/SoftwarePassport (N/A, Proprietary) Boost (N/A, Boost Software License) Crypto++ (N/A, Boost Software License) DevIL (N/A, LGPL v2) DirectX (N/A, N/A) GameGuard (N/A, Proprietary) Granny3D (N/A, Proprietary) HackShield (N/A, Proprietary) libjpeg (N/A, Mixed IJG, BSD and zlib) LZO (N/A, GPL v2+) Python (N/A, Special License) SpeedTree (N/A, Proprietary) Themida (N/A, Proprietary) The Miles Sound System (N/A, Proprietary) Unicows (N/A, N/A) XTrap (N/A, Proprietary) Server Boost (N/A, Boost Software License) Crypto++ (N/A, Boost Software License) DevIL (N/A, LGPL v2) HackShield (N/A, Proprietary) LibMySQL (N/A, GPL v2) XTrap (N/A, Proprietary)
  19. Tar package file is a file format used to compress Metin1 data files. NOTE: The files are encrypted with an unknown format. 
 
 4 bytes in black, only present at the beginning: Number of file entries included. One or more file entry File Entry 32 bytes in green: Filename (Encoded in Windows-949). 4 bytes in purple: Offset of the file (relative to the stat of the tar file)-. 4 bytes in blue: Size of the file. Bytes in grey: beginning of a new entry.
×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.