We Built Colonist Rush

kamphey1 pts0 comments

How we built Colonist Rush

Sign in<br>Subscribe

In Colonist Rush, why does everyone have to wait while players are discarding? Why are initial placements still sequential? How are decisions like these made?<br>This is a follow-up post on Rush Announcement, where we'll answer these questions and many more.<br>How Did We Come Up With the Idea?<br>For years, we kept asking the same question:<br>What would Catan look like if it were designed for the internet from day one?<br>In the summer of 2025, after playtesting early physical real-time variants, we felt we had found the answer.<br>We had a real-time version that preserved the best parts of 4 player Catan: trading, racing, blocking, and self-balancing player dynamics.<br>But it removed the biggest problem: waiting.<br>The result was strange in the best way. Games were faster than 1v1, but still felt like full 4 player Catan.<br>We immediately knew we wanted to bring that experience online.<br>Goku convincing the team into building Colonist RushColonist was originally built because we loved Catan and wanted people to play it more easily online.<br>Colonist Rush comes from the same place.<br>But this time, we are not just adapting the game for the internet.<br>We are evolving it into something that could only exist on the internet.<br>Our Guiding Principle<br>Throughout development, we followed a simple principle:<br>Don't stop the game unless absolutely necessary.<br>We wanted players to stay in flow as much as possible.<br>That meant players could continue taking actions while others were trading or playing a development card.<br>The only exceptions were what we called forced actions: situations where a player must resolve something before the game can continue, such as discarding cards after a 7 is rolled.<br>Discarding is the only blocking event because allowing other actions during it created too much chaos. You could be picking cards to discard when someone plays Monopoly or steals one of those cards. Suddenly it's unclear what should happen.<br>So we made discarding a forced action that must be resolved before the game continues.<br>Whenever we encountered a problem, we tried solving it in ways that felt familiar to existing Colonist players. We wanted to minimize learning curve while maximizing speed.<br>The First Challenge: Colonist Was Built Around Turns<br>Colonist's codebase was originally designed around a turn-based game. Both the frontend and backend assumed that only one player could act at a time.<br>The first step was refactoring the game so multiple players could take actions simultaneously. So we generalized it. Instead of one current player, every player now carries their own state at all times. "Whose turn is it" became "what is each player allowed to do right now."<br>After a month of work, we had a functional version of Colonist Rush. It was sort of playable.<br>Previously, mechanics were tied to the standard turn structure. We’ve now decoupled them so they don’t depend on how turns work. Individual mechanics can now be customized independently, supporting formats like 2v2, or everyone playing at once.<br>Along the way, we fixed countless visual bugs, gameplay bugs, synchronization issues, and edge cases.<br>Once the functionality was stable, we moved on to the fun part: gameplay optimization.<br>Problem #1: Game Was Too Slow<br>Our starting point was rolling the dice every 30 seconds, but we noticed it felt painfully slow.<br>We wanted something faster.<br>As we reduced the timer, a new problem appeared.<br>Players were getting resources too fast and were being forced to discard constantly. Frequent discards meant frequent interruptions. Frequent interruptions meant players waiting for each other.<br>This directly violated our goal of keeping the game moving.<br>Our solution was increasing the discard limit from 7 to 9.<br>Why 9, and not 10 or 11?<br>9 wasn't a new idea. It's the same limit our 1v1 Ranked players already use, so it was battle-tested and felt familiar from day one.<br>Discard penalty exists for a reason: it punishes hoarding and keeps the 7 rolls meaningful. 9 was the smallest change that smoothed out the interruptions while keeping that tension intact. Go higher, and discards almost never happen. Hoarding becomes risk-free and the robber loses its bite.<br>This change dramatically reduced how often players had to stop and discard. The game flowed much more smoothly, so we were able to reduce the dice timer to as low as 5 seconds.<br>Problem #2: Trade Offer Spam<br>Once we achieved the pace we wanted, another issue quickly became obvious. Trade offers were everywhere. Players would spam offers constantly. On mobile devices, this became particularly annoying.<br>Our first attempt was simple: make trade offers hide-able.<br>Trade Offers (Hidden State)Trade Offers (Visible State)That helped, but didn't fully solve the problem. Players still wanted to see useful trades. They just didn't want to see every trade.<br>Eventually we realized something important:<br>In the base game, a rejected offer is worth keeping around. Turns are slow, and trading is a...

players game colonist player wanted rush

Related Articles