doc/protocol.txt
author unc0rr
Thu, 01 Nov 2012 14:31:53 +0400
branch0.9.18
changeset 7916 be11c26a3a0b
parent 2497 29678306d4fb
child 8240 ee39403a1d27
permissions -rw-r--r--
Fix 0.9.18 desync: CreateNetGame() slot creates signal-slot connections from hwnet to hwgame. The problem is that this slot is called asynchronously using queued connection, and hwnet could send some signals to hwgame before hwgame object is created and connected. Changed this to direct connection. Also changed connections to hwgame object to queued, but this is unrelated. Sorry, it is frontend patch. Maybe a little delay on server side could help, but not much, as tcp packets could get glued on client's side, and that greately depends on pc and internet connection performance. Frontend should be reworked to be safe for queued connections, as it is extemely dangerous to have a mix of queued/direct connections.

	'?'             ping?
	'!'             pong!
	'l','L'         срабатывание команд     -left, +left
	'r','R'                                 -right, +right
	'u','U'                                 -up, +up
	'd','D'                                 -down, +down
	'z', 'Z'                                -precise, +precise
	'N'             срабатывание команды /nextturn
	'S'                                  /switch
	's' + <текст>   /say
	'+'             пустой пакет для постоянности лага
	'1'..'5'        /timer 1..5
	chr(128+№)     /slot №
	'w'             /setweap
	'p'             /put
	'j'             /ljump
	'J'             /hjump
	'E' + <текст>   сообщение об ошибке
	','             /skip
	'K'             вывести сообщение из KB
	'Q'             выход через команду /quit
	'q'             выход по причине окончания игры
	't' + №        /taunt №
	'F' + <team>    команда team вылетела в сетевой игре

фронтенд клиенту:
	'e' + <команда> выполнить "/<команда>"
	'T' + {L,N,D}   тип игры (локальная, сетевая, просмотр демо)
	'W' + <текст>   сообщение о нефатальной ошибке

Клиент фронтенду:
	'C'             запрос текущего конфига игры
	'q'             выход по причине окончания демки
	'i'             статистика