configuration.
tailoring the bot to your server.
start with diagnostics
,setup is a diagnostic, not an automatic server builder. it reports whether havoc is missing the bot permissions needed for roles, channels, messages, bans, kicks, timeouts, and nicknames. it also reminds you to place havoc above managed members, enable the required developer-portal intents, run setupmute for jail, and configure private logging separately.
,setup
/config setup| command | what it does | needs |
|---|---|---|
| /setup | run bot-permission, hierarchy, intent, jail, and logging diagnostics | administrator |
| /setupmute | create or reuse the jail role and channel, then apply isolation overwrites | manage server, manage channels |
| /config view | show which core settings are configured | administrator |
the config views
config views inspect stored entries without printing private values. output uses a namespace and key followed by “configured”; it does not disclose afk text, message content, or saved role snapshots. the plain config path and config view read the server’s stored settings, while focused paths filter that list.
| command | what it does | needs |
|---|---|---|
| /config | inspect configured entries across the server | administrator |
| /config view | inspect the same complete core settings list | administrator |
| /config moderation | show entries in the core configuration namespace | administrator |
| /config logging | show logging route and logging configuration entries | administrator |
| /config roles | show autorole, sticky-role, button-role, and reaction-role entries | administrator |
| /config automod | show automod configuration entries | administrator |
| /config afk | show whether afk configuration entries exist without exposing statuses | administrator |
these paths are inspectors. use each module’s documented commands or the implemented dashboard controls to change that module. the spurious [member] shown in registry usage for this family is not an argument you need to provide.
antinuke administrators
the antinuke branch manages the ids allowed to perform antinuke-protected actions. it requires administrator and is restricted to the server owner. add and remove resolve a current server member; list prints stored numeric ids. keeping this list short preserves the purpose of the protection.
| command | what it does | needs |
|---|---|---|
| /config antinuke | show the current antinuke administrator ids | server owner |
| /config antinuke add <member> | add one member to the antinuke administrator list | server owner |
| /config antinuke remove <member> | remove one member from the list | server owner |
| /config antinuke list | show the current list | server owner |
,config antinuke add @trusted-admin
,config antinuke list
,config antinuke remove @trusted-adminjail and timeout setup
setupmute looks for a role named havoc jailed and a text channel named havoc-jail, creating either when absent. it gives the role access to that channel, hides every other channel from it, removes voice connect access, and stores the role and channel ids. the role must remain below havoc’s highest role.
mute uses discord’s native timeout and is capped at 28 days. jail uses the configured role and channel. re-runsetupmute after adding channels if the jail role’s overwrites do not isolate them as intended.
the command touches the jailed role’s overwrite on every server channel. review unusual private-channel and category arrangements afterward. deleting the stored role makes jail fail until setup is run again.
prefix and command access
core configuration also includes the server prefix and command restrictions. prefixes are 1–12 characters, cannot contain whitespace or @, and require administrator to change. restrictions require manage server and add a role gate without replacing each command’s native discord permission.
,prefix
,prefix set !
,restrictcommand add "config view" @administrator
,restrictcommand listprefix self currently removes the stored server prefix override and returns the server to the default comma; it does not persist a member-specific prefix. restriction reset clears every command gate, so list and record the current policy before using it.
where settings live
havoc stores settings in its database under a server id, namespace, and key. values are persisted rather than held only in process memory, so ordinary bot restarts do not discard configuration. server ids keep one server’s settings separate from another’s even when the same administrator manages both.
several modules own their own namespaces. that is why a core config view can show that something is configured without exposing its value, and why a core reset deliberately does not erase every domain. use the relevant module guide—such as logging or automod—for its editing commands.
resetting core configuration
,config reset deletes the server’s config and restrictions namespaces. it retains moderation cases, restoration state, pending jobs, and settings owned by other domains. this is a core reset, not a factory reset.
,config view
,restrictcommand list
,config resetreset removes prefix, core role references, antinuke administrators, and command restrictions together. capture the existing views first. restoring the database or re-entering settings is the only recovery path.
a first-hour checklist
- 01
check the bot’s role and permissions
place havoc above managed roles, then run
,setupand resolve every permission you need. - 02
configure isolation
run
,setupmuteonly after deciding where the jail channel belongs, then review its overwrites. - 03
choose the command entry point
keep the comma or use
,prefix set; verify both prefix and published slash paths with help. - 04
establish staff boundaries
add command restrictions for teams that share discord permissions, and keep antinuke administrators minimal.
- 05
configure and verify modules
set private logging first, enable only needed modules, then use the focused config views to confirm stored entries.
