policesquadquest/cases/case-10-plot-device/rooms/room4.json
type-two 72815f8c55 Case Six: Testimony of Evil — the whiskey exploit is the puzzle
Act I, monochrome. Five rooms, 100 points, verified at 100/100 with four
verified deaths.

Built out of John's Police Quest material. PQ1's famous 8-bit integer underflow
is not an easter egg here, it is the central puzzle: Frank signs for a $40
operational float clipped to a note reading DO NOT EXCEED YOUR FLOAT, the back
room costs $2,500, and exceeding the float by one dollar wraps the department
ledger's eight-bit field to 255 — the terminal appends the cents column and
authorises $2,550.00. He keeps drinking to 132 because it will not do to stop
suddenly. Accounts raise it in March; it goes to a hearing.

PQ1's Gremlin runs through the whole case and is never resolved: chickens on the
Captain's desk, on Al's shoulder, on the murdered guest star, and one in the
winning freeze-frame. Nobody has said the word "chicken" out loud in eleven
years. No file was ever opened.

Then the stage: six memorised jokes, in order, and every "improvise" option is
fatal — plus a full glass on a stool three feet from the microphone, which is
how Danny Cavanaugh died and which you must not touch.

Linter gained the rule that actually caused this session's bug: MRPGI's
obj_matches is a BIDIRECTIONAL substring test over name AND synonyms, and
match_obj takes the first hit in array order, so an earlier object can make a
later one unreachable by its own name. `talk barman` was addressing `clubbar`.
It found two more: `sideboard` swallowing `cardtable`, and `bouncer` swallowing
`bunkerdoor` — the last of which shipped broken in Case Ten. All six cases lint
clean and all six still win.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-25 23:11:22 +10:00

286 lines
8.8 KiB
JSON

{
"name": "THE BROKEN CIRCLE — Members Only",
"enter_text": "Cyan light, no windows, and eleven people who have each been individually more expensive than this building.",
"music": 5,
"strokes": [
{
"Rect": {
"x": 0,
"y": 0,
"w": 160,
"h": 168,
"color": 0,
"meaning": "Floor"
}
},
{
"Rect": {
"x": 0,
"y": 0,
"w": 160,
"h": 64,
"color": 0,
"meaning": "Wall"
}
},
{
"Ellipse": {
"x": 56,
"y": 6,
"w": 48,
"h": 44,
"color": 11,
"meaning": "None"
}
},
{
"Ellipse": {
"x": 62,
"y": 12,
"w": 36,
"h": 32,
"color": 0,
"meaning": "None"
}
},
{
"Rect": {
"x": 68,
"y": 4,
"w": 24,
"h": 10,
"color": 0,
"meaning": "None"
}
},
{
"Rect": {
"x": 0,
"y": 62,
"w": 160,
"h": 3,
"color": 3,
"meaning": "None"
}
},
{
"Rect": {
"x": 0,
"y": 65,
"w": 160,
"h": 103,
"color": 0,
"meaning": "Floor"
}
},
{
"Rect": {
"x": 0,
"y": 96,
"w": 160,
"h": 1,
"color": 1,
"meaning": "None"
}
},
{
"Rect": {
"x": 0,
"y": 130,
"w": 160,
"h": 1,
"color": 1,
"meaning": "None"
}
},
{
"Rect": {
"x": 8,
"y": 14,
"w": 6,
"h": 40,
"color": 13,
"meaning": "None"
}
},
{
"Rect": {
"x": 22,
"y": 22,
"w": 6,
"h": 32,
"color": 3,
"meaning": "None"
}
},
{
"Rect": {
"x": 132,
"y": 14,
"w": 6,
"h": 40,
"color": 13,
"meaning": "None"
}
},
{
"Rect": {
"x": 146,
"y": 22,
"w": 6,
"h": 32,
"color": 3,
"meaning": "None"
}
},
{
"Rect": {
"x": 0,
"y": 164,
"w": 160,
"h": 4,
"color": 0,
"meaning": "Wall"
}
}
],
"spawn": [
16,
148
],
"exits": [
null,
5,
null,
3
],
"exit_flags": [
"",
"knows_plan",
"",
""
],
"exit_blocked": [
"",
"You know who. You do not know when or where, and there are nine hours left of this year.",
"",
""
],
"objects": [
{
"name": "bouncer",
"sprite": "bouncer",
"x": 34,
"y": 116,
"look": "The door. Two hundred and forty pounds of it, with an earpiece and a list, and your name has never been on any list.",
"synonyms": "doorman security guard rope",
"needs": "matchbook",
"use_text": "You show him the matchbook. He looks at it, then at you, then at Beth, and decides — as men on doors have decided about you your entire life — that whatever this is, it is above his pay grade and below his interest. He unhooks the rope."
},
{
"name": "clubbar",
"sprite": "clubbar",
"x": 76,
"y": 112,
"look": "The bar. No prices anywhere. In your experience, a room with no prices is a room where you are the product.",
"synonyms": "bar counter drinks",
"use_text": "You order a glass of milk. The bartender does not blink, does not comment, and produces a glass of milk, because at this establishment the entire business model is not blinking."
},
{
"name": "bunkerdoor",
"sprite": "bunkerdoor",
"x": 128,
"y": 100,
"look": "At the back of the club, behind a rope nobody crosses, is a circular steel blast door in a concrete wall. It is nine feet across. It is not a wine cellar. Nobody puts a keypad on a wine cellar.",
"synonyms": "door blast steel vault bunker keypad",
"use_text": "Sealed. Through the glass port you can see a corridor, and stores, and racking, and enough tinned food for eleven people to sit out something for a very long time. Eleven people. You counted eleven people in this club."
},
{
"name": "gustafson",
"sprite": "gustafson",
"x": 108,
"y": 138,
"look": "The big Norwegian who has been standing at Cane's shoulder all evening, and who is roughly six feet two, and who therefore fits Simon Davenport's driver's seat exactly.",
"synonyms": "sig norwegian henchman big man blond",
"requires_flag": "decommissioned",
"points": 10,
"sets_flag": "knows_plan",
"use_text": "You take him in the car park in nine seconds, which is two seconds off your father's record and which you will be quietly pleased about for a week. He talks immediately, and he talks a great deal, because enormous men who have never once been beaten have no idea how to be beaten. Gustafson: Midnight. The arena. He has bought the ball — the New Year's ball, the one on the wire, the one four hundred million people watch drop. The device goes inside it. When it opens, it opens over everybody at once."
},
{
"name": "cane",
"sprite": "cane",
"x": 76,
"y": 142,
"look": "Richard Cane. Forty-one billion dollars, a gilet, and the specific calm of a man who has never once been told no by anybody whose opinion he could not buy.",
"synonyms": "richard billionaire tech ceo man",
"points": 10,
"sets_flag": "decommissioned",
"use_text": "You ask Richard Cane about a safe deposit box. He answers you politely and at length, and while he is answering, he takes out his phone and does not hide that he is taking out his phone, and makes one call, and does not hide that either. By the time you reach the car park your badge has been suspended, Police Squad has been dissolved by a budget amendment that was tabled eleven days ago, and Chief Davis is calling you for the last time as a person who can call you. You are a private citizen with a matchbook and a novelist.",
"dialogue": [
{
"says": "Cane: Detective! The bank man. Thirty hostages, no shots. That's beautiful work. Genuinely. I mean that. He does mean it. That is somehow the worst part.",
"choices": [
{
"text": "Simon Davenport worked for you.",
"goto": 1
},
{
"text": "What's behind the steel door, Mr. Cane?",
"goto": 2
},
{
"text": "You have a very firm handshake.",
"goto": 3
}
]
},
{
"says": "Cane: Simon was the best I ever hired. What happened to him is a tragedy and I've said so publicly. He has. Eleven times. In writing. Which is eleven more times than anybody asked.",
"choices": [
{
"text": "His hands weren't on the wheel.",
"goto": 4
}
]
},
{
"says": "Cane: Storage. Beth, beside you, says nothing at all, and writes something down, and he watches her write it, and smiles at her while she does.",
"choices": [
{
"text": "That's a lot of tinned storage.",
"goto": 4
}
]
},
{
"says": "Cane: Thank you! I work on it. He does. There is a man. It is a real job.",
"choices": [
{
"text": "It shows.",
"goto": 0
}
]
},
{
"says": "Cane: Detective. Do you know what the problem is? Everybody talks. Everybody has a position. Everybody argues, all day, about everything, and nothing has been built in this country in forty years. He looks at you with total, transparent sincerity — the exact expression you have been giving people your entire life, coming back at you from the wrong face. Cane: I'm not going to hurt anybody. I'm going to make it quiet.",
"choices": [
{
"text": "Quiet isn't peace, Mr. Cane.",
"goto": -1
}
]
}
]
},
{
"name": "paperclip",
"sprite": "paperclip",
"x": 20,
"y": 92,
"look": "On a wall-mounted display beside the coat check, an animated paperclip with two enormous eyes has been trying to help somebody with something since roughly 1998.",
"synonyms": "clip assistant screen display helper",
"use_text": "It looks like you're trying to expose a billionaire's plan to sedate the human species. Would you like help with that? You say yes. You say it out loud, in a nightclub, to a screen. It helps. It helps enormously. You will never be able to explain this part to anybody and you will stop trying."
}
]
}