Notes: Server listens on port 1111 for TCP and UDP by default. Game clients listen on 1112 on UDP. ==TCP Section== ------------- Game start request by player (master player) format: |PQ S| ------------- get character attributes (player properties): [packet type] [player number] [race] [weapon] [Head] [Hair] [Body] [Armor] [sex] Example: |PP 0001 002 002 002 002 002 002 1| ------------- Server response to PP: |PP 11 11 11 111 11| ------------- Game start request response by server format: |startok| ------------- Game request by player example: |PQ R 111.222.333.444 01 001 001 0 | -------------- Game request response by server (Initial data packet) example: |ID000100090009010001000100010001000100010001000100010001000100010001000100010001000100010001000100010001000100010| |p p p p m m m m m m m m m m m m m m m m |a l l l a a a a a a a a a a a a a a a a |c a a a p p p p p p p p p p p p p p p p |k y y y |e e e e 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |t r r r |T s s |y i x y |p d |e Has set length of 114 -------------- ==UDP Section== -------------- Server notifies a client of other players cord format: |ServerPacket player# xcord ycord strength weapon dexterity gold silver coppyer race sex Head Hair Body Armor| |PI XXX XXX XXX XX XX XX XXX XXX XXX X X XXX XXX XXX XXX| 1 01234567890123456789012345678901234567890 example: |PI 03 155 099 15 01 12| -------------- Player list packet: Exampl: |PL 5| -------------- Move packet (from client) Example: |MO 0001 8| -------------- Map information packet (from server) contains 5x5 view of map Example: |MI010001000100010001000100010001000100010001000100010001000100010001000100010001000100010001000100010| Has set length of 102 ------------------------ Text Message Packet (from client) Example: |TM 0001 0004 Test Message++| ------------------------- Text Message Forward Packet (from server) Example: |TM 0001 TextMessage++| -------------------------- Server status packet (from game client) Example: |SS 0001| responds with ACK --------------------- Attack Packet (from game client) Example: |AT 0001 0002| ----------------------- Attack Response packet (from server) Example: |AT F 0| Attack is a failure because player is not close enough. or |AT F 3| Attack is a failure because the effects of a charm or the force. or |AT F M| Attack is a failure because player missed or could not penitrate armor. or |AT S 0| Attack was a success and damage was done. --------------------- Name Request (from game client) Example: |NR 0001 0002| ----------------------- Additional Player info requested of the server |AP 0001| ansered |AP 0 0 | charm, hatchet, lumber, magic