Inspiration

Whenever I see a pinball machine I always want to play it, there's something special about the sounds, lights and action. I wanted to create a world in portrait mode and pinball felt like a perfect game for this screen orientation.

What it does

It's Pinball! is an arcade pinball game where you launch the ball, control it with the flippers, and aim for the highest score. The table includes classic pinball elements such as bumpers, rollovers, slingshots and a plunger. Hit the jackpot or multiplier to increase your score and reach the top of the highscores leaderboard.

How we built it

The game was built in the Worlds Desktop Editor using TypeScript for scripting. Sounds were created with Meta GenAI and edited with Audacity. I've designed all the graphics using Inkscape and 3D assets were made with Blender. The highscores custom leaderboard is created using World Persistent Variables.

Challenges we ran into

Simply placing a ball and adding 3D models wasn't enough, to replicate real pinball physics many scripts were required. To make the ball go smoother I added a sphere collider, also colliders are used for the flippers.

A lot of time was spent to add more realism, for example if you hit the ball closer to the tip of the flipper it will launch the ball further away. To mimic a real plunger, players tap and hold to build power. The longer the hold, the stronger the shot, just like pulling a plunger farther back. Mobile haptics reinforce the feeling of releasing the plunger and using multi-touch controls both flippers can be controlled simultaneously.

As this was my first pinball game there was a lot of trial and error involved to achieve smooth, believable ball movement.

Accomplishments that we're proud of

I'm happy to have created a fully playable pinball machine on mobile in Horizon Worlds, with modular components that make future tables easier to build.

What we learned

This was one of the most complex worlds I've created this year. I've learned more about Horizon Worlds physics, about using colliders, and it was the first time I've used focused interaction and mobile tap controls.

What's next for It's Pinball!

The first thing I want to implement are blinking lights, making the game more attractive and to indicate the player's progress. Other upgrades include achievements, multiball, more targets and new themed tables.

Built With

Share this project:

Updates

posted an update

Small update: Since a few days a (Horizon Worlds) bug appeared preventing the camera to switch to "First Person" view as is set in the Mobile Camera settings of the SpawnPoint.

I have a fix ready to be applied as soon as it is allowed again to update the world.

Log in or sign up for Devpost to join the conversation.