Inspiration
We love the satisfaction of finding a word, but we wanted a word game whose visual world felt as inviting as the puzzle itself. To us, familiar word-game presentation can feel static and utilitarian, especially beside the expressive worlds younger players enjoy in other games.
ZINK! is our attempt to build a bridge: keep wordplay approachable for longtime fans, while giving younger word lovers a world they want to spend time in. Bold block art, a playful geeky personality, expressive characters and customizable themes give the genre a fresh identity. Our aim is a game that feels welcoming across generations.
At its heart is the moment when an answer is almost within reach. You recognize the clue, the clock is running, and one letter might be enough. Do you take it, or trust yourself a little longer? Every revealed letter has a visible cost. That simple decision gives the playful presentation a challenge worth returning to.
What it does
ZINK! gives you a definition and the number of letters in its answer. A five-letter word starts at 500 points; revealing a letter reduces its value by 100. Solve consecutive words without revealing letters to build a chain.
The round clock runs while you think. Tap Answer to pause that clock and start a short answer window. Revealed letters stay in their answer slots while you use the custom keyboard, and no more letters can be revealed once you commit to answering.
Daily challenges give players in the same language world a shared set of words and a leaderboard. Practice and the archive offer more rounds. Crossings changes the pace with untimed intersecting-word puzzles, where completed answers reveal letters in neighboring words.
English and Turkish have independently authored word sets. Each language has its own word lengths, clues and competition world.
Characters and themes let players make the game their own. ZC earned through daily play or bought through in-app purchases is used for cosmetics. Letters, hints, extra time and score are never for sale. The first release has no ads or subscriptions.
How we built it
The app is built with Flutter and Riverpod. Its scoring and round rules live in a separate Dart layer, so they can be tested without rendering the interface. Supabase supports accounts, daily challenges, score validation and the cosmetic economy.
RevenueCat handles store purchases of ZC packs. Verified purchase events are processed by the backend before the wallet is credited, with duplicate handling and refund accounting. We have tested the Apple sandbox purchase and refund path through RevenueCat to the in-game wallet.
The interface uses a shared block system: bold outlines, stepped depth, consistent press motion, role-based colors and custom illustrations. Anton carries commands and numbers; Work Sans carries clues and explanations. Themes change the palette while preserving the same interaction language.
Challenges we ran into
The first challenge was making help feel useful while preserving the reason to resist it. The cost of revealing a letter needed to be visible in the score, the tiles and the rhythm of play.
Building for two languages meant creating independent content rather than translating one puzzle into another. Every clue has to fit its answer, length and difficulty, and content needs human review before publication.
Purchases brought a different kind of challenge: keeping account changes, delayed purchase events and refunds consistent with a player's wallet. We separated store confirmation from wallet delivery and tested those transitions explicitly.
Accomplishments we are proud of
We built a recognizable visual world around a small, understandable decision. The same block language connects the letter tiles, keyboard, characters and themes. It gives our ambition to welcome different generations a concrete form: familiar wordplay, readable clues and a distinctive geek-inspired personality.
We also kept the economy aligned with competition. Players can pay to personalize their experience, while the daily challenge continues to reward their own answers.
What we learned
A simple scoring rule reaches into almost every part of a game: the tutorial, animation, keyboard, results and shop. Making those parts agree took more care than adding more mechanics.
We learned to treat language content and purchase delivery as core product work. A misleading clue or a missing purchase can undo the trust that a polished interface builds.
What's next
Our next step is to learn from the first public players, including longtime word-game fans and younger players: whether the visual world draws them in, where they hesitate in the tutorial, how they use letter reveals, and what brings them back to the daily challenge. We will use that feedback to improve onboarding, review content and refine cosmetic presentation while keeping the scoring rules independent of spending.
Built With
- dart
- flutter
- postgresql
- revenuecat
- riverpod
- storekit
- supabase
Log in or sign up for Devpost to join the conversation.