Boss Lab Studio 如何用 Phaser 為 Android 打造組裝頭目戰鬥遊戲
Building a boss-building battler for Android with Phaser
Boss Lab Studio 發佈了首款 Android 遊戲,玩家可用 60 多個模組部件組裝頭目,讓它自動挑戰 100 個關卡,亦可參加非同步 Arena PvP。遊戲以 Phaser 製作,並包裝成 Android 應用程式,在 Google Play 發行。遊戲提供可選的應用程式內購買,沒有強制廣告;美術和音效由 AI 輔助製作。
We're Boss Lab Studio, a small team, and we just released our first Android game: a boss-building battler. You assemble a boss from more than 60 modular parts, upgrade it, and then watch it auto-battle its way through 100 stages. There's also an asynchronous Arena PvP mode, where your build fights other players' builds even when they're offline. This post is a plain look at how we made it and what we'd do again.
Why Phaser
We wanted to move fast and iterate on a game whose core is mostly data and rules rather than twitch physics. Phaser let us do that in a language we already knew, with a quick feedback loop in the browser. Rendering sprites, tweens, particles and UI layers were all well covered, so we spent our time on the game itself instead of on an engine. It isn't perfect, and mobile performance needs constant attention, but for a 2D game like ours it was a sensible, pragmatic choice.
Designing modular parts and stats
The whole game rests on the idea that every part should feel meaningfully different. With 60+ parts, it would be easy to end up with a pile of near-duplicates, so we tried to give each part a clear role, a visible look and a trade-off. A heavy part might add durability but slow the boss down; a flashy one might hit hard but leave you exposed.
We kept stats simple on purpose. If a player can't guess roughly what a part does by looking at it, the system is too complicated. Parts combine in ways we didn't always predict, and watching players find odd builds was one of the best parts of development. Balancing is ongoing, and we still tweak things as we see how people play.
Making auto-battles readable on a small screen
Auto-battles are only fun if you can understand why you won or lost. On a phone screen, a lot happens at once, so we leaned on a few principles: strong silhouettes, clear hit feedback, restrained effects, and numbers that appear only when they matter. We cut a lot of visual noise that looked great in a trailer but made the fight impossible to follow.
The goal is that after a battle you can say, "my boss lost because its left side was weak," and then go fix it in the builder. That loop, build, watch, learn, rebuild, is the heart of the game.
Packaging a web game for Android
Shipping a web game as an Android app has its own set of chores. We wrapped the game so it could run as a native app and be distributed through Google Play. Most of our effort went into the unglamorous things: handling different screen sizes and aspect ratios, making touch controls comfortable, managing memory on lower-end devices, saving progress reliably, and testing on real hardware rather than trusting the desktop browser. Plan time for this. It always takes longer than you expect.
Keeping monetization fair
We wanted a game we'd be comfortable playing ourselves. That means in-app purchases are optional, and there are no forced ads. We don't want to interrupt a battle or block progress to push a video on anyone. Whether we've struck the right balance is something we'll keep watching, and player feedback matters a lot here.
A note on AI-assisted art and audio
In the interest of being upfront: the art and audio in the game are AI-assisted. We use these tools as part of our workflow, and we'd rather say so openly than have anyone wonder. Design, systems, code and balancing are done by us.
What's next
We're still improving the game, tuning parts, and listening to players, especially on Arena PvP, where real builds from real people keep surprising us. If you're working on a Phaser game, or thinking about taking a web game to Android, we're happy to compare notes in the comments.
It's free on Google Play, and we'd love your feedback: https://play.google.com/store/apps/details?id=com.bosslab.game&utm_source=devto
來源:DEV Community · dev.to
