Inspiration
At the start of this competition, I had big ideas! I'm someone who downloads any phone game that piques my interest, so I knew exactly what I wanted to create. On day one, I wrote the first script for the world and quickly realized I may have bitten off more than I could chew. As a newcomer to the Creator Program with limited knowledge of Typescript, my original idea-a cooking game-was overly ambitious. Although NPCs weren't officially available in Horizon at the time, it would have required extensive coding, and I soon realized that this wasn't feasible. I moved on to a few more ideas but still struggled to find the right one. About two weeks in, I finally landed on an idea I was committed to, only to feel lost and frustrated again just a few days later.
To combat the mental strain, I turned to a phone game for a distraction. As I played, I realized it was simple yet engaging-and that it could be just as fun in VR! This inspired me to apply similar game mechanics and strategies to create a unique VR and mobile experience. Through working with Unity and Blender, learning to import into Horizon, and pushing myself out of my comfort zone, I was able to create something I truly enjoy. The process was challenging, but it reignited my love for design, and I'm proud to have created something that I, along with the Horizon community, can have fun with.
What it does
Bridge Run is an exciting, fast-paced race where players collect wooden planks to build bridges and be the first to cross the finish line! Races take place across five dynamic environments: a volcanic lava field, a wintry wonderland, a blistering desert, a mysterious alien planet, and a lush green oasis. While races begin 10 seconds after a player enters the game area, newcomers can join in at any time before the round ends, which occurs 30 seconds after the first player crosses the finish line. Players compete for points on three leaderboards: one for planks collected, one for bridges built, and one for race points. Planks and bridges are earned during the race, while points are awarded based on race rankings-100 points for first place, with each subsequent position losing 5 points.
During the race, players can bop each other by crashing into opponents, but the one with the fewest planks will be the target, not necessarily the one doing the bopping. If a player falls off, they respawn at the most recent checkpoint. Mushrooms will randomly appear on some land pieces, giving players a quick height boost, which can be especially useful when avoiding a player trying to bop you. Players will need to keep an eye out for bopping bunnies racing around, creating more obstacles. Teleporting buckets can be utilized if a player is willing to test their luck-there's a chance the player could move forward, but there's a chance it could also do the opposite and send them back. The ultimate goal is to be the first to cross the finish line while avoiding obstacles and outsmarting competitors.
How we built it
As a newcomer to the creator program, I faced a learning curve when it came to importing assets. While I was familiar with Unity and Blender, I wasn't aware of the need to rename textures for compatibility with Horizon. I spent several days learning the basics, with help from the MHCP Discord and their learning library. I began importing assets that seemed to fit my initial idea, but after a lot of trial and error, I realized that I wanted to shift gears.
I got excited about a new concept and dove headfirst into it. I spent days importing fresh assets, focusing on how to optimize them so that the game wouldn't cause any crashes for players. I started assembling the game's pieces, but realized I needed more variety, so I decided to create multiple maps that would randomly spawn in each game. What began as simple blocking soon evolved as I replaced cubes with textured pieces, bringing the world to life. The final touches included adding haptics and audio. After a lot of hard work, everything has come together fairly smoothly. The game will be going through testing over the next day or two as any final adjustments are made.
Challenges we ran into
From the start, this competition presented its fair share of challenges. The competition was announced before I joined the Creator Program and kicked off shortly after my acceptance, leaving me with little time to learn the ropes. Although I had some prior experience with code blocks, Typescript was a whole new challenge that felt beyond my grasp. I decided to stick with what I knew and work with it as best I could. While Unity and Blender weren't unfamiliar to me, thanks to my past work with VRChat, I had no idea what the process of importing assets into Horizon would entail. Luckily, I discovered a helpful cheat sheet in the learning library that guided me on renaming textures, which became a crucial tool.
The hardest part, however, was deciding on a world concept. I went through countless ideas, some I was confident in and others I wasn't sure about. During this period, I felt the urge to give up many times, wondering if my world would ever measure up. I often thought, "I'm new to this, and everyone else's worlds will be so much better-what's the point of even trying?" But I realized that if I didn't push forward, I would regret it. So, I kept going and I'm glad I did. The experience taught me more than I ever expected in such a short amount of time.
Throughout the building phase, I faced numerous hurdles. Some basic scripts were tough to adjust, and I encountered frustrating issues, like variables randomly disappearing from scripts. This required a lot of extra work to resolve. Additionally, my world would sometimes have glitches that required me to take breaks and return later with a fresh perspective. Despite these obstacles, I persevered and was able to finish my game.
Accomplishments that we're proud of
I feel a sense of accomplishment, as this was my first competition, that I was able to complete it in the allotted time period despite facing numerous challenges along the way. There were setbacks, moments of doubt, and technical hurdles that seemed insurmountable at times, but through persistence, I managed to bring my vision to life and publish the world. What makes this even more fulfilling is that I took something I truly enjoy playing on mobile and turned it into an engaging VR experience, which I find fun to play myself. It has been both a learning experience and an opportunity to push my creative and technical limits. I'm proud of what I've accomplished and excited to see how others enjoy it, too.
What we learned
This competition has been a tremendous learning experience, particularly in the areas of time management and troubleshooting technical issues. I quickly discovered that sometimes the errors I encountered were a result of my own actions, and in those moments of frustration, I learned how vital it is to take a step back and approach the problem with a fresh perspective. This practice not only helped me solve technical challenges but also improved my problem-solving skills overall. I also came to understand the importance of seeking advice and knowledge from others when faced with something I don’t fully understand. There were moments when reaching out for help—whether through community resources or by consulting others—saved me time and prevented further frustration. Additionally, this competition helped me realize just how crucial optimization is when building worlds with custom imports. It’s not enough to just create something visually appealing; ensuring the world functions smoothly and doesn’t crash a headset is just as important, especially when working in VR. Balancing creativity with practicality became a key focus, and it taught me that the technical aspects of world-building are just as essential as the artistic ones. Ultimately, this experience has not only helped me become a more efficient and resourceful creator but also emphasized the importance of preparation, learning from setbacks, and working within limitations to create enjoyable and stable experiences for others.
What's next for Bridge Run
Moving forward, my primary focus will be improving the user experience to make the game even more dynamic and engaging. One feature I really enjoy is the changing maps, which ensure that each game feels unique and fresh. I want to take this a step further by modifying the obstacles in the race and introducing alternate layouts that vary in both design and elevation. This could involve creating multiple levels, each with its own set of challenges, adding complexity and excitement to every race.
Additionally, there are some specific assets I wanted to incorporate into the world, but I was unable to find them during development. To overcome this, my plan is to start creating these assets in Blender so I can integrate them into my world. These custom assets will introduce a fun and whimsical element, further enhancing the playful atmosphere of the game.
In the coming weeks, I look forward to gathering feedback from users, which will be invaluable in helping me identify areas for improvement and further enhancing the overall experience. Ultimately, my goal is to create a world that’s not only fun to play but also offers something new with every race.

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