Inspiration

I was hooked on two games: UNO and Brawl Stars. They gave me the two ideas behind the matchmaking system:

  • UNO: how a wager system can pay for the game.
  • Brawl Stars: skill-based matchmaking and their game-mode

But I could not play either one on desktop. So I built a browser game that does both. The game still needs a native mobile app to be at its best for players because I still want to play it on mobile app mainly too, and mobile store or steam is always best place to publish the game.

The Shipathon pushed me to actually build it. Someone like me, with no funding, can struggle for a long time trying to work on a game full time. The deadline gave me a reason to finish the structure and foundation now. After that, I can take my time and add more ideas, including some inspired by Balatro.

It was also my first time using RevenueCat. The setup felt overwhelming at first. Now I have automated it, and it is simple. It has been a big help.

In Late September 2026, the game was finally published on both store, after several upgrade for focusing on native system.

What it does

SOLZ is a 3D battle game with several game modes:

  • Labyrinth: find the exit within limited vision and stay alive
  • Bottle Grab: get the most bottle within time duration
  • Claim Zone: secure the spot
  • Soccer
  • Basketball

Progress since late August:

  • v0.1: The first version with working multiplayer gameplay. Submitted to Google Play and the App Store for testing.
  • v0.2: More game modes, a new lobby system and the store. After about 23 days (14 days of testing, then 9+ days of review), it was released on Google Play. I started finishing the App Store version around September 23.
  • v0.3: A new agent version, new heroes and a migration to a new engine. The App Store approved it after an earlier rejection because the store items were priced too high.
  • v0.4: The new Labyrinth mode. I finished it on September 30 and built it for both stores the same day.

To be honest, launching solo was easier on the App Store than on Google Play. The setup and the policies were both simpler.

How we built it

  • Three.js with WebGPU, to use the GPU's parallel processing.
  • RevenueCat, for in-app purchases.
  • OneSignal, for push notifications and event announcements.

Challenges we ran into

  • Platform. Dual platform, some platform android/ios have different setup, and different performance.
  • Heroes. Since my game has several heroes, I need to do balance the system and it can take toll of times, so beside finished UIUX, finished integration, finished payment, finished multiplayer, finished the gameplay system, ofc the fun part is what need to be done which is the HEROES. initially i just want to use soda-can because it's simpler, but i'm afraid it won't be interesting. In the end I'm building business to be sustainable, so I push forward with heroes and that also took time for the balance system as I cant just put random spell immediately.
  • Money. I got hacked last year, so I still need to work to survive. this project is still not full time, I wish i could have enough to focus building this alone. Occasionally I've only slept like 4h a day to finish my goals and tasks in this past august and september.
  • Time and priorities.
    • A game needs a lot of optimization and many rounds of iteration. There's always a problem, whether memory problem, or rendering problem on every new feature release. That's i takes time to build test system and restructure the zero-engine.
    • A game is usually more polished when it ships on its own schedule. A deadline forces you to finish, which has both pros and cons.
    • I had to keep improving the game within the hackathon deadline. I could not change direction as freely as I wanted, because otherwise nothing would get finished.
  • Online multiplayer. A new app has no players, and no players means no matches. I added AI agents to fill matches first, but that is still not good enough. This is where the idea for Labyrinth came from: a mode you can play solo, and even offline. It also gave me new ideas for making the game truly fun, the way Balatro is. That comes in the next phase.
  • Changing ideas mid-build. Some ideas turned out not to work once I built them, so I had to rework parts of the game.

Accomplishments that we're proud of

  • The technology. The game had big problems with scalability, and I did not want to build up tech debt. So even though it took time, I built my own runtime, the Zero Engine. It can hold an unlimited number of assets and VFX while the app stays under 200-300 MB. It is not the final version yet, but the structure is ready. It streams assets somewhat like Roblox does, but with a much stronger VFX system.
  • It looks cool. I also learned a lot about managing CPU load. WebGPU puts the heavy work on the GPU, but the CPU side is still single-threaded and currently on progress to be multi-thread too with worker.

What we learned

  • How in-app purchase systems are structured.
  • The business side of making a game that lasts and succeeds. There is still a lot left to do there, I had to do upgrade on labyrinth system. So it become fun and therefore a sustainable system.

What's next

  • v0.5. The foundation is built. Now it is time to improve the gameplay itself and focus on what the game needs.
  • Making it truly fun. As I said under Challenges, I have an idea for making this game really fun without needing a huge player base. It will be fun to play solo, and I believe it can compete with top games because it is so unique. I am not satisfied with what I have built so far, and I can't wait to play my own game at the level I imagine. It is not far away.
  • Steam. After that, I plan to release on Steam too, so that real players can find the game.

Built With

Share this project:

Updates

Submission history