game-mechanics
Harder combos, not more kinds of fruit
Five new combos turn a design review into grape, melon, carrot, and a reusable tier system for harder versions of existing skills.
the norwegian umbrella: full bilingual gameplay across every mode, and the main menu restructure
Bringing Norwegian back properly as a PRD-driven umbrella project, introducing a 29-letter alphabet, per-language letter rarity, and a brand new main menu.
the pvp duel system: server-authoritative state
Building the biggest single system in the game: dueling a friend asynchronously, backed by a server-authoritative engine and a compare-and-set turn model.
storing less, submitting once
Privacy deletion of rejected words and making the leaderboard submission idempotent to ensure a service players can trust.
A camera for a game that keeps changing
A scripted Playwright player records every combo on demand, while a browser prototype replaces platform emoji with a smaller, themeable icon language.
Teach what the player has not found
A pure hint engine turns missing player actions into timely guidance, combo rewards and hints share one notice system, and the abandoned native-client backend comes out.
Reward the risk, explain the fruit
Snake growth becomes a scoring lever, combo fruit gets feedback at the moment it appears, and the interface stops teaching before the player can act.
A contract before the client
The planned native client gets an offline submission path, a bundled dictionary, and an API compatibility rule before its first install exists.
What the end of a game should say
The end-game dialog gets a hierarchy, sharing survives the trip to the daily countdown, and the final board becomes part of the result without storing the whole game.
Showing the snake where it's about to go
A ghost-path overlay that simulates each keystroke before it happens, a collision rule that took two attempts to get right, and the interactive demo it made redundant.