Oopstacles is best described as "Wipeout meets Mario." It’s a ragdoll runner for all ages, with quirky avatars and padded obstacles reminiscent of TV shows like Wipeout, MXC and Slime Cup!
With Oopstacles, I wanted to do things differently to other runners out there - I found the 3-lane, 4-direction swipe style had been overdone. I wanted to design something with beautifully simple controls, but elegance and depth to the gameplay. So, I created a single lane, one-touch control system that anyone could pick up and play with ease. Jumps, rolls and other contextual animations occur automatically at trigger points. It relies on the player’s timing, dexterity and ability to read upcoming visual patterns. For replayability, timing and order is randomised and different on each play. For challenge, the further the player gets, the faster and denser the obstacles get!
Top Hat crossing the Big Balls
I didn’t like that a lot of games do an image share of stock or unexciting moments in their game. Why would I want to share an image to social media that isn’t at least interesting or funny? So, I created a GIF capture system of the funniest moment in our game - the ragdoll "knockout" moment! This automatically captures the final few seconds of the avatar crashing into an obstacle and getting flung away. Since it uses ragdoll and physics, it’s always unique - the player is always seeing something new and exciting! On top of that, there are over thirty original avatars with different shapes and sizes, making the knockout moment even more unique.
Fairy has an epic wipeout!
In the 2000s, obstacle course runs were very popular on TV, with shows such as Wipeout and MXC. In more recent times, shows such as Nickelodeon’s Slime Cup and American Ninja Warrior have become popular. This was the inspiration for a padded obstacle course theme. We wanted more of a fantasy setting, with all sorts of fun and crazy-looking avatars, so instead of humans we created fantasy creatures and robots. This also allowed us to create much more interesting sound effects and names for our avatars.
Oops Boy gets taken out by the Sweeper!
In addition to GIF sharing, I wanted to include full video replays that could be shared with others, so I chose to use the cross-platform tool, Everyplay. This integrated easily into Unity and hosted all the videos with user profiles and commenting. It also allowed us to access the face camera on phones (optionally at the player’s discretion), capturing the player’s reactions during the video, making them even more entertaining!
Visit the Everyplay homepage for Oopstacles
I didn’t like the idea of a disjointly separate avatar select screen, so I integrated our avatar select system into the theme and implicit story of the game - the creatures have been captured and are hanging on rails, squirming to escape! This made the avatar select easily accessible from main menu, swiping left and right to select an avatar, with a single press of the Play button to start a game. It brought the visibility of the avatars and the accessibility of their IAP more into the open, rather than having them in a separate screen.
Avatar selection in Main Menu
I wanted to create a clean and simple GUI, without clutter that could confuse or turn off a player. Some games pack so many buttons into their main menu, especially after multiple app updates, that they become cluttered beyond belief. The game logo and Play button are the two most important elements on the main menu, so they are most prominent. Any other minor buttons such as the Options menu, Record menu or Shop menu were collapsed into an expandable fanout button in the bottom corner of the screen. Furthermore, avatar names and counts only appear if the player swipes to change the selection.
The fanout menu and disappearing avatar labels reduce clutter in the main menu
I wanted to create mid and long-term goals, so I added cross-platform leaderboards, achievements, and the team added many unlockable avatars with unique sounds, art and effects.
I never understood how 6-hour notifications for free gift rewards became the norm in most runners - why would I want my phone buzzing at 4 AM? So, I chose instead to use a 24-hour notification timer. Sometimes the little things count :)
I always felt cheated when playing a prize machine and getting a “Try Again” notice because I already owned the avatar that came out. I wanted to always reward a player with something from the prize machine, since they had worked hard to earn the coins to play it. So I created an extensible powerup system where they receive shields instead. These shields serve as “second lives” in the game, either destroying an obstacle or allowing them to revive. They also key in nicely as an IAP currency. Future updates may include new powerups.
The prize machine always rewards the player
For me, being able to skip cutscenes is a must, especially if you have already seen them. As such, all cutscenes in Oopstacles are skippable.
All cutscenes have a skip button
“Every action should have a big reward.”
Passing a set of obstacles is a big achievement in the game - as it is in TV shows like Wipeout and Ninja Warrior - so it deserves a big reward. To celebrate, there is a small section of runway with some blazing urns, coins and fireworks, where the avatar cheers as they run through it.
The celebration sequence
The game over screen is a great opportunity to display randomised offers such as quests, ad rewards, revives, the prize machine, and IAP specials. Also accessible are links to GIF sharing, leaderboards and achievements, which are contextually appropriate here. Every so often, if there are no valid offers to display, an animated GIF share preview will pop up.
Game over screen with offers
Animated GIF share preview on game over screen - view our Giphy channel
Oopstacles was designed for a worldwide audience and can be picked up and played without any instructions or text. It has intuitive controls and universal iconography in its GUI. For clarity of purpose, it does contain text along with buttons and icons, which has been translated to 13 languages.
I created a custom localisation system that reads from an XML file, exported and configured in Excel with notes for translators. For usability, I made the system reactive in real-time, such that changing the language did not require a soft reset - Unity GUI Text components pick up the language change event and adjust their text accordingly. It also includes support for right-to-left languages such as Arabic.
I didn’t like that some games, for whatever reason, make their Options menu only accessible from game over or main menu. I created a generic prefab that was accessible from both.
Oops Boy crosses the Sweepers
In the future, we would like complement the current endless mode by adding two new game modes: a multiplayer versus mode, and a level progression mode with milestone rewards. We want to port the game to multiple platforms, such as Apple TV, Apple Watch and Android TV. The simple one-touch controls and arcade gameplay lend themselves to these platforms with limited inputs. In addition, we want to keep trickling out new obstacles, avatars and powerups.
Oopstacles is free-to-play and currently available worldwide for download on the App Store and Google Play.
It was featured globally on the App Store top row "New games we love" for the week of 31/3/17.
It was featured on Google Play top row "New and Updated Games" for the week of 29/4/17.
For more info and to download, please visit http://oopstacles.com