Ventura

Comparing and repairing

After a raid, the server is often only partly destroyed. Replacing it would delete and repost everything, even the channels that are still fine. Repairing only fixes what's broken.

/backup compare id:#

Only for backups of this server - it compares by ID, and on another server all IDs differ. The bot reads the whole server again, like when creating a backup (without downloading files), and compares everything the backup contains. A progress line shows what's being read. It takes a few seconds - longer on servers with many channels, and up to half a minute more right after a backup, load or another comparison (Discord hands out the member list only once per 30 seconds).

Every difference is one of: ๐Ÿ—‘๏ธ deleted since the backup, โž• new since the backup, or โœ๏ธ changed.

AreaWhat is compared
โš™๏ธ Server settingsName, icon, banner, invite background, verification level, content filter, default notifications, AFK channel and timeout, system messages channel and which system messages are sent, rules / community updates / safety alerts channel, boost progress bar, description, language, age restriction, 2FA requirement, Community, invites paused, welcome screen on/off, vanity URL
๐ŸŽญ RolesDeleted and new roles (also bot roles), name, permissions (which ones were added or removed), color, shown separately, mentionable, icon, position in the role list
๐Ÿ“ Categories & channelsDeleted and new ones, name, type, category, position within the category, topic, age restriction, slowmode (also of new threads), bitrate, user limit, voice region, forum tags, default reaction, forum sort order/layout/required tags, and every permission overwrite (added, removed, changed - with the exact permissions, also for roles and members added since)
๐Ÿ˜€ Emojis, stickers & soundsDeleted and new ones, names, allowed roles of emojis, sticker description and tags, sound volume and emoji
๐Ÿ›ก๏ธ AutoModDeleted and new rules, name, enabled, what they filter, what they do, exempt roles and channels
๐Ÿ‘‹ Welcome screen & onboardingWelcome screen description and recommended channels; onboarding enabled, mode, default channels, questions added, deleted or changed
๐Ÿ‘ฅ MembersMembers who left, nickname changes, roles members lost or got, members who got a nickname or roles since
๐Ÿ”จ BansUsers banned since (with reason) and users unbanned since
๐Ÿ’ฌ Messages & threadsPer channel and thread: how many of the backed-up messages were deleted (or all - "emptied"), edited or unpinned; deleted and renamed threads and forum posts

Positions only count if something really moved: moving one role up doesn't flag every role it passed. Things that belong to a deleted role or channel (its permission overwrites, its threads, members losing it) aren't listed separately - they come back with it.

The result:

  • The embed shows the number of differences and one field per area with the names of what differs.
  • The attached text file (compare-<id>.txt) lists every difference with all its details, e.g. permissions for @everyone - allowed: now Administrator or slowmode: off โ†’ 30s. An embed can't hold them all. It ends with a legend and a link to this page of the guide.
  • Not compared lists what couldn't be read, with the reason - e.g. bans without "Ban Members", AutoMod without "Manage Server", or members if the member list couldn't be loaded. Nothing is left out silently.
  • If nothing differs: a green "The server matches the backup".

The server owner gets a ๐Ÿ”ง Repair server button (valid 10 minutes), which opens the load confirmation with Repair only selected. Not every difference can be repaired - see below: e.g. edited messages, nicknames, roles members got since, or settings like 2FA stay as they are.

What a repair always does#

RecreatedResetLeft alone
Deleted roles - moved back below the role that was above themPermissions of existing roles and @everyoneNames, colors and order of existing roles & channels
Deleted categories and channels, with all settingsPermission overwrites of existing channelsNicknames
Missing AutoMod rulesExisting AutoMod rules
System / AFK channel if it pointed to a recreated channel
Welcome screen / onboarding if they referred to something recreated
  • Permissions are only reset for roles and members the backup knows. Overwrites for roles or members added since stay - the backup can't say what's right for them.
  • The channel the repair runs in always stays. The "Delete this channel" button isn't offered after a repair.

Options of a repair#

In the confirmation's menu - the first two are preselected, because they're what a raid calls for:

OptionDefaultWhat it does
๐Ÿงน Remove what was created sinceonDeletes channels and roles that aren't in the backup (e.g. spam) - before recreating anything, which also frees Discord's limits. The confirmation lists them by name.
๐Ÿ”“ Lift bans added sinceonUnbans users who weren't banned in the backup (e.g. a mass ban). Needs bans in the backup.
โš™๏ธ Restore server settingsoffName, icon, banner, invite background, verification level, content filter, notifications, AFK timeout.
๐Ÿ“จ Refill emptied channelsoffReposts the backed-up messages into existing channels that are empty now (e.g. after a purge). Only the channel's own messages - its threads may still exist.
Threads & messagesonMessages, threads and forum posts of the recreated channels
Nicknames & rolesonGives the recreated roles back to the members who had them (nicknames stay as they are)
Emojis, stickers & soundsonCreates missing ones; existing ones are kept, only their role restrictions are reset
BansonApplies the backup's bans again
โ†ฉ๏ธ Keep an undo copyonSee 8
  • "Remove what was created since" also deletes channels and roles that were created on purpose after the backup - check the list in the confirmation, or deselect the option. Channels are compared by ID: a channel deleted and created again by hand counts as new.
  • "Lift bans added since" also lifts bans that were legitimate - the confirmation of /backup compare shows how many users were banned since.
  • Which channels are "empty" is only checked during the repair itself.