Difference between revisions of "MultiplayerServerWML"
From The Battle for Wesnoth Wiki
m (→The login procedure) |
m (→Updating the lobby state) |
||
Line 53: | Line 53: | ||
* server message - basically a diff from two [gamelist]s | * server message - basically a diff from two [gamelist]s | ||
− | ** '''[gamelist_diff]''' | + | ** '''[gamelist_diff]''' |
*** ''index'' The index of a user (or game?). | *** ''index'' The index of a user (or game?). | ||
*** '''[insert_child]''' or '''[delete_child]''' A new user (or game?) is added. | *** '''[insert_child]''' or '''[delete_child]''' A new user (or game?) is added. | ||
Line 59: | Line 59: | ||
***** ''name'' The name of the user. | ***** ''name'' The name of the user. | ||
**** '''[gamelist]''' (?) | **** '''[gamelist]''' (?) | ||
− | *** '''[change_child]''' | + | *** '''[change_child]''' |
**** '''[user]''' (repeated?) | **** '''[user]''' (repeated?) | ||
***** '''[insert]''' or '''[delete]''' Same keys as above | ***** '''[insert]''' or '''[delete]''' Same keys as above | ||
Line 66: | Line 66: | ||
**** '''[gamelist]''' | **** '''[gamelist]''' | ||
***** ''index'' Index of the game in question. | ***** ''index'' Index of the game in question. | ||
− | ***** '''[insert_child]''' or '''[delete_child]''' or '''[change_child]''' | + | ***** '''[insert_child]''' or '''[delete_child]''' or '''[change_child]''' |
****** '''[game]''' Same keys as above possible | ****** '''[game]''' Same keys as above possible | ||
Revision as of 06:13, 20 July 2007
Contents
Multiplayer Server WML
This page describes the WML used to communicate with the multiplayer server (wesnothd).
The login procedure
- server request (optional)
- [version]
- client response
- [version]
- version The client's version string.
- [version]
- server request
- [mustlogin]
- client response
- [login]
- username The username the client would like to have.
- [login]
- server response
- [join_lobby]
- server response
- [gamelist]
- [game] (repeated)
- mp_use_map_settings Does the game use the map settings specified in the scenario.
- mp_fog Does the game use fog.
- mp_shroud Does the game use shroud.
- mp_countdown Does the game use a timer.
- observer Are observers allowed or not.
- map_data The map data.
- experience_modifier The experience setting.
- turn The current turn/max turn.
- id The id of the game.
- mp_countdown_reservoir_time
- mp_village_gold The number of gold per village.
- mp_countdown_init_time
- mp_era The id of the used era.
- mp_countdown_action_bonus
- mp_countdown_turn_bonus
- name The title of the game.
- human_sides The number of sides played by humans.
- hash The hash value of the map_data.
- mp_scenario The id of the scenario.
- slots The number of vacant/max slots.
- [game] (repeated)
- [user] (repeated)
- name The username of the player.
- location The name of the game the player is in.
- available "yes" if the player is in the lobby; "no" if in a game.
- [gamelist]
Many of the keys under [game] are described more indepth on the ScenarioWML page.
Updating the lobby state
- server message - basically a diff from two [gamelist]s
- [gamelist_diff]
- index The index of a user (or game?).
- [insert_child] or [delete_child] A new user (or game?) is added.
- [user]
- name The name of the user.
- [gamelist] (?)
- [user]
- [change_child]
- [user] (repeated?)
- [insert] or [delete] Same keys as above
- available "yes" when the user left a game. "no" when the user joined a game
- location The name of the game the user joined or 'x' when a game was left.
- [insert] or [delete] Same keys as above
- [gamelist]
- index Index of the game in question.
- [insert_child] or [delete_child] or [change_child]
- [game] Same keys as above possible
- [user] (repeated?)
- [gamelist_diff]
- server message - players joining([observer_quit])/quitting([observer] a game
- [observer] or [observer_quit]
- name Username of the player/observer.
- [observer] or [observer_quit]
Game creation
To create a game the client sends:
- [create_game]
- name The title of the game.
- human_sides The number of sides played by humans.
followed by a message with the scenario options as under [game] (see above) plus the scenario data ([time], [era], [side], etc. see ScenarioWML)
- [join]
- id The id of the game.
- observe Join the game as an observer.
- [leave_game]
Error messages
- [error]
- message The error message.
Lobby chat
- server message
- [message]
- sender The sender of the message.
- message The message itself.
- [whisper]
- receiver The receiver of the whisper
- sender The sender of the whisper.
- message The message itself.
- [message]
- client message
- [message]
- sender (optional) The sender of the message.
- message The message itself.
- [whisper]
- receiver The receiver of the whisper
- sender (optional) The sender of the whisper.
- message The message itself.
- [message]
Administrative commands
- [query]
- type The type of query. See ServerAdministration for details.