top of page

Puzzle Sandbox Reflection:

The initial project goal was to create a prototype of a multi-player experience for small gaming groups who wanted a simple place where they could meet up with friends, chat and solve puzzles to improve their group hub. Overall, the project went well, and we met our goal – albeit slightly scaled down from our initial aspirations.

Our team (Lukasz Kucharski, Juhi Rathi, Nikunj Sethi and me) was able to quickly align our goals for the project and develop a cohesive project plan. We were able to concentrate on getting the systems in place for multi-player and movement early on. This allowed the team to concentrate on the puzzle system and work towards getting the project to allow users to work together and solve a tutorial puzzle. This proved to be tricky as sending data to the server so it could be populated across multiple headsets didn’t seem to always work as intended.

Originally, we thought we’d have three engineers and an artist with programming skills. Unfortunately, our skill sets didn’t quite line up with what was needed. We needed a designer and an artist to provide assets for our project. Juhi took up the role of designer and asset provider early on. Nikunj and I worked on figuring out the technical issues with Photon engine we were using and most of the system programming for the project. Nikunj did most of the networking programming and used me to test, update theories and help him locate issues in his code. I did all the basic systems programming for the puzzles, UI, and game management. Lukasz worked with Juhi on designing the puzzle levels and providing some art assets for the main HUB. Lukasz designed and implemented the first standalone puzzle by himself. It took longer than expected. He got it mostly working in the end, though he could have asked for help from us to get it working faster. Juhi designed the HUB layout and updated it when it didn’t work as well as expected after our first test (it was too enclosed which could easily give users motion sickness). She was going to do an additional puzzle, but other projects and time prevented that from happening.

While it took the team some time to figure out what roles and tasks each person would do, once the tasks were set out everyone worked diligently on getting their tasks done within a reasonable timeframe. Each person worked hard on getting data and code to each other so there was little lag in production. The team was over ambitious in wanting to get three to five puzzles completed. With networking issues and re-design, we were only able to get two puzzles implemented.

After the final turn-in, I took on the task of updating the avatars in the world to use the Meta Quest avatars using Meta’s Avatar SDK. I was able to quickly get an avatar from my headset into the development platform, using a few online tutorials (Valem Tutorials and Abolfazl Tanha). Unfortunately, when creating a standalone build for Quest, the system would hang. I narrowed down the bug to something to do with the Meta Avatar SDK loading. If I had more time, I think I could figure out what setting I might be missing. There was not much online to help with this issue.

The prototype effectively shows how this program could have potential as a multi-player experience that users might enjoy. The team generally worked well together, and we produced a project to be proud of.

bottom of page