Almost 50% of ARKit downloads are for games. 

Slight surprise. AR games are the most popular use case, outpacing other experiences. 32% of Americans are interested in an AR game. The next top position, travel/driving, has only 12%. 

However, Augmented Reality mobile games face THE big challenge: retaining users. 38% of users want technology advancements for more engaging gameplay.

In particular, Augmented Reality games lose their replay value when they are simple single-player games. 

How can Augmented Reality game apps retain users? By introducing a multiplayer mode, which is a challenge in itself.

Here is why IT Craft’s iOS team decided to expand the AR Balloon Shooter game with multiplayer mode to test the specifics of tech implementations. 

Here is our take.

1 AR Balloon Shooter: Game Flow and Updates

AR Balloon Shooter is an active AR game where users shoot flying balloons by tapping on smartphone screens. Balloons can pop up at any spot around them. 

The game first came in a single-player mode. The major upgrade in the 1.2 version added a relocalization-based multiplayer mode, which requires minimum effort on the user side. The team launched several app versions after it, aimed at polishing experiences and updating project technologies.

AR Balloon Shooter v. 1.0

The game had two modes: arcade and waves.

Rules were simple:

  • The player started a session by tapping on either the waves mode or arcade mode.
  • Balloons appeared on the smartphone screen. The player shot the balloons.
  • The game session ended when the user lost all the shots or when the time was up.

Both waves and arcade modes had only a single-player version.

AR Balloon Shooter v. 1.2

With the 1.2 upgrade, a multiplayer version of the AR Balloon Shooter game became available for the arcade mode.

Multiplayer functionality works the following way: 

  • Upon launching the multiplayer mode, users scan the physical environment.
  • The app connects with another user automatically based on their proximity.
  • After a successful connection, the app invites users to start a balloon hunt.
  • A balloon appears in the same spot for both users. Users need to detect it and take a shot.
  • By shooting successfully, users get points and extra shots. The game lasts until users are out of shots or time.

A game session is available for two users. All they need is to switch on Wi-Fi. No Bluetooth connection, connection to any network, or GPS positioning is required.

  • Icon
    Try it today”. Download AR Balloon Shooter and have fun with your friends!

AR Balloon Shooter v. 1.5

The current 1.5 version was launched in August 2023. 

The development team refreshed the app. It replaced deprecated technologies and eliminated bugs that emerged after the tech update.

2 UX Best Practices When Creating Multiplayer AR Games

AR experiences are engaging yet challenging in both technical and UX aspects. 

Experts suggest keeping apps simple to deliver high-end quality. They recommend limiting the number of steps to let the fun begin.

Here are basic recommendations from Apple’s guidelines on creating AR games to which our team adhered while designing the AR Balloon shooter:

apple ar game

3 Tech Stack Beyond AR Balloon Shooter

The hallmark of AR Balloon Shooter’s multiplayer mode lies in connection. The users do not have to search through a list of active users when launching the multiplayer mode. This app searches for similar instances and tries to establish a connection.

What does this mean in practice? Users only need to launch the multiplayer mode when sharing the same location. The app does the rest.

Certainly, we used more technologies. The following stack powers up the app:

Basic App Stack

Swift is used for native iOS app development.

Foundation provides a base layer of functionality for apps and frameworks.

UIKit is used to construct and manage a graphic, event-driven user interface.

Basic AR stack

ARKit is responsible for camera and motion features to produce augmented reality experiences.

SceneKit is a high-performance rendering engine with a descriptive API that powers up the app.

SpriteKit serves as a general-purpose framework used to draw shapes, particles, texts, images, and videos in two dimensions.

Multiplayer stack

– Custom implementation of MultipeerSession built on top of Apple’s MultipeerConnectivity library. It supports both discovery of services provided by nearby devices and communication with those services through message-based data, streaming data, and resources.

Codable/Decodable extensions for ARKit/UIKit classes needed to synchronize players’ actions instantly by providing archived SCNVector3/SCNMatrix4 values.

4 Challenges of Implementing AR Multiplayer

ARKit is the key to successful AR game development. It solved a difficult challenge—multi-person mode for AR shooter games.

Through shared experiences, ARKit makes relocalization possible. Different AR models can be put into the same spot. The app learns their positions and orientations and then readjusts it for the second user. Users can see these objects exactly in the same place at the same time.

Still, an Augmented Reality game app also provides several challenges:

No Android Version

AR Balloon Shooter game is only available for iOS devices. There is no Android app because ARKit does not support the Android platform. To launch the AR Balloon Shooter for Android, we need to use ARCore. However, ARCore is built on different mechanisms because iPhones and Android smartphones have different camera types. Moreover, an AR experience is not even available for all Android phones!

Hence, we cannot create the same AR experience for Android users because the mechanisms are different.


Users demand quality. The app must synchronize graphics—namely, synchronize the positions of all objects and motion vectors. This must be done respecting the frame rate at 60fps. Lower frame rates significantly deteriorate balloon shooting game experiences. Fortunately, AR development libraries help.

Connection and User Limits

Wi-Fi is essential for the multiplayer mode, ensuring users can find each other for an Augmented Reality shooting session. Still, they can experience problems with the auto connection. In this case, users need to restart the app and ensure they have switched on the Wi-Fi module. In Wi-Fi mode, they do not need to connect to any network.

Currently, the number of players is limited to two. A third player can neither join nor kick an already-connected player out of the game. The app does not break the session even after users quit the multiplayer mode.

However, players can easily connect with new users when they restart their apps. Restarting the app is the key when the player wants a new connection.

5 IT Craft Expertise

IT Craft’s AR team has worked with AR technologies for a long time, experimenting with innovative frameworks on AR demos, offering free, fun AR apps, and launching commercial apps for clients.

Apart from balloon shooter games, the team has developed AR a wide variety of AR solutions, including:

  • AR toy catalogs
  • 3D Tic-Tac-Toe
  • Interactive AR postcards
  • AR Dragons Game
  • AR building blocks
  • Furniture configurator
  • Distance measuring app

And much more.

IT Craft’s engineers work in tight cooperation with the client’s team to ensure the best implementation for the specific vision. We take over all tech project parts. 

Any complexity is possible, from prototypes through MVPs to fully featured custom AR platforms. 

A wide AR stack is available:

  • marker-based apps
  • markerless solutions
  • 360-degree videos
  • location-based AR apps

! Key Takeaways

To sum up, multiplayer is a valuable feature for every Augmented Reality mobile game. It increases the fun and adds variability to any app.

What should you remember when you want a multiplayer/multiuser mode for your AR app?

When planning a multiplayer AR game or a multiuser AR app, consider the following points:

  • ARKit offers a decent tool for creating multiplayer experiences.
  • Automated connection simplifies UX while eliminating extra steps. This attracts and retains users.
  • iOS’s and Android’s detection mechanisms vary. UX might differ greatly on the platforms.
  • Respect the number of users being able to interact simultaneously. Provide them with prompts on how to connect/reconnect properly.

Thanks for reading!

We would love to hear from you!

Download the balloon game app. Try it out. Share your opinion.