Human-written article

Floorcraft: Blasters 0.6 Now on the App Store

Floorcraft: Blasters 0.6 Now on the App Store

TL;DR

Floorcraft: Blasters 0.6 is now live on the App Store. The release adds a blockchain wallet integration with Reown, NFT-gated vehicle unlocks, full open-source documentation, and a wide pass of stability fixes. Shipped as part of a grant program between Tomicz Engineering and Auki.

As part of a grant program between Auki and Tomicz Engineering, Floorcraft: Blasters has received its 0.6 update and is now available on the App Store. The update included bug fixes, new features, documentation updates for the open-source project, blockchain updates, analytics improvements, testing, and an iOS release.

What's new in 0.6

Wallet integration

Floorcraft has received a blockchain integration. We used the Reown SDK (formerly WalletConnect) for wallet connection and Nethereum for NFT and token contracts. The Reown SDK had a name collision with Amplitude at the iOS layer, which caused compilation errors in Xcode. We were lucky to resolve this with the Reown team since the SDK is open source, and we even contributed the fix back so future developers do not run into the same problem.

NFT-gated vehicles

Auki has a technology called the posemesh which runs on blockchain, and Floorcraft is a great demonstration of the tech itself. Players can unlock new vehicles in the game through NFT ownership. To make that possible we integrated a wallet with Reown, which appears in the main menu in the top-left corner. When connected, it lets you see your AUKI token balance and ETH balance. AUKI is a layer-2 token on Base. Players can also see the NFTs they own, with images rendered directly in the wallet UI. If the player owns the token, they can unlock its corresponding vehicle with a cool cosmetic.

Flash Banshee Mk. 8 fighter vehicle on the Select Your Fighter screen in Floorcraft: Blasters

Session stability and AR fixes

I wrote about Floorcraft earlier in Unity Code Architecture and Dependency Injection. The dependency injection setup is solid, but the project has a design flaw I called split state: the UI state and the gameplay state live in different places, with separate mini state machines. Updating one without the other creates a race condition where the two state machines fall out of sync, and tracking down a misbehaving state becomes a real pain.

This is what took the majority of our time during 0.6. With advanced logging and modern AI tools, we can now trace every state transition in real time. Before, we had to chase these manually, and it was easy to misstep a call and have no clear picture of where the chain broke.

The other big bottleneck is that every test must be done on device, and not just one device but two, since this is an AR multiplayer game. This was already a pain back when I worked at Auki in 2022, and it has not gone away. We are about to release an Android build, and we plan to cut down the testing loop using the same AI tooling that helped us tame split state.

Documentation

The project is open source on GitHub, and documentation was part of the grant milestone. Before 0.6, the repo was missing any documentation, so contributing or reproducing the project yourself was difficult. Luckily I am a former employee of Auki and worked on the project in 2022, so I knew it inside out, and we updated the documentation alongside the code as we shipped. You can now clone, build, and run the project on your own device with full guidelines, covering architecture, networking, Reown setup, and NFT integration. The docs are even optimized for LLMs so they can onboard you as well.

iOS release

This is the first update to Floorcraft since 2023. The game was in a broken state, especially around session changes: going from gameplay back to the main menu could brick the game and force the player to restart. This is the most polished version of the game so far.

There was also a Game Center popup issue that Auki's internal test team discovered later. During our own tests we never ran into it, but once more devices were in rotation the popup showed up, and we were lucky to catch it at the right time. It was patched quickly after.

Bug fixes

A lot of 0.6 went into hunting down bugs that surfaced under the split-state design. Here are the notable fixes that landed in this release.

Sessions and AR

  • ECS initialization hang on empty sessions
  • Black screen when joining a session
  • AR ground marker not appearing after rejoin
  • AR ground marker missing before placing the first tower
  • Vehicles not spawning on rejoin
  • Off-screen indicators not cleared on session leave
  • Domain session creation errors
  • Heartbeat service crash during editor testing

UI and state

  • Back button race condition in the UI flow service
  • Leaderboard labels duplicated when a client rejoins
  • UI and state not resetting on session leave in Mayhem mode
  • Screen dimming during QR scan

What's next

The Android build is the next major milestone for Floorcraft. The plan is to configure the Unity project for Android, optimize performance across the wide range of Android devices in the wild, handle Android-specific dependencies, and produce a final build for submission to the Google Play Store. The Unity 2022 upgrade and the early Android session init fix already give us a solid foundation to build on.

After Android, persistent AR asset placement is the next deliverable. This is where the posemesh tech really shines, since it lets virtual objects stay anchored to real-world spots across sessions and across players.

Try it yourself

Floorcraft: Blasters is free on the App Store. If you want to look under the hood, the source is on GitHub with full documentation for cloning, building, and running it on your own device.