Support tickets

Players open a ticket from a panel in your Discord. Staff answer from Discord or from the console — both sides see the same conversation, because Citadel Ops owns the ticket and Discord is a surface onto it.

That matters during an outage: a ticket closed in the console is closed whether or not the bot is running. A support queue you cannot clear during an incident is a queue that grows during exactly the incident generating it.

Setting up the panel

In your Discord, run /ticket-panel in the channel you want it in. It posts a message with the category menu, and members open tickets from there.

Two things to check first, because they are how ticket panels usually go wrong:

  • Members need View Channel there. They do not need permission to create threads — the bot creates them.
  • Anyone with Manage Threads in that channel can read every ticket in it, including staff complaints. That is Discord's behaviour and no amount of care with membership changes it. Put the panel where only admins hold it.

Categories

Six, each asking questions that fit it:

| Category | Asks for | | --- | --- | | General Questions | What you want to know | | Purchase Support | Order reference, what is missing | | Compensation | When it happened, what was lost | | Bug Reports | Steps to reproduce, expected vs actual | | Player Reports | Who, and what they did | | Staff Complaint | Which staff member, what happened |

Four of them ask which server up front. "Which server?" is the most common wasted round trip in a support queue.

Who can see a ticket

Every ticket is a private thread. Staff roles are pulled in when it opens.

Staff Complaint is admins only. Moderators are never added — not added and removed, never added. A complaint about a moderator that moderators can read is worse than having no complaints category at all, because the member wrote it believing it was private.

If Citadel does not recognise a category — an old panel, or a category since retired — it treats it as admins-only. When we cannot tell, fewer people is the safe answer.

Working the queue

The console lists open work oldest first and leads with how long the oldest unanswered ticket has waited. That is deliberate: how many tickets are open says almost nothing, while somebody who has waited four days is the person about to give up on you.

  • Claim stops two staff answering the same person, and tells them in-thread that somebody picked it up
  • Reply posts into their Discord thread, prefixed with your name
  • Close takes a note for the record and archives the thread

Attachments from Discord appear in the console as links. A compensation claim is usually three screenshots and no words.