Docs: coop

This commit is contained in:
Fabian Dill 2021-10-21 23:07:39 +02:00
parent 1c2c1f286f
commit 192e592cda
1 changed files with 14 additions and 2 deletions

View File

@ -129,15 +129,18 @@ Sent to clients to acknowledge a received [LocationScouts](#LocationScouts) pack
### RoomUpdate ### RoomUpdate
Sent when there is a need to update information about the present game session. Generally useful for async games. Sent when there is a need to update information about the present game session. Generally useful for async games.
Once authenticated (received Connected), this may also contain data from Connected.
#### Arguments #### Arguments
The arguments for RoomUpdate are identical to [RoomInfo](#RoomInfo) barring two: The arguments for RoomUpdate are identical to [RoomInfo](#RoomInfo) barring:
| Name | Type | Notes | | Name | Type | Notes |
| ---- | ---- | ----- | | ---- | ---- | ----- |
| hint_points | int | New argument. The client's current hint points. | | hint_points | int | New argument. The client's current hint points. |
| players | list\[NetworkPlayer\] | Changed argument. Always sends all players, whether connected or not. | | players | list\[NetworkPlayer\] | Changed argument. Always sends all players, whether connected or not. |
| checked_locations | May be a partial update, containing new locations that were checked. |
| missing_locations | Should never be sent as an update, if needed is the inverse of checked_locations. |
All arguments for this packet are optional. All arguments for this packet are optional, only changes are sent.
### Print ### Print
Sent to clients purely to display a message to the player. Sent to clients purely to display a message to the player.
@ -260,6 +263,15 @@ the server will forward the message to all those targets to which any one requir
## Appendix ## Appendix
### Coop
Coop in Archipelago is automatically facilitated by the server, however some of the default behaviour may not be what you desire.
If the game in question is a remote-items game (attribute on AutoWorld), then all items will always be sent and received.
If the game in question is not a remote-items game, then any items that are placed within the same world will not be send by the server.
To manually react to others in the same player slot doing checks, listen to [RoomUpdate](#RoomUpdate) -> checked_locations.
### NetworkPlayer ### NetworkPlayer
A list of objects. Each object denotes one player. Each object has four fields about the player, in this order: `team`, `slot`, `alias`, and `name`. `team` and `slot` are ints, `alias` and `name` are strs. A list of objects. Each object denotes one player. Each object has four fields about the player, in this order: `team`, `slot`, `alias`, and `name`. `team` and `slot` are ints, `alias` and `name` are strs.