×
Create a new article
Write your page title here:
We currently have 69 articles on Super Shiritori Wiki. Type your article name above or click on one of the titles below and start writing!



Super Shiritori Wiki

Protori: Difference between revisions

Welcome to Super-Shiritori!

Please remember:

  • No vandalism – Do not add nonsense, false info, spam, or blank pages.
  • Respect others – Be polite and assume good faith.
  • Use reliable information – Make sure edits are accurate and IMPORTANT.
  • Stay constructive – Help us grow the wiki with content, especially with the Word compendium.

⚠️ Repeated vandalism or rule-breaking may result in warnings or blocks. If you see vandalism, please revert it and notify an admin.

No edit summary
No edit summary
 
Line 14: Line 14:


A server's <code>/toggle_corrections</code> setting (the same one used by regular multiplayer Shiritori) also applies to Protori: with it off, an invalid word gets an explanatory message alongside its ❌ reaction; with it on, invalid words are only ever marked with a reaction.
A server's <code>/toggle_corrections</code> setting (the same one used by regular multiplayer Shiritori) also applies to Protori: with it off, an invalid word gets an explanatory message alongside its ❌ reaction; with it on, invalid words are only ever marked with a reaction.
=== The Overlap Rule, Explained ===
Rule 1 above is the one that most often confuses new players, since it isn't simply "start with the last letter" the way regular Shiritori is. Take the 9-letter word <code>{{wc|gyroscope}}</code>: a legal next word can start from '''any''' of the following eight positions, matching from the 2nd letter of <code>gyroscope</code> all the way down to just its final letter — <code>yroscope</code>, <code>roscope</code>, <code>oscope</code>, <code>scope</code>, <code>cope</code>, <code>ope</code>, <code>pe</code>, or <code>e</code> — and no other starting point is valid. The word only needs to start with '''one''' of these; it doesn't need to be a recognizable prefix, a real word on its own, or any specific length beyond that range. Only the '''longest''' overlap a submitted word actually achieves counts toward its [[#Chain Bonus|chain bonus]] below, but any of the shorter overlaps in that same list would have made the word legal in the first place.
Notice that matching the ''entire'' previous word — all nine letters of <code>gyroscope</code> itself — is deliberately not on that list; the cap always stops one letter short of the full word. This is intentional, not an oversight: if the complete previous word counted as a valid overlap, a player could always trivially satisfy the rule by taking the previous word whole and simply tacking a letter onto the end of it — most obviously, pluralizing an unpluralized word by adding an "s" (<code>cat</code> → <code>cats</code>) — without the new word actually needing to diverge from the old one at all. Requiring the overlap to stop at least one letter short of the full word closes that loophole off entirely.
'''Just how much that loophole would be worth:''' the 31-letter word <code>{{wc|Dichlorodiphenyltrichloroethane}}</code> (the common name for {{wc|DDT}}) has a base score of '''46''' points against the [[#Base Score|letter-value table]] above. If a full-word overlap were legal, a reply of <code>Dichlorodiphenyltrichloroethanes</code> — literally the same word with nothing but an "s" tacked on — would match all 31 letters of the word before it. Its own base score of 47 (46, plus 1 for the added "s") would then round up to '''62''' points at a hypothetical +31% chain bonus: '''16 points more''' than the original word scored — roughly '''35% higher''' — for a "new" word that took zero actual chain-matching skill, just noticing the word on screen wasn't already plural. Under the rule as it actually works, this exact move isn't merely worth less; it isn't legal at all. <code>Dichlorodiphenyltrichloroethanes</code> only ever begins with the '''start''' of the previous word, never with any of its real ending portions once the trivial full-word case is excluded — so it has '''no valid overlap whatsoever''' and would simply be rejected outright.


== Scoring ==
== Scoring ==
Line 172: Line 179:


Unless the game was ended by an admin (<code>/end_protori</code> stops it permanently, with no restart), a new Protori game starts automatically in the same channel after a 2-minute cooldown, mirroring how multiplayer Shiritori's own auto-restart behaves.
Unless the game was ended by an admin (<code>/end_protori</code> stops it permanently, with no restart), a new Protori game starts automatically in the same channel after a 2-minute cooldown, mirroring how multiplayer Shiritori's own auto-restart behaves.
== Game Records ==
Separately from the per-player statistics below, every game is also checked against two all-time records the moment it ends: the longest Protori game ever played in that specific channel, and the longest one ever played anywhere on that server — both measured by unique words played, not raw turn count. Whichever is relevant is announced right alongside the end-of-game leaderboard embed: a game that just set a new record gets a "🏆 '''NEW CHANNEL RECORD!'''" and/or "🏆 '''NEW SERVER RECORD!'''" celebration, while any other game instead gets told how far short it fell, e.g. "''N'' turns until Channel Record of ''X''". This same record-tracking system is shared with regular [[Multiplayer Shiritori]] and its [[Multiplayer Shiritori#Timed Shiritori|Timed Shiritori]] variant, each keeping its own independent set of channel/server records.


== Statistics ==
== Statistics ==
Line 178: Line 188:
Protori also has its own set of achievements — see the "Shiritoris" category on [[Achievements]] — covering score milestones (from a game-ending negative score up to reaching 25,000 points), single-word scoring feats, and related Timed Shiritori and solo-AI achievements grouped alongside it.
Protori also has its own set of achievements — see the "Shiritoris" category on [[Achievements]] — covering score milestones (from a game-ending negative score up to reaching 25,000 points), single-word scoring feats, and related Timed Shiritori and solo-AI achievements grouped alongside it.


Unlike multiplayer Shiritori and Solo Shiritori, Protori has no [[AI Bots|AI opponent]] support at all — there is no equivalent of <code>/invite_ai</code> here. Attempting it during an active Protori match is rejected outright, and the first player to try it unlocks the "Ghosted" achievement.
Unlike multiplayer Shiritori and Solo Shiritori, Protori has no [[AI Bots|AI opponent]] support at all — there is no equivalent of <code>/invite_ai</code> here. Using <code>/invite_ai</code> while a Protori game is active in that channel is specifically rejected with:
<blockquote>"❌ AIs have gone fishing in Protori channels. No signal to give any a call."</blockquote>
and the first player to see that message unlocks the "Ghosted" [[Achievements|achievement]] (later attempts don't re-trigger it). <code>/murder_ai</code> has no equivalent Protori-specific check of its own — since a Protori game and a regular multiplayer game can never be active in the same channel at the same time (see [[#Starting a Game|Starting a Game]] above), it simply reports "No active multiplayer Shiritori game in this channel" instead, the same generic message it gives anywhere else with no AI to remove.


== The Protori Role ==
== The Protori Role ==
Line 185: Line 197:
== History ==
== History ==
Protori originally restricted both which server could run the mode at all and who could participate in it to holders of the level-12 role described above, scoped to the bot's home server specifically. That restriction has since been removed: any server can now start and fully play a Protori game through <code>/start_protori</code>, and the level-12 role is purely the cosmetic reward described above rather than a gameplay gate.
Protori originally restricted both which server could run the mode at all and who could participate in it to holders of the level-12 role described above, scoped to the bot's home server specifically. That restriction has since been removed: any server can now start and fully play a Protori game through <code>/start_protori</code>, and the level-12 role is purely the cosmetic reward described above rather than a gameplay gate.
Protori keeps [[Multiplayer Shiritori]]'s core word-chain-matching rule but overrides several of its base behaviors outright — a freeform turn order instead of a fixed rotation, a running score instead of simple survival, and a different way for a game to end. See [[Ghost (Owner)#Design Philosophy|Ghost's Design Philosophy]] for how this fits into a broader analogy Ghost uses for the relationship between the bot's game modes.


Saving a game's state used to be a direct, synchronous disk write performed on every single turn, right on the bot's one shared event loop — since every other game mode, in every server, runs on that same loop, a large Protori game (achievement thresholds go up to 25,000 points, implying a lot of turns) could measurably stall every other concurrent game across the entire bot on every word played. That save now happens on a background thread instead.
Saving a game's state used to be a direct, synchronous disk write performed on every single turn, right on the bot's one shared event loop — since every other game mode, in every server, runs on that same loop, a large Protori game (achievement thresholds go up to 25,000 points, implying a lot of turns) could measurably stall every other concurrent game across the entire bot on every word played. That save now happens on a background thread instead.

Latest revision as of 18:47, 29 August 2026

Protori

Protori is a scoring-based variant of multiplayer Shiritori, played in a shared text channel. Rather than simply extending a word chain for its own sake, every accepted word earns points, and the game is built around chasing a high score rather than outlasting other players.

Starting a Game

A server member with the Manage Messages permission, the bot owner, or a word curator can start a game with /start_protori [#channel]. A Protori game and a multiplayer Shiritori game cannot both run in the same channel at once; starting either is rejected if the other is already active there. The bot posts the rules along with a random starting word, and a "Point System Explained?" button that shows a private, detailed breakdown of the scoring formula (including a worked example) to whoever clicks it.

Rules

  1. A word must match some ending portion of the previous word — anywhere from just its final letter up to every letter but the first. A word with no such overlap at all is rejected.
  2. Words must be between 2 and 80 characters long, contain only letters, hyphens, and apostrophes, and be found in the dictionary.
  3. A player cannot play twice in a row; someone else must play before the same player can go again.
  4. Unlike regular multiplayer Shiritori, there is no fixed turn order beyond that rule — any eligible player in the channel may play the next word whenever they're ready.
  5. Playing a word that has already been used in the game ends it immediately (see Ending a Game below).

A server's /toggle_corrections setting (the same one used by regular multiplayer Shiritori) also applies to Protori: with it off, an invalid word gets an explanatory message alongside its ❌ reaction; with it on, invalid words are only ever marked with a reaction.

The Overlap Rule, Explained

Rule 1 above is the one that most often confuses new players, since it isn't simply "start with the last letter" the way regular Shiritori is. Take the 9-letter word Expression error: Unrecognized punctuation character "{".: a legal next word can start from any of the following eight positions, matching from the 2nd letter of gyroscope all the way down to just its final letter — yroscope, roscope, oscope, scope, cope, ope, pe, or e — and no other starting point is valid. The word only needs to start with one of these; it doesn't need to be a recognizable prefix, a real word on its own, or any specific length beyond that range. Only the longest overlap a submitted word actually achieves counts toward its chain bonus below, but any of the shorter overlaps in that same list would have made the word legal in the first place.

Notice that matching the entire previous word — all nine letters of gyroscope itself — is deliberately not on that list; the cap always stops one letter short of the full word. This is intentional, not an oversight: if the complete previous word counted as a valid overlap, a player could always trivially satisfy the rule by taking the previous word whole and simply tacking a letter onto the end of it — most obviously, pluralizing an unpluralized word by adding an "s" (catcats) — without the new word actually needing to diverge from the old one at all. Requiring the overlap to stop at least one letter short of the full word closes that loophole off entirely.

Just how much that loophole would be worth: the 31-letter word Expression error: Unrecognized punctuation character "{". (the common name for Expression error: Unrecognized punctuation character "{".) has a base score of 46 points against the letter-value table above. If a full-word overlap were legal, a reply of Dichlorodiphenyltrichloroethanes — literally the same word with nothing but an "s" tacked on — would match all 31 letters of the word before it. Its own base score of 47 (46, plus 1 for the added "s") would then round up to 62 points at a hypothetical +31% chain bonus: 16 points more than the original word scored — roughly 35% higher — for a "new" word that took zero actual chain-matching skill, just noticing the word on screen wasn't already plural. Under the rule as it actually works, this exact move isn't merely worth less; it isn't legal at all. Dichlorodiphenyltrichloroethanes only ever begins with the start of the previous word, never with any of its real ending portions once the trivial full-word case is excluded — so it has no valid overlap whatsoever and would simply be rejected outright.

Scoring

Every accepted word earns points from two parts: a base score and a chain bonus.

Base Score

A word's base score is the sum of its letters' point values, using a flat table calibrated to how rare each letter actually is across the dictionary rather than a standard Scrabble tile distribution:

Letter/Symbol Points Letter Points Letter Points Letter Points
' 8 h 3 o 1 v 4
- 1 i 1 p 3 w 4
a 1 j 4 q 10 x 8
b 3 k 4 r 1 y 4
c 1 l 1 s 1 z 5
d 2 m 3 t 1
e 1 n 1 u 2
f 4
g 3

An apostrophe is worth as much as any of the rarest letters (8 points), and a hyphen is worth as little as the most common ones (1 point).

Comparison to Scrabble

Protori's letter values are explicitly not the standard tile-point distribution used in Scrabble, despite drawing on the same basic idea (rarer letters are worth more). Laid side by side:

Letter Protori Scrabble Difference
A 1 1
B 3 3
C 1 3 Protori −2
D 2 2
E 1 1
F 4 4
G 3 2 Protori +1
H 3 4 Protori −1
I 1 1
J 4 8 Protori −4
K 4 5 Protori −1
L 1 1
M 3 3
N 1 1
O 1 1
P 3 3
Q 10 10
R 1 1
S 1 1
T 1 1
U 2 1 Protori +1
V 4 4
W 4 4
X 8 8
Y 4 4
Z 5 10 Protori −5

Neither the apostrophe nor the hyphen has a Scrabble equivalent at all — Scrabble's physical tile set has no punctuation.

Nineteen of the twenty-six letters carry identical values in both systems; only seven diverge, and every divergence is Protori valuing the letter lower than Scrabble except for G and U. The two biggest gaps are both letters Protori considers far more common than Scrabble does: Z (5 vs. 10) and J (4 vs. 8). That tracks with how the two point systems were actually built — Scrabble's values reflect letter frequency across general English text, while Protori's are calibrated against its own roughly 1.67-million-word dictionary, which leans heavily on scientific, technical, and foreign-derived vocabulary where Z and J show up far more often than they would in ordinary English writing.

Chain Bonus

Matching more of the previous word's ending — beyond just its last letter — adds a bonus of roughly +1% of the word's base score per matched character. A word that only matches the previous word's final letter gets no bonus at all; one that matches deep into a long previous word can gain up to roughly +79%.

Example: the word quiz has a base score of Q(10) + U(2) + I(1) + Z(5) = 18. If it matched 5 characters of the ending of the previous word, its final score would be round(18 × 1.05) = 19 points.

There are no attack mechanics, penalties for other players, or bonus-emoji reactions in the current version of Protori — score is purely base score plus chain bonus.

Notable High-Scoring Words

Checking the dictionary directly against the letter-point table above (base score only, no chain bonus) turns up some of the highest-scoring legitimate entries a player could actually play:

Word Base Score Length
Expression error: Unrecognized punctuation character "{". 290 58
Expression error: Unrecognized punctuation character "{". 234 29
Expression error: Unrecognized punctuation character "{". 225 24
Expression error: Unrecognized punctuation character "{". 220 79
Expression error: Unrecognized punctuation character "{". 187 45
Expression error: Unrecognized punctuation character "{". 181 50
Expression error: Unrecognized punctuation character "{". 175 75
Expression error: Unrecognized punctuation character "{". 171 44
Expression error: Unrecognized punctuation character "{". 164 41
Expression error: Unrecognized punctuation character "{". 163 70
Expression error: Unrecognized punctuation character "{". 163 77
Expression error: Unrecognized punctuation character "{". 159 41
Expression error: Unrecognized punctuation character "{". 159 66
Expression error: Unrecognized punctuation character "{". 157 39
Expression error: Unrecognized punctuation character "{". 156 58
Expression error: Unrecognized punctuation character "{". 155 66
Expression error: Unrecognized punctuation character "{". 155 51
Expression error: Unrecognized punctuation character "{". 155 52
Expression error: Unrecognized punctuation character "{". 155 77
Expression error: Unrecognized punctuation character "{". 154 80
Expression error: Unrecognized punctuation character "{". 153 79
Expression error: Unrecognized punctuation character "{". 153 76
Expression error: Unrecognized punctuation character "{". 153 50
Expression error: Unrecognized punctuation character "{". 152 19
Expression error: Unrecognized punctuation character "{". 151 65

all within Protori's 80-character limit, computed against the exact letter-value table above with no chain bonus applied.

Ending a Game

Playing an already-used word ends the game immediately and costs that player a 250-point penalty, with a pointed message calling them out for it. When the game ends — whether by a repeat, or manually via /end_protori — the bot posts a final leaderboard (up to the top 20 scores), the number of unique words played, and the dictionary-coverage percentage that represents.

Unless the game was ended by an admin (/end_protori stops it permanently, with no restart), a new Protori game starts automatically in the same channel after a 2-minute cooldown, mirroring how multiplayer Shiritori's own auto-restart behaves.

Game Records

Separately from the per-player statistics below, every game is also checked against two all-time records the moment it ends: the longest Protori game ever played in that specific channel, and the longest one ever played anywhere on that server — both measured by unique words played, not raw turn count. Whichever is relevant is announced right alongside the end-of-game leaderboard embed: a game that just set a new record gets a "🏆 NEW CHANNEL RECORD!" and/or "🏆 NEW SERVER RECORD!" celebration, while any other game instead gets told how far short it fell, e.g. "N turns until Channel Record of X". This same record-tracking system is shared with regular Multiplayer Shiritori and its Timed Shiritori variant, each keeping its own independent set of channel/server records.

Statistics

Protori tracks its own stats per player, separate from multiplayer Shiritori's: total points, turns played, hyphens and apostrophes used, longest word, unique words played, and how many games ended because that player repeated a word. These can be viewed with /protori_stats (global totals plus a per-server breakdown, Public/Private) and compared with /protori_leaderboard (server or global).

Protori also has its own set of achievements — see the "Shiritoris" category on Achievements — covering score milestones (from a game-ending negative score up to reaching 25,000 points), single-word scoring feats, and related Timed Shiritori and solo-AI achievements grouped alongside it.

Unlike multiplayer Shiritori and Solo Shiritori, Protori has no AI opponent support at all — there is no equivalent of /invite_ai here. Using /invite_ai while a Protori game is active in that channel is specifically rejected with:

"❌ AIs have gone fishing in Protori channels. No signal to give any a call."

and the first player to see that message unlocks the "Ghosted" achievement (later attempts don't re-trigger it). /murder_ai has no equivalent Protori-specific check of its own — since a Protori game and a regular multiplayer game can never be active in the same channel at the same time (see Starting a Game above), it simply reports "No active multiplayer Shiritori game in this channel" instead, the same generic message it gives anywhere else with no AI to remove.

The Protori Role

Separately from gameplay, any member of the bot's home server who reaches overall level 12 (through any game mode, not Protori specifically) is automatically granted a dedicated Protori-themed Discord role, checked by a background scan roughly once a minute. This role is a cosmetic reward tied to general progress — it does not gate who is allowed to actually play Protori.

History

Protori originally restricted both which server could run the mode at all and who could participate in it to holders of the level-12 role described above, scoped to the bot's home server specifically. That restriction has since been removed: any server can now start and fully play a Protori game through /start_protori, and the level-12 role is purely the cosmetic reward described above rather than a gameplay gate.

Protori keeps Multiplayer Shiritori's core word-chain-matching rule but overrides several of its base behaviors outright — a freeform turn order instead of a fixed rotation, a running score instead of simple survival, and a different way for a game to end. See Ghost's Design Philosophy for how this fits into a broader analogy Ghost uses for the relationship between the bot's game modes.

Saving a game's state used to be a direct, synchronous disk write performed on every single turn, right on the bot's one shared event loop — since every other game mode, in every server, runs on that same loop, a large Protori game (achievement thresholds go up to 25,000 points, implying a lot of turns) could measurably stall every other concurrent game across the entire bot on every word played. That save now happens on a background thread instead.

The background scan behind the Protori Role described above used to re-check every eligible member on every single pass with no memory of the outcome between passes — a member who had reached level 12 and then left the server (or was simply never cached) got re-fetched from Discord's API every single minute, forever, with no pacing between consecutive lookups in the same pass. Since the underlying level data only ever grows over a bot's lifetime, this got slower and more prone to tripping Discord's rate limits over time, and was found to be a real contributing factor during an investigation into a live outage. It now remembers which users are confirmed to no longer be members (skipping them for the rest of that session) and pauses briefly between lookups, so the scan can no longer grow into a rate-limit problem the way it previously could.

/start_protori and /end_protori could previously fail outright with a generic Discord "Unknown interaction" error if their own background setup or teardown work took longer than Discord's 3-second initial-response window. Both commands now acknowledge the interaction immediately and send their actual response afterward, removing the crash.

See also