Astral Realms Documentation Help

AstralCore Actions

AstralTown registers 22 actions into AstralCore's global action registry. Every action is usable in any menu, dialog, or filter actions: list — the IDs below match the strings you write in [brackets].

Arguments are placeholders resolved at runtime. For example [select-town] %town_id% resolves %town_id% against the current placeholder context before the action runs.

Player

select-town

- "[select-town] %town_id%"

Sets the viewer's selected town. Fires TownSelectEvent.

toggle-town-chat

- "[toggle-town-chat]"

Toggles TownPlayerData.chatEnabled. Confirmation: CHAT_ENABLED/CHAT_DISABLED.

toggle-town-members-notification

- "[toggle-town-members-notification]"

Toggles network-wide member-join pings. Confirmation: MEMBER_JOIN_NETWORK_ENABLED/MEMBER_JOIN_NETWORK_DISABLED.

Town

toggle-town-settings

- "[toggle-town-settings] %town_id% %setting_id%"

Flips a single TownSettings flag. Permission: SETTINGS_CHANGE.

update-town-settings

- "[update-town-settings] %town_id% %settings_diff%"

Bulk write — used after a player has staged several toggles in a menu and clicks save. Permission: SETTINGS_CHANGE.

unban-town-player

- "[unban-town-player] %ban_memberId%"

Removes the ban without opening the unban command. Permission: BAN.

Roles

create-town-role

- "[create-town-role] %town_id%"

Opens the role-creation dialog. Permission: MANAGE_ROLES.

edit-town-role

- "[edit-town-role] %role_id%"

Opens the edit dialog. Permission: MANAGE_ROLES.

delete-town-role

- "[delete-town-role] %role_id%"

Refuses to delete the default role (CANNOT_DELETE_DEFAULT_ROLE). Permission: MANAGE_ROLES.

toggle-role-permission

- "[toggle-role-permission] %role_id% %permission_id%"

Permission: MANAGE_PERMISSIONS.

update-role-permissions

- "[update-role-permissions] %role_id% %permissions_diff%"

Bulk save. Permission: MANAGE_PERMISSIONS.

cycle-member-town-role

- "[cycle-member-town-role] %member_id%"

Promotes the member to the next role by weight, looping at the top. Permission: ASSIGN_ROLES.

Subzones

create-sub-zone

- "[create-sub-zone] %town_id%"

Starts the corner-selection flow. Permission: SUB_ZONES.

edit-subzone

- "[edit-subzone] %subzone_id%"

Opens the metadata dialog. Permission: SUB_ZONES.

edit-subzone-cuboid

- "[edit-subzone-cuboid] %subzone_id%"

Re-runs corner selection for an existing subzone. Permission: SUB_ZONES.

delete-sub-zone

- "[delete-sub-zone] %subzone_id%"

Permission: SUB_ZONES.

toggle-subzone-settings

- "[toggle-subzone-settings] %subzone_id% %setting_id%"

Only takes effect when the subzone has inheritSettings = false. Permission: SUB_ZONES.

update-subzone-settings

- "[update-subzone-settings] %subzone_id% %settings_diff%"

Bulk save. Permission: SUB_ZONES.

create-subzone-role

- "[create-subzone-role] %subzone_id%"

Creates a role scoped to the given subzone. Permission: SUB_ZONES.

cycle-subzone-member-role

- "[cycle-subzone-member-role] %member_id%"

Promotes a subzone member to the next subzone-scoped role. Permission: SUB_ZONES.

kick-subzone-member

- "[kick-subzone-member] %member_id%"

Removes the member from the subzone (they remain a town member). Permission: SUB_ZONES.

Warps

pin-warp

- "[pin-warp] %warp_id%"

Toggles the warp on the viewer's TownPlayerData.favoriteWarps set. Confirmation: WARP_PINNED/WARP_UNPINNED.

Last modified: 25 July 2026