Ramon Hoffman

Check the Label

A multiplayer board game about microplastics and sustainable fashion, built for real research.

01

The Brief

A research team at the University of Groningen was studying microplastics awareness and wanted a game as part of their research. They came in with a paper prototype board game and a clear educational goal: help players understand how synthetic clothing contributes to microplastic pollution. The ask was not just to digitize it, but to co-create: Enversed Studios would bring the game design expertise, they would bring the research content. The result needed to work both as a classroom tool and as a standalone platform anyone could use, with built-in analytics so the researchers could keep collecting data after launch.

02

My Approach

Working alongside the research team, we reshaped the paper prototype into something that could actually hold up as a game. That meant adding structure to the turn loop, balancing the economy around money and microplastics, and designing systems like the clothing market, action cards, and washday event that made the environmental mechanics feel tangible rather than abstract.

On the technical side, I built everything from scratch: a PlayCanvas frontend for the 2D game world and UI, and a Node.js + Socket.IO backend that owns all game state. Keeping every player's screen in sync was the core challenge. The trickiest part was handling tab switches. When a player left the tab mid-turn, they missed server events while away, and stacked-up callbacks would fire all at once on return, breaking the game state. The fix was to detect browser inactivity and immediately halt all animations and running logic. When the player came back, the client would pull the latest game state from the backend and reconstruct exactly what should be shown, rather than trying to replay everything that happened in between.

The game also has a research mode with cryptographically signed completion codes, so the university can verify that a session was genuinely completed without relying on self-reporting. I added an analytics pipeline so session data flows to the researchers continuously.

Fig. 03 · Video

A dice roll followed by a turn at the clothing store, buying items within budget.

03

The Result

A live multiplayer web game at checkthelabel.nl. Players take turns buying clothing from a market, answering trivia, drawing action cards, and watching a shared microplastics counter climb with every wash cycle. It supports solo and multiplayer sessions, runs on any device without installation, and has a dedicated research mode with completion verification. The backend keeps sessions alive through disconnects and reconnections, so a dropped connection does not end the game.

04

Outcome

The game is live and actively used. The research team can play it with participants in person or send the link out independently. The analytics keep feeding them data on how people play. They were pleased with how the digital version expanded what they could do with the original concept: the online format made it accessible to a much wider group, and the research mode gave them a reliable way to track participation. For me, it was the first time I built a full-stack application where the backend drives ongoing game state across multiple connected clients. Getting that synchronization right, especially around edge cases like tab switching, was the most demanding technical problem I have worked on in this project.

Stills

01 / 03
The tutorial introduction explaining the premise: you've just moved into a shared home and need to rebuild your wardrobe
The clothing store during a turn: five cards are dealt and the player buys within their budget, with natural and synthetic items both on offer
An action card drawn mid-turn: 'Party Outfit' forces the player to take a clothing item from another player's wardrobe

The tutorial introduction explaining the premise: you've just moved into a shared home and need to rebuild your wardrobe

Ramon Hoffman, Multimedia Designer / 3D Artist / Web Developer

03 / About

Concept first, medium second

I'm Ramon, a multimedia designer based in Eindhoven. Projects start with a problem: what the thing has to do, and how someone should move through it. The answer has been a 360 film, a VR walkthrough, an explainer animation, a configurator and an AI training platform.

My part is 3D, design and code: modelling and lighting in Blender, interface and motion in XD/Illustrator and After Effects, and the build in PlayCanvas or Next.js.