💡 Inspiration
The Luminous Trial was inspired by classic adventure puzzle games. I've always loved playing experiences that challenge players to solve puzzles and unlock new discoveries, and I wanted to bring that feeling into Horizon Worlds. The puzzle concepts in The Luminous Trial draw directly from the games I enjoyed growing up, reimagined for the Horizon worlds platform.
🧩 What It Does
The Luminous Trial is a short-form adventure puzzle world where players explore a mysterious temple, solving challenges to unlock new areas and uncover hidden secrets.
Core mechanics include:
- Key-and-door progression: Players discover gems to unlock new paths.
- Light beam puzzles: Reflect beams using rotating mirrors to activate targets.
- Floor switches: Depress switches with weight to power devices.
- Levers: Interact with mechanical devices to alter the environment.
- Leaderboard: Compete with others for the fastest completion time.
The puzzles are interconnected, offering multiple ways to engage using both physical interactions and Focused Interaction controls.
🔧 How I Built It
The world was built entirely in Meta Horizon Worlds using TypeScript 2.0 and Blender.
To support modularity and scalability, several custom scripted systems were developed:
- Puzzle Manager: Tracks completed puzzle steps and triggers world events.
- Camera Manager: Dynamically shifts views for cinematic moments.
- Focused Interaction Support: Enables intuitive drag-and-rotate mechanics for mobile and desktop.
- Lightweight Animation System: Smooth visual feedback using easing functions.
- Raycast Mirror System: Mirrors detect and reflect beams using tagged entities.
- NPC System: Enables speech triggers, animations, and item-giving interactions.
For 3D asset creation:
- Designed modular FBX assets in Blender for reuse across multiple puzzles.
- Built custom environment models in Blender, starting from .obj formats and optimising them for both mobile and VR performance before exporting as FBX files.
My goal was to create a rich, polished experience that could also serve as a foundation for future puzzle worlds.
🚧 Challenges I Ran Into
One of the trickiest parts was getting the puzzle logic to stay in sync across players. What worked great in one sometimes broke in the other, so I had to spend a lot of time testing and tweaking how things triggered. I also ran into some issues importing FBX models it took a bit of trial and error to ensure they were optimised. It was all worth it in the end, but definitely a learning curve.
🏆 Accomplishments I’m Proud Of
I’m really proud of how well the world runs on mobile, especially considering how many moving parts are happening behind the scenes. The look and feel came together better than I expected, and I think the experience is genuinely fun to move through. One highlight for me was getting the dynamic camera system working, it helps guide the player without needing much explanation.
🎓 What I Learned
I got a lot more comfortable working with the Horizon scripting API and really leaned into Focused Interaction and how to make controls feel intuitive on mobile. I also experimented with the AvatarAI system to bring some life to the NPCs, which was fun. Importing 3D assets was another area where I learned a lot around balancing detail and performance to make sure everything runs smoothly across devices.
🌱 What’s Next for The Luminous Trial
I’d love to expand The Luminous Trial into a collection of interconnected puzzle worlds, where players can earn unique rewards and uncover a larger narrative. I’ve already had some great feedback from the community, like randomising gem locations on each run to add replayability, and introducing a villain mechanic that interferes with puzzles to add tension and surprise.
I’m also really excited about the potential to enhance the world using Horizon’s upcoming AI features, like skybox and asset generation, once they’re available in my region.
The goal is to eventually build a central hub that connects all the trials into one cohesive, rewarding journey.
Built With
- blender
- horizon-worlds-api
- meta-horizon-desktop-editor
- typescript





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