Xing

⮜ Back to Blog

A Game About Werewolves

It's been a shockingly long while since I've made a new game for this site. The most recent was Ultimate Tic-Tac-Toe v3 back in 2019, and that was an update of a game first posted freshman year of high school. The last original game was my disastrous attempt to create Mahjong, from 2018. Given how the very first things ever posted on this site were small (and unoriginal) game projects, I felt overdue for a new one.

I've been a fan of One Night Ultimate Werewolf for a couple years now, despite my complete lack of any ability to lie to other people. Nonetheless, I was playing the great online version onuw.io with some friends when one of them couldn't get the game to fit properly on their phone. I casually remarked, "how hard can it be to make my own version," and then proceeded to lose the better part of two weeks because of that comment.

That's not completely true. I'd been mulling an online version of the game since as far back as freshman year of high school - it felt like a fun challenge. Nonetheless after the Mahjong fiasco, in hindsight, I don't think I was ready to tackle it at the time. Not if I wanted to result to be any good, at least.

But I like to think I'd gotten better. My new game, onuw, is now live, and I think it works. As a first for a game on my site, the game has its own GitHub repo... is what I wrote originally before I realized that technically The Quest for Sticktopia had its own repo too. However the actual .fla file didn't fit on GitHub so it wasn't in the repo, and if the bulk of the game isn't available, does it really count? No, I've decided. All my other games on this site are still open source (at least their frontends are, where applicable), but you have to View Source to see it. This time, the game is developed in its own public repository, and I have a deployment script on my local machine to copy the correct files over to my website and deploy it.

This means that the backend code is available, in a rare move. It runs off the same NodeJS Socket.io backend as all my other multiplayer games at this point, though it's much better encapsulated than many of my other games. Following good design principles, all the game logic is separated from the UI, allowing all the logic to happen server-side with the client just doing what it's told. Makes cheating a lot harder.

Just two things concerns me. One, while I did try my best to make it fit well on mobile (that was the whole impetus behind this project, after all), I'm a little concerned with how cramped it gets sometimes. There's just a lot of information to display and phone screens are so small. Second, there's no ability to reconnect, so if someone's playing on a flaky wifi connection, the game is not going to last very long.

Not sure what, if anything, I will do about those. I do want to add more roles in the future though. The design of the backend is, I think, pretty extensible, so roles like the Doppelganger shouldn't be impossible to add. I'd like to get that in at some point, though I'm probably going to take a break from this project for a bit.

The other thing is that I finally bit the bullet and reorganized the Games menu in the navigation bar. I'd been complaining for a while now that it was getting too long. On desktop trying to move your mouse across the nearly screen-long bar without it slipping out of the bounding box was getting super annoying (and I even invisibly padded the bounding box a bit on the bottom to make it easier). Mobile was a bit better because it scrolled vertically but even then having to move down a whole screen to click a link was a bit much. So instead I'm just keeping a few elements in the list and the rest have been relegated to a "More" page.

This feels significant because the Games sub-menu is one of the few remaining pieces of my website that has not seen significant change since the day it first launched in 2013. Tetris has always been first, followed by Blackjack, and then soon after by Snake. For the first time since August of 2013 this will no longer be the case, and it feels... frankly idk. Feels like I'm slowly Ship of Theseus-ing my site and I'm at least a little bit sentimental. Given that the Blog also came later, and the About and Contact pages used to be their own top level menu items before I shoved them under Info, the Home and Games links are really the only two original menu items in the navigation bar. I think that's why I'm leaving Tetris and Blackjack as the first two links under that menu. That much, at least, is still sacred.

Anyways the point is onuw is now playable. Have fun.

⮜ Back to Blog