I Build Unique 1v1 Online Board Game With Post Match Performance Analysis Engine (web/ios/android)
| When I started building Blockblock, my plan was to use Kotlin Multiplatform for shared business logic, React for the web, Swift for native iOS, Kotlin for native Android, and Ktor for the backend. That was the plan. The reality turned out quite differently. Blockblock combines mechanics from several games with ideas of my own. I wanted to build an online competitive board game with the mix of mechanics I’d been looking for but couldn’t find. I started by putting together design guidelines in Figma: fonts, colors, the board, cards, and tiles. I also purchased an icon pack. Throughout development, I used those designs as references to help the AI keep the interface consistent. Chess dot com was a big influence on the UX because I wanted something familiar to that audience. From there, I experimented with my own ideas and AI suggestions to find a feel that worked for Blockblock. After a few weeks, the web app and backend were polished enough for an initial release. I showed it to a few friends, we played some games, and the feedback was positive. I was ready to launch, but I felt one core piece was missing: a custom evaluation engine. I named it Socrates and built it in Rust, taking inspiration from Stockfish. I wanted players to be able to analyze their games and get useful evaluations of their moves. This became one of the hardest parts of the project. Getting analysis down from minutes to seconds took much longer than I expected. The engine also became complex enough that understanding everything happening under the hood was a challenge for me. After about a month of work, I had something usable that produced reasonable evaluations. There’s still a lot of room to improve its accuracy, and I wouldn’t put it anywhere near Stockfish’s level of maturity. One practical constraint is how much server compute I can afford for a game that isn’t generating revenue yet. If the game succeeds, I’ll have more room to invest in the engine. With the web app and engine working, I moved on to mobile. I started with native iOS, as planned, but quickly realized what that meant: polishing every feature a second time, then doing it all again for Android. Even with the best model, I couldn’t recreate the web version’s feel quickly enough. Getting something functional was one thing; making every interaction feel right was another. That led me to Capacitor, which let me reuse my React web app in mobile apps. I was skeptical at first, but it ended up being a great fit. In about a day, I had usable versions of both apps that I was happy with. I still spent roughly another week polishing mobile-specific interactions, UI details, and features, but compared with the native approach, it felt like I’d saved months of work. Choosing the right architecture still matters. AI helped me get a lot built, but maintaining the same experience across three separate interfaces was more work than I’d anticipated. If you’d like to try Blockblock, you can play at: Web: blockblock.fun [link] [comments] |
Popular Products
-
Classic Oversized Teddy Bear$23.78 -
Gem's Ballet Natural Garnet Gemstone ...$171.56$85.78 -
Butt Lifting Body Shaper Shorts$95.56$47.78 -
Slimming Waist Trainer & Thigh Trimmer$67.56$33.78 -
Realistic Fake Poop Prank Toys$99.56$49.78