Commands

POI & Channel Management
/addpoi <server_name> <name> <x> <z> [radius] [embed_image] [embed_title] [embed_description]

Create a new POI and channel. Optionally set discovery embed image, title, and description.

/editpoiwelcome <server_name> <poi_name> <welcome_message>

Set a custom welcome message for a POI. Supports placeholders: {user}, {poi}, {x}, {z}, {mapurl}.

/poi_welcome_enable <server_name>

Enable POI channel welcome messages (default ON).

/poi_welcome_disable <server_name>

Disable POI channel welcome messages (DM-only).

/removepoi <server_name> <name>

Delete a POI and its channel

/listpois <server_name>

List all POIs

/listduplicatepois <server_name>

List all POIs (including duplicates)

/checkpoi <server_name> <name>

Show details for a POI

/setlog <#channel>

Set the general log channel for all events (fallback)

/set_poilogchannel <#channel>

Set dedicated channel for POI discoveries and location logs

/list_logchannels

List all configured log channels for this server

/setdiscoveryimage <image_url> [poi_name]

Set image for discovery DMs/logs globally or for a specific POI.

NPC Quest System
/createquest <server_name> <npc_name> <x> <z> <radius> <quest_name> <dialogue_id>

Create a new NPC quest zone (sets up quest and NPC zone).

/removequest <server_name> <npc_name>

Remove a registered NPC quest zone.

/listquests <server_name>

List all registered NPC quest zones.

/spawn_npc <server_name> <npc_type> <x> <z>

Spawn a default NPC at a location.

/remove_npc_spawn <server_name> <event_name>

Remove an NPC event and event spawn from the server and DB.

/submitquest_proof <quest_name> <proof_url>

Submit quest proof (e.g., screenshot) for review.

/approvequest <server_name> <quest_name> @user

Approve a player's quest submission and assign reward role.

/resetquest <server_name> <quest_name> @user

Reset a player's quest state.

/queststatus <server_name>

Show your quest progress/status.

/set_questlogchannel <#channel>

Set dedicated channel for quest submissions and quest-related logs

Bulletin Board System
/bulletin_create <name> <x> <z>

Create a new bulletin board zone, channel, and role.

/bulletin_remove <name>

Remove a bulletin board and all its messages.

/bulletin_list [page]

List all boards and messages per board, paginated.

/bulletin_post <server_name> [message] [image]

Post a text message and/or image to the board. Anonymous posts.

/bulletin_view_image [server_name] [message_id]

View images from bulletin posts via selection or direct ID.

/bulletin_post_delete <board_name> <message_id>

Delete a specific message from a board.

Bulletin Zone Entry/Exit — Entry grants access and DM prompt; exit removes access.

Bulletin Message Types — Text posts use PNG overlay; image posts show uploads.

Bulletin Stats — Boards visited and messages posted are tracked and shown in /poi_stats.

/set_bulletinlogchannel <#channel>

Set dedicated channel for bulletin board activity logs

Player Linking
/linkplayer <server_name> <ingame_name> @user

Link a Discord user to an in-game name

/unlinkplayer <server_name> <xbox_name>

Unlink a player

/poilinkedplayers <server_name>

List all linked players

/clearplayers <server_name>

Remove all player links

Server Management
/add_server <server_name> <token> <server_id> [map]

Add a Nitrado server for this guild (Admin only)

/edit_server <server_name> <token> <server_id> [map]

Edit a configured Nitrado server (Admin only)

/remove_server <server_name>

Remove a configured Nitrado server (Admin only)

/set_map <server_name> <map>

Set the map for a configured server (Admin only)

/restart_server <server_name>

Restart a configured game server (Admin only)

/setautorestart <server_name> <interval> <#alert_channel> [message]

Set up automated server restarts with custom intervals and alerts (Admin only)

/viewautorestarts

View all automated restart tasks for this guild (Admin only)

/editautorestart <task_id> [interval] [#channel] [message] [enabled]

Edit an existing automated restart task (Admin only)

/removeautorestart <task_id>

Remove an automated restart task (Admin only)

/list_servers

List all configured servers (Admin only)

/plon <server_name>

Show ALL online players (linked + unlinked) with map coordinates

/plon_vc_create <server_name>

Create voice channel showing total online player count (auto-updates)

Player Utilities
/location <server_name> @user

Show a linked player's current location

/link_gamertag <server_name> <ingame_name>

Link your Discord to your in-game name

/unlink_gamertag <server_name>

Unlink your Discord from your in-game name

/stats

Show your POI & Bulletin statistics

Broadcast System
/broadcast text channel:<#text> message:<text> [role:@role]

Send a public text broadcast to a channel. Optionally ping a role.

/broadcast mp3 channel:<#text> mp3:<file> [role:@role]

Send a public MP3 broadcast to a text channel. Optionally ping a role.

/broadcast voice channel:<#voice> mp3:<file> [role:@role] [announce_channel:<#text>]

Play an MP3 in a voice channel. Optionally announce in text and ping a role.

/broadcast schedule name:<name> channel:<#voice> mp3:<file> start_time:<HH:MM> end_time:<HH:MM> interval:<minutes> [role:@role] [announce_channel:<#text>]

Schedule a recurring MP3 broadcast in a voice channel. Optionally announce in a text channel and ping a role.

/broadcast list

List all scheduled broadcasts with details.

/broadcast remove broadcast_id:<id>

Remove a scheduled broadcast by ID.

/broadcast play broadcast_id:<id>

Play a scheduled broadcast immediately in its configured voice channel.

/broadcast stop broadcast_id:<id>

Mark a scheduled broadcast as inactive.

Moderation
/ban <@user> [reason]

Ban a user. Detailed log (account age, join date, executor, reason).

/kick <@user> [reason]

Kick a user. Detailed embed + log channel output.

/purge <amount> [reason]

Bulk delete 1–100 recent messages (records range & reason).

/role add user:<@user> role:<@role>

Add a role to a user (Manage Roles required; respects hierarchy).

/role remove user:<@user> role:<@role>

Remove a role from a user (Manage Roles required; respects hierarchy).

/role create name:<text> [colour:#RRGGBB|random]

Create a new role with optional colour (uses default if omitted).

/role delete role:<@role>

Delete a role (Manage Roles required; respects hierarchy).

/role mass add role:<@role> from_role:<@role>

Give target role to all members who have the source role.

/role mass remove role:<@role> from_role:<@role>

Remove target role from all members who have the source role.

/stats_reset_all

Reset all player statistics for a server.

/stats_reset

Reset player statistics for a specific server.

/ban

Ban a user from a selected server.

/ban_list

List all banned users for a selected server.

/ban_remove

Unban a user from a selected server.

/whitelist

Whitelist users for a selected server.

/whitelist_remove

Remove a user from the whitelist for a selected server.

/whitelist_list

Show all whitelisted users for a selected server.

Misc & Debug
/debugconfig

Show the raw config for this server

/poihelp

Show the interactive help menu

/setup

Info how to setup the bot on the server

/downloadlog [lines]

Download bot log file (Developer/Owner only). Specify number of recent lines (50-5000, default: 1000).

Server Files & Config
/getserverfile

Admin: Download a file from root/custom/db/env/config.

/uploadserverfile

Admin: Upload a file to root/custom/db/env/config with backup.

/editgameplayjson

Admin: Edit cfggameplay.json (stamina, build anywhere, UI, map, vehicle).

/globals_edit

Admin: Edit globals.xml fields with backup & safe upload.

Event & Json Spawning
/spawn_event create server_name:<server> category:<Vehicle|Static|Item|Infected> type:<Classname> x:<X> z:<Z> [quantity] [territory_radius] [interval_minutes] [activation_minutes] [cleanup_minutes]

Create (optionally recurring) event. Infected uses toggle mode with activation.

/spawn_event list <server_name>

List scheduled spawns.

/spawn_event delete <id>

Delete a scheduled spawn by ID.

/spawn_event rollback <id>

Remove the last created XML blocks for a schedule and disable it.

/spawn_json

JSON object spawner: guided modal for items, filename, position (my_location/manual), auto-delete, and server upload.

File Rotation & JSON Removal
/remove_json

Remove any JSON in /custom; optional cfggameplay reference cleanup.

/rotate_file

Create a rotation for a target file (interactive wizard).

/rotate_file_list

List active file rotations (paginated).

/rotate_file_rollback

Restore original, delete variants, fix cfggameplay reference.

Discovery Zones
/discovery_zone create

Create a custom discovery alert zone (DM on entry).

/discovery_zone edit

Edit coordinates/radius/embed of a discovery zone.

/discovery_zone list

List all discovery zones for a server.

/discovery_zone delete

Delete a discovery zone.

Discoverables (Notes & Tapes)
/note create

Create a discoverable note: title, text, coordinates, optional radius, expiry, and optional Paper prop spawn (spawn_prop:y with Y coord).

/note list

List discoverable notes for a server.

/note edit

Edit a note (title, text, coords, radius, expiry). Does not respawn prop.

/note delete

Delete a note. Removes gameplay reference and its custom JSON prop file if spawned.

/tape create

Create a discoverable audio tape: title, MP3 (≤8MB), coords, optional radius, expiry, optional Cassette prop spawn (spawn_prop:y with Y coord).

/tape list

List discoverable tapes for a server.

/tape edit

Edit a tape (title, MP3 file, coords, radius, expiry). Does not respawn prop.

/tape delete

Delete a tape. Removes gameplay reference and its custom JSON prop file if spawned.

Prop Spawn JSON Format — Objects:[{name:Paper|Cassette,pos:[x,y,z],ypr:[0,0,0],scale:1,enableCEPersistency:0,customString:""}]

Expiry & Consumption — On first find or expiry the gameplay reference and custom JSON are removed automatically.