Admin Panel
One in-game panel for everything staff need: watching a pair live, reading a dispute, editing a memory, running the clothing tools, and changing almost every setting in the script without touching a file.
Open it with /recognition:admin, or /recognition:admin 12 34 to land
straight on a pair.
The panel looks like a tablet. An icon sidebar on the left switches pages; the top bar shows the page name, your access (Full access, Limited access or View only) and a Find a player search that works from every page. Most labels are one to three words — the longer explanation sits behind the small (i) next to them, or appears when you hover.
The pages
| Page | What it is for |
|---|---|
| Overview | Live numbers, the last 24 hours, a to-do list, recent proofs, log integrity and the detected integrations |
| Pair | Two players side by side, live. The page that settles disputes |
| Lookup | Find a player and see everything about their character |
| Timeline | One player's story, day by day |
| Deaths | New Life Rule cases: keep or wipe memories |
| Clothing | The classifier: Auto-scan, the item list, the review queue |
| Audit | Every staff action, with before-and-after and a restore button |
| Settings | Almost every config value, editable live |
Pages a staff member does not have permission for are simply not shown.
Permission levels
Full admin — the console, the recognition.admin ACE, or one of the framework
admin groups — gets every level. Servers that want lighter staff roles grant the
child permissions instead:
| Level | ACE | Allows |
|---|---|---|
| view | recognition.admin.view | Open the panel: Overview, Pair (with live watch), Lookup, Timeline, Deaths, Audit |
| edit | recognition.admin.edit | Edit, delete and restore memories; reset familiarity; keep or wipe memories after a death; delete photos |
| export | recognition.admin.export | Send a report to Discord |
| classifier | recognition.admin.classifier | The Clothing page: Auto-scan, set and approve classifications, answer the new-items notice, /recognition:tags |
| identity | recognition.admin.identity | Reset an identity, free implants, implant wait times |
| settings | recognition.admin.settings | The Settings page: read, change and reset settings |
txAdmin logins get only the levels the server lists in
Config.Admin.TxAdminPerms — view by default — because every txAdmin login,
including a trial moderator, would otherwise be a full recognition admin.
You can also give framework groups their own levels with
Config.Admin.GroupPerms, for example { mod = { 'view' }, admin = 'all' }.
See Admin & Permissions.
Overview
- Four live tiles: Online, Scans running (with quick looks), Live results and Valid memories (with how many end in 24 h).
- Last 24 h: how many proofs, and how many of them were below the act line.
- To do: open and waiting deaths, clothing to review, new clothing items and the Discord queue — each row jumps to the page that clears it.
- A line tells you when settings were changed in game, with a Reset all to file defaults button.
- Recent proofs, live.
- Integrity: the state of the proof log and the audit log, with a Verify now button (see Proofs).
- Integrations: which framework, inventory, voice, death, police, MDT, evidence and screenshot scripts were detected.
The pair view
Pick A (the one who looks) and B (the one being looked at). The header holds both players, a swap button, a LIVE chip while you are watching, the distance between them and Export to Discord.

Each direction gets its own card:
- The ring — what this person would reach on the other one right now. Its
word says where the number comes from:
- Scanning — a scan is running right now, with its clock; the bars fill on your screen as they fill on theirs. Paused while it waits for the person to come back.
- Quick look — they recognized them with a quick look and are still quietly looking.
- Live result — a result is on their screen, with its countdown.
- Right now — none of these is running, so the panel shows an estimate of what a fresh look could reach at this instant. A grey dash with Not measurable means there is nothing to measure.
- Four cue bars — Voice, Clothing, Face, Tattoos — plus small chips such as Facing, CAMERA or LAB ID.
- Best memory — the strongest memory as a bar, with the time left.
- Familiarity — the level (Stranger, Acquaintance, Familiar, Close) with its re-learning speed (for example ×2.00) and a reset button.
- Last scan — the result, a chip such as Recognized or Cancelled, and how long ago.
- Three tabs: Trend, Memories and Proofs.
Memories lists every memory with its source (Memory, Camera, Report, Hearsay, Lab ID), a bar, and the time left — orange under an hour, red under ten minutes. Click a row for the detail: where and when they first met (place, street, area, time of day), the clothing words, the value when it was saved and the cap.
A memory row marked DISGUISE is a "masked person" memory: staff see that A remembers B twice — as the person and as the disguise. Players never see that link.
Trend shows reliability over time for the pair (24 H, 7 D, 30 D or All): the blue line is what they remember, dots are scans (green above the act line, orange below), squares are camera scans, and ticks under the chart are proofs (red when below the line).
Editing a memory
The pencil on a memory row (edit level) opens four sliders, a "valid until"
field, the Introduced as name, and a reason of 3–255 characters (required
by default, Config.Admin.RequireReason). The ring next to the sliders is only
a preview; the server works out the real value when you save.
- The label and the source cannot be edited.
- Setting "valid until" into the past expires it immediately.
- If the change makes the memory invalid, the pair's live result ends at once.
- Everything is written to the audit log with the full before and after, and can be put back with Restore.
By default staff cannot edit or even view a pair that involves their own
character (Config.Admin.BlockSelfEdit, BlockSelfView). The console is
exempt.
Lookup
Start typing and matches show up as you type. The hint under the search box says what you can search by:
| Search by | Example |
|---|---|
| Name | A character or account name |
| Server id | The id from the player list, e.g. 12 |
| Char key | The stored character key, or its first letters |
| Device | A device serial starting with HC-, VC- or MS- |
| Report | A report id starting with RC-, WS- or DS- |

Pick a player to open their card: online or offline, char key, licence (in the
panel only, Config.Admin.ShowLicenses), last seen, who they remember and
who remembers them, proofs and below-the-line proofs over 7 days, their
identity (face number, implants, next implant) and their devices. Staff with the
identity level also get a Danger zone with Reset face and the Implant
wait.
Timeline
Pick a player first. Then the page lists what happened to them under Today, Yesterday and older dates — one short line per event, such as Scanned Mike or Robbed by Mike. Click a line for the details.

Proofs between the same two people are grouped into one incident line. See Proofs & Incident Timeline.
Deaths
One plain line explains the page, and two chips sum up the rule: Revived = remembered, Respawned = forgotten. Each death is a card with who died, when, the killer if known, its status and the witnesses. Staff with the edit level can press Keep memories (or Restore memories after a wipe) or Wipe memories. See New Life Rule.
Clothing
Four big numbers at the top — Items, Needs review, Auto-scanned and Admin set; click one to filter the list. Below them: the Auto-scan card, then the item list with filter chips, My outfit and a Player ID field that shows only what that player is wearing. Click an item to check or fix it. See Clothing Classifier & Auto-scan.
Audit
Every staff action, newest first, grouped by day: what was done, by whom, to whom and when. Click a row for the reason and the before/after. Memory edits and deletes have a Restore button (edit level). Turn on System rows to also see what the script did by itself.
Settings, live
Almost every value in config.lua is editable from the panel with no restart —
scan times, memory tiers, familiarity levels, device batteries, the death
radius, the act line, the police and description caps, HUD defaults and
classifier thresholds.
- Search finds a setting by its title or config path. The pills All, Changed and File only filter the list.
- Settings are grouped under plain names on the left — Scan and quick look, Memory, Weather and light, Proofs and lab and so on — with a count of what was changed in game.
- Each row has a plain title and an (i) tip: one or two short sentences on what the setting does, plus the config path it belongs to.
- A value changed in game gets a cyan dot and its own reset button. When it differs from the file, the file value shows under it.
- Rows that only take effect after a restart say After restart.
- Every change is checked, limited to a safe range ("Limited to …"), applied live where that is possible, and logged. A floating bar shows what is not saved yet, with Cancel and Save.
Reset group, Reset to file on one row, or Reset all to file defaults for everything, is the way back out of a bad experiment. A reset always needs a reason. No file editing, no restart.
Some rows are greyed out with a padlock, and say why when you hover:
| Locked | Why |
|---|---|
| Every integration and bridge selector (framework, inventory, voice, death, MDT…) | Changing an adapter mid-session is not safe — these need a restart and a file. Only in config.lua |
| The admin permission settings | So the settings page can never widen anybody's own access |
| Big tables such as known places or the familiarity levels | Edit this one in config.lua |
| Rows that need a second level | Needs the … admin level (see the hint above) |
Everything in config_server.lua — webhook URLs, keys, rate limits, data
retention — is never shown in the panel at all. You can lock more keys yourself
with Config.Admin.FileOnly.
Exporting to Discord
Export to Discord on the pair view (or on an incident in the timeline) sends a full report: both characters, server ids, every memory, the last scans, a small text trend line and an attached file with the complete data (JSON and CSV by default). You can add a note before sending. Disguise memories are left out unless you tick Include disguise rows.
Licence identifiers are left out by default. See Discord Webhooks.
The new-clothing-items notice
A short while after the resource starts, the script counts your server's clothing and prop items. If nothing changed — the normal case — it says nothing at all. If new items appeared, staff with the classifier level get one line when they join and a banner in the panel:
New clothing items — 312 new clothing and prop items were found since the last check. Until Auto-scan runs, new items count as unknown: hats act like a cap, other slots use the unknown defaults.
With four buttons: Details (how many per model and slot), Run Auto-scan, Accept counts (store the new numbers without scanning) and Dismiss (hide until the numbers change again). The Clothing icon in the sidebar carries a small orange dot until then. Nothing is ever scanned automatically.