The difference between Chrome and Firefox here is really interesting, especially since the WebSocket handshake looks almost identical apart from the missing Cookie header in Chrome. Since the same localhost connection works in Firefox, it makes sense to look at how Chrome was handling the session cookie for WebSocket requests at the time. It’s one of those small browser differences that can be surprisingly frustrating when debugging, much like tracking down unexpected behavior in https://gachanebulaapkmod.com/.
This is a cool little project for anyone who enjoys experimenting with HTML5 games. A simple Tetris clone is also a nice way to learn how the game logic, controls, and browser rendering work together without making the project too complicated. I’d definitely be curious to fork it and see how the original implementation is put together. I’ve also been checking out gacha nebula lately, so it’s interesting to see another example of how simple game ideas can be turned into something playable.