Inspiration

Lance was inspired by classic arcade games like Joust. These are a perfect fit for Horizon mobile, as they emphasized social and easy to learn mechanics with deep strategic elements to extend the gameplay. An early version of Lance proved just how fun the mechanics are, and we wanted to uplevel the experience with progression and moments of delight.

What it does

The gameplay is deceptively simply. Flap around the map and try to position yourself above other player, so you can bonk them with your Lance. When players clash, the player higher than the other will win. You can also dive bomb players with a dedicated button press, but if you miss, you'll be stuck in the ground for a few seconds and be vulnerable. You can also collect gems to charge up your laser, for an one-shot KO.

For the upgrade, we revised the gameplay to add a long progression arc tied to a battle between angels and demons. Players now have aura points, which they increase by KOing other players and collecting gems around the map. Collecting aura points will lead to epic on-screen level up moments, in which players get progressive cooler and cooler wings as they ascend the ranks from imp through various levels of demons and angels all the way up to God (if they're really good). Demons and Angels have slightly different advantages, but the core gameplay loop remains the same.

How we built it

The main game revolves around a smooth side scrolling camera view, with some nice touches like easing to avoid jarring movement and screen shake on moments of impact. Since I had never built anything like this before, for the first time ever, I relied heavily on AI for coding assistance.

For the upgrade, we added dynamic UI elements to build a great player HUD and track progress through a moving status bar. That way, players are conscious of their rank/level in multiple ways by diegetic info (the wings they have) and HUD-based info (aura point number, level readout, progress bar growth). We also included an level-up animation avatar to really sell the moment as epic.

Challenges we ran into

Getting moments to feel awesome and impactful on a small screen. Arranging multiple HUD/UI elements to balance information and visibility.

Accomplishments that we're proud of

The game is instantly fun. Even when you are bested by an opponent, there is a visceral sense of "I'll get you next time!" that encourages players to jump back in. It's the kind of game where half an hour can go by in a blink. Plus, leveling up feels like a real accomplishment, and the added variety of demon/angel wings and levels make players want to see what comes next and grind for the highest rank.

There's no screen to stop the fun and ask you to select a new hat or skin - you're always ranking up and changing and getting awesomer.

What we learned

Through developing this on-screen progression system, we learned how to show progress and accomplishments in real-time as you play.

What's next for Lance

Horizon mobile does not yet have the userbase to ensure the world is always populated, which is challenging as a multiplayer game. So, we hope to add an NPC player for single players to spar with as they wait for others to arrive. We also would like to add a few additional mechanics like Aura Farms (zones to collect aura off players who lose all their lives), and some form of progress indicator between sessions beyond just leaderboards (eg. cool gear you can equip after reaching a certain level).

Built With

  • ai
  • audioimport
  • avataranimations
  • cameraapi
  • cmi
  • custombuttons
  • customui
  • typescript
Share this project:

Updates