- summary: A monster group linked into a chat line: where it stands, who leads it and what it holds.
- area: Game.Chat
A monster group linked into a chat line: where it stands, who leads it and what it holds.
Kind struct · Area Game.Chat
One monster group a player dropped into a chat line (right-click a group on the map,
then "insert link"). The line's words stay in the message's content; this record
rides in Metadata.monster_groups beside it.
TO SHOW A RECEIVED LINK
1. Read MonsterGroup.coordinates and MonsterGroup.world_map_id: the map
position the link points at. The client builds a "localize" link from them.
2. Read MonsterGroup.leader_id (the monster shown as the group's leader) and
MonsterGroup.group_infos (the group's make-up as text). The client builds a
"show in bestiary" link from them, with MonsterGroup.waves_count and
MonsterGroup.scale_mode.
3. MonsterGroup.group_id identifies the group itself; both links carry it.
TO SEND ONE
1. Fill every member from the group on your map, as above.
2. Add the record to Metadata.monster_groups of the chat request, beside the
text. One record per linked group.
Not sent on its own — it only travels inside Metadata.monster_groups, attached to a chat message. inferred
Used by
Fields
| # | Field | Type | Meaning | You set it |
|---|---|---|---|---|
| 1 | waves_count | int32 | How many waves the group fights in. Named after the wavesCount parameter of both link builders. | required |
| 2 | coordinates | MapCoordinates | Where the group stands on the world map. The client passes its two numbers as x and y of the localize link; read them as MapCoordinates.world_x / MapCoordinates.world_y. | required |
| 3 | world_map_id | int32 | The world map the coordinates belong to. Named after the localize link's worldMapId parameter. When sending, the client takes it from the group's sub-area (SubAreaData.worldmapId). | required |
| 4 | group_id | int64 | The group itself: its actor id on the map. Named after the groupId parameter; both link builders also make a network link from it alone (CreateLinkForNetwork(groupId)). | required |
| 5 | scale_mode | int32 | A display option of the links; the client only tests whether it is non-zero. Named after the scaleMode parameter of both link builders (default 0). Proven by native code only: it is passed on the stack, which Cpp2IL's ISIL prints out of order. | required |
| 6 | group_infos | string | The group's make-up, as text. Named after the groupInfos parameter. The bestiary link parses it into a set of ids when clicked; send it exactly as you received it. | required |
| 8 | leader_id | int32 | The monster shown as the group's leader. (monster id) Named after the leaderId parameter of both link builders. | required |