Skip to main content
  1. Work/

Playdeo Part 2 - Building Avo

This post follows on from part one of the Playdeo story.

Alpha 1, Jan 2018 #

Our previous game prototype Sharpen was then followed by a more fleshed out idea codenamed Tiny Frankenstein. A controllable pencil sharpener didn’t offer enough innate personality, but cemented the idea for inanimate objects imbued with life. We’d need to bring more charisma to make a truly great game protagonist that the player would form a bond with.

We auditioned a lot of different fruit

I do not recall exactly where the idea came from, whether it was Ryan North’s story, or Jack and Jon’s choice, but out of all the different fruit we photoscanned, we chose the humble avocado, and thus Avo was born. The new script kept the core ideas, but now incorporated a script and narrative, where the fetch quest was given to you through dialogue rather than on-screen text as we had in Sharpen.

The basic Alpha 1 S-shaped desk

Above you can see the basic layout for Alpha 1, with a more specific lengthy area for you to walk around. Jack was still playing the role of the scientist who brought our protagonist to life, and the set was made of basic white desks. As we filmed and produced the prototype, it became obvious something was missing.

Mechanically we proved the game idea could work, but this was a rare case where the technology outpaced the film making. It became obvious that we needed to start looking for a professional actor, a more visually interesting location and more lavish props for you to be surrounded by.

Alpha 2, Feb 2018 #

Alpha 2 featured a custom built set and actor Katie Reece as our hero inventor Billie. We also saw an early version of Avo with his procedural walk system, custom props, and a much stronger dialogue and narrative. It was an immediate win, with a far more engaging interaction, plus Avo’s own quirky personality was beginning to shine through.

Jack in Alpha 1, Katie in Alpha 2

In an effort to keep development simple and flexible, our protagonist Avo was silent, taking influence from Wallace and Gromit. Since we now had dialogue and a story, we needed to edit and grade footage in Final Cut Pro before feeding it into Unity. This was a huge step for us, as it was the first time we had meaningfully used an audio track from the video to convey information to the player.

Avo started out life with just his legs in Alpha 2

Alpha 2 got more and more polished and began to generate its own gravity. We added flourishes like the collectables, which helped guide players in where they needed to take Avo. It felt exciting, fun, full of heart, and was finally something we could scale up into a full game.

Ryan North and Gemma Arrowsmith helped us create a fun and engaging story. It ended up being wildly ambitious and needed scaling back, with one or two chapters going unfilmed, but the bones of it were there. What followed was location scouting, set building, more props, full script development, table reads and all of the usual aspects of a full TV production, except done on a tiny budget, and very much in the guerilla, forgiveness-not-permission, school of filmmaking. This was all managed by the talented Lotta Boman who excelled under these resource constrained circumstances.

Alpha 2 Sequencer and Checkpoints tools

While Alpha 2 could be considered a success, many of the systems used to pull it together were not robust or scalable. This included aspects of narrative construction like the Sequencer and our save/load system based around checkpoints, as shown in the screenshot above. If we were to require a full game with many levels, our tools needed to become far more capable, and streamline many of the repetitive tasks involved in their construction.

The Shoot, May 2018 #

We’d now finished the invention phase, and tipped into production, polish and delivery. Filming started in May 2018, and continued for approximately 10 weeks. The studio was divided in two for the duration of the shoot, half on set, and half back in the studio preparing for a tranche of video to suddenly turn up, feverishly working on mesh alignment tools, level creation tools, the video processing pipeline, a data-binding UI system, integration with the Wwise audio system, and a whole host of other elements of technical debt.

I was split across a number of different areas, as well as providing overall technical leadership for the team. By far the most urgent task was supporting our data pipeline. We were suddenly generating a huge amount of video footage, more than anything else we’d previously experienced, and it all needed editing and processing. We swapped over to using Black Magic’s DaVinci Resolve rather than Final Cut Pro. Tracking was still being done in PFTrack, and the photogrammetry in Reality Capture.

Timo and I defined a new data pipeline that correlated PFTrack exports, DaVinci’s exported FCPXML timelines, CSV metadata, and the video files to form a sufficiently robust mix that would cross-reference frame counts, filenames and a host of other data to spot and highlight any human error that crept in. As we were doing ten times as much data processing as before and involving people new to the process, this was incredibly important. Bad data that makes its way into a test build needs to be easily distinguishable from errors in the code itself, as both were changing frequently, and it’s very costly to involve the whole team in diagnosing build issues.

The Sprint, September 2018 #

From September 2018 to January 2019 we implemented the eight episodes in the main game. We added subtitle support, full music and sound effects, bluetooth audio support, the save checkpoint system, localisation, analytics, general UI, IAP integration, On-Demand Resource support, AR mode, low and high resolution videos, and a whole host of other things. We had no specific producer, so our weekly planning meetings were crucial for establishing bottlenecks, and towards the end I was generally responsible for keeping the flow of work steady, as it became more and more technical. It was a remarkably intense time, and for the most part highly productive.

Our git commit graph. The dotted line is our launch day

As well as the data pipeline, I also worked on a whole host of game features. The video playback system needed constant improvement as we attempted more ambitious edits, transitions and audio layering. I also worked on any areas where we integrated with native iOS functions. This included In-App Purchase integration, On-Demand Resource fetching and optimisation for less capable iPhones and iPads.

Just before launch I managed to implement the PathEDL system, which was a way of mitigating the lag experienced when playing the game with Bluetooth audio. This was becoming increasingly common with the launch of AirPods at the end of 2016, and became crucial to maintaining a good feel for Avo’s line walking, as we had to increase his walk speed to counter the larger set we ended up building.

The launch, Jan 2019 #

We finally launched Avo at the end of January 2019. It has gone on to have nearly four million downloads and is regularly promoted in the App Store at the time of writing this in 2022. For a new studio’s first title in a new medium, in I consider those numbers a huge success. While it may seem coherent and polished from the outside, it really was a hard won product born from three years of inventive exploration in a brand new medium.

It also had some nice media attention, from this review by Leo Laporte on TWiT to Dan Hill’s a very in-depth dive into the medium as a whole. One of my personal favourites was a video review and skit from FGTeeV, made using the AR video recording mode I worked on in the game.

As with all startups, you end up wearing many hats, but this broke the record for me:

  • Lead engineer - initial architecture, setting team goals, 3rd party integration
  • Data pipeline work - video data, tracking data, subtitles, analytics
  • Build dev - Fastlane and the CI server
  • Video specialist - native video playback plugin
  • Game feel and optimisation dev - developing PathEDL and overall improvements to game input
  • Asset control and code versioning work - scripting use of the NAS server and main git wrangler
  • Overall tech team leader - hiring, whiteboarding, troubleshooting, reviews

The ‘Making of’ video, March 2019 #

Timo and Jack organised a behind the scenes video of Avo’s production. I’ve also uploaded a copy to our instance of PeerTube running on recoil.org. It’s a lovely encapsulation of the studio and its work at that time.

There were a large number of people involved in Avo who haven’t got a mention here, as this is told from my personal perspective, and I’ve cherry picked the most interesting aspects of what we did for the purposes of brevity. The IMDB entry for Avo and Moby Games page have a complete list of the cast and crew.

Nick Ludlam
Author
Nick Ludlam
Software Developer and Prototyper in Mixed Media