Fraud ScammingTexting victims
Texting victims
The burner phone, how a conversation goes, written replies or an AI, and how to set up the AI key.
On this page
Texting is how players get card details. Everything else in Fraud Scamming runs on the cards it brings in.
The burner phone
The player uses the burner_phone from the inventory: they take it out and hold it, and the camera moves in to its screen, which they use with the mouse. Escape, or using it again, puts it away. Other players see the phone in their hand.
Its apps:
- Messages: pick someone, read their file, pick who to text as, and text them.
- Cards: the card details its conversations got, sent to a laptop with Nearby share.
- Settings: wallpaper, brightness, alert volume, notifications, a screen lock PIN, About phone and Erase phone.
Each phone gets a serial of its own the first time it's used. Each new conversation uses one of its SIM's burner.texts (20); then the phone is burnt: it still opens and keeps its cards, but texts nobody new. Texts from a burner never alert the police.
How a conversation goes
Opening someone in Messages shows their file: age, work, home, bank, family, how they are, and a few things known about their life. It hints at which scam fits them and which texts will land.
The player picks who to text as (their bank's card security, a parcel firm, the hospital a relative is in, and five more) and writes first. The victim's answer comes after a moment's typing, and keeps coming with the phone in the pocket, with a notification and a buzz.
Behind every victim are four hidden values: trust, suspicion, anger and patience. Every text moves them, by the victim's personality, so a careful victim stays careful and a busy one gives up early. A conversation ends one of three ways:
- The card. Won over, the victim texts their card number, expiry and CVV, and it lands in the Cards app.
- A no. Too suspicious, too angry or out of patience, the victim says why and stops answering.
- Silence. A conversation left alone for
burner.waitseconds (10 minutes) ends quietly.
Only one player can text a victim at a time, and a texted victim sits out for a while after (texts.cooldown, by how it ended).
Written or AI
texts.mode in config.lua sets how the victim answers:
| Mode | How it plays |
|---|---|
'ai' | The player writes their own texts and an AI writes back as the victim. Needs a key. Without one, or whenever the AI can't be used, new conversations are written ones instead |
'written' | The player picks one of up to four replies each turn, and the victim answers from a written conversation. Nothing to set up, and nothing leaves the server |
So Messages works with no key at all. Every scam has a written conversation in dialogue/conversations/, and both kinds run on the same four values and personalities, so a victim is as hard to win either way. To change them or write your own, see Writing conversations.
An AI key
The AI is a chat API the server asks over the internet, so it needs an account with a provider and that account's key. tr_fraud is set up for DeepSeek:
Make a key
Make an account at platform.deepseek.com, add credit under Top up, and make a key under API keys.
Another provider works too, as long as its chat API is of the OpenAI kind: change texts.ai.url and texts.ai.model in config.lua, and put anything else its API wants in the request in texts.ai.extra.
What the AI decides
Only what the victim writes. With every text it also scores the player's last one (how convincing, how rude, how much it gives the scam away), and the script turns those scores into the four hidden values. The values decide when the victim stops answering and when they send their card, so the AI can't be talked into handing a card over. It is never told the card: the script writes the card out itself when the conversation is won.
The AI is told the same file the player sees. A text built on something true in it lands; a wrong bank or a wrong name counts against the player.
When the AI can't be used
New conversations are written ones without a key, while the provider can't be reached or refuses the key (the console says which, and it's tried again after texts.ai.retry minutes), and once texts.ai.dailyTokens is used up for the day.
When the AI doesn't answer in the middle of a conversation, nothing comes and the player can write again. Twice running and the victim is gone, and can be texted again at once.
Cost and privacy
At DeepSeek's prices when this was written, a whole conversation cost about a tenth of a cent. texts.ai.dailyTokens is the most the script lets the AI use in a day. The count is kept in memory, so restarting the script starts the day again: set a spending limit with the provider as well. Written conversations cost nothing.
With the AI, what players text is sent to the provider, along with the made-up victim they're texting. Nothing about the player goes with it: no name, no identifier, no IP. Say so in your server's rules if your players should know.
Settings
| Setting | Default | What it does |
|---|---|---|
burner.texts | 20 | New conversations one phone's SIM is good for |
burner.wait | 600 | Seconds a conversation waits for the player's next text |
texts.mode | 'ai' | 'ai' or 'written', see above |
texts.cooldown | { success = 60, hangup = 20, dropped = 5, lost = 0 } | Minutes before a victim can be texted again, by how it ended |
texts.cards | 20 | Card details a phone, and a laptop, keeps; the oldest go first |
texts.ai.maxChars | 240 | Characters in one text from the player |
texts.ai.turns | 14 | Texts the player gets before the victim has had enough |
texts.ai.timeout | 12 | Seconds to wait for the AI before asking once more |
texts.ai.dailyTokens | 3000000 | Tokens the AI may use in a day (0 for no limit). A conversation takes 4,000 to 20,000 |
texts.ai.retry | 5 | Minutes no new AI conversations start after the AI failed |
Still stuck? Open a ticket on Discord.Privacy