Automatoys (2022)
Genre: Platform, Puzzle, Simulation
Engine: Unity
Website: automatoys.app
Roles: All except sound
Music and sound by Jake Gaule
The debut game for Idle Friday (est. 2018) which went on to be an Apple Design Award finalist in 2023. Each Automatoy is a unique, mechanical obstacle course. Tap, turn, tilt and spin the contraptions to help each ball hop and roll its way to victory.
About the project
Early drawings in Procreate app
Proving the concept
After drawing out ideas for mechanics, I then prototyped the best ones, prioritising
Readability (Is it clear what it does?)
Versatility (Can this be used anywhere?)
Flexibility (Does it work at different sizes?)
Fun (?!)
Eventually building a suite of parts, I could then begin blocking out levels.
Testing speculative collision in Unity
Various early level designs
Developing a process
The earliest level prototypes were quite spindly and hollow. Despite liking their appearance, judging object depth was difficult. Designing around this was going to be a struggle, and I quickly realised that levels were easier to both read and design if there was a central solid part on which the obstacles were laid out.
Another scrapped idea was rockets, which the ball would use as entry and exit points, ascending from level to level. I found that these became a nuisance, dictating the shape of levels and reducing the variety of forms that were possible. So I eventually opted for a dispenser and hole. Conveniently this made more ‘sense’, thematically too.
Playing with shapes
When designing a new level, I began by playing with primitives — cubes, spheres and cylinders, until I had an overall shape with an interesting form and silhouette. I’d then consider what each section might be — a tilting maze, a circular maze within a dome, a rotating disc with a grabby arm — and so on. I’d then chisel a path through the structure, picking a spot for the dispenser and the end goal.
Timelapse of automatoy #4
Deciding on a route for the ball
The general shape of each level is different, but the contraptions are often repeated. This saves time but also helps with visual consistency and establishes a common appearance across all levels, as though manufactured using the same moulds and parts.
Level blockouts mid-progress
Play > Tweak > Repeat
Once a level looked good and was readable from start to finish, I added the physics colliders, imported them to Unity and hooked them up with scripts.
The levels had to be allowed to evolve and change through playtesting, but this process is of course very time consuming. I kept these passes to a minimum, by fixing as many problems as possible, with each pass. Major issues would include:
Sections that are too punishing that might need
‘Guard’ rails or transparent casing
Soft checkpoints (see next section)
Model changes that afford more time to react (like a seesaw)
Sections that are hard to read
Once the major issues were dealt with, I could then tune the difficulty curve by changing the timings, speed, and sensitivites of contraptions.
Gameplay vs rendered colliders in Unity
Checkpoints, sort of
Losing the ball means restarting the level which, though reminiscent of its retro predecessors, felt harsh. Levels needed checkpoints but I didn’t want to teleport the ball which felt off-theme. Instead I introduced ‘soft’ resets after particularly tricky bits, which only set you back a bit.
‘Soft fail’ checkpoint mechanic
Levels at various stages of development
Final levels
Keeping score
Wanting a ‘best time’ system and minimal interface, I compromised with a clock that counts your score down from 3 stars based on specified time thresholds. This was inspired our trophy system in INKS!.
Level timer and corresponding star score
The soundtrack
Each automatoy moves to the beat of the music track. Since there were conveniently 12 levels it meant that composer Jake Gaule could write and produce a soundtrack for the game, featuring 12 tracks.
Jake also made the sound effects, and we worked together to implement them using Unity and the plugin FMOD.
OST soundtrack covert art