BE AWESOME
Settings
Dev Notes
📅 August 26, 2026 · ⏱️ 5 min read

My Room Needed Friends to Actually Matter

Why friend requests go by email instead of a searchable directory, and drawing the line on what a friend actually gets to see.

This post is about My Room Needed Friends to Actually Matter
Visit the Player Hub →

My Room went live today alongside Friends, and I built them together on purpose — a room to decorate is a much weaker feature if the only person who'll ever see it is the person who built it. Friends exists first and foremost to give My Room a reason to matter beyond personal decoration, even though it's genuinely useful on its own too.

Email requests instead of usernames, on purpose

Sending a friend request by email rather than by searching a username directory was a deliberate choice about what kind of social feature this is supposed to be. A searchable username directory invites discovery between strangers, which brings a whole set of moderation and safety concerns I wasn't ready to take on for a first version of a social feature. Email-based requests mean you can only add someone you already have a real-world connection to — you know their actual email address — which keeps this closer to "connect with people you already know" than "meet new people on the internet." That's a meaningfully smaller, safer scope for a first version, even though it does mean this can't help anyone find new friends who happen to share an interest in the same game.

Notifications had to close the loop, not just fire and forget

Sending a request and hearing nothing back is worse than not having the feature at all, so getting notified when a request is accepted or declined mattered as much as sending the request in the first place. A friend request that just silently sits in a pending state with no resolution visible to the sender creates real uncertainty — did they see it? Are they ignoring it? Is something broken? Closing that loop with an actual notification either way, accepted or declined, was necessary for the feature to feel like it works reliably rather than dropping requests into a void the sender has no visibility into afterward.

What a friend gets to see needed a real boundary

Once you're friends with someone, you can view their room, their avatar, their favorite games and tools, and their last game played, and drawing that specific line took real thought about what's genuinely social versus what would feel invasive. Room and avatar are things someone actively built to be seen — showing them off is the whole point. Favorites and last-played are lighter-touch, ambient social context, the kind of thing that comes up naturally in conversation between actual friends. I stopped well short of anything that reads as surveillance — no browsing history, no detailed activity log, nothing that would make a friend's profile feel like it's tracking them rather than just reflecting what they've chosen to build and play.

The avatar editor had to live in two places without becoming two products

The full Pixel avatar editor now lives inside My Room as well as continuing to exist as its own floating customizer elsewhere on the site, and keeping those two entry points from drifting into two different tools with overlapping but inconsistent feature sets took real discipline. It would have been easy to let the in-room version pick up room-specific shortcuts over time while the standalone customizer stagnated, or vice versa, until they quietly became two different experiences that happened to share a name. Both entry points route into the exact same underlying editor and the exact same saved avatar state, so a change made in one place is immediately reflected in the other, rather than maintaining two separate avatar systems that could eventually disagree with each other about what your avatar actually looks like.

Twenty-two objects across six categories needed real variety, not padding

My Room's decoration set spans 22 draggable objects across 6 categories and 6 full-scene backgrounds, and hitting a number like 22 without it feeling like padding meant making sure each category actually offered a genuinely different kind of choice, not six near-identical items with swapped colors. A room with only cosmetically different options doesn't feel like decorating, it feels like picking a skin. Real category variety — furniture, wall art, lighting, and so on each doing a distinct visual job in a room — was what made 22 feel like a real toolkit rather than an arbitrary number chosen because it sounded substantial in a changelog entry.

Why this is the right foundation, not the finished feature

I already know this is a starting point rather than a complete social system — there's no activity feed, no way to see what a friend's been up to beyond their last game, nothing that would make coming back to a friend's profile feel different on day ten than it did on day one. That gap is intentional for now. I'd rather ship a clean, working foundation — requests, acceptance, a room worth visiting — and let real usage tell me what's actually missing, than guess at a fuller social system before a single friend request has actually been sent.

This is also the first feature on the site that only really works because two people are both using it — a room nobody visits and a request nobody sends don't do anything on their own. That's a genuinely different kind of bet than shipping a new solo game, where I can judge success just by watching one person play it. This one only proves itself out once real friendships start forming on top of it, which is a slower, less certain thing to measure than a completion rate on a single-player level, and it's the kind of feature where patience matters more than it does anywhere else on the site, since there's no version of this that succeeds purely on launch day, no matter how well the room and the request flow both work on their own right now, in isolation, with nobody yet on the other end of either one.

Hello!