I don't care that they stole my idea . .
I care that they don't have any of their own


Christmas Experience

The absence of a Christmas party hurts us all. 

So the idea emerged to build a small social application where colleagues can meet, talk, and tackle a task together.
Now, you can decorate a Christmas tree together.

It all sounds simple and straightforward, right? Wrong! The biggest hurdle in such an undertaking is managing the "networking." Every interaction from every connected player must be synchronized with all other players.
This is a very time-consuming and often highly complex task—not to mention the server infrastructure.

Normcore

To build this application within a reasonable timeframe, I utilized Normcore, the cross-platform multiplayer system for Unity by Normal. It allows for the fast and, above all, intuitive integration of online multiplayer into Unity applications while remaining extremely flexible.

Out of the box, it supports voice chat, synchronization of object positions (e.g., the player), AR and VR support, and much more. The Normal team is constantly working on new features for Normcore. Their system is based on "rooms"; any player can enter a room and meet others there.

Normcore's server structure is designed to open rooms automatically and scale them based on the number of players. Every aspect of Normcore is optimized for bandwidth reduction, making it suitable for mobile applications as well. For large-scale projects, Normal offers an Enterprise plan that allows for self-hosting and includes professional support from the Normal team to guarantee stability.

Features

To ensure seamless interaction within the application, I built an interaction system that allows me to add new interactive objects quickly and intuitively—like a camera, for example!

That’s right, a camera. How else would you capture your memories? Set it up, hit the self-timer, and pull a silly face—just like in real life. The photos are automatically saved to the photos folder, no SD card removal required.

The application allows the use of the microphone to talk to friends. If you don't feel like talking, you can send various emojis to express your feelings. If you do choose to use the microphone, the character's mouth moves in sync with the speech. So please, say "Cheeeeese" when taking a photo!

The character was modeled using Blender and tailored specifically to the movement system of this application. Thanks to Normcore’s flexibility, I was able to create player-color synchronization, so every player sees the correct colors of everyone else. Additionally, I integrated a radio that synchronizes across all players, ensuring everyone hears the same music at the same time.

Conclusion

concept drawing of robot
Character Concept Drawing

This project has shown me that the path to a multiplayer application is no longer as complicated as it once was.
Thanks to Normcore, it is possible to realize various collaborative projects flexibly and efficiently.