Glimmer Grove

Before 2019, Survios was interested in exploring the LBE (location-based entertainment) VR market. Accordingly, it operated its own VR arcade — and it was looking for experiences that would “wow” first time players, and not require any instruction from arcade operators (since VR arcades are usually under-staffed and would rather not have to spend time helping players).


We decided to prototype some games that would fulfill this arcade experience niche and also help capture a more casual segment of the market. The general criteria were:

  • Provide a casual gaming experience which can capture an audience that isn’t interested in action games.
  • Provide an experience which arcade operators can recommend as a go-to introductory game; no instruction required to start playing, and introduces players to VR.
  • Design to allow for play sessions that last anywhere from 5-10 minutes to 30 minutes.

Additionally, it would be favorable if games:

  • Had no explicit tutorial (but taught concepts naturally as the game progressed)
  • Utilized VR in a meaningful way for its mechanics
  • Occupied an existing ultra-casual genre, serving as a strong anchor to help convert less enthusiastic people into players
  • Supported co-op multiplayer
  • Could be played sitting
  • Used only one button
  • Had a “no lose, only win” flow that avoided hard failure
  • Had an infinite mode where players attempted to achieve a highscore
  • Could be played front-facing

Myself and another engineer were tasked with prototyping at least 2 casual games over the course of a week. We brainstormed a ton of ideas, looking towards popular mobile games and other small casual VR games for inspiration:

  • Brick breakers
  • Tetris
  • Angry Birds / Worms / Archery
  • Reverse Jenga
  • Xortex
  • Scrolling shooters (like Xion)
  • Infinite runners
  • Final Approach
  • Frogger-likes
  • Bowling / Golf games
  • Human tetris
  • Ball-rolling games / Tenkyu
  • Cat sorter
  • Bubble shooters
  • Match 3 / Bejeweled
  • Rescuties
  • Traffic management
  • Tiny Wings
  • Whack-a-mole

The two types of casual games we decided to explore were “Match 3” and “Ball Puzzles”. I prototyped three concepts: a 3D bubble shooter, a Monkey Ball-style system, and a grid-based Bejeweled-style game. My partner engineer prototyped a ball-rolling puzzle game. User testing revealed the 3D bubble shooter to be the most compelling; so while I was tasked initially with fleshing out the flat grid-based Match 3 concept, I continued to champion for the bubble shooter. After reviewing the expanded Bejeweled-alike after two months of development, the studio decided to pursue the Bubble Shooter instead.


For the next 5 months, I lead our small team (1 artist, 1 designer, and eventually 1 other programmer) to develop an initial arcade-ready version of the game.

Iterating on prototype gameplay to find an effective arcade experience

First, we had to find our way from prototype to fleshed out playable. We had some player experience targets in mind:

  • Joy is in having a dynamic object react to your input / toy-like interaction
  • Achieve casino payoff effect / cascade (+ “big breaks”)
  • Induce feeling of “I’m awesome / smart”
  • Shooting must be simple

Since the Bejeweled-alike had been given a theming of gems, dwarves, and caves, we started from there. The bubbles contained gems, and were arranged in an HCP lattice. We prototyped several special gem types and stage hazards (metal, moving masses, barriers, and “inversion” — where a gem is only breakable half the time).

Barriers were a particularly difficult feature to nail down, and came late in the process. Balancing between being designer-friendly, good-looking, and efficient was not easy. We tried using modular mesh pieces to construct shells, but at the end the day we went with a solution that generated procedural meshes on the fly based on gem positions and offset values.

Although various thing changed like the gem lattice arrangement (to FCC), how a missed shot would impact the game flow (we settled on having it arc back and stick to the board non-reactively), and powerups (we ended up discarding powerups for the main game mode), we always focused on keeping the simple, joyful interaction with the board at the forefront.

Custom UE4 editor tools for designers to easily create puzzles

My designer needed a way to quickly assemble puzzles. I decided to dive into the world of Unreal Editor plugins. I created two new Editor Modes. One allowed the creation of a mass of gems. Each mass was saved out to a Data Asset behind the scenes. Various hotkeys and select modes were put in as the designer requested them. The second mode allowed masses to be assembled into puzzles, and for movement paths to be defined.

Designing a co-op infinite survival mode

We always wanted an infinite survival mode, as well as co-op behavior. The decision to combine them into a single mode lead to one of the best parts of the game. However, at first we struggled to decide on what this mode would actually be. How do you turn a stage-based game that uses a big rotating puzzle board into a continuous, multiplayer experience?

Various suggestions included: a giant rotating cylinder that grew upwards over time; a set of rotating boards, where each player was trying to break a specific color of gem; and side-by-side experiences with little multiplayer interaction.

The breakthrough was surprisingly simple: small puzzle masses would spawn and float upwards over time, and if too many reach the top, you lose. As a game progresses, the masses become more numerous and more complicated. We iterated quite a bit, adding things like “boss pieces” (single large masses that everyone needs to unravel as a team) and “blitz mode” (where tiny masses spawn and rise at a much faster rate, requiring you to switch targets and keep your attention on the entire area). We also re-introduced powerups in this mode.

User testing at actual VR arcades to help identify usability issues

Since this was a casual game, and intended to be immediately intuitive and playable to a non-gamer audience with no instruction, I championed for regular real-world user testing. We would take the game down to the Survios Arcade and have customers play the game (in return for a gift card). We watched the onboarding process, reaction to mechanics, and overall enjoyment of the game. We also asked players questions afterwards in a written survey, both about the game and about how it compared to other experiences in the arcade.

In response to feedback from these tests, we significantly streamlined the first time user experience, the menus, and the ordering of the puzzles. Various bits of polish and interactive game feedback helped reduce player confusion subconsciously.


In the end, although Survios stepped away from the US arcade market, we rolled the game out to Chinese arcades through our Chinese partner NetEase in May 2019. Over 50,000 people have played the game to date in Chinese arcades.

Now we are planning on releasing an expanded and polished version of the game for retail on PC, PSVR, and Oculus Quest.