Revive orders WIP
Revive orders let anyone on your server (members of your faction or guests) order revives for a specific person or a specific faction, and let your revivers get credited for them. It works like Mercenary work, but nothing is watched automatically: a reviver does the revives in Torn and then presses a button.
The flow
- A manager posts the panel with
/revive-panel. The button Order Revives (beta) opens a private ticket thread and asks a few questions: who (a person or a faction, a target is required), when (both times optional) and how many revives at most (required). The price comes later: a manager sends a price offer in the thread. A default price under Revive settings is optional (it is only the suggested value in the manager's form); tickets work without it. - A revive manager presses Set price (or Reject) under the request and enters the price per revive. The client sees "Price offer for order #N: $X per revive, max N revives, maximum total $Y" and presses Accept price or Decline price (only the client can). A declined offer goes back to the managers for a new price, as often as needed. The client never sees the commission. Tickets submitted before price offers existed keep their fixed price and the old Approve button.
- After the client accepts, the thread shows a
Paid button: a manager presses it once the client has paid (in-game, the bot never sends
money). Only then can
/revive-order id:Nstart the order. - Starting an order opens the job thread. The channel it was started in gets an announcement that pings the
reviver role and asks people to join the thread (click the link, nobody is added automatically); it stays while the
order runs and disappears when the order is closed (the "has ended" message stays). Inside the thread the bot never
pings a role, only
@here(the start call), which reaches just the people who joined: leave the thread if the order isn't for you. The client gets direct messages (started, time is up, max revives reached, closed) and a note in the ticket thread, never a link to the job thread. When the order is closed, the client is also told how much of the prepaid maximum (max revives times the price) is left to refund. That note appears only to the client and the managers, never in the job thread. A request that is never submitted is deleted without a word after two hours. - The job thread has one dashboard card with the status, target, payout per revive, revives so far, the time window and the top five revivers, plus the Register API key and Submit revives buttons. The bot keeps it up to date and moves it back to the bottom of the thread after a few new messages (or after someone submits revives). When the order is closed the card goes away and the results follow. The bot needs the Manage Messages permission in the thread for that.
- Revivers do the revives in Torn and press Submit revives (or use
/revive-submit) whenever they want them counted. Nothing is fetched automatically. Only successful revives that the reviver did themselves, inside the time window and on the right target, count; every revive counts once, and the limit is hard (the oldest revives count first). - A manager closes the order with
/revive-stop. The final results appear in the job thread with a Paid button: press it once the revivers are paid out. The job thread and the client's ticket thread are then deleted after 120 minutes (the operator can change that withMERC_PAID_DELETE_MINUTES).
The API key
Revivers register their own Torn key with Register API key (or
/revive-register); Limited Access is enough (Full Access keys are rejected). It is the same key as for
Mercenary work: if you registered there, you do not need a new one. The key is stored encrypted, never
shown, and /revive-unregister deletes it (that also stops your mercenary hits from counting).
If a reviver role is set under Revive settings, only that role (and managers) can register and submit.
Price, commission and payout
The price per revive is what the client pays. The server can keep a commission; the revivers only ever see their payout per revive, never the price or the commission. Payment is made by hand in Torn.
Private ping (beta)
Revivers can switch on a private ping with the Private ping button on the job's dashboard card: you get a direct message when the target lands in the hospital, so you can revive in time. It costs 1 Billfold per reviver and order (see Private ping in the Mercenary work article for balance and top-up). A confirmation DM comes first; if your DMs are closed for this server nothing is charged, so open them. Pressing the button again switches it off (no refund), switching it back on for the same order is free. One DM per hospital stay. The bot only looks at the target while at least one ping is active.
Your private ping arrives about 30 seconds before the channel ping of the hospital watch (on average, the two checks run on separate one-minute cycles). Without a private ping on the server, the channel ping comes at once.
The dashboard pages
Revive managers also get four pages on the website (navigation: Revive, all marked WIP):
- Revive orders: the prepared orders (including the ones from accepted price offers, same number
as the ticket), with price, commission, payout, target, times, limit and whether the client has paid. You can
add, edit and delete orders there (the max revives is required) and press Mark as paid for a
ticket order when its thread is not reachable any more. Start an order in Discord with
/revive-order id:N. - Revive control: the running jobs and the last 20 closed ones, with every counted revive.
Remove takes a wrong revive out at once (it never counts again; in a closed job the history is
corrected too, and a job stopped by its limit counts again once it is below the limit).
Close order needs the confirmation box and works like
/revive-stop: the bot posts the results with the Paid button in the job thread within a few seconds. - Revive history: every closed job with the ranking, the payout per reviver, whether it was paid out, and Excel and PDF export. Price and commission are only shown to managers.
- Revive settings: reviver role, price, commission and the hospital watch.
Hospital watch (beta)
Optional and off by default. Under Revive settings (Hospital watch) a manager picks a channel and switches it on. The bot then checks your connected factions once a minute (one Torn request per faction and minute, so a Torn key per faction is needed) and keeps one overview message in that channel: who is in the Torn hospital right now and when they get out. Every new hospital stay is announced once with a ping to the reviver role and a link to the player's Torn profile, so revivers can jump in. Without a reviver role nobody is pinged. Minimum hospital time left hides players who are about to leave anyway (default 10 minutes). The first check after switching it on only shows the overview, no pings. The bot needs Send Messages and Embed Links in the channel; if sending fails, the page shows the reason under Last alert error.
Beta
The Torn log format for revives is confirmed live: success counts. How Torn labels a failed
revive is not known yet, so only success counts. If a successful revive is not recognised, the
reply to Submit revives lists the result values it saw, and the operator can adjust
REVIVE_SUCCESS_RESULTS. Managers need a Revive manager role under
Access & roles; the Revive pages on the website are work in progress.
See also: Mercenary work, Torn API keys & factions, Admin roles & permissions