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.39 by pcg, Sat Aug 16 16:17:52 2003 UTC vs.
Revision 1.40 by pcg, Sat Aug 16 21:39:37 2003 UTC

20 Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 20 Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
21--> 21-->
22</head> 22</head>
23<body> 23<body>
24 24
25<h1>$Revision: 1.39 $</h1> 25<h1>$Revision: 1.40 $</h1>
26 26
27<h1>KGS Protocol Description</h1> 27<h1>KGS Protocol Description</h1>
28 28
29 <p>This XML document describes the KGS protocol. It is also used 29 <p>This XML document describes the KGS protocol. It is also used
30 to automatically generate the perl parser for all the messages and 30 to automatically generate the perl parser for all the messages and
183 183
184 <h4>TYPE flag</h4> 184 <h4>TYPE flag</h4>
185 BASE TYPE U8, LENGTH , MULTIPLIER 1<br /> 185 BASE TYPE U8, LENGTH , MULTIPLIER 1<br />
186 186
187 <p>Just a simple boolean value. 0 means false, and 1 generally true, 187 <p>Just a simple boolean value. 0 means false, and 1 generally true,
188 but I suggest ccepting != 0 as true.</p> 188 but I suggest accepting != 0 as true.</p>
189 189
190 <h4>TYPE komi16</h4> 190 <h4>TYPE komi16</h4>
191 BASE TYPE I16, LENGTH , MULTIPLIER 2<br /> 191 BASE TYPE I16, LENGTH , MULTIPLIER 2<br />
192 <h4>TYPE komi32</h4> 192 <h4>TYPE komi32</h4>
193 BASE TYPE I32, LENGTH , MULTIPLIER 2<br /> 193 BASE TYPE I32, LENGTH , MULTIPLIER 2<br />
434   434  
435 </td> 435 </td>
436 </tr> 436 </tr>
437 </table> 437 </table>
438 438
439 <h4>set: ROOMFLAG</h4>
440 <p>
441 </p>
442 <table border="1" width="100%">
443 <tr>
444 <th width="10%">NAME</th>
445 <th width="8%">TYPE</th>
446 <th width="4%">VALUE</th>
447 <th>DESCRIPTION</th>
448 <th width="10%">GUARD</th>
449 </tr>
450 <tr>
451 <td>ADMIN</td>
452 <td></td>
453 <td>0x01 </td>
454 <td>
455
456  
457 </td>
458 <td>
459 <b></b>
460  
461 </td>
462 </tr>
463 <tr>
464 <td>DEFAULT</td>
465 <td></td>
466 <td>0x04 </td>
467 <td>
468
469  
470 </td>
471 <td>
472 <b></b>
473  
474 </td>
475 </tr>
476 <tr>
477 <td>PRIVATE</td>
478 <td></td>
479 <td>0x10 </td>
480 <td>
481
482  
483 </td>
484 <td>
485 <b></b>
486  
487 </td>
488 </tr>
489 </table>
490
491 <h4>set: GAMESTATUS</h4>
492 <p>
493 </p>
494 <table border="1" width="100%">
495 <tr>
496 <th width="10%">NAME</th>
497 <th width="8%">TYPE</th>
498 <th width="4%">VALUE</th>
499 <th>DESCRIPTION</th>
500 <th width="10%">GUARD</th>
501 </tr>
502 <tr>
503 <td>INPLAY</td>
504 <td></td>
505 <td>0x80 </td>
506 <td>
507
508  
509 </td>
510 <td>
511 <b></b>
512  
513 </td>
514 </tr>
515 </table>
516
439 <h4>enum: SCORE</h4> 517 <h4>enum: SCORE</h4>
440 <p> 518 <p>
441 <p>Special score values, in addition to numerical scores. Some are also used with their 519 <p>Special score values, in addition to numerical scores. Some are also used with their
442 negative value.</p> 520 negative value.</p>
443 </p> 521 </p>
723 801
724 <h4>STRUCTURE user</h4> 802 <h4>STRUCTURE user</h4>
725 CLASS: KGS::User<br /> 803 CLASS: KGS::User<br />
726 <p> 804 <p>
727 805
728 <p>Everywhere a user + flags is required, even used in some places 806 <p>Almost everywhere a user + flags is required, even used in some places
729 where only a username is required. I see no general rule on when a 807 where only a username is required. I see no general rule on when a
730 complete user and when a partial user is required.</p> 808 complete user and when a partial user is required.</p>
731 </p> 809 </p>
732 <table border="1" width="100%"> 810 <table border="1" width="100%">
733 <tr> 811 <tr>
904 <a href="#S0003">login(0003)</a> 982 <a href="#S0003">login(0003)</a>
905 <a href="#S0004">login(0004)</a> 983 <a href="#S0004">login(0004)</a>
906 <a href="#S0005">login(0005)</a> 984 <a href="#S0005">login(0005)</a>
907 <a href="#S0006">login(0006)</a> 985 <a href="#S0006">login(0006)</a>
908 <a href="#S0018">login(0018)</a> 986 <a href="#S0018">login(0018)</a>
987 <a href="#S001c">login(001c)</a>
909 <a href="#S0022">login(0022)</a>. Followed by: <a href="#S001b">timewarning_default(001b)</a> <a href="#S0411">chal_defaults(0411)</a> 988 <a href="#S0022">login(0022)</a>. Followed by: <a href="#S001b">timewarning_default(001b)</a> <a href="#S0411">chal_defaults(0411)</a>
910 </p> 989 </p>
911 </p> 990 </p>
912 <table border="1" width="100%"> 991 <table border="1" width="100%">
913 <tr> 992 <tr>
1731 <tr> 1810 <tr>
1732 <td>flags</td> 1811 <td>flags</td>
1733 <td>U8</td> 1812 <td>U8</td>
1734 <td> </td> 1813 <td> </td>
1735 <td> 1814 <td>
1736 0x10 .. private room etc.. see code 1815 See ROOMFLAGs
1737 1816
1738   1817  
1739 </td> 1818 </td>
1740 <td> 1819 <td>
1741 <b></b> 1820 <b></b>
2628 </tr> 2707 </tr>
2629 </table> 2708 </table>
2630 2709
2631 <h4> 2710 <h4>
2632 <a name="C4422"></a>ORIGIN: CLIENT; 2711 <a name="C4422"></a>ORIGIN: CLIENT;
2633 MESSAGE: add_user</h4> 2712 MESSAGE: allow_user</h4>
2634 NUMERIC TYPE (hex): 4422<p> 2713 NUMERIC TYPE (hex): 4422<p>
2635 Unclear. Maybe allow users to talk? No idea, really. 2714 Unclear. Maybe allow users to talk? No idea, really.
2636 2715
2637 </p> 2716 </p>
2638 <table border="1" width="100%"> 2717 <table border="1" width="100%">
3534 <tr> 3613 <tr>
3535 <td>type</td> 3614 <td>type</td>
3536 <td>U8</td> 3615 <td>U8</td>
3537 <td> </td> 3616 <td> </td>
3538 <td> 3617 <td>
3539 High four bits are handicap, low four bits are gametype (encoded strangely? unclear).
3540 3618
3541   3619  
3542 </td> 3620 </td>
3543 <td> 3621 <td>
3544 <b></b> 3622 <b></b>
3647 <th width="4%">VALUE</th> 3725 <th width="4%">VALUE</th>
3648 <th>DESCRIPTION</th> 3726 <th>DESCRIPTION</th>
3649 <th width="10%">GUARD</th> 3727 <th width="10%">GUARD</th>
3650 </tr> 3728 </tr>
3651 <tr> 3729 <tr>
3652 <td>result</td> 3730 <td>message</td>
3653 <td>CONSTANT</td> 3731 <td>CONSTANT</td>
3654 <td>"login ok" </td> 3732 <td>login successful </td>
3655 <td> 3733 <td>
3656 3734
3657   3735  
3658 </td> 3736 </td>
3659 <td> 3737 <td>
3692 <th width="4%">VALUE</th> 3770 <th width="4%">VALUE</th>
3693 <th>DESCRIPTION</th> 3771 <th>DESCRIPTION</th>
3694 <th width="10%">GUARD</th> 3772 <th width="10%">GUARD</th>
3695 </tr> 3773 </tr>
3696 <tr> 3774 <tr>
3697 <td>result</td> 3775 <td>message</td>
3698 <td>CONSTANT</td> 3776 <td>CONSTANT</td>
3699 <td>"guest login ok" </td> 3777 <td>login successful: client version is outdated. </td>
3700 <td> 3778 <td>
3701 3779
3702   3780  
3703 </td> 3781 </td>
3704 <td> 3782 <td>
3737 <th width="4%">VALUE</th> 3815 <th width="4%">VALUE</th>
3738 <th>DESCRIPTION</th> 3816 <th>DESCRIPTION</th>
3739 <th width="10%">GUARD</th> 3817 <th width="10%">GUARD</th>
3740 </tr> 3818 </tr>
3741 <tr> 3819 <tr>
3742 <td>result</td> 3820 <td>message</td>
3743 <td>CONSTANT</td> 3821 <td>CONSTANT</td>
3744 <td>"login error 3" </td> 3822 <td>login failed: client version out of date </td>
3745 <td> 3823 <td>
3746 ** maybe more following? ** 3824 ** maybe more following? **
3747 3825
3748   3826  
3749 </td> 3827 </td>
3770 <th width="4%">VALUE</th> 3848 <th width="4%">VALUE</th>
3771 <th>DESCRIPTION</th> 3849 <th>DESCRIPTION</th>
3772 <th width="10%">GUARD</th> 3850 <th width="10%">GUARD</th>
3773 </tr> 3851 </tr>
3774 <tr> 3852 <tr>
3775 <td>result</td> 3853 <td>message</td>
3776 <td>CONSTANT</td> 3854 <td>CONSTANT</td>
3777 <td>"wrong password" </td> 3855 <td>login failed: wrong password </td>
3778 <td> 3856 <td>
3779 ** maybe more following? ** 3857 ** maybe more following? **
3780 3858
3781   3859  
3782 </td> 3860 </td>
3803 <th width="4%">VALUE</th> 3881 <th width="4%">VALUE</th>
3804 <th>DESCRIPTION</th> 3882 <th>DESCRIPTION</th>
3805 <th width="10%">GUARD</th> 3883 <th width="10%">GUARD</th>
3806 </tr> 3884 </tr>
3807 <tr> 3885 <tr>
3808 <td>result</td> 3886 <td>message</td>
3809 <td>CONSTANT</td> 3887 <td>CONSTANT</td>
3810 <td>"user unknown" </td> 3888 <td>login failed: specified user does not exist </td>
3811 <td> 3889 <td>
3812 ** maybe more following? **
3813 3890
3814   3891  
3815 </td> 3892 </td>
3816 <td> 3893 <td>
3817 <b></b> 3894 <b></b>
3836 <th width="4%">VALUE</th> 3913 <th width="4%">VALUE</th>
3837 <th>DESCRIPTION</th> 3914 <th>DESCRIPTION</th>
3838 <th width="10%">GUARD</th> 3915 <th width="10%">GUARD</th>
3839 </tr> 3916 </tr>
3840 <tr> 3917 <tr>
3841 <td>result</td> 3918 <td>message</td>
3842 <td>CONSTANT</td> 3919 <td>CONSTANT</td>
3843 <td>"user exists" </td> 3920 <td>login failed: registered user of same name exists </td>
3844 <td> 3921 <td>
3845 ** maybe more following? **
3846 3922
3847   3923  
3848 </td> 3924 </td>
3849 <td> 3925 <td>
3850 <b></b> 3926 <b></b>
3981 <td>timestamp</td> 4057 <td>timestamp</td>
3982 <td> </td> 4058 <td> </td>
3983 <td> 4059 <td>
3984 When the user logged in for the last time. 4060 When the user logged in for the last time.
3985 4061
4062  
4063 </td>
4064 <td>
4065 <b></b>
4066  
4067 </td>
4068 </tr>
4069 </table>
4070
4071 <h4>
4072 <a name="S0009"></a>ORIGIN: SERVER;
4073 MESSAGE: upd_userinfo_result</h4>
4074 NUMERIC TYPE (hex): 0009<p>
4075 </p>
4076 <table border="1" width="100%">
4077 <tr>
4078 <th width="10%">NAME</th>
4079 <th width="8%">TYPE</th>
4080 <th width="4%">VALUE</th>
4081 <th>DESCRIPTION</th>
4082 <th width="10%">GUARD</th>
4083 </tr>
4084 <tr>
4085 <td>name</td>
4086 <td>username</td>
4087 <td> </td>
4088 <td>
4089
4090  
4091 </td>
4092 <td>
4093 <b></b>
4094  
4095 </td>
4096 </tr>
4097 <tr>
4098 <td>message</td>
4099 <td>CONSTANT</td>
4100 <td>Thanks for registering. </td>
4101 <td>
4102
4103  
4104 </td>
4105 <td>
4106 <b></b>
4107  
4108 </td>
4109 </tr>
4110 </table>
4111
4112 <h4>
4113 <a name="S000a"></a>ORIGIN: SERVER;
4114 MESSAGE: upd_userinfo_result</h4>
4115 NUMERIC TYPE (hex): 000a<p>
4116 </p>
4117 <table border="1" width="100%">
4118 <tr>
4119 <th width="10%">NAME</th>
4120 <th width="8%">TYPE</th>
4121 <th width="4%">VALUE</th>
4122 <th>DESCRIPTION</th>
4123 <th width="10%">GUARD</th>
4124 </tr>
4125 <tr>
4126 <td>name</td>
4127 <td>username</td>
4128 <td> </td>
4129 <td>
4130
4131  
4132 </td>
4133 <td>
4134 <b></b>
4135  
4136 </td>
4137 </tr>
4138 <tr>
4139 <td>message</td>
4140 <td>CONSTANT</td>
4141 <td>The user "%s" has been successfully updated. </td>
4142 <td>
4143
4144  
4145 </td>
4146 <td>
4147 <b></b>
4148  
4149 </td>
4150 </tr>
4151 </table>
4152
4153 <h4>
4154 <a name="S000b"></a>ORIGIN: SERVER;
4155 MESSAGE: upd_userinfo_result</h4>
4156 NUMERIC TYPE (hex): 000b<p>
4157 </p>
4158 <table border="1" width="100%">
4159 <tr>
4160 <th width="10%">NAME</th>
4161 <th width="8%">TYPE</th>
4162 <th width="4%">VALUE</th>
4163 <th>DESCRIPTION</th>
4164 <th width="10%">GUARD</th>
4165 </tr>
4166 <tr>
4167 <td>name</td>
4168 <td>username</td>
4169 <td> </td>
4170 <td>
4171
4172  
4173 </td>
4174 <td>
4175 <b></b>
4176  
4177 </td>
4178 </tr>
4179 <tr>
4180 <td>message</td>
4181 <td>CONSTANT</td>
4182 <td>There is no user "%s". Update failed. </td>
4183 <td>
4184
4185  
4186 </td>
4187 <td>
4188 <b></b>
4189  
4190 </td>
4191 </tr>
4192 </table>
4193
4194 <h4>
4195 <a name="S0012"></a>ORIGIN: SERVER;
4196 MESSAGE: userinfo_failed</h4>
4197 NUMERIC TYPE (hex): 0012<p>
4198 <p>Sent when no userinfo for the requested user could be found(?)</p>
4199 </p>
4200 <table border="1" width="100%">
4201 <tr>
4202 <th width="10%">NAME</th>
4203 <th width="8%">TYPE</th>
4204 <th width="4%">VALUE</th>
4205 <th>DESCRIPTION</th>
4206 <th width="10%">GUARD</th>
4207 </tr>
4208 <tr>
4209 <td>name</td>
4210 <td>username</td>
4211 <td> </td>
4212 <td>
4213
3986   4214  
3987 </td> 4215 </td>
3988 <td> 4216 <td>
3989 <b></b> 4217 <b></b>
3990   4218  
4441 <th width="4%">VALUE</th> 4669 <th width="4%">VALUE</th>
4442 <th>DESCRIPTION</th> 4670 <th>DESCRIPTION</th>
4443 <th width="10%">GUARD</th> 4671 <th width="10%">GUARD</th>
4444 </tr> 4672 </tr>
4445 <tr> 4673 <tr>
4446 <td>result</td> 4674 <td>message</td>
4447 <td>CONSTANT</td> 4675 <td>CONSTANT</td>
4448 <td>"login error 18" </td> 4676 <td>logged out: another client logged in with your username </td>
4677 <td>
4678
4679  
4449 <td> 4680 </td>
4450 ** maybe more following? ** 4681 <td>
4682 <b></b>
4683  
4684 </td>
4685 </tr>
4686 </table>
4687
4688 <h4>
4689 <a name="S001c"></a>ORIGIN: SERVER;
4690 MESSAGE: login</h4>
4691 NUMERIC TYPE (hex): 001c
4692 (possibly in response to
4693 <a href="#C0000">login(0000)</a>
4694 )
4695 <p>
4696 </p>
4697 <table border="1" width="100%">
4698 <tr>
4699 <th width="10%">NAME</th>
4700 <th width="8%">TYPE</th>
4701 <th width="4%">VALUE</th>
4702 <th>DESCRIPTION</th>
4703 <th width="10%">GUARD</th>
4704 </tr>
4705 <tr>
4706 <td>message</td>
4707 <td>CONSTANT</td>
4708 <td>logged out: idle for too long </td>
4709 <td>
4710
4711  
4712 </td>
4713 <td>
4714 <b></b>
4715  
4716 </td>
4717 </tr>
4718 </table>
4719
4720 <h4>
4721 <a name="S0020"></a>ORIGIN: SERVER;
4722 MESSAGE: error</h4>
4723 NUMERIC TYPE (hex): 0020<p>
4724 </p>
4725 <table border="1" width="100%">
4726 <tr>
4727 <th width="10%">NAME</th>
4728 <th width="8%">TYPE</th>
4729 <th width="4%">VALUE</th>
4730 <th>DESCRIPTION</th>
4731 <th width="10%">GUARD</th>
4732 </tr>
4733 <tr>
4734 <td>message</td>
4735 <td>CONSTANT</td>
4736 <td>Sorry, you have too many unfinished games. You cannot turn on your rank. Please finish some of your games, then try again. </td>
4737 <td>
4451 4738
4452   4739  
4453 </td> 4740 </td>
4454 <td> 4741 <td>
4455 <b></b> 4742 <b></b>
4492 </td> 4779 </td>
4493 </tr> 4780 </tr>
4494 <tr> 4781 <tr>
4495 <td>result</td> 4782 <td>result</td>
4496 <td>CONSTANT</td> 4783 <td>CONSTANT</td>
4497 <td>"user or ip blocked" </td> 4784 <td>user or ip blocked </td>
4498 <td> 4785 <td>
4499 4786
4500   4787  
4501 </td> 4788 </td>
4502 <td> 4789 <td>
4974 </tr> 5261 </tr>
4975 </table> 5262 </table>
4976 5263
4977 <h4> 5264 <h4>
4978 <a name="S0412"></a>ORIGIN: SERVER; 5265 <a name="S0412"></a>ORIGIN: SERVER;
4979 MESSAGE: rej_game</h4> 5266 MESSAGE: game_error</h4>
4980 NUMERIC TYPE (hex): 0412<p> 5267 NUMERIC TYPE (hex): 0412<p>
4981 Unable to create challenge. The channel might be optional. 5268 Unable to create challenge. The channel is be optional.
5269 </p>
5270 <table border="1" width="100%">
4982 </p> 5271 <tr>
4983 <table border="1" width="100%"> 5272 <th width="10%">NAME</th>
5273 <th width="8%">TYPE</th>
5274 <th width="4%">VALUE</th>
5275 <th>DESCRIPTION</th>
5276 <th width="10%">GUARD</th>
4984 <tr> 5277 </tr>
4985 <th width="10%">NAME</th> 5278 <tr>
4986 <th width="8%">TYPE</th> 5279 <td>message</td>
4987 <th width="4%">VALUE</th> 5280 <td>CONSTANT</td>
4988 <th>DESCRIPTION</th> 5281 <td>Sorry, you are already playing in one game, so you can't start playing in another. </td>
4989 <th width="10%">GUARD</th> 5282 <td>
5283
5284  
5285 </td>
5286 <td>
5287 <b></b>
5288  
5289 </td>
4990 </tr> 5290 </tr>
4991 <tr> 5291 <tr>
4992 <td>channel</td> 5292 <td>channel</td>
4993 <td>U16</td> 5293 <td>U16</td>
4994 <td> </td> 5294 <td> </td>
5062 </td> 5362 </td>
5063 </tr> 5363 </tr>
5064 </table> 5364 </table>
5065 5365
5066 <h4> 5366 <h4>
5367 <a name="S0417"></a>ORIGIN: SERVER;
5368 MESSAGE: error</h4>
5369 NUMERIC TYPE (hex): 0417<p>
5370 </p>
5371 <table border="1" width="100%">
5372 <tr>
5373 <th width="10%">NAME</th>
5374 <th width="8%">TYPE</th>
5375 <th width="4%">VALUE</th>
5376 <th>DESCRIPTION</th>
5377 <th width="10%">GUARD</th>
5378 </tr>
5379 <tr>
5380 <td>message</td>
5381 <td>CONSTANT</td>
5382 <td>Sorry, your opponent is currently not logged in, so you can't resume this game. </td>
5383 <td>
5384
5385  
5386 </td>
5387 <td>
5388 <b></b>
5389  
5390 </td>
5391 </tr>
5392 </table>
5393
5394 <h4>
5395 <a name="S0418"></a>ORIGIN: SERVER;
5396 MESSAGE: error</h4>
5397 NUMERIC TYPE (hex): 0418<p>
5398 </p>
5399 <table border="1" width="100%">
5400 <tr>
5401 <th width="10%">NAME</th>
5402 <th width="8%">TYPE</th>
5403 <th width="4%">VALUE</th>
5404 <th>DESCRIPTION</th>
5405 <th width="10%">GUARD</th>
5406 </tr>
5407 <tr>
5408 <td>message</td>
5409 <td>CONSTANT</td>
5410 <td>Sorry, your opponent is already playing in a game, so you cannot continue this one. </td>
5411 <td>
5412
5413  
5414 </td>
5415 <td>
5416 <b></b>
5417  
5418 </td>
5419 </tr>
5420 </table>
5421
5422 <h4>
5423 <a name="S0419"></a>ORIGIN: SERVER;
5424 MESSAGE: error</h4>
5425 NUMERIC TYPE (hex): 0419<p>
5426 </p>
5427 <table border="1" width="100%">
5428 <tr>
5429 <th width="10%">NAME</th>
5430 <th width="8%">TYPE</th>
5431 <th width="4%">VALUE</th>
5432 <th>DESCRIPTION</th>
5433 <th width="10%">GUARD</th>
5434 </tr>
5435 <tr>
5436 <td>message</td>
5437 <td>CONSTANT</td>
5438 <td>Sorry, the server is out of boards! Please wait a few minutes and try to start a game again. </td>
5439 <td>
5440
5441  
5442 </td>
5443 <td>
5444 <b></b>
5445  
5446 </td>
5447 </tr>
5448 </table>
5449
5450 <h4>
5067 <a name="S041c"></a>ORIGIN: SERVER; 5451 <a name="S041c"></a>ORIGIN: SERVER;
5068 MESSAGE: upd_game2</h4> 5452 MESSAGE: upd_game2</h4>
5069 NUMERIC TYPE (hex): 041c<p> 5453 NUMERIC TYPE (hex): 041c<p>
5070 Unclear. 5454 Unclear.
5071 </p> 5455 </p>
5092 </tr> 5476 </tr>
5093 <tr> 5477 <tr>
5094 <td>game</td> 5478 <td>game</td>
5095 <td>game</td> 5479 <td>game</td>
5096 <td> </td> 5480 <td> </td>
5481 <td>
5482
5483  
5484 </td>
5485 <td>
5486 <b></b>
5487  
5488 </td>
5489 </tr>
5490 </table>
5491
5492 <h4>
5493 <a name="S041f"></a>ORIGIN: SERVER;
5494 MESSAGE: error</h4>
5495 NUMERIC TYPE (hex): 041f<p>
5496 </p>
5497 <table border="1" width="100%">
5498 <tr>
5499 <th width="10%">NAME</th>
5500 <th width="8%">TYPE</th>
5501 <th width="4%">VALUE</th>
5502 <th>DESCRIPTION</th>
5503 <th width="10%">GUARD</th>
5504 </tr>
5505 <tr>
5506 <td>message</td>
5507 <td>CONSTANT</td>
5508 <td>Sorry, the game you tried to load was not correctly saved...probably caused by the server crashing. It cannot be recovered. </td>
5509 <td>
5510
5511  
5512 </td>
5513 <td>
5514 <b></b>
5515  
5516 </td>
5517 </tr>
5518 </table>
5519
5520 <h4>
5521 <a name="S0420"></a>ORIGIN: SERVER;
5522 MESSAGE: error</h4>
5523 NUMERIC TYPE (hex): 0420<p>
5524 </p>
5525 <table border="1" width="100%">
5526 <tr>
5527 <th width="10%">NAME</th>
5528 <th width="8%">TYPE</th>
5529 <th width="4%">VALUE</th>
5530 <th>DESCRIPTION</th>
5531 <th width="10%">GUARD</th>
5532 </tr>
5533 <tr>
5534 <td>message</td>
5535 <td>CONSTANT</td>
5536 <td>Sorry, user "%s" has left the game you are starting before you could challenge them. You will have to play against somebody else. </td>
5537 <td>
5538
5539  
5540 </td>
5541 <td>
5542 <b></b>
5543  
5544 </td>
5545 </tr>
5546 </table>
5547
5548 <h4>
5549 <a name="S0421"></a>ORIGIN: SERVER;
5550 MESSAGE: error</h4>
5551 NUMERIC TYPE (hex): 0421<p>
5552 </p>
5553 <table border="1" width="100%">
5554 <tr>
5555 <th width="10%">NAME</th>
5556 <th width="8%">TYPE</th>
5557 <th width="4%">VALUE</th>
5558 <th>DESCRIPTION</th>
5559 <th width="10%">GUARD</th>
5560 </tr>
5561 <tr>
5562 <td>message</td>
5563 <td>CONSTANT</td>
5564 <td>Sorry, this game is a private lesson. You will not be allowed to observe it. </td>
5097 <td> 5565 <td>
5098 5566
5099   5567  
5100 </td> 5568 </td>
5101 <td> 5569 <td>
5802 </td> 6270 </td>
5803 </tr> 6271 </tr>
5804 </table> 6272 </table>
5805 6273
5806 <h4> 6274 <h4>
6275 <a name="S4415"></a>ORIGIN: SERVER;
6276 MESSAGE: game_error</h4>
6277 NUMERIC TYPE (hex): 4415<p>
6278 </p>
6279 <table border="1" width="100%">
6280 <tr>
6281 <th width="10%">NAME</th>
6282 <th width="8%">TYPE</th>
6283 <th width="4%">VALUE</th>
6284 <th>DESCRIPTION</th>
6285 <th width="10%">GUARD</th>
6286 </tr>
6287 <tr>
6288 <td>channel</td>
6289 <td>U16</td>
6290 <td> </td>
6291 <td>
6292
6293  
6294 </td>
6295 <td>
6296 <b></b>
6297  
6298 </td>
6299 </tr>
6300 <tr>
6301 <td>message</td>
6302 <td>CONSTANT</td>
6303 <td>Sorry, this is a lecture game. Only authorized players are allowed to make comments. </td>
6304 <td>
6305
6306  
6307 </td>
6308 <td>
6309 <b></b>
6310  
6311 </td>
6312 </tr>
6313 </table>
6314
6315 <h4>
5807 <a name="S441a"></a>ORIGIN: SERVER; 6316 <a name="S441a"></a>ORIGIN: SERVER;
5808 MESSAGE: set_teacher</h4> 6317 MESSAGE: set_teacher</h4>
5809 NUMERIC TYPE (hex): 441a<p> 6318 NUMERIC TYPE (hex): 441a<p>
5810 </p> 6319 </p>
5811 <table border="1" width="100%"> 6320 <table border="1" width="100%">
5846 6355
5847 <h4> 6356 <h4>
5848 <a name="S441d"></a>ORIGIN: SERVER; 6357 <a name="S441d"></a>ORIGIN: SERVER;
5849 MESSAGE: owner_left</h4> 6358 MESSAGE: owner_left</h4>
5850 NUMERIC TYPE (hex): 441d<p> 6359 NUMERIC TYPE (hex): 441d<p>
5851 Unclear.
5852 </p> 6360 </p>
5853 <table border="1" width="100%"> 6361 <table border="1" width="100%">
5854 <tr> 6362 <tr>
5855 <th width="10%">NAME</th> 6363 <th width="10%">NAME</th>
5856 <th width="8%">TYPE</th> 6364 <th width="8%">TYPE</th>
5860 </tr> 6368 </tr>
5861 <tr> 6369 <tr>
5862 <td>channel</td> 6370 <td>channel</td>
5863 <td>U16</td> 6371 <td>U16</td>
5864 <td> </td> 6372 <td> </td>
6373 <td>
6374
6375  
6376 </td>
6377 <td>
6378 <b></b>
6379  
6380 </td>
6381 </tr>
6382 <tr>
6383 <td>message</td>
6384 <td>CONSTANT</td>
6385 <td>Sorry, the owner of this game has left. Nobody will be allowed to edit it until the owner returns. </td>
5865 <td> 6386 <td>
5866 6387
5867   6388  
5868 </td> 6389 </td>
5869 <td> 6390 <td>
5902 </tr> 6423 </tr>
5903 </table> 6424 </table>
5904 6425
5905 <h4> 6426 <h4>
5906 <a name="S4422"></a>ORIGIN: SERVER; 6427 <a name="S4422"></a>ORIGIN: SERVER;
5907 MESSAGE: unknown4422</h4> 6428 MESSAGE: allow_user_result</h4>
5908 NUMERIC TYPE (hex): 4422<p> 6429 NUMERIC TYPE (hex): 4422<p>
5909 change teacher? something to do with editing? 6430 </p>
6431 <table border="1" width="100%">
5910 </p> 6432 <tr>
5911 <table border="1" width="100%"> 6433 <th width="10%">NAME</th>
6434 <th width="8%">TYPE</th>
6435 <th width="4%">VALUE</th>
6436 <th>DESCRIPTION</th>
6437 <th width="10%">GUARD</th>
5912 <tr> 6438 </tr>
5913 <th width="10%">NAME</th> 6439 <tr>
5914 <th width="8%">TYPE</th> 6440 <td>message</td>
5915 <th width="4%">VALUE</th> 6441 <td>CONSTANT</td>
5916 <th>DESCRIPTION</th> 6442 <td>User "%s" will now be allowed full access to your game. </td>
5917 <th width="10%">GUARD</th> 6443 <td>
6444
6445  
6446 </td>
6447 <td>
6448 <b></b>
6449  
6450 </td>
5918 </tr> 6451 </tr>
5919 <tr> 6452 <tr>
5920 <td>channel</td> 6453 <td>channel</td>
5921 <td>U16</td> 6454 <td>U16</td>
5922 <td> </td> 6455 <td> </td>
5923 <td> 6456 <td>
5924 6457
5925   6458  
5926 </td>
5927 <td> 6459 </td>
5928 <b></b>
5929  
5930 </td> 6460 <td>
6461 <b></b>
6462  
5931 </tr> 6463 </td>
5932 <tr> 6464 </tr>
5933 <td>name1</td> 6465 </table>
5934 <td>username</td> 6466
5935 <td> </td> 6467 <h4>
5936 <td> 6468 <a name="S4424"></a>ORIGIN: SERVER;
5937 6469 MESSAGE: allow_user_result</h4>
5938   6470 NUMERIC TYPE (hex): 4424<p>
5939 </td> 6471 </p>
5940 <td> 6472 <table border="1" width="100%">
5941 <b></b>
5942  
5943 </td>
5944 </tr> 6473 <tr>
6474 <th width="10%">NAME</th>
6475 <th width="8%">TYPE</th>
6476 <th width="4%">VALUE</th>
6477 <th>DESCRIPTION</th>
6478 <th width="10%">GUARD</th>
5945 <tr> 6479 </tr>
6480 <tr>
6481 <td>message</td>
6482 <td>CONSTANT</td>
6483 <td>Sorry, user "%s" is a guest and cannot be allowed full access to your game. </td>
6484 <td>
6485
6486  
6487 </td>
6488 <td>
6489 <b></b>
6490  
6491 </td>
6492 </tr>
6493 <tr>
6494 <td>channel</td>
6495 <td>U16</td>
5946 <td>name2</td> 6496 <td> </td>
6497 <td>
6498
6499  
6500 </td>
6501 <td>
6502 <b></b>
6503  
6504 </td>
6505 </tr>
6506 </table>
6507
6508 <h4>
6509 <a name="S4425"></a>ORIGIN: SERVER;
6510 MESSAGE: allow_user_result</h4>
6511 NUMERIC TYPE (hex): 4425<p>
6512 </p>
6513 <table border="1" width="100%">
6514 <tr>
6515 <th width="10%">NAME</th>
6516 <th width="8%">TYPE</th>
6517 <th width="4%">VALUE</th>
6518 <th>DESCRIPTION</th>
6519 <th width="10%">GUARD</th>
6520 </tr>
6521 <tr>
5947 <td>username</td> 6522 <td>message</td>
6523 <td>CONSTANT</td>
6524 <td>Sorry, user "%s" does not seem to exist and cannot be allowed into your game. </td>
6525 <td>
6526
6527  
6528 </td>
6529 <td>
6530 <b></b>
6531  
6532 </td>
6533 </tr>
6534 <tr>
6535 <td>channel</td>
6536 <td>U16</td>
5948 <td> </td> 6537 <td> </td>
5949 <td> 6538 <td>
5950 6539
5951   6540  
5952 </td> 6541 </td>
5999 </td> 6588 </td>
6000 </tr> 6589 </tr>
6001 </table> 6590 </table>
6002 6591
6003 <h4> 6592 <h4>
6593 <a name="S4429"></a>ORIGIN: SERVER;
6594 MESSAGE: reject_challenge</h4>
6595 NUMERIC TYPE (hex): 4429<p>
6596 Reject a challenge by a given user. Not checked.
6597
6598 </p>
6599 <table border="1" width="100%">
6600 <tr>
6601 <th width="10%">NAME</th>
6602 <th width="8%">TYPE</th>
6603 <th width="4%">VALUE</th>
6604 <th>DESCRIPTION</th>
6605 <th width="10%">GUARD</th>
6606 </tr>
6607 <tr>
6608 <td>channel</td>
6609 <td>U16</td>
6610 <td> </td>
6611 <td>
6612
6613  
6614 </td>
6615 <td>
6616 <b></b>
6617  
6618 </td>
6619 </tr>
6620 <tr>
6621 <td>name</td>
6622 <td>username</td>
6623 <td> </td>
6624 <td>
6625
6626  
6627 </td>
6628 <td>
6629 <b></b>
6630  
6631 </td>
6632 </tr>
6633 </table>
6634
6635 <h4>
6004 <a name="S4433"></a>ORIGIN: SERVER; 6636 <a name="S4433"></a>ORIGIN: SERVER;
6005 MESSAGE: req_result</h4> 6637 MESSAGE: req_result</h4>
6006 NUMERIC TYPE (hex): 4433<p> 6638 NUMERIC TYPE (hex): 4433<p>
6007 Unclear. 6639 Unclear.
6008 </p> 6640 </p>

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines