Everything Vortex Raid Tool answers to. Member commands work anywhere — best in a DM with the bot; replies are private either way. Officer commands need the Officer Discord role (checked live, DMs included). Locked pages open with the Log in button in the menu: officer passphrase, or the guildmaster password which unlocks everything.
/help | This list, inside Discord. |
/wish import | Replace your wishlist from a WoWSims or Sixty Upgrades Export → JSON (gems/enchants filtered out). Lands in sim order — rank it afterwards. |
/wish add <item> | Add one item — instant autocomplete from the local item database, Wowhead links and IDs work too. Non-unique rings (the BT trash bands) can be added twice; unique/unique-equipped stay single. |
/wish remove · /wish clear | Take one item off, or wipe the list. |
/wish list | Your ranked list (1 = want it most) with reorder menus. Won items show struck through — crossed off automatically from the loot history, never deleted. |
/wish rank <item> <position> | Jump an item straight to a rank. |
/wish web | A personal 1-hour link to the browser editor — drag & drop reorder, search-to-add, paste an export to build from scratch. The link is the login. |
/request new [type] [amount] [what] [what2] [amount2] [what3] [amount3] | Ask the guild bank: Guild bank (several items in one request (up to 12 lines), free — an officer confirms each line, and may give fewer or decline one) · Flasks (1 flask per raider per lockout (Wed–Tue), free) · Enchanting materials (several items in one request (any of the 16, up to 12 lines), free — an officer confirms each line, and may give fewer or decline one). Lockout systems: once per Wed–Tue; open systems: one pending request at a time, say how many and what for (the pattern; the gem from the list — the autocomplete offers it) and, with for:, what it goes into. A list (Guild bank) takes several lines — what:5 Large Prismatic Shard, 2 Void Crystal, or one per box: amount: + what:, amount2: + what2:, amount3: + what3:; a line without a number takes its box's amount. Item names are suggested as you type (the Heart of Darkness crafts for hearts, any item for gems), free text works too, and a known item becomes a Wowhead link. Needs a guild rank (Raider) — pickups can't. |
/request cancel [type] | Withdraw your pending request. |
/request list [type] | The queue — who's waiting ⏳, who's been served ✅ (all systems, or one). |
/request history [type] [name] | Who got what, when — all-time totals, or one raider's full log. |
/assign <boss> [date] | Assignments for one boss, generated from the next Raid-Helper comp: tanks, healer pairings, positions, misdirects, kick rotations, curses, Bloodlust — with the room diagram. boss:tonight gives every boss of the night; date picks another event. Officer pins and history are respected. Until the comp is announced in Raid-Helper it is the officers' draft — raiders see it from the announce on (or a set time before the start). Full page: assign.html. |
/recipe add <profession> <name> [character] | Register a recipe one of your characters knows — Blacksmithing, Leatherworking, Tailoring, Enchanting, Jewelcrafting, Engineering, Alchemy or Cooking; the name autocompletes from the item database. /recipe remove takes it off again. |
/recipe who <name> | Who can craft this. /recipe list [profession] shows everything the guild can make. |
/resist update <type> <amount> | Record a resist set — fire / shadow / nature / arcane / frost, unbuffed amount from the character sheet (0 clears). Officers can add player to set someone else's. /resist list [type] shows holders best-first; /resist mine your own. Feeds resist-gated raid assignments. |
/recipe remove <name> · /recipe list [profession] | Take one of your recipes off the list · everything the guild can craft, by profession. |
/resist list [type] · /resist mine | Who has which resist set — one resistance, or all of them — and your own recorded sets. |
/whowants <item> | Everyone with the item still open on their wishlist, Priority order, with a debt preview per candidate ("if won (−30): 50.1 #9"). Tier tokens match set-piece listers; recipes match crafted-item listers. |
/droplist <boss> | The boss's whole loot table at once — wanted items first (most contested on top, top 3 claims each), unclaimed rest as a roll-or-shard footer. |
/mrt [date] [everyone] | The comp-selected roster as in-game character names (Discord nicks → roster mains, accents restored from the logs), one name per line, five lines a group, groups 1→5 in order — the layout of Method Raid Tools' Raid Groups → Import that keeps a two-word name whole; a name in no group yet is listed below the paste. Live from Raid-Helper; likely alts and unknown names flagged. everyone = all signups instead of the comp (alphabetical, one per line). |
/assign <boss> post:true | Post the pull card in this channel — embed with the assignments and the room diagram. boss:tonight posts one card per boss. Posted cards update themselves when the comp or an officer pin changes. |
/assign announce:true|false | Reveal the comp's assignments to raiders now, or hide them again — Raid-Helper's Announce button does it automatically; this is the by-hand switch. |
/assign share:true | Officers: a share link that opens the assignments page without a login — for pugs and stand-ins — valid until the weekly reset. Links are listed and revoked on the assignments page (officer mode → 🔗 share link). |
/checkin | Who is in tonight's Warcraft Logs upload vs the posted comp, right now — missing raiders, extras, and anyone not on the roster at all. The bot also posts this by itself 10 min after the raid start (reminder at 25). |
/prio [name] | The top of the board, or any raider's line. |
/wish list member:@X | Anyone's ranked list. |
/wishadmin lock [phase] · unlock · status | Phase lock: freezes every wishlist completely; wins keep crossing off automatically. Unlock between phases. |
/wishadmin review · reprice | Awards flagged “didn't respond on time”: list them, then reprice one to what it really was — standings rebuild on the spot. |
/wishadmin nudge [send] | DM regular raiders (6+ raid nights in the last 8 weeks) who still have no wishlist. Preview by default; send:true sends. Runs by itself too — see below. |
/wishadmin digest on|off [channel] | Run on in a channel (or name one): it gets one post per raid night — your raid days (with none set, the days with a Raid-Helper event) — right after the nightly run (normally 23:45 on the guild’s clock, minutes after raid) — recorded loot, the night's top parses, weekly movers, top 5, new faces in the log, warnings. Which of those, and the channel, are on the Settings page too. |
/attendance set <name> <date> <status> | Overrule one raider's night (attended / bench / noshow / missed) — replaces any earlier override for that night, rebuilds instantly. /attendance list shows what's on file. |
/attendance list | The overrides on file — who, which night, what it counts as, and why. |
/resist update <type> <amount> player:<name> | Record a resist set for someone else (a tank who never gets round to it). |
/roster add | Add a recruit: character, class, role, Discord account, rank (default Trial). Attendance counts from today. |
/roster link <character> | File a character the logs saw that matches nobody: alt_of:<main> makes it their alt; member:@X puts it under that Discord account (their alt if they already have a main here, else a new main — class and role default to what the logs say); pickup:true keeps a pug out of the standings. The character field autocompletes from the unknown list. |
/roster unknown | Characters seen in the logs or loot history with no roster entry — nights seen, class, and who they probably are (rostered that night but never in the log). |
/roster reroll <main> <to> | A raider now plays another character: it becomes their main and the old one stays as an alt — standings, wishlist and signups follow. |
/uploader | A download link for the loot uploader, set up for this guild — the loot master runs it once and it keeps the site current with the RCLootCouncil history and what the addon collected. |
/edition show · primary · here | A guild that plays two games (TBC Anniversary and WoW: Forever): which edition answers commands, and which channels belong to which. |
/support allow | Server admin: let the Vortex Raid Tool owner into this guild's site as guildmaster to help set it up — for a week unless you say otherwise, revocable any time. |
/request given <name> [type] [amount] [what] · /request undo | Tick a hand-out off (gold collected where the system charges) — walk-ups who never asked get recorded too, so once-per-lockout always holds and the ledger stays complete. |
/delegate user:@name [remove:true] | Server admin (Discord's Manage Server decides who may): hand the hub side — setting the guild up, the plan, the settings — to a member who isn't an admin; remove:true takes it back. |
23:45 nightly build | Pulls Warcraft Logs (attendance · parses · consumables), Raid-Helper (signups · comps) and the RCLootCouncil history, recomputes every score from raw data, republishes the site. Officer edits (repricing, overrides, pins, links) rebuild and republish within a minute. |
Raid check-in | 10 min after the posted start: who is in the log vs the comp, in the officer channel; a reminder at 25 min if people are still missing. |
Pull cards | Posted /assign cards re-edit themselves when the Raid-Helper comp changes (the bot reads the comp posts) or an officer reworks a row on the assignments page. |
Wishlist reminders | A DM to anyone with 6+ raid nights in the last 8 weeks and no wishlist — with the browser link, so it takes a minute. |
Nightly digest | If armed with /wishadmin digest on or on the Settings page: loot recorded, the night's top parses, movers, top 5, new characters in the log, warnings — each can be switched off in Settings. |
The free Vortex Raid Tool addon (on CurseForge) shows each raider their own jobs at the pull with the room picture beside them, and reads resistance gear, known recipes, the guild bank and the guild roster off the character for the officers. It never writes in chat on its own.
/vrt | Open and close the window (/vortex works too): your own rows highlighted, everyone in class colours, the room picture beside them; click a boss or let it follow your target. |
/vrt paste | Paste a raid from the assignments page — the raid leader's way in when nobody has sent it yet. |
/vrt send | Send the sheet to everyone in the raid who has the addon (raid leader or assistant). A row reworked on the site reaches the raid the moment it is saved, marked as changed. |
/vrt as <name> | Look up another name's assignments — on an alt, type your main. |
/vrt ask · /vrt ask recipes · /vrt ask version | Ask the raid for gear, the guild for recipes — every character of a raider's in the guild answers, alts included — or everyone for their addon version (raid leader or assistant). Indexed: anyone unchanged answers with one short message. |
/vrt gear [slot] | What it has read off your own character — every resistance set, or one slot every way it was read. |
/vrt bank | The last guild bank read, and whether the reader is listening — open the bank once and it keeps counting. |
/vrt guild | The last guild roster read — every character, rank and note — and a fresh one. |
/vrt who | The professions tab: every craft of every profession by slot, who in the guild has it and what it needs — a word after it searches across all professions. |
/vrt requests | The guild bank's queue in game, for a rank that can promote: who asked for what; a Given there reaches the site after a /reload. |
/vrt consumes · /vrt consumes raid | Who in the raid is missing flask, elixirs or food — the window, or printed to raid chat (raid leader or assistant). |
/vrt sync | Ask the guild for what this client lacks — it does so by itself after login and every half hour, so any uploader in the guild carries the whole guild. |
/vrt share on|off | Take part in the guild keeping itself up to date: your gear, recipes and bank reads reach the guild and the guild's reach you. On unless you say otherwise. |
/vrt log · /vrt comms | Everything the addon has done lately, and what this client has sent and heard. |
/vrt reset · /vrt clear · /vrt minimap | Put changed rows back the way the sheet has them; forget the raid; hide or show the minimap button. |
Locked pages appear in the menu after Log in with Discord. Your roles in the guild's Discord server decide what opens: officers see the officer pages, the guild master also Settings (which roles count is set on the Settings page).
| Homepublic | The landing page. |
| rules.htmlpublic | The loot system, in full. |
| logs.htmlmember | Every Warcraft Logs report logged to the guild — newest first, sortable, filter by zone; raid nights that count for attendance are marked. |
| loot-history.htmlpublic | Every award ever — sortable, filterable. Officers logged in get council mode (award an item live, with the claims ranked) and the import panel for histories from other addons (Gargul, ThatsMyBIS, CEPGP, DKP, spreadsheets). |
| wishlist.htmlpublic | The browser wishlist editor — open it via your /wish web link. |
| assign.htmlpublic | Tonight's assignments per boss, live from the next posted comp, with diagrams and the All-night tab (curses, Expose Armor, Demo Shout). Raiders see the sheet once the comp is announced in Raid-Helper; officers logged in see the draft before that, rework any row (class-coloured menus), add optional healers, browse past weeks, and can open the sheet to raiders by hand (/assign announce:true does the same). Officers also build the comp there: from the signups, a proposal — roles to your numbers, your always-in list first, fill-last only when short, class minimums, the rest by fairness, attendance or signup order, every line with its reason — sent into Raid-Helper's comp tool with one click, and the bench list posted in Discord (Settings → Comp builder). |
| api.htmlpublic | This page. |
| dashboard.htmlpublic | Live standings with per-raider receipts, the signup cross-check, and the unknown characters panel for filing new log names. |
| officers.htmlpublic | Wishlists × Priority, T6 token demand, review queue, chase list. |
| recipes.htmlpublic | Recipes — who can craft what, by profession. Logged-in raiders add the recipes their characters know (from the item database, with Wowhead links) and remove their own; officers can remove anyone's. |
| roster.htmlpublic | The roster — every raider with class, role, rank, alts and attendance; officers file the log's unknown characters, adopt the game's ranks from the addon's guild read, and record re-rolls. |
| requests.htmlpublic | Requests — Guild bank, Flasks, Enchanting materials. Members: your own requests and hand-outs, a form to file a new one for any of your characters, and the waiting list where the guild shows it. Officers: the whole queue, tick-offs, walk-ups and the ledger of who got what, when, from whom. (marks.html is the old address.) |
Served by the guild's bot at https://vortexraidtool.com/demo-forever. Wishlist calls authenticate with the 1-hour token from /wish web; officer and settings calls with a Discord login session as key (an officer's, or the guild master's for settings) — the acting name (by) is taken from Discord. Cross-origin is allowed for this site only.
GET /api/wishlist?token=… | Your list: name, lock state, items with slot / won / stackable-ring flags. |
POST /api/wishlist | { token, ids: [itemId…] } — replaces your order. Caps: 2 copies for non-unique rings and one-handed weapons, 1 for everything else; equippables only; 423 while phase-locked. |
GET /api/search?token=…&q=… | Item search over the local database (Rare+, equippables). |
POST /api/import | { token, text } — a WoWSims / Sixty Upgrades export; replaces the whole list. |
GET /api/assignments[?date=…] | The next comp's assignments, every boss: sections, rows, alternatives, warnings, diagrams. Gated like the page (a raider's session as key, or share=… from an officer's share link). extra=slot,… fills optional slots (officer key needed). |
GET/POST /api/assignments/share | Officers: list share links, make one ({key, by, hours?} — default until the weekly reset) or revoke one ({key, revoke: token}). |
GET /api/assignments/events | Server-sent events: a version tick whenever the comp, a pin or the history changes — the page refreshes on it. |
POST /api/assignments/pin | { key, by, date, boss, row, player | list } — an officer's rework of one row (swap semantics; blank = back to automatic). Posted pull cards re-edit. |
GET /api/assignments/history?key=… | Past weeks' assignments by date, read-only, for the officer date bar. |
POST /api/attendance | { key, by, date, player, status | clear } — an officer's attendance override for one night (attended / bench / noshow / missed), what the standings page's signup cross-check saves; the standings rebuild before it answers. |
GET /api/requests?key=… | Every request type with its queue, recent hand-outs and all-time totals, plus the roster for walk-ups. |
POST /api/requests | { key, by, action: "given"|"undo", system, main, amount?, what?, id? } — tick or un-tick a hand-out; 409 on double-grants. |
GET /api/council/search · claims · recent | Council mode: item search, the ranked open claims for one item (Priority, if-won preview), the latest awards. |
POST /api/council/award · undo | { key, by, id, player, response } records an award into the loot history (standings rebuild); undo removes one by id. |
POST /api/loot/preview · import | Loot-history import: { key, text, system } reads a pasted export (CSV / TSV / JSON) and proposes the column mapping; import adds mapping, date order and default response and files the rows next to the addon data. |
GET /api/loot/imports · POST /api/loot/undo | Imports on file (with the supported loot systems and the guild default), and removal of one import. |
GET /api/roster/unknown?key=… | Log characters with no roster entry, with class, nights, likely owner and any matching Raid-Helper signup. |
POST /api/roster/link | { key, by, name, altOf | discord + discordId | pug, class?, role? } — file a character as an alt, a new main or a pickup; roster validated, backed up, audited; standings rebuild. |
POST /api/roster/reroll · link-many · rank · GET /api/roster/guild | Officer roster tools: a re-roll (new main, the old one an alt), filing several log characters at once, adopting the game's rank, and the guild roster as the addon read it. |
POST /api/loot/rclc · /api/resist/report · /api/recipes/report · /api/bank/report · /api/guild/report | What the loot master's uploader sends out of the game's SavedVariables: the RCLootCouncil history, and what the addon collected — resistance gear, recipes, the guild bank, the guild roster. Authenticated with the guild's upload token. |
GET /api/uploader/version | What the current uploader build is — version, and each file's SHA-256 and size — for the uploader's own hourly update check (1.12.0). Public, no token. |
POST /api/loot/sessions · GET /api/standings/addon | The loot decision (addon 0.10.7): the council's record of each RCLootCouncil award — candidates, responses, votes — out of the game, told to the guild with the why; and the standings into the addon's column in the voting frame. Upload token. |
GET /api/assignments/addon | The next raid's sheet as the addon's paste string — what /vrt paste takes; the assignments page copies it for the raid leader. |
GET/POST /api/settings | Guildmaster password, or the areas a Discord role was given: read every config file with its schema; write one field ({ file, path, value }), a whole file ({ file, doc }) or a section's Save at once ({ changes: [...] }) — the pages rebuild by themselves after it, and GET /rebuild says when they show it. /preview says who moves before a save, /versions and /restore bring back any of the last 30 versions of a file, /pricing lists the guild's loot responses with examples; /restart does what it says; /unlock hands the officer passphrase to a guildmaster login. |
Data flow: Warcraft Logs (attendance · parses · consumables) + Raid-Helper (signups · comps) + RCLootCouncil history (read straight from the game files, or imported) rebuild everything nightly at 23:45; officer edits publish within ~a minute. Alts always roll below mains, and the council always has the last word.