Skip to main content

Base alarms

This page explains how base alarms work in dzbot, how notifications are sent, and which rights are needed for staff and players.

What a base alarm does

A base alarm monitors a configured position and radius.

  • when relevant player activity happens inside that area, a notification is sent
  • notifications go either to direct messages (DM mode) or a dedicated Discord channel (channel mode)
  • base alarms can belong to a player or a faction

Core lifecycle

Base alarms are usually managed in this lifecycle:

  1. Create alarm (personal or faction-related).
  2. Set/check position and verify radius behavior.
  3. Define recipients (owner, faction members, and optional extra players).
  4. Keep alarm active and funded.
  5. Review recent alarm timeline and adjust if needed.

Position defaults come from gameplay context:

  • personal alarms try to prefill from the latest raised-flag location
  • faction alarms try to prefill from faction spawn coordinates

Radius is fixed for normal shop-created alarms; admins can override radius in admin base alarm editing.

Trigger and recipient mechanics

Trigger conditions

An alarm is considered for notification only when all of these are true:

  • alarm is active
  • alarm is in range of the event position
  • alarm is paid (or configured as free)

Data freshness note: trigger timelines and nearby activity context depend on imported server logs and may appear with delay (see Logs import).

Who receives notifications

Recipients are based on alarm ownership and sharing:

  • personal alarm owner
  • manually added players (notification recipients only)
  • all members of the linked faction (for faction alarms)

Muted users are excluded from DM delivery.

In shop UI, manually added players on personal alarms receive notifications but do not get management access to that alarm page.

Who does not trigger an alarm

The system excludes allowed players and their linked device-players from trigger notifications. This avoids self-alert noise from owners/members and their linked accounts.

Payment model

Base alarms can be free or paid, depending on server settings.

  • paid alarms are invoiced periodically
  • player-owned alarms first try to consume a player BaseAlarmCoupon before charging balance
  • faction-owned alarms first try eligible member coupons that the owning players have explicitly allowed for faction use before charging faction balance
  • when multiple player coupons are available, the lowest remaining count is consumed first
  • when multiple faction-eligible member coupons are available, the highest remaining count is consumed first
  • if payment fails, the alarm is deactivated automatically
  • deactivated alarms do not continue to notify until they are reactivated

For the wider economy model, see Transactions concept.

Notification modes

DM mode

If no dedicated Discord channel is set, eligible recipients receive direct notifications.

Channel mode

If a channel is assigned, alerts are sent to that channel instead of individual DMs.

With automatic channel management configured, dzbot can create/update cleanup channels and permissions for the alarm context.

Note: muting is DM-specific. In channel mode, alerts are posted to the channel.

Access-right model

Base alarms use server-level rights plus optional faction-member rights.

Server-level base alarm rights

  • base_alarm.access: open and use player-facing base alarm pages
  • base_alarm.access_all: access full admin overview and broad visibility
  • base_alarm.create: create base alarms from admin workflows
  • base_alarm.edit: bypass normal ownership restrictions for editing
  • base_alarm.delete: remove alarms from admin area
  • factions.access_all: broad faction workspace access
  • faction member right change_base_alarm: allows members to manage faction alarm changes

Player/faction self-service creation in the shop uses base_alarm.access (plus faction membership permissions where applicable).

Faction alarm management in shop detail views still depends on faction membership checks unless base_alarm.edit is granted.

Admin rights assignment guidance

Recommended practical bundles:

  • Player self-service: base_alarm.access
  • Faction operator: base_alarm.access + faction member right change_base_alarm
  • Moderator (read-focused): base_alarm.access_all
  • Alarm manager: base_alarm.access_all, base_alarm.create, base_alarm.edit
  • Full admin control: add base_alarm.delete

If staff must manage faction alarms without faction membership, use admin base alarm flows with base_alarm.access_all and base_alarm.edit. factions.access_all alone does not grant full shop detail access for faction alarms.

Where users interact with base alarms

Player-facing entry points are documented in Base alarms in player view.