Open-source multiplayer game server compatible with the RuneScape client
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
openrs2/share/doc/protocol/world-list.md

67 lines
2.4 KiB

# World list
## Downstream
| Opcode | Length | Jagex name | Description |
|-------:|---------------:|------------|-------------|
| 0 | Variable short | Unknown | World list |
### 0 (World list)
| Data type | Description |
|--------------|--------------------|
| UnsignedByte | Version, must be 1 |
| Boolean | Worlds updated |
The following fields are only present if the worlds updated flag is set:
| Data type | Description |
|--------------------|-------------------------|
| UnsignedShortSmart | Number of countries (n) |
| Country\[n\] | Countries (see below) |
| UnsignedShortSmart | Minimum world ID |
| UnsignedShortSmart | Maximum world ID |
| UnsignedShortSmart | Number of worlds (o) |
| World\[o\] | Worlds (see below) |
| Int | Checksum |
The following fields are always present:
| Data type | Description |
|--------------------|---------------------------|
| PlayerCount\[o\] | Player counts (see below) |
#### Country
| Data type | Description |
|--------------------|-------------|
| UnsignedShortSmart | ID |
| VersionedString | Name |
#### World
| Data type | Description |
|--------------------|----------------------------------------------|
| UnsignedShortSmart | Offset (world ID minus the minimum world ID) |
| UnsignedByte | Country index (in the list in the packet) |
| Int | Flags (see below) |
| VersionedString | Activity |
| VersionedString | Hostname |
##### Flags
| Flag | Jagex name | Description |
|-----:|---------------------|--------------------|
| 0x1 | `MEMBERS` | Members only |
| 0x2 | `QUICKCHAT` | Quick chat |
| 0x4 | `PVPWORLD` | PvP |
| 0x8 | `LOOTSHARE` | Loot share |
| 0x10 | `DEDICATEDACTIVITY` | Dedicated activity |
### Player count
| Data type | Description |
|--------------------|----------------------------------------------|
| UnsignedShortSmart | Offset (world ID minus the minimum world ID) |
| UnsignedShort | Players (-1 indicates the world is offline) |