ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/kgsueme/doc/protocol.html
(Generate patch)

Comparing kgsueme/doc/protocol.html (file contents):
Revision 1.31 by pcg, Mon Jul 21 13:39:03 2003 UTC vs.
Revision 1.32 by pcg, Mon Jul 21 13:50:57 2003 UTC

19 Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 19 Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20--> 20-->
21</head> 21</head>
22<body> 22<body>
23 23
24<h1>$Revision: 1.31 $</h1> 24<h1>$Revision: 1.32 $</h1>
25 25
26<h1>KGS Protocol Description</h1> 26<h1>KGS Protocol Description</h1>
27 27
28 <p>This XML document describes the KGS protocol. It is also used 28 <p>This XML document describes the KGS protocol. It is also used
29 to automatically generate the perl parser for all the messages and 29 to automatically generate the perl parser for all the messages and
30 structures in the protocol. Adapting it to other languages should be 30 structures in the protocol. Adapting it to other languages should be
31 trivial.</p> 31 trivial.</p>
32 32
33 <p> 33 <p>
34 <b>Please note that the author of KGS has told me that he will 34 <b>Please note that the author of KGS has told me that he will
35 change the protocol in response to my efforts. Unfortunately, he does 35 change the protocol in response to my efforts. No problems with
36 this just to make it more difficult to reverse-engineer it, since his 36 changing the protocol for good, but he does this just to make it
37 changes are neither required, nor useful (they just make the protocol 37 more difficult to reverse-engineer it, since his changes are neither
38 less robust, without adding added value).</b> 38 required, nor useful (they just make the protocol less robust, without
39 adding added value). He doesn't even care that this locks out some
40 users who cannot upgrade (cgoban2 isn't available for their platform
41 anymore). It hurts to see such a waste of time and efforts that could have been used
42 to fix bugs or improve the client...</b>
39 </p> 43 </p>
40 44
41 <p>If you feel you need to update the visual appearance of this 45 <p>If you feel you need to update the visual appearance of this
42 document, feel free to look <tt>doc/doc2html.xsl</tt> and improve 46 document, feel free to look <tt>doc/doc2html.xsl</tt> and improve
43 it.</p> 47 it.</p>
44 48
45 <p>The current version of this document can always be found at 49 <p>The current version of this document can always be found at
46 <a href="http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/*checkout*/kgsueme/kgsueme/doc/protocol.xml?rev=HEAD&amp;content-type=text/xml">here</a>, while 50 <a href="http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/*checkout*/kgsueme/kgsueme/doc/protocol.xml?rev=HEAD&amp;content-type=text/xml">here</a>, while
47 the HTML version of it can be found 51 the HTML version of it can be found
48 <a href="http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/*checkout*/kgsueme/kgsueme/doc/protocol.html?rev=HEAD&amp;content-type=text/html">here</a>. 52 <a href="http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/*checkout*/kgsueme/kgsueme/doc/protocol.html?rev=HEAD&amp;content-type=text/html">here</a>.
49 </p> 53 (update: sourceforge is weeks behind on their anonymous cvs servers so the above might be out-of-date. sorry.)</p>
50
51<h2>Changes for server version 2.5</h2>
52
53 <p>Sorry - I have little time to dissect the protocol, but as far
54 as I can see, there was no deeper need for the protocol change, as
55 the protocol itself didn't change in a significant way. The only
56 significant change was the addition of a linear congruence generator
57 that is xor'ed into the packet length, and some heavy foolery to change
58 receive packets. It seems that wms prefers to lock out many of his own
59 users than to have a few people write their own client. I didn't really
60 expect that from him, but instead expected real changes for the good,
61 as he is claiming all the time.</p>
62
63 <p>Well, that is just what he accouned earlier, so he just did what he
64 said...</p>
65
66 <p>Anything I know about changes in 2.5.x are reflected in this
67 document already. You can log-in, chat, log-out, watch games, but you
68 cannot comment games nor play nor privately chat.</p>
69 54
70<h2>Structure and conventions of this document and the protocol</h2> 55<h2>Structure and conventions of this document and the protocol</h2>
71 56
72 <p>"Send" means messages send from the client to the server, while 57 <p>"ORIGIN: CLIENT" means messages send from the client to the server,
73 "received" means messages send by the server to the client.</p> 58 while "ORIGIN: SERVER" means messages send by the server to the
59 client.</p>
74 60
75 <p>Everything on the wire is in little-endian format (what a shame).</p> 61 <p>Everything on the wire is in little-endian format (what a shame).</p>
76 62
77 <p>Primitive types are mostly integers (signed 63 <p>Primitive types are mostly integers (signed
78 "<code>I</code>&lt;bits&gt;", unsigned "<code>U</code>&lt;bits&gt;"), 64 "<code>I</code>&lt;bits&gt;", unsigned "<code>U</code>&lt;bits&gt;"),
422   408  
423 </td> 409 </td>
424 </tr> 410 </tr>
425 </table> 411 </table>
426 412
427<h2>Structs used in send messages</h2> 413<h2>Structs used in messages from the client</h2>
428 414
429<h2>Send messages</h2> 415<h2>Client-generated messages</h2>
430 416
431 <h4> 417 <h4>
432 <a name="S0000"></a>ORIGIN: CLIENT 418 <a name="C0000"></a>ORIGIN: CLIENT;
433 MESSAGE login</h4> 419 MESSAGE: login</h4>
434 NUMERIC TYPE (hex): 0000<p> 420 NUMERIC TYPE (hex): 0000<p>
435 421
436 <p>Sent to login, usually the first message sent. The password needs to be set when the 422 <p>Sent to login, usually the first message sent. The password needs to be set when the
437 guest flag is true. 423 guest flag is true.
438 Possible replies: <a href="#R0001">login(0001)</a> 424 Possible replies: <a href="#S0001">login(0001)</a>
439 <a href="#R0002">login(0002)</a> 425 <a href="#S0002">login(0002)</a>
440 <a href="#R0003">login(0003)</a> 426 <a href="#S0003">login(0003)</a>
441 <a href="#R0004">login(0004)</a> 427 <a href="#S0004">login(0004)</a>
442 <a href="#R0005">login(0005)</a> 428 <a href="#S0005">login(0005)</a>
443 <a href="#R0006">login(0006)</a> 429 <a href="#S0006">login(0006)</a>
444 <a href="#R0018">login(0018)</a> 430 <a href="#S0018">login(0018)</a>
445 <a href="#R0022">login(0022)</a>. Followed by: <a href="#R001b">timewarning_default(001b)</a> <a href="#R0411">chal_defaults(0411)</a> 431 <a href="#S0022">login(0022)</a>. Followed by: <a href="#S001b">timewarning_default(001b)</a> <a href="#S0411">chal_defaults(0411)</a>
446 </p> 432 </p>
447 </p> 433 </p>
448 <table border="1" width="100%"> 434 <table border="1" width="100%">
449 <tr> 435 <tr>
450 <th width="10%">NAME</th> 436 <th width="10%">NAME</th>
574 </td> 560 </td>
575 </tr> 561 </tr>
576 </table> 562 </table>
577 563
578 <h4> 564 <h4>
579 <a name="S0007"></a>ORIGIN: CLIENT 565 <a name="C0007"></a>ORIGIN: CLIENT;
580 MESSAGE req_userinfo</h4> 566 MESSAGE: req_userinfo</h4>
581 NUMERIC TYPE (hex): 0007<p> 567 NUMERIC TYPE (hex): 0007<p>
582 <p>Request info about a certain user. Possible reply: <a href="#R0008">userinfo(0008)</a> 568 <p>Request info about a certain user. Possible reply: <a href="#S0008">userinfo(0008)</a>
583 </p> 569 </p>
584 </p> 570 </p>
585 <table border="1" width="100%"> 571 <table border="1" width="100%">
586 <tr> 572 <tr>
587 <th width="10%">NAME</th> 573 <th width="10%">NAME</th>
604 </td> 590 </td>
605 </tr> 591 </tr>
606 </table> 592 </table>
607 593
608 <h4> 594 <h4>
609 <a name="S0007"></a>ORIGIN: CLIENT 595 <a name="C0007"></a>ORIGIN: CLIENT;
610 MESSAGE update_userinfo</h4> 596 MESSAGE: update_userinfo</h4>
611 NUMERIC TYPE (hex): 0007<p> 597 NUMERIC TYPE (hex): 0007<p>
612 <p>Update user info. Message structure is very similar 598 <p>Update user info. Message structure is very similar
613 to <a href="#R0008">userinfo(0008)</a>.</p> 599 to <a href="#S0008">userinfo(0008)</a>.</p>
614 </p> 600 </p>
615 <table border="1" width="100%"> 601 <table border="1" width="100%">
616 <tr> 602 <tr>
617 <th width="10%">NAME</th> 603 <th width="10%">NAME</th>
618 <th width="10%">TYPE</th> 604 <th width="10%">TYPE</th>
726 </td> 712 </td>
727 </tr> 713 </tr>
728 </table> 714 </table>
729 715
730 <h4> 716 <h4>
731 <a name="S0014"></a>ORIGIN: CLIENT 717 <a name="C0014"></a>ORIGIN: CLIENT;
732 MESSAGE req_stats</h4> 718 MESSAGE: req_stats</h4>
733 NUMERIC TYPE (hex): 0014<p> 719 NUMERIC TYPE (hex): 0014<p>
734 <p>Request server statistics. Replied with <a href="#R0015">stats(0015)</a> 720 <p>Request server statistics. Replied with <a href="#S0015">stats(0015)</a>
735 </p> 721 </p>
736 </p> 722 </p>
737 <table border="1" width="100%"> 723 <table border="1" width="100%">
738 <tr> 724 <tr>
739 <th width="10%">NAME</th> 725 <th width="10%">NAME</th>
743 <th width="15%">DEC-GUARD</th> 729 <th width="15%">DEC-GUARD</th>
744 </tr> 730 </tr>
745 </table> 731 </table>
746 732
747 <h4> 733 <h4>
748 <a name="S0016"></a>ORIGIN: CLIENT 734 <a name="C0016"></a>ORIGIN: CLIENT;
749 MESSAGE idle_reset</h4> 735 MESSAGE: idle_reset</h4>
750 NUMERIC TYPE (hex): 0016<p> 736 NUMERIC TYPE (hex): 0016<p>
751 <p>Send in response to <a href="#R0016">idle_warn(0016)</a> to keep the server from disconnecting.</p> 737 <p>Send in response to <a href="#S0016">idle_warn(0016)</a> to keep the server from disconnecting.</p>
752 </p> 738 </p>
753 <table border="1" width="100%"> 739 <table border="1" width="100%">
754 <tr> 740 <tr>
755 <th width="10%">NAME</th> 741 <th width="10%">NAME</th>
756 <th width="10%">TYPE</th> 742 <th width="10%">TYPE</th>
759 <th width="15%">DEC-GUARD</th> 745 <th width="15%">DEC-GUARD</th>
760 </tr> 746 </tr>
761 </table> 747 </table>
762 748
763 <h4> 749 <h4>
764 <a name="S001d"></a>ORIGIN: CLIENT 750 <a name="C001d"></a>ORIGIN: CLIENT;
765 MESSAGE ping</h4> 751 MESSAGE: ping</h4>
766 NUMERIC TYPE (hex): 001d<p> 752 NUMERIC TYPE (hex): 001d<p>
767 <p>Wild guess, I send it in <a href="#R0016">idle_warn(0016)</a>.</p> 753 <p>Wild guess, I send it in <a href="#S0016">idle_warn(0016)</a>.</p>
768 </p> 754 </p>
769 <table border="1" width="100%"> 755 <table border="1" width="100%">
770 <tr> 756 <tr>
771 <th width="10%">NAME</th> 757 <th width="10%">NAME</th>
772 <th width="10%">TYPE</th> 758 <th width="10%">TYPE</th>
775 <th width="15%">DEC-GUARD</th> 761 <th width="15%">DEC-GUARD</th>
776 </tr> 762 </tr>
777 </table> 763 </table>
778 764
779 <h4> 765 <h4>
780 <a name="S001e"></a>ORIGIN: CLIENT 766 <a name="C001e"></a>ORIGIN: CLIENT;
781 MESSAGE req_usergraph</h4> 767 MESSAGE: req_usergraph</h4>
782 NUMERIC TYPE (hex): 001e<p> 768 NUMERIC TYPE (hex): 001e<p>
783 <p>Request user graph data, replied with <a href="#R001e">usergraph(001e)</a>.</p> 769 <p>Request user graph data, replied with <a href="#S001e">usergraph(001e)</a>.</p>
784 </p> 770 </p>
785 <table border="1" width="100%"> 771 <table border="1" width="100%">
786 <tr> 772 <tr>
787 <th width="10%">NAME</th> 773 <th width="10%">NAME</th>
788 <th width="10%">TYPE</th> 774 <th width="10%">TYPE</th>
804 </td> 790 </td>
805 </tr> 791 </tr>
806 </table> 792 </table>
807 793
808 <h4> 794 <h4>
809 <a name="S001f"></a>ORIGIN: CLIENT 795 <a name="C001f"></a>ORIGIN: CLIENT;
810 MESSAGE fetch_memos</h4> 796 MESSAGE: fetch_memos</h4>
811 NUMERIC TYPE (hex): 001f<p> 797 NUMERIC TYPE (hex): 001f<p>
812 <p>Unclear. Fetch all outstanding memos? Replied with <a href="#R001f">memo(001f)</a> 798 <p>Unclear. Fetch all outstanding memos? Replied with <a href="#S001f">memo(001f)</a>
813 </p> 799 </p>
814 </p> 800 </p>
815 <table border="1" width="100%"> 801 <table border="1" width="100%">
816 <tr> 802 <tr>
817 <th width="10%">NAME</th> 803 <th width="10%">NAME</th>
821 <th width="15%">DEC-GUARD</th> 807 <th width="15%">DEC-GUARD</th>
822 </tr> 808 </tr>
823 </table> 809 </table>
824 810
825 <h4> 811 <h4>
826 <a name="S0021"></a>ORIGIN: CLIENT 812 <a name="C0021"></a>ORIGIN: CLIENT;
827 MESSAGE req_pic</h4> 813 MESSAGE: req_pic</h4>
828 NUMERIC TYPE (hex): 0021<p> 814 NUMERIC TYPE (hex): 0021<p>
829 <p>Request a user picture from the server. Results in a <a href="#R0021">userpic(0021)</a> 815 <p>Request a user picture from the server. Results in a <a href="#S0021">userpic(0021)</a>
830 or a timeout.</p> 816 or a timeout.</p>
831 </p> 817 </p>
832 <table border="1" width="100%"> 818 <table border="1" width="100%">
833 <tr> 819 <tr>
834 <th width="10%">NAME</th> 820 <th width="10%">NAME</th>
851 </td> 837 </td>
852 </tr> 838 </tr>
853 </table> 839 </table>
854 840
855 <h4> 841 <h4>
856 <a name="S0021"></a>ORIGIN: CLIENT 842 <a name="C0021"></a>ORIGIN: CLIENT;
857 MESSAGE upload_pic</h4> 843 MESSAGE: upload_pic</h4>
858 NUMERIC TYPE (hex): 0021<p> 844 NUMERIC TYPE (hex): 0021<p>
859 Same code as pic_req, but with an additional data section that 845 Same code as pic_req, but with an additional data section that
860 must contain a JPEG image that is &lt;=7KB. It must have 141×200 pixels. 846 must contain a JPEG image that is &lt;=7KB. It must have 141×200 pixels.
861 </p> 847 </p>
862 <table border="1" width="100%"> 848 <table border="1" width="100%">
894 </td> 880 </td>
895 </tr> 881 </tr>
896 </table> 882 </table>
897 883
898 <h4> 884 <h4>
899 <a name="S0023"></a>ORIGIN: CLIENT 885 <a name="C0023"></a>ORIGIN: CLIENT;
900 MESSAGE send_memo</h4> 886 MESSAGE: send_memo</h4>
901 NUMERIC TYPE (hex): 0023<p> 887 NUMERIC TYPE (hex): 0023<p>
902 </p> 888 </p>
903 <table border="1" width="100%"> 889 <table border="1" width="100%">
904 <tr> 890 <tr>
905 <th width="10%">NAME</th> 891 <th width="10%">NAME</th>
935 </td> 921 </td>
936 </tr> 922 </tr>
937 </table> 923 </table>
938 924
939 <h4> 925 <h4>
940 <a name="S0100"></a>ORIGIN: CLIENT 926 <a name="C0100"></a>ORIGIN: CLIENT;
941 MESSAGE gnotice</h4> 927 MESSAGE: gnotice</h4>
942 NUMERIC TYPE (hex): 0100<p> 928 NUMERIC TYPE (hex): 0100<p>
943 <p>Send a global message. Maybe. Never tried, for obvious reasons :/. Results 929 <p>Send a global message. Maybe. Never tried, for obvious reasons :/. Results
944 in a <a href="#R0100">gnotice(0100)</a> sent to all users.</p> 930 in a <a href="#S0100">gnotice(0100)</a> sent to all users.</p>
945 </p> 931 </p>
946 <table border="1" width="100%"> 932 <table border="1" width="100%">
947 <tr> 933 <tr>
948 <th width="10%">NAME</th> 934 <th width="10%">NAME</th>
949 <th width="10%">TYPE</th> 935 <th width="10%">TYPE</th>
965 </td> 951 </td>
966 </tr> 952 </tr>
967 </table> 953 </table>
968 954
969 <h4> 955 <h4>
970 <a name="S0318"></a>ORIGIN: CLIENT 956 <a name="C0318"></a>ORIGIN: CLIENT;
971 MESSAGE list_rooms</h4> 957 MESSAGE: list_rooms</h4>
972 NUMERIC TYPE (hex): 0318<p> 958 NUMERIC TYPE (hex): 0318<p>
973 <p>List the rooms in a specific group/category. Results in a <a href="#R0318">upd_rooms(0318)</a> message.</p> 959 <p>List the rooms in a specific group/category. Results in a <a href="#S0318">upd_rooms(0318)</a> message.</p>
974 </p> 960 </p>
975 <table border="1" width="100%"> 961 <table border="1" width="100%">
976 <tr> 962 <tr>
977 <th width="10%">NAME</th> 963 <th width="10%">NAME</th>
978 <th width="10%">TYPE</th> 964 <th width="10%">TYPE</th>
994 </td> 980 </td>
995 </tr> 981 </tr>
996 </table> 982 </table>
997 983
998 <h4> 984 <h4>
999 <a name="S031a"></a>ORIGIN: CLIENT 985 <a name="C031a"></a>ORIGIN: CLIENT;
1000 MESSAGE new_room</h4> 986 MESSAGE: new_room</h4>
1001 NUMERIC TYPE (hex): 031a<p> 987 NUMERIC TYPE (hex): 031a<p>
1002 Create a new room. Not verified. 988 Create a new room. Not verified.
1003 </p> 989 </p>
1004 <table border="1" width="100%"> 990 <table border="1" width="100%">
1005 <tr> 991 <tr>
1128 </td> 1114 </td>
1129 </tr> 1115 </tr>
1130 </table> 1116 </table>
1131 1117
1132 <h4> 1118 <h4>
1133 <a name="S0413"></a>ORIGIN: CLIENT 1119 <a name="C0413"></a>ORIGIN: CLIENT;
1134 MESSAGE req_game_record</h4> 1120 MESSAGE: req_game_record</h4>
1135 NUMERIC TYPE (hex): 0413<p> 1121 NUMERIC TYPE (hex): 0413<p>
1136 <p>Requests part of the users game record to be sent. Results in a <a href="#R0414">game_record(0414)</a> or maybe a timeout.</p> 1122 <p>Requests part of the users game record to be sent. Results in a <a href="#S0414">game_record(0414)</a> or maybe a timeout.</p>
1137 </p> 1123 </p>
1138 <table border="1" width="100%"> 1124 <table border="1" width="100%">
1139 <tr> 1125 <tr>
1140 <th width="10%">NAME</th> 1126 <th width="10%">NAME</th>
1141 <th width="10%">TYPE</th> 1127 <th width="10%">TYPE</th>
1172 </td> 1158 </td>
1173 </tr> 1159 </tr>
1174 </table> 1160 </table>
1175 1161
1176 <h4> 1162 <h4>
1177 <a name="S4300"></a>ORIGIN: CLIENT 1163 <a name="C4300"></a>ORIGIN: CLIENT;
1178 MESSAGE join_room</h4> 1164 MESSAGE: join_room</h4>
1179 NUMERIC TYPE (hex): 4300<p> 1165 NUMERIC TYPE (hex): 4300<p>
1180 <p>Joins the given room. <a href="#R4300">join_room(4300)</a> messages for yourself 1166 <p>Joins the given room. <a href="#S4300">join_room(4300)</a> messages for yourself
1181 and all users in that room, as well as the initial gamelist, are 1167 and all users in that room, as well as the initial gamelist, are
1182 send if the room exists. If not, timeout...</p> 1168 send if the room exists. If not, timeout...</p>
1183 </p> 1169 </p>
1184 <table border="1" width="100%"> 1170 <table border="1" width="100%">
1185 <tr> 1171 <tr>
1216 </td> 1202 </td>
1217 </tr> 1203 </tr>
1218 </table> 1204 </table>
1219 1205
1220 <h4> 1206 <h4>
1221 <a name="S4301"></a>ORIGIN: CLIENT 1207 <a name="C4301"></a>ORIGIN: CLIENT;
1222 MESSAGE msg_room</h4> 1208 MESSAGE: msg_room</h4>
1223 NUMERIC TYPE (hex): 4301<p> 1209 NUMERIC TYPE (hex): 4301<p>
1224 Send a message to the room. 1210 Send a message to the room.
1225 </p> 1211 </p>
1226 <table border="1" width="100%"> 1212 <table border="1" width="100%">
1227 <tr> 1213 <tr>
1272 </td> 1258 </td>
1273 </tr> 1259 </tr>
1274 </table> 1260 </table>
1275 1261
1276 <h4> 1262 <h4>
1277 <a name="S4302"></a>ORIGIN: CLIENT 1263 <a name="C4302"></a>ORIGIN: CLIENT;
1278 MESSAGE part_room</h4> 1264 MESSAGE: part_room</h4>
1279 NUMERIC TYPE (hex): 4302<p> 1265 NUMERIC TYPE (hex): 4302<p>
1280 Remove yourself (or maybe others as admin) from a room. 1266 Remove yourself (or maybe others as admin) from a room.
1281 </p> 1267 </p>
1282 <table border="1" width="100%"> 1268 <table border="1" width="100%">
1283 <tr> 1269 <tr>
1314 </td> 1300 </td>
1315 </tr> 1301 </tr>
1316 </table> 1302 </table>
1317 1303
1318 <h4> 1304 <h4>
1319 <a name="S4305"></a>ORIGIN: CLIENT 1305 <a name="C4305"></a>ORIGIN: CLIENT;
1320 MESSAGE new_game</h4> 1306 MESSAGE: new_game</h4>
1321 NUMERIC TYPE (hex): 4305<p> 1307 NUMERIC TYPE (hex): 4305<p>
1322 Unclear. Start a new game. 1308 Unclear. Start a new game.
1323 </p> 1309 </p>
1324 <table border="1" width="100%"> 1310 <table border="1" width="100%">
1325 <tr> 1311 <tr>
1395 </td> 1381 </td>
1396 </tr> 1382 </tr>
1397 </table> 1383 </table>
1398 1384
1399 <h4> 1385 <h4>
1400 <a name="S430b"></a>ORIGIN: CLIENT 1386 <a name="C430b"></a>ORIGIN: CLIENT;
1401 MESSAGE req_games</h4> 1387 MESSAGE: req_games</h4>
1402 NUMERIC TYPE (hex): 430b<p> 1388 NUMERIC TYPE (hex): 430b<p>
1403 Request to update room game list (send this once per minute to get 1389 Request to update room game list (send this once per minute to get
1404 updated). Results in upd_games messages. 1390 updated). Results in upd_games messages.
1405 </p> 1391 </p>
1406 <table border="1" width="100%"> 1392 <table border="1" width="100%">
1425 </td> 1411 </td>
1426 </tr> 1412 </tr>
1427 </table> 1413 </table>
1428 1414
1429 <h4> 1415 <h4>
1430 <a name="S4319"></a>ORIGIN: CLIENT 1416 <a name="C4319"></a>ORIGIN: CLIENT;
1431 MESSAGE req_desc</h4> 1417 MESSAGE: req_desc</h4>
1432 NUMERIC TYPE (hex): 4319<p> 1418 NUMERIC TYPE (hex): 4319<p>
1433 Request room description. 1419 Request room description.
1434 </p> 1420 </p>
1435 <table border="1" width="100%"> 1421 <table border="1" width="100%">
1436 <tr> 1422 <tr>
1454 </td> 1440 </td>
1455 </tr> 1441 </tr>
1456 </table> 1442 </table>
1457 1443
1458 <h4> 1444 <h4>
1459 <a name="S4400"></a>ORIGIN: CLIENT 1445 <a name="C4400"></a>ORIGIN: CLIENT;
1460 MESSAGE send_challenge</h4> 1446 MESSAGE: send_challenge</h4>
1461 NUMERIC TYPE (hex): 4400<p> 1447 NUMERIC TYPE (hex): 4400<p>
1462 Unclear. 1448 Unclear.
1463 </p> 1449 </p>
1464 <table border="1" width="100%"> 1450 <table border="1" width="100%">
1465 <tr> 1451 <tr>
1510 </td> 1496 </td>
1511 </tr> 1497 </tr>
1512 </table> 1498 </table>
1513 1499
1514 <h4> 1500 <h4>
1515 <a name="S4403"></a>ORIGIN: CLIENT 1501 <a name="C4403"></a>ORIGIN: CLIENT;
1516 MESSAGE join_game</h4> 1502 MESSAGE: join_game</h4>
1517 NUMERIC TYPE (hex): 4403<p> 1503 NUMERIC TYPE (hex): 4403<p>
1518 Join a game. See join_room. 1504 Join a game. See join_room.
1519 </p> 1505 </p>
1520 <table border="1" width="100%"> 1506 <table border="1" width="100%">
1521 <tr> 1507 <tr>
1552 </td> 1538 </td>
1553 </tr> 1539 </tr>
1554 </table> 1540 </table>
1555 1541
1556 <h4> 1542 <h4>
1557 <a name="S4404"></a>ORIGIN: CLIENT 1543 <a name="C4404"></a>ORIGIN: CLIENT;
1558 MESSAGE part_game</h4> 1544 MESSAGE: part_game</h4>
1559 NUMERIC TYPE (hex): 4404<p> 1545 NUMERIC TYPE (hex): 4404<p>
1560 Leave (or kick as admin?) a certain user from a game. 1546 Leave (or kick as admin?) a certain user from a game.
1561 </p> 1547 </p>
1562 <table border="1" width="100%"> 1548 <table border="1" width="100%">
1563 <tr> 1549 <tr>
1594 </td> 1580 </td>
1595 </tr> 1581 </tr>
1596 </table> 1582 </table>
1597 1583
1598 <h4> 1584 <h4>
1599 <a name="S4406"></a>ORIGIN: CLIENT 1585 <a name="C4406"></a>ORIGIN: CLIENT;
1600 MESSAGE upd_tree</h4> 1586 MESSAGE: upd_tree</h4>
1601 NUMERIC TYPE (hex): 4406<p> 1587 NUMERIC TYPE (hex): 4406<p>
1602 Upload a partial game tree to the server. This is used to send moves 1588 Upload a partial game tree to the server. This is used to send moves
1603 and even in-game comments to the server. For the comments, the 1589 and even in-game comments to the server. For the comments, the
1604 server prepends the username and rank. 1590 server prepends the username and rank.
1605 1591
1639 </td> 1625 </td>
1640 </tr> 1626 </tr>
1641 </table> 1627 </table>
1642 1628
1643 <h4> 1629 <h4>
1644 <a name="S4408"></a>ORIGIN: CLIENT 1630 <a name="C4408"></a>ORIGIN: CLIENT;
1645 MESSAGE get_tree</h4> 1631 MESSAGE: get_tree</h4>
1646 NUMERIC TYPE (hex): 4408<p> 1632 NUMERIC TYPE (hex): 4408<p>
1647 Request the game tree starting at a given node. This is used 1633 Request the game tree starting at a given node. This is used
1648 when the server only sends a partial tree (with end code "more"). 1634 when the server only sends a partial tree (with end code "more").
1649 </p> 1635 </p>
1650 <table border="1" width="100%"> 1636 <table border="1" width="100%">
1682 </td> 1668 </td>
1683 </tr> 1669 </tr>
1684 </table> 1670 </table>
1685 1671
1686 <h4> 1672 <h4>
1687 <a name="S440c"></a>ORIGIN: CLIENT 1673 <a name="C440c"></a>ORIGIN: CLIENT;
1688 MESSAGE claim_win</h4> 1674 MESSAGE: claim_win</h4>
1689 NUMERIC TYPE (hex): 440c<p> 1675 NUMERIC TYPE (hex): 440c<p>
1690 Unclear. 1676 Unclear.
1691 </p> 1677 </p>
1692 <table border="1" width="100%"> 1678 <table border="1" width="100%">
1693 <tr> 1679 <tr>
1725 </td> 1711 </td>
1726 </tr> 1712 </tr>
1727 </table> 1713 </table>
1728 1714
1729 <h4> 1715 <h4>
1730 <a name="S440d"></a>ORIGIN: CLIENT 1716 <a name="C440d"></a>ORIGIN: CLIENT;
1731 MESSAGE add_time</h4> 1717 MESSAGE: add_time</h4>
1732 NUMERIC TYPE (hex): 440d<p> 1718 NUMERIC TYPE (hex): 440d<p>
1733 Not checked. 1719 Not checked.
1734 1720
1735 </p> 1721 </p>
1736 <table border="1" width="100%"> 1722 <table border="1" width="100%">
1781 </td> 1767 </td>
1782 </tr> 1768 </tr>
1783 </table> 1769 </table>
1784 1770
1785 <h4> 1771 <h4>
1786 <a name="S440f"></a>ORIGIN: CLIENT 1772 <a name="C440f"></a>ORIGIN: CLIENT;
1787 MESSAGE grant_undo</h4> 1773 MESSAGE: grant_undo</h4>
1788 NUMERIC TYPE (hex): 440f<p> 1774 NUMERIC TYPE (hex): 440f<p>
1789 Can be send after a req_undo message was received to grant the undo. 1775 Can be send after a req_undo message was received to grant the undo.
1790 </p> 1776 </p>
1791 <table border="1" width="100%"> 1777 <table border="1" width="100%">
1792 <tr> 1778 <tr>
1810 </td> 1796 </td>
1811 </tr> 1797 </tr>
1812 </table> 1798 </table>
1813 1799
1814 <h4> 1800 <h4>
1815 <a name="S4410"></a>ORIGIN: CLIENT 1801 <a name="C4410"></a>ORIGIN: CLIENT;
1816 MESSAGE resign_game</h4> 1802 MESSAGE: resign_game</h4>
1817 NUMERIC TYPE (hex): 4410<p> 1803 NUMERIC TYPE (hex): 4410<p>
1818 Resign the game. 1804 Resign the game.
1819 </p> 1805 </p>
1820 <table border="1" width="100%"> 1806 <table border="1" width="100%">
1821 <tr> 1807 <tr>
1852 </td> 1838 </td>
1853 </tr> 1839 </tr>
1854 </table> 1840 </table>
1855 1841
1856 <h4> 1842 <h4>
1857 <a name="S441a"></a>ORIGIN: CLIENT 1843 <a name="C441a"></a>ORIGIN: CLIENT;
1858 MESSAGE set_teacher</h4> 1844 MESSAGE: set_teacher</h4>
1859 NUMERIC TYPE (hex): 441a<p> 1845 NUMERIC TYPE (hex): 441a<p>
1860 Change the teacher to somebody else (or possibly yourself == take it). 1846 Change the teacher to somebody else (or possibly yourself == take it).
1861 </p> 1847 </p>
1862 <table border="1" width="100%"> 1848 <table border="1" width="100%">
1863 <tr> 1849 <tr>
1894 </td> 1880 </td>
1895 </tr> 1881 </tr>
1896 </table> 1882 </table>
1897 1883
1898 <h4> 1884 <h4>
1899 <a name="S4422"></a>ORIGIN: CLIENT 1885 <a name="C4422"></a>ORIGIN: CLIENT;
1900 MESSAGE add_user</h4> 1886 MESSAGE: add_user</h4>
1901 NUMERIC TYPE (hex): 4422<p> 1887 NUMERIC TYPE (hex): 4422<p>
1902 Unclear. Maybe allow users to talk? No idea, really. 1888 Unclear. Maybe allow users to talk? No idea, really.
1903 1889
1904 </p> 1890 </p>
1905 <table border="1" width="100%"> 1891 <table border="1" width="100%">
1950 </td> 1936 </td>
1951 </tr> 1937 </tr>
1952 </table> 1938 </table>
1953 1939
1954 <h4> 1940 <h4>
1955 <a name="S4423"></a>ORIGIN: CLIENT 1941 <a name="C4423"></a>ORIGIN: CLIENT;
1956 MESSAGE set_privacy</h4> 1942 MESSAGE: set_privacy</h4>
1957 NUMERIC TYPE (hex): 4423<p> 1943 NUMERIC TYPE (hex): 4423<p>
1958 Probably sets the "quiet" flag. Not checked. 1944 Probably sets the "quiet" flag. Not checked.
1959 </p> 1945 </p>
1960 <table border="1" width="100%"> 1946 <table border="1" width="100%">
1961 <tr> 1947 <tr>
1992 </td> 1978 </td>
1993 </tr> 1979 </tr>
1994 </table> 1980 </table>
1995 1981
1996 <h4> 1982 <h4>
1997 <a name="S4429"></a>ORIGIN: CLIENT 1983 <a name="C4429"></a>ORIGIN: CLIENT;
1998 MESSAGE reject_challenge</h4> 1984 MESSAGE: reject_challenge</h4>
1999 NUMERIC TYPE (hex): 4429<p> 1985 NUMERIC TYPE (hex): 4429<p>
2000 Reject a challenge from a given user. Not checked. 1986 Reject a challenge from a given user. Not checked.
2001 1987
2002 </p> 1988 </p>
2003 <table border="1" width="100%"> 1989 <table border="1" width="100%">
2035 </td> 2021 </td>
2036 </tr> 2022 </tr>
2037 </table> 2023 </table>
2038 2024
2039 <h4> 2025 <h4>
2040 <a name="S4433"></a>ORIGIN: CLIENT 2026 <a name="C4433"></a>ORIGIN: CLIENT;
2041 MESSAGE req_result</h4> 2027 MESSAGE: req_result</h4>
2042 NUMERIC TYPE (hex): 4433<p> 2028 NUMERIC TYPE (hex): 4433<p>
2043 I forgot. 2029 I forgot.
2044 2030
2045 </p> 2031 </p>
2046 <table border="1" width="100%"> 2032 <table border="1" width="100%">
2064   2050  
2065 </td> 2051 </td>
2066 </tr> 2052 </tr>
2067 </table> 2053 </table>
2068 2054
2069<h2>Structs mainly used in receive messages</h2> 2055<h2>Structs mainly used in messages send by the server</h2>
2070 2056
2071 <h4>STRUCTURE challenge_defaults</h4> 2057 <h4>STRUCTURE challenge_defaults</h4>
2072 <p> 2058 <p>
2073 Send soon after log-in to set the defaults for game challenges. 2059 Send soon after log-in to set the defaults for game challenges.
2074 </p> 2060 </p>
2715 </table> 2701 </table>
2716 2702
2717 <h4>STRUCTURE game_record</h4> 2703 <h4>STRUCTURE game_record</h4>
2718 CLASS: KGS::GameRecord<br /> 2704 CLASS: KGS::GameRecord<br />
2719 <p> 2705 <p>
2720 <p>A single game record entry, as seen in <a href="#R0008">userinfo(0008)</a>.</p> 2706 <p>A single game record entry, as seen in <a href="#S0008">userinfo(0008)</a>.</p>
2721 </p> 2707 </p>
2722 <table border="1" width="100%"> 2708 <table border="1" width="100%">
2723 <tr> 2709 <tr>
2724 <th width="10%">NAME</th> 2710 <th width="10%">NAME</th>
2725 <th width="10%">TYPE</th> 2711 <th width="10%">TYPE</th>
2837   2823  
2838 </td> 2824 </td>
2839 </tr> 2825 </tr>
2840 </table> 2826 </table>
2841 2827
2842<h2>Receive messages</h2> 2828<h2>Server-generated messages</h2>
2843 2829
2844 <h4> 2830 <h4>
2845 <a name="R0001"></a>ORIGIN: SERVER 2831 <a name="S0001"></a>ORIGIN: SERVER;
2846 MESSAGE login</h4> 2832 MESSAGE: login</h4>
2847 NUMERIC TYPE (hex): 0001 2833 NUMERIC TYPE (hex): 0001
2848 (possibly in response to 2834 (possibly in response to
2849 <a href="#S0000">login(0000)</a> 2835 <a href="#C0000">login(0000)</a>
2850 ) 2836 )
2851 <p> 2837 <p>
2852 </p> 2838 </p>
2853 <table border="1" width="100%"> 2839 <table border="1" width="100%">
2854 <tr> 2840 <tr>
2885 </td> 2871 </td>
2886 </tr> 2872 </tr>
2887 </table> 2873 </table>
2888 2874
2889 <h4> 2875 <h4>
2890 <a name="R0002"></a>ORIGIN: SERVER 2876 <a name="S0002"></a>ORIGIN: SERVER;
2891 MESSAGE login</h4> 2877 MESSAGE: login</h4>
2892 NUMERIC TYPE (hex): 0002 2878 NUMERIC TYPE (hex): 0002
2893 (possibly in response to 2879 (possibly in response to
2894 <a href="#S0000">login(0000)</a> 2880 <a href="#C0000">login(0000)</a>
2895 ) 2881 )
2896 <p> 2882 <p>
2897 </p> 2883 </p>
2898 <table border="1" width="100%"> 2884 <table border="1" width="100%">
2899 <tr> 2885 <tr>
2930 </td> 2916 </td>
2931 </tr> 2917 </tr>
2932 </table> 2918 </table>
2933 2919
2934 <h4> 2920 <h4>
2935 <a name="R0003"></a>ORIGIN: SERVER 2921 <a name="S0003"></a>ORIGIN: SERVER;
2936 MESSAGE login</h4> 2922 MESSAGE: login</h4>
2937 NUMERIC TYPE (hex): 0003 2923 NUMERIC TYPE (hex): 0003
2938 (possibly in response to 2924 (possibly in response to
2939 <a href="#S0000">login(0000)</a> 2925 <a href="#C0000">login(0000)</a>
2940 ) 2926 )
2941 <p> 2927 <p>
2942 </p> 2928 </p>
2943 <table border="1" width="100%"> 2929 <table border="1" width="100%">
2944 <tr> 2930 <tr>
2963 </td> 2949 </td>
2964 </tr> 2950 </tr>
2965 </table> 2951 </table>
2966 2952
2967 <h4> 2953 <h4>
2968 <a name="R0004"></a>ORIGIN: SERVER 2954 <a name="S0004"></a>ORIGIN: SERVER;
2969 MESSAGE login</h4> 2955 MESSAGE: login</h4>
2970 NUMERIC TYPE (hex): 0004 2956 NUMERIC TYPE (hex): 0004
2971 (possibly in response to 2957 (possibly in response to
2972 <a href="#S0000">login(0000)</a> 2958 <a href="#C0000">login(0000)</a>
2973 ) 2959 )
2974 <p> 2960 <p>
2975 </p> 2961 </p>
2976 <table border="1" width="100%"> 2962 <table border="1" width="100%">
2977 <tr> 2963 <tr>
2996 </td> 2982 </td>
2997 </tr> 2983 </tr>
2998 </table> 2984 </table>
2999 2985
3000 <h4> 2986 <h4>
3001 <a name="R0005"></a>ORIGIN: SERVER 2987 <a name="S0005"></a>ORIGIN: SERVER;
3002 MESSAGE login</h4> 2988 MESSAGE: login</h4>
3003 NUMERIC TYPE (hex): 0005 2989 NUMERIC TYPE (hex): 0005
3004 (possibly in response to 2990 (possibly in response to
3005 <a href="#S0000">login(0000)</a> 2991 <a href="#C0000">login(0000)</a>
3006 ) 2992 )
3007 <p> 2993 <p>
3008 </p> 2994 </p>
3009 <table border="1" width="100%"> 2995 <table border="1" width="100%">
3010 <tr> 2996 <tr>
3029 </td> 3015 </td>
3030 </tr> 3016 </tr>
3031 </table> 3017 </table>
3032 3018
3033 <h4> 3019 <h4>
3034 <a name="R0006"></a>ORIGIN: SERVER 3020 <a name="S0006"></a>ORIGIN: SERVER;
3035 MESSAGE login</h4> 3021 MESSAGE: login</h4>
3036 NUMERIC TYPE (hex): 0006 3022 NUMERIC TYPE (hex): 0006
3037 (possibly in response to 3023 (possibly in response to
3038 <a href="#S0000">login(0000)</a> 3024 <a href="#C0000">login(0000)</a>
3039 ) 3025 )
3040 <p> 3026 <p>
3041 </p> 3027 </p>
3042 <table border="1" width="100%"> 3028 <table border="1" width="100%">
3043 <tr> 3029 <tr>
3062 </td> 3048 </td>
3063 </tr> 3049 </tr>
3064 </table> 3050 </table>
3065 3051
3066 <h4> 3052 <h4>
3067 <a name="R0008"></a>ORIGIN: SERVER 3053 <a name="S0008"></a>ORIGIN: SERVER;
3068 MESSAGE userinfo</h4> 3054 MESSAGE: userinfo</h4>
3069 NUMERIC TYPE (hex): 0008 3055 NUMERIC TYPE (hex): 0008
3070 (possibly in response to 3056 (possibly in response to
3071 <a href="#S0007">req_userinfo(0007)</a> 3057 <a href="#C0007">req_userinfo(0007)</a>
3072 ) 3058 )
3073 <p> 3059 <p>
3074 User info. 3060 User info.
3075 </p> 3061 </p>
3076 <table border="1" width="100%"> 3062 <table border="1" width="100%">
3188 </td> 3174 </td>
3189 </tr> 3175 </tr>
3190 </table> 3176 </table>
3191 3177
3192 <h4> 3178 <h4>
3193 <a name="R0018"></a>ORIGIN: SERVER 3179 <a name="S0018"></a>ORIGIN: SERVER;
3194 MESSAGE login</h4> 3180 MESSAGE: login</h4>
3195 NUMERIC TYPE (hex): 0018 3181 NUMERIC TYPE (hex): 0018
3196 (possibly in response to 3182 (possibly in response to
3197 <a href="#S0000">login(0000)</a> 3183 <a href="#C0000">login(0000)</a>
3198 ) 3184 )
3199 <p> 3185 <p>
3200 </p> 3186 </p>
3201 <table border="1" width="100%"> 3187 <table border="1" width="100%">
3202 <tr> 3188 <tr>
3221 </td> 3207 </td>
3222 </tr> 3208 </tr>
3223 </table> 3209 </table>
3224 3210
3225 <h4> 3211 <h4>
3226 <a name="R0022"></a>ORIGIN: SERVER 3212 <a name="S0022"></a>ORIGIN: SERVER;
3227 MESSAGE login</h4> 3213 MESSAGE: login</h4>
3228 NUMERIC TYPE (hex): 0022 3214 NUMERIC TYPE (hex): 0022
3229 (possibly in response to 3215 (possibly in response to
3230 <a href="#S0000">login(0000)</a> 3216 <a href="#C0000">login(0000)</a>
3231 ) 3217 )
3232 <p> 3218 <p>
3233 I was blocked sooo many times for developing this client that it was 3219 I was blocked sooo many times for developing this client that it was
3234 easy to figure out. The KGS admins sure need no extra nazi training 3220 easy to figure out. The KGS admins sure need no extra nazi training
3235 :( 3221 :(
3269 </td> 3255 </td>
3270 </tr> 3256 </tr>
3271 </table> 3257 </table>
3272 3258
3273 <h4> 3259 <h4>
3274 <a name="R0013"></a>ORIGIN: SERVER 3260 <a name="S0013"></a>ORIGIN: SERVER;
3275 MESSAGE msg_chat</h4> 3261 MESSAGE: msg_chat</h4>
3276 NUMERIC TYPE (hex): 0013<p> 3262 NUMERIC TYPE (hex): 0013<p>
3277 </p> 3263 </p>
3278 <table border="1" width="100%"> 3264 <table border="1" width="100%">
3279 <tr> 3265 <tr>
3280 <th width="10%">NAME</th> 3266 <th width="10%">NAME</th>
3323 </td> 3309 </td>
3324 </tr> 3310 </tr>
3325 </table> 3311 </table>
3326 3312
3327 <h4> 3313 <h4>
3328 <a name="R0015"></a>ORIGIN: SERVER 3314 <a name="S0015"></a>ORIGIN: SERVER;
3329 MESSAGE stats</h4> 3315 MESSAGE: stats</h4>
3330 NUMERIC TYPE (hex): 0015 3316 NUMERIC TYPE (hex): 0015
3331 (possibly in response to 3317 (possibly in response to
3332 <a href="#S0014">req_stats(0014)</a> 3318 <a href="#C0014">req_stats(0014)</a>
3333 ) 3319 )
3334 <p> 3320 <p>
3335 </p> 3321 </p>
3336 <table border="1" width="100%"> 3322 <table border="1" width="100%">
3337 <tr> 3323 <tr>
3680 </td> 3666 </td>
3681 </tr> 3667 </tr>
3682 </table> 3668 </table>
3683 3669
3684 <h4> 3670 <h4>
3685 <a name="R0016"></a>ORIGIN: SERVER 3671 <a name="S0016"></a>ORIGIN: SERVER;
3686 MESSAGE idle_warn</h4> 3672 MESSAGE: idle_warn</h4>
3687 NUMERIC TYPE (hex): 0016 3673 NUMERIC TYPE (hex): 0016
3688 (possibly in response to 3674 (possibly in response to
3689 <a href="#S0016">idle_reset(0016)</a> 3675 <a href="#C0016">idle_reset(0016)</a>
3690 ) 3676 )
3691 <p> 3677 <p>
3692 idle warning, autologout soon (10 minutes...) 3678 idle warning, autologout soon (10 minutes...)
3693 </p> 3679 </p>
3694 <table border="1" width="100%"> 3680 <table border="1" width="100%">
3700 <th width="15%">DEC-GUARD</th> 3686 <th width="15%">DEC-GUARD</th>
3701 </tr> 3687 </tr>
3702 </table> 3688 </table>
3703 3689
3704 <h4> 3690 <h4>
3705 <a name="R001b"></a>ORIGIN: SERVER 3691 <a name="S001b"></a>ORIGIN: SERVER;
3706 MESSAGE timewarning_default</h4> 3692 MESSAGE: timewarning_default</h4>
3707 NUMERIC TYPE (hex): 001b 3693 NUMERIC TYPE (hex): 001b
3708 (possibly in response to 3694 (possibly in response to
3709 <a href="#S0000">login(0000)</a> 3695 <a href="#C0000">login(0000)</a>
3710 ) 3696 )
3711 <p> 3697 <p>
3712 WILD guess 3698 WILD guess
3713 </p> 3699 </p>
3714 <table border="1" width="100%"> 3700 <table border="1" width="100%">
3746 </td> 3732 </td>
3747 </tr> 3733 </tr>
3748 </table> 3734 </table>
3749 3735
3750 <h4> 3736 <h4>
3751 <a name="R001c"></a>ORIGIN: SERVER 3737 <a name="S001c"></a>ORIGIN: SERVER;
3752 MESSAGE idle_err</h4> 3738 MESSAGE: idle_err</h4>
3753 NUMERIC TYPE (hex): 001c<p> 3739 NUMERIC TYPE (hex): 001c<p>
3754 autologout 3740 autologout
3755 </p> 3741 </p>
3756 <table border="1" width="100%"> 3742 <table border="1" width="100%">
3757 <tr> 3743 <tr>
3762 <th width="15%">DEC-GUARD</th> 3748 <th width="15%">DEC-GUARD</th>
3763 </tr> 3749 </tr>
3764 </table> 3750 </table>
3765 3751
3766 <h4> 3752 <h4>
3767 <a name="R001d"></a>ORIGIN: SERVER 3753 <a name="S001d"></a>ORIGIN: SERVER;
3768 MESSAGE ping</h4> 3754 MESSAGE: ping</h4>
3769 NUMERIC TYPE (hex): 001d<p> 3755 NUMERIC TYPE (hex): 001d<p>
3770 Sent by the server regularly, but not answering them 3756 Sent by the server regularly, but not answering them
3771 isn't valid. Strange form of keepalive? 3757 isn't valid. Strange form of keepalive?
3772 </p> 3758 </p>
3773 <table border="1" width="100%"> 3759 <table border="1" width="100%">
3779 <th width="15%">DEC-GUARD</th> 3765 <th width="15%">DEC-GUARD</th>
3780 </tr> 3766 </tr>
3781 </table> 3767 </table>
3782 3768
3783 <h4> 3769 <h4>
3784 <a name="R001e"></a>ORIGIN: SERVER 3770 <a name="S001e"></a>ORIGIN: SERVER;
3785 MESSAGE usergraph</h4> 3771 MESSAGE: usergraph</h4>
3786 NUMERIC TYPE (hex): 001e 3772 NUMERIC TYPE (hex): 001e
3787 (possibly in response to 3773 (possibly in response to
3788 <a href="#S001e">req_usergraph(001e)</a> 3774 <a href="#C001e">req_usergraph(001e)</a>
3789 ) 3775 )
3790 <p> 3776 <p>
3791 User graph data. 3777 User graph data.
3792 </p> 3778 </p>
3793 <table border="1" width="100%"> 3779 <table border="1" width="100%">
3815 </td> 3801 </td>
3816 </tr> 3802 </tr>
3817 </table> 3803 </table>
3818 3804
3819 <h4> 3805 <h4>
3820 <a name="R001f"></a>ORIGIN: SERVER 3806 <a name="S001f"></a>ORIGIN: SERVER;
3821 MESSAGE memo</h4> 3807 MESSAGE: memo</h4>
3822 NUMERIC TYPE (hex): 001f 3808 NUMERIC TYPE (hex): 001f
3823 (possibly in response to 3809 (possibly in response to
3824 <a href="#S001f">fetch_memos(001f)</a> 3810 <a href="#C001f">fetch_memos(001f)</a>
3825 ) 3811 )
3826 <p> 3812 <p>
3827 Unclear. "Leave Message"? 3813 Unclear. "Leave Message"?
3828 6 strings following. 3814 6 strings following.
3829 </p> 3815 </p>
3914 </td> 3900 </td>
3915 </tr> 3901 </tr>
3916 </table> 3902 </table>
3917 3903
3918 <h4> 3904 <h4>
3919 <a name="R0021"></a>ORIGIN: SERVER 3905 <a name="S0021"></a>ORIGIN: SERVER;
3920 MESSAGE userpic</h4> 3906 MESSAGE: userpic</h4>
3921 NUMERIC TYPE (hex): 0021 3907 NUMERIC TYPE (hex): 0021
3922 (possibly in response to 3908 (possibly in response to
3923 <a href="#S0021">req_pic(0021)</a> 3909 <a href="#C0021">req_pic(0021)</a>
3924 ) 3910 )
3925 <p> 3911 <p>
3926 </p> 3912 </p>
3927 <table border="1" width="100%"> 3913 <table border="1" width="100%">
3928 <tr> 3914 <tr>
3960 </td> 3946 </td>
3961 </tr> 3947 </tr>
3962 </table> 3948 </table>
3963 3949
3964 <h4> 3950 <h4>
3965 <a name="R0100"></a>ORIGIN: SERVER 3951 <a name="S0100"></a>ORIGIN: SERVER;
3966 MESSAGE gnotice</h4> 3952 MESSAGE: gnotice</h4>
3967 NUMERIC TYPE (hex): 0100 3953 NUMERIC TYPE (hex): 0100
3968 (possibly in response to 3954 (possibly in response to
3969 <a href="#S0100">gnotice(0100)</a> 3955 <a href="#C0100">gnotice(0100)</a>
3970 ) 3956 )
3971 <p> 3957 <p>
3972 global notice, sent to everybody 3958 global notice, sent to everybody
3973 </p> 3959 </p>
3974 <table border="1" width="100%"> 3960 <table border="1" width="100%">
3993 </td> 3979 </td>
3994 </tr> 3980 </tr>
3995 </table> 3981 </table>
3996 3982
3997 <h4> 3983 <h4>
3998 <a name="R0202"></a>ORIGIN: SERVER 3984 <a name="S0202"></a>ORIGIN: SERVER;
3999 MESSAGE upd_user</h4> 3985 MESSAGE: upd_user</h4>
4000 NUMERIC TYPE (hex): 0202<p> 3986 NUMERIC TYPE (hex): 0202<p>
4001 # maybe soe notify? Totally unclear. 3987 # maybe soe notify? Totally unclear.
4002 # loc 0" type="chat(?) loc 1 =&gt; gameinfo?, loc 2 =&gt; game result (more data) 3988 # loc 0" type="chat(?) loc 1 =&gt; gameinfo?, loc 2 =&gt; game result (more data)
4003 </p> 3989 </p>
4004 <table border="1" width="100%"> 3990 <table border="1" width="100%">
4049 </td> 4035 </td>
4050 </tr> 4036 </tr>
4051 </table> 4037 </table>
4052 4038
4053 <h4> 4039 <h4>
4054 <a name="R0310"></a>ORIGIN: SERVER 4040 <a name="S0310"></a>ORIGIN: SERVER;
4055 MESSAGE priv_room</h4> 4041 MESSAGE: priv_room</h4>
4056 NUMERIC TYPE (hex): 0310<p> 4042 NUMERIC TYPE (hex): 0310<p>
4057 "permission denied" when joining a room 4043 "permission denied" when joining a room
4058 </p> 4044 </p>
4059 <table border="1" width="100%"> 4045 <table border="1" width="100%">
4060 <tr> 4046 <tr>
4078 </td> 4064 </td>
4079 </tr> 4065 </tr>
4080 </table> 4066 </table>
4081 4067
4082 <h4> 4068 <h4>
4083 <a name="R0318"></a>ORIGIN: SERVER 4069 <a name="S0318"></a>ORIGIN: SERVER;
4084 MESSAGE upd_rooms</h4> 4070 MESSAGE: upd_rooms</h4>
4085 NUMERIC TYPE (hex): 0318 4071 NUMERIC TYPE (hex): 0318
4086 (possibly in response to 4072 (possibly in response to
4087 <a href="#S0318">list_rooms(0318)</a> 4073 <a href="#C0318">list_rooms(0318)</a>
4088 ) 4074 )
4089 <p> 4075 <p>
4090 </p> 4076 </p>
4091 <table border="1" width="100%"> 4077 <table border="1" width="100%">
4092 <tr> 4078 <tr>
4110 </td> 4096 </td>
4111 </tr> 4097 </tr>
4112 </table> 4098 </table>
4113 4099
4114 <h4> 4100 <h4>
4115 <a name="R0411"></a>ORIGIN: SERVER 4101 <a name="S0411"></a>ORIGIN: SERVER;
4116 MESSAGE chal_defaults</h4> 4102 MESSAGE: chal_defaults</h4>
4117 NUMERIC TYPE (hex): 0411 4103 NUMERIC TYPE (hex): 0411
4118 (possibly in response to 4104 (possibly in response to
4119 <a href="#S0000">login(0000)</a> 4105 <a href="#C0000">login(0000)</a>
4120 ) 4106 )
4121 <p> 4107 <p>
4122 </p> 4108 </p>
4123 <table border="1" width="100%"> 4109 <table border="1" width="100%">
4124 <tr> 4110 <tr>
4155 </td> 4141 </td>
4156 </tr> 4142 </tr>
4157 </table> 4143 </table>
4158 4144
4159 <h4> 4145 <h4>
4160 <a name="R0412"></a>ORIGIN: SERVER 4146 <a name="S0412"></a>ORIGIN: SERVER;
4161 MESSAGE rej_game</h4> 4147 MESSAGE: rej_game</h4>
4162 NUMERIC TYPE (hex): 0412<p> 4148 NUMERIC TYPE (hex): 0412<p>
4163 Unable to create challenge. The channel might be optional. 4149 Unable to create challenge. The channel might be optional.
4164 </p> 4150 </p>
4165 <table border="1" width="100%"> 4151 <table border="1" width="100%">
4166 <tr> 4152 <tr>
4184 </td> 4170 </td>
4185 </tr> 4171 </tr>
4186 </table> 4172 </table>
4187 4173
4188 <h4> 4174 <h4>
4189 <a name="R0414"></a>ORIGIN: SERVER 4175 <a name="S0414"></a>ORIGIN: SERVER;
4190 MESSAGE game_record</h4> 4176 MESSAGE: game_record</h4>
4191 NUMERIC TYPE (hex): 0414 4177 NUMERIC TYPE (hex): 0414
4192 (possibly in response to 4178 (possibly in response to
4193 <a href="#S0413">req_game_record(0413)</a> 4179 <a href="#C0413">req_game_record(0413)</a>
4194 ) 4180 )
4195 <p> 4181 <p>
4196 The users game record. 4182 The users game record.
4197 </p> 4183 </p>
4198 <table border="1" width="100%"> 4184 <table border="1" width="100%">
4244 </td> 4230 </td>
4245 </tr> 4231 </tr>
4246 </table> 4232 </table>
4247 4233
4248 <h4> 4234 <h4>
4249 <a name="R041c"></a>ORIGIN: SERVER 4235 <a name="S041c"></a>ORIGIN: SERVER;
4250 MESSAGE upd_game2</h4> 4236 MESSAGE: upd_game2</h4>
4251 NUMERIC TYPE (hex): 041c<p> 4237 NUMERIC TYPE (hex): 041c<p>
4252 Unclear. 4238 Unclear.
4253 </p> 4239 </p>
4254 <table border="1" width="100%"> 4240 <table border="1" width="100%">
4255 <tr> 4241 <tr>
4291 4277
4292 <p>Not all room messages are for rooms only, and rooms need to parse 4278 <p>Not all room messages are for rooms only, and rooms need to parse
4293 not only these messages. Orthogonality, what for?</p> 4279 not only these messages. Orthogonality, what for?</p>
4294 4280
4295 <h4> 4281 <h4>
4296 <a name="R4300"></a>ORIGIN: SERVER 4282 <a name="S4300"></a>ORIGIN: SERVER;
4297 MESSAGE join_room</h4> 4283 MESSAGE: join_room</h4>
4298 NUMERIC TYPE (hex): 4300 4284 NUMERIC TYPE (hex): 4300
4299 (possibly in response to 4285 (possibly in response to
4300 <a href="#S4300">join_room(4300)</a> 4286 <a href="#C4300">join_room(4300)</a>
4301 ) 4287 )
4302 <p> 4288 <p>
4303 </p> 4289 </p>
4304 <table border="1" width="100%"> 4290 <table border="1" width="100%">
4305 <tr> 4291 <tr>
4336 </td> 4322 </td>
4337 </tr> 4323 </tr>
4338 </table> 4324 </table>
4339 4325
4340 <h4> 4326 <h4>
4341 <a name="R4301"></a>ORIGIN: SERVER 4327 <a name="S4301"></a>ORIGIN: SERVER;
4342 MESSAGE msg_room</h4> 4328 MESSAGE: msg_room</h4>
4343 NUMERIC TYPE (hex): 4301<p> 4329 NUMERIC TYPE (hex): 4301<p>
4344 </p> 4330 </p>
4345 <table border="1" width="100%"> 4331 <table border="1" width="100%">
4346 <tr> 4332 <tr>
4347 <th width="10%">NAME</th> 4333 <th width="10%">NAME</th>
4390 </td> 4376 </td>
4391 </tr> 4377 </tr>
4392 </table> 4378 </table>
4393 4379
4394 <h4> 4380 <h4>
4395 <a name="R4302"></a>ORIGIN: SERVER 4381 <a name="S4302"></a>ORIGIN: SERVER;
4396 MESSAGE part_room</h4> 4382 MESSAGE: part_room</h4>
4397 NUMERIC TYPE (hex): 4302<p> 4383 NUMERIC TYPE (hex): 4302<p>
4398 </p> 4384 </p>
4399 <table border="1" width="100%"> 4385 <table border="1" width="100%">
4400 <tr> 4386 <tr>
4401 <th width="10%">NAME</th> 4387 <th width="10%">NAME</th>
4431 </td> 4417 </td>
4432 </tr> 4418 </tr>
4433 </table> 4419 </table>
4434 4420
4435 <h4> 4421 <h4>
4436 <a name="R4303"></a>ORIGIN: SERVER 4422 <a name="S4303"></a>ORIGIN: SERVER;
4437 MESSAGE del_room</h4> 4423 MESSAGE: del_room</h4>
4438 NUMERIC TYPE (hex): 4303<p> 4424 NUMERIC TYPE (hex): 4303<p>
4439 </p> 4425 </p>
4440 <table border="1" width="100%"> 4426 <table border="1" width="100%">
4441 <tr> 4427 <tr>
4442 <th width="10%">NAME</th> 4428 <th width="10%">NAME</th>
4459 </td> 4445 </td>
4460 </tr> 4446 </tr>
4461 </table> 4447 </table>
4462 4448
4463 <h4> 4449 <h4>
4464 <a name="R4304"></a>ORIGIN: SERVER 4450 <a name="S4304"></a>ORIGIN: SERVER;
4465 MESSAGE upd_games</h4> 4451 MESSAGE: upd_games</h4>
4466 NUMERIC TYPE (hex): 4304<p> 4452 NUMERIC TYPE (hex): 4304<p>
4467 </p> 4453 </p>
4468 <table border="1" width="100%"> 4454 <table border="1" width="100%">
4469 <tr> 4455 <tr>
4470 <th width="10%">NAME</th> 4456 <th width="10%">NAME</th>
4500 </td> 4486 </td>
4501 </tr> 4487 </tr>
4502 </table> 4488 </table>
4503 4489
4504 <h4> 4490 <h4>
4505 <a name="R4319"></a>ORIGIN: SERVER 4491 <a name="S4319"></a>ORIGIN: SERVER;
4506 MESSAGE desc_room</h4> 4492 MESSAGE: desc_room</h4>
4507 NUMERIC TYPE (hex): 4319<p> 4493 NUMERIC TYPE (hex): 4319<p>
4508 </p> 4494 </p>
4509 <table border="1" width="100%"> 4495 <table border="1" width="100%">
4510 <tr> 4496 <tr>
4511 <th width="10%">NAME</th> 4497 <th width="10%">NAME</th>
4556 </table> 4542 </table>
4557 4543
4558<h3>Game messages</h3> 4544<h3>Game messages</h3>
4559 4545
4560 <h4> 4546 <h4>
4561 <a name="R4400"></a>ORIGIN: SERVER 4547 <a name="S4400"></a>ORIGIN: SERVER;
4562 MESSAGE upd_challenge</h4> 4548 MESSAGE: upd_challenge</h4>
4563 NUMERIC TYPE (hex): 4400<p> 4549 NUMERIC TYPE (hex): 4400<p>
4564 Unclear. 4550 Unclear.
4565 </p> 4551 </p>
4566 <table border="1" width="100%"> 4552 <table border="1" width="100%">
4567 <tr> 4553 <tr>
4598 </td> 4584 </td>
4599 </tr> 4585 </tr>
4600 </table> 4586 </table>
4601 4587
4602 <h4> 4588 <h4>
4603 <a name="R4401"></a>ORIGIN: SERVER 4589 <a name="S4401"></a>ORIGIN: SERVER;
4604 MESSAGE upd_game</h4> 4590 MESSAGE: upd_game</h4>
4605 NUMERIC TYPE (hex): 4401<p> 4591 NUMERIC TYPE (hex): 4401<p>
4606 </p> 4592 </p>
4607 <table border="1" width="100%"> 4593 <table border="1" width="100%">
4608 <tr> 4594 <tr>
4609 <th width="10%">NAME</th> 4595 <th width="10%">NAME</th>
4639 </td> 4625 </td>
4640 </tr> 4626 </tr>
4641 </table> 4627 </table>
4642 4628
4643 <h4> 4629 <h4>
4644 <a name="R4402"></a>ORIGIN: SERVER 4630 <a name="S4402"></a>ORIGIN: SERVER;
4645 MESSAGE del_game</h4> 4631 MESSAGE: del_game</h4>
4646 NUMERIC TYPE (hex): 4402<p> 4632 NUMERIC TYPE (hex): 4402<p>
4647 </p> 4633 </p>
4648 <table border="1" width="100%"> 4634 <table border="1" width="100%">
4649 <tr> 4635 <tr>
4650 <th width="10%">NAME</th> 4636 <th width="10%">NAME</th>
4667 </td> 4653 </td>
4668 </tr> 4654 </tr>
4669 </table> 4655 </table>
4670 4656
4671 <h4> 4657 <h4>
4672 <a name="R4403"></a>ORIGIN: SERVER 4658 <a name="S4403"></a>ORIGIN: SERVER;
4673 MESSAGE upd_observers</h4> 4659 MESSAGE: upd_observers</h4>
4674 NUMERIC TYPE (hex): 4403<p> 4660 NUMERIC TYPE (hex): 4403<p>
4675 </p> 4661 </p>
4676 <table border="1" width="100%"> 4662 <table border="1" width="100%">
4677 <tr> 4663 <tr>
4678 <th width="10%">NAME</th> 4664 <th width="10%">NAME</th>
4708 </td> 4694 </td>
4709 </tr> 4695 </tr>
4710 </table> 4696 </table>
4711 4697
4712 <h4> 4698 <h4>
4713 <a name="R4404"></a>ORIGIN: SERVER 4699 <a name="S4404"></a>ORIGIN: SERVER;
4714 MESSAGE del_observer</h4> 4700 MESSAGE: del_observer</h4>
4715 NUMERIC TYPE (hex): 4404<p> 4701 NUMERIC TYPE (hex): 4404<p>
4716 </p> 4702 </p>
4717 <table border="1" width="100%"> 4703 <table border="1" width="100%">
4718 <tr> 4704 <tr>
4719 <th width="10%">NAME</th> 4705 <th width="10%">NAME</th>
4749 </td> 4735 </td>
4750 </tr> 4736 </tr>
4751 </table> 4737 </table>
4752 4738
4753 <h4> 4739 <h4>
4754 <a name="R4405"></a>ORIGIN: SERVER 4740 <a name="S4405"></a>ORIGIN: SERVER;
4755 MESSAGE set_tree</h4> 4741 MESSAGE: set_tree</h4>
4756 NUMERIC TYPE (hex): 4405<p> 4742 NUMERIC TYPE (hex): 4405<p>
4757 </p> 4743 </p>
4758 <table border="1" width="100%"> 4744 <table border="1" width="100%">
4759 <tr> 4745 <tr>
4760 <th width="10%">NAME</th> 4746 <th width="10%">NAME</th>
4790 </td> 4776 </td>
4791 </tr> 4777 </tr>
4792 </table> 4778 </table>
4793 4779
4794 <h4> 4780 <h4>
4795 <a name="R4406"></a>ORIGIN: SERVER 4781 <a name="S4406"></a>ORIGIN: SERVER;
4796 MESSAGE upd_tree</h4> 4782 MESSAGE: upd_tree</h4>
4797 NUMERIC TYPE (hex): 4406<p> 4783 NUMERIC TYPE (hex): 4406<p>
4798 </p> 4784 </p>
4799 <table border="1" width="100%"> 4785 <table border="1" width="100%">
4800 <tr> 4786 <tr>
4801 <th width="10%">NAME</th> 4787 <th width="10%">NAME</th>
4831 </td> 4817 </td>
4832 </tr> 4818 </tr>
4833 </table> 4819 </table>
4834 4820
4835 <h4> 4821 <h4>
4836 <a name="R4409"></a>ORIGIN: SERVER 4822 <a name="S4409"></a>ORIGIN: SERVER;
4837 MESSAGE superko</h4> 4823 MESSAGE: superko</h4>
4838 NUMERIC TYPE (hex): 4409<p> 4824 NUMERIC TYPE (hex): 4409<p>
4839 Superko-warning. 4825 Superko-warning.
4840 </p> 4826 </p>
4841 <table border="1" width="100%"> 4827 <table border="1" width="100%">
4842 <tr> 4828 <tr>
4860 </td> 4846 </td>
4861 </tr> 4847 </tr>
4862 </table> 4848 </table>
4863 4849
4864 <h4> 4850 <h4>
4865 <a name="R440b"></a>ORIGIN: SERVER 4851 <a name="S440b"></a>ORIGIN: SERVER;
4866 MESSAGE final_result</h4> 4852 MESSAGE: final_result</h4>
4867 NUMERIC TYPE (hex): 440b<p> 4853 NUMERIC TYPE (hex): 440b<p>
4868 </p> 4854 </p>
4869 <table border="1" width="100%"> 4855 <table border="1" width="100%">
4870 <tr> 4856 <tr>
4871 <th width="10%">NAME</th> 4857 <th width="10%">NAME</th>
4914 </td> 4900 </td>
4915 </tr> 4901 </tr>
4916 </table> 4902 </table>
4917 4903
4918 <h4> 4904 <h4>
4919 <a name="R440e"></a>ORIGIN: SERVER 4905 <a name="S440e"></a>ORIGIN: SERVER;
4920 MESSAGE req_undo</h4> 4906 MESSAGE: req_undo</h4>
4921 NUMERIC TYPE (hex): 440e<p> 4907 NUMERIC TYPE (hex): 440e<p>
4922 </p> 4908 </p>
4923 <table border="1" width="100%"> 4909 <table border="1" width="100%">
4924 <tr> 4910 <tr>
4925 <th width="10%">NAME</th> 4911 <th width="10%">NAME</th>
4943 </td> 4929 </td>
4944 </tr> 4930 </tr>
4945 </table> 4931 </table>
4946 4932
4947 <h4> 4933 <h4>
4948 <a name="R4410"></a>ORIGIN: SERVER 4934 <a name="S4410"></a>ORIGIN: SERVER;
4949 MESSAGE resign_game</h4> 4935 MESSAGE: resign_game</h4>
4950 NUMERIC TYPE (hex): 4410<p> 4936 NUMERIC TYPE (hex): 4410<p>
4951 </p> 4937 </p>
4952 <table border="1" width="100%"> 4938 <table border="1" width="100%">
4953 <tr> 4939 <tr>
4954 <th width="10%">NAME</th> 4940 <th width="10%">NAME</th>
4984 </td> 4970 </td>
4985 </tr> 4971 </tr>
4986 </table> 4972 </table>
4987 4973
4988 <h4> 4974 <h4>
4989 <a name="R441a"></a>ORIGIN: SERVER 4975 <a name="S441a"></a>ORIGIN: SERVER;
4990 MESSAGE set_teacher</h4> 4976 MESSAGE: set_teacher</h4>
4991 NUMERIC TYPE (hex): 441a<p> 4977 NUMERIC TYPE (hex): 441a<p>
4992 </p> 4978 </p>
4993 <table border="1" width="100%"> 4979 <table border="1" width="100%">
4994 <tr> 4980 <tr>
4995 <th width="10%">NAME</th> 4981 <th width="10%">NAME</th>
5025 </td> 5011 </td>
5026 </tr> 5012 </tr>
5027 </table> 5013 </table>
5028 5014
5029 <h4> 5015 <h4>
5030 <a name="R441d"></a>ORIGIN: SERVER 5016 <a name="S441d"></a>ORIGIN: SERVER;
5031 MESSAGE owner_left</h4> 5017 MESSAGE: owner_left</h4>
5032 NUMERIC TYPE (hex): 441d<p> 5018 NUMERIC TYPE (hex): 441d<p>
5033 Unclear. 5019 Unclear.
5034 </p> 5020 </p>
5035 <table border="1" width="100%"> 5021 <table border="1" width="100%">
5036 <tr> 5022 <tr>
5054 </td> 5040 </td>
5055 </tr> 5041 </tr>
5056 </table> 5042 </table>
5057 5043
5058 <h4> 5044 <h4>
5059 <a name="R441e"></a>ORIGIN: SERVER 5045 <a name="S441e"></a>ORIGIN: SERVER;
5060 MESSAGE teacher_left</h4> 5046 MESSAGE: teacher_left</h4>
5061 NUMERIC TYPE (hex): 441e<p> 5047 NUMERIC TYPE (hex): 441e<p>
5062 Unclear. 5048 Unclear.
5063 </p> 5049 </p>
5064 <table border="1" width="100%"> 5050 <table border="1" width="100%">
5065 <tr> 5051 <tr>
5083 </td> 5069 </td>
5084 </tr> 5070 </tr>
5085 </table> 5071 </table>
5086 5072
5087 <h4> 5073 <h4>
5088 <a name="R4422"></a>ORIGIN: SERVER 5074 <a name="S4422"></a>ORIGIN: SERVER;
5089 MESSAGE unknown4422</h4> 5075 MESSAGE: unknown4422</h4>
5090 NUMERIC TYPE (hex): 4422<p> 5076 NUMERIC TYPE (hex): 4422<p>
5091 change teacher? something to do with editing? 5077 change teacher? something to do with editing?
5092 </p> 5078 </p>
5093 <table border="1" width="100%"> 5079 <table border="1" width="100%">
5094 <tr> 5080 <tr>
5138 </td> 5124 </td>
5139 </tr> 5125 </tr>
5140 </table> 5126 </table>
5141 5127
5142 <h4> 5128 <h4>
5143 <a name="R4428"></a>ORIGIN: SERVER 5129 <a name="S4428"></a>ORIGIN: SERVER;
5144 MESSAGE add_tree</h4> 5130 MESSAGE: add_tree</h4>
5145 NUMERIC TYPE (hex): 4428<p> 5131 NUMERIC TYPE (hex): 4428<p>
5146 <p>See <a href="#R4405">set_tree(4405)</a>. In addition, flags the tree as being 5132 <p>See <a href="#S4405">set_tree(4405)</a>. In addition, flags the tree as being
5147 uploaded completely.</p> 5133 uploaded completely.</p>
5148 </p> 5134 </p>
5149 <table border="1" width="100%"> 5135 <table border="1" width="100%">
5150 <tr> 5136 <tr>
5151 <th width="10%">NAME</th> 5137 <th width="10%">NAME</th>
5181 </td> 5167 </td>
5182 </tr> 5168 </tr>
5183 </table> 5169 </table>
5184 5170
5185 <h4> 5171 <h4>
5186 <a name="R4433"></a>ORIGIN: SERVER 5172 <a name="S4433"></a>ORIGIN: SERVER;
5187 MESSAGE req_result</h4> 5173 MESSAGE: req_result</h4>
5188 NUMERIC TYPE (hex): 4433<p> 5174 NUMERIC TYPE (hex): 4433<p>
5189 Unclear. 5175 Unclear.
5190 </p> 5176 </p>
5191 <table border="1" width="100%"> 5177 <table border="1" width="100%">
5192 <tr> 5178 <tr>
5211 </td> 5197 </td>
5212 </tr> 5198 </tr>
5213 </table> 5199 </table>
5214 5200
5215 <h4> 5201 <h4>
5216 <a name="R4434"></a>ORIGIN: SERVER 5202 <a name="S4434"></a>ORIGIN: SERVER;
5217 MESSAGE unknown4434</h4> 5203 MESSAGE: unknown4434</h4>
5218 NUMERIC TYPE (hex): 4434<p> 5204 NUMERIC TYPE (hex): 4434<p>
5219 </p> 5205 </p>
5220 <table border="1" width="100%"> 5206 <table border="1" width="100%">
5221 <tr> 5207 <tr>
5222 <th width="10%">NAME</th> 5208 <th width="10%">NAME</th>

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines