Word Chain Scoring System
Scoring looks simple until you get into a longer run and realize combo, stability, and word length are all pulling on each other. Once that clicks, the big score swings stop feeling random.
Core score formula
Difficulty bonus is +0 on Easy, +1 on Normal, and +3 on Hard. Longer words and sustained streaks amplify each other, so score optimization is mostly a chain-quality problem.
- baseScore = clamp(wordLength, 1..20) + difficultyBonus
- combo = min(2.5, 1 + streak / 10)
- gainedScore = round(baseScore * combo)
Timed stability thresholds
Stability is capped and when it reaches zero in timed mode, the run ends. This is why repeated short emergency words are dangerous even when they keep the chain technically valid.
- Easy: words under 3 letters give stability -1; words >= 6 restore +1.
- Normal: words under 4 letters give stability -1; words >= 7 restore +1.
- Hard: words under 5 letters give stability -2; words >= 8 restore +2.
Reactor charge model
Reactor capacity is finite, and overflow matters for card offers. In longer runs, score planning and reactor planning are really the same problem.
- Base reactor charge = wordLength + difficultyReactorBonus + rareLetterBonus + 2.
- Difficulty reactor bonus: Easy +0, Normal +1, Hard +2.
- Pulse Echo card boosts next charge event by 50 percent.
Worked example (Normal mode)
If streak is 12 and you submit a 7-letter word on Normal: baseScore is 8 (7 + 1). Combo is 2.2 (1 + 12/10). Gained score rounds from 17.6 to 18. This is why maintaining streak has disproportionate impact compared to chasing only long words.