WEBSITE AS A VIDEO GAME WHITEPAPER

When it comes to casual stranger-to-stranger interaction, communities are moving online. We react to news in the comment section of Reddit, we flirt with neighbors on dating apps, and we idly chatter on Discord. Yet asynchronous social apps have not seen user interface disruption beyond infinity scrolling feeds and reaction-emojis. What if you could reap the benefits of video game design—abstracting 2D content into 3D skeuomorphic objects, scrolling by manipulating the camera perspective, and juicing the mouse or touch interactions—without habit forming loops of a win / loss state? Could there be a way to stop feeling fatigued after a session of social media browsing?

36 min read • Published: July 05, 2022

Screenshot 2022-07-01 1.48.19 PM.png

NAVIGATION

1. 🔍 User Experience Research

Aha moment

Common scenarios emerged from interviewing people about the origin stories of their favorite friendships - chance encounter at some public event, introduction by mutual acquaintance, casual group sports, project collaboration through school / work / volunteering, and hitting it off at a private house / dinner party.

Dinner parties in particular stood out:

Screenshot 2022-06-28 5.54.08 PM.png

Could the dinner party user experience be recreated as an asynchronous private group chat?

Stranger-to-stranger compatibility

First, I had to understand why two people click.

Since friends hit it off regardless of activity, I suspected that shared interests were a weak form of compatibility; confirmed by often-cited failures to hangout following a Meetup.com event.

Diving into best friend relationships revealed three interesting sources of compatibility:

Screenshot 2022-07-18 1.47.27 PM.png

I eventually stumbled onto a set of questions / prompts to ask throughout a 30-minute interview which could build out someone’s profile along these compatibility attributes.

Trending causes of loneliness

But not everyone who attends public social events is lonely; many really do just want to do a shared activity then go home, which makes it more difficult to identify attendees seeking social support.

Although tough to spot, within public events I began identifying attendees who experienced a significant socially traumatic event:

Screenshot 2022-07-02 10.42.04 AM.png

I decided to focus on the age demographic of 25 - 35 assuming a) propensity towards trying a new app, b) resistance to becoming a curmudgeon, and c) actively spending time & money to address their isolation.

Shortcomings of online communities

Where do these people hang out?

As someone who identifies with the above demographic, I participate in offline events, as well as online places like community apps (eg. Reddit, Discord, Slack) and dating apps (eg. Tinder, Bumble, Hinge) due to the ease of instantly joining a public community.

As a sporadic active user, I’ve experienced a few shortcomings preventing discussions beyond surface level:

Screenshot 2022-06-28 6.12.15 PM.png

2. 🕹 Game Design Research

Website vs. video game similarities

What if a website whose primary purpose is to pass-the-time could have interactions optimized for entertainment rather than speed or usability?

A video game is basically an entertaining interface to navigate content (ie. world, story, creatures, items); game mechanics map nicely to a website’s primary methods of navigation - buttons, scrolling, and clicking.

*Buttons **🡒** 3D Game Assets*

As buttons tell website users, “if you click me, something will happen”, video game assets can convey to players similar intent.

Clicking a paper-airplane-button (before it disappears off screen) toggles popup

Clicking a paper-airplane-button (before it disappears off screen) toggles popup

3D game assets can be further enhanced with playful attributes by tweaking texture (for visual emphasis), spatial position (to fit more content on screen), and asset shape (skeuomorphism to reduce text on screen).

Scrolling 🡒 Camera System

As an alternative to ‘scrolling down a page’, all content can be made visibly available in a zoomed out view, with controls given to the player to adjust the camera perspective such to interact with specific content.

A camera system is used to scroll the window along multiple dimensions (rotation, dolly, zoom)

A camera system is used to scroll the window along multiple dimensions (rotation, dolly, zoom)

With access to three-dimensions, interactive objects can be placed behind other objects, encouraging players to adjust the camera perspective (as an additional mechanism of slowing down the pace of content browsing).

Clicking 🡒 Gesture Combos

Finally, gesture-combo-interactions have been made ubiquitous among mainstream demographics thanks to the growing popularity of hypercasual games.

Getting to inbox zero through swatting away messages

Getting to inbox zero through swatting away messages

Gestures like long-tap / drag-and-drop not only slow down the pace of a interacting with a website and its elements, but also feel more mentally stimulating.

Gamification thoughts

Points, badges, and leaderboards by themselves make gameplay feel hollow, so deconstructing popular video game titles revealed three additional mechanisms—progression loops, choices with consequences, game feel—which might influence fun:

Untitled

Implementing these gamification ingredients proved surprisingly difficult in practice, and may explain why many games iterate on previously popular games ie. games with proven gamification design.

Inspiration

Observing indie game designers during game jams (the game industry equivalent of a hackathon) revealed that most game design brainstorming begins by copying elements from previously successful titles.

Specifically, indie game designers often say, “I combined mechanic from game I enjoyed with mechanic from another game I enjoyed, and was inspired by the art style from yet another game I enjoyed”.

Applying this design methodology—through browsing too many hours on Steam—uncovered several titles used as the basis for Slowcial:

3. 🤖 Low-Code Tech Stack & Architecture

PlayCanvas

PlayCanvas was chosen as the low-code 3D web game engine because it exports 10x smaller than Unity (allowing smoother performance on mobile web browsers), conveniently handles all the deployment / hosting, and has a small yet passionate Discord community for support / brainstorming.

3D assets

Simple assets were acquired through cgtrader, selected on the basis of cost ($10), file type (FBX), and poly count (low).

Untitled

Untitled

Untitled

Libraries

Gameplay & logic was improved through the assistance of some external libraries.

Gameplay controllers

After building several 3D website prototypes, certain scripts & logic became commonplace across all designs.

Window.postMessage()

To connect PlayCanvas and Bubble, a cross-window communicate method is implemented allowing a) PlayCanvas to listen for data payloads from Bubble, and b) PlayCanvas to send data payload to Bubble.

Bubble

Bubble was chosen as the no-code full stack web application builder because it blows my mind to use; it provides a simple interface to a database, rules engine, drag-and-drop user interface builder, responsive layout settings, and HTML / JavaScript embedding, as well as handles the deployment / hosting.

Data Model

Four tables are used within the prototype:

Workflows

Workflows can be summarized as: