GAME: GAMING COUCH
A PARTY GAME PLATFORM FOR FUN COUCH GAMING SESSIONS
All you need is a TV, some mobile phones and a good couch to sit on!
What we did
Architectural Design
|Prototyping
|Conception
|Platform Development
|Game Development
|Client Networking
In a nutshell
Gaming Couch is a party game platform that does not require a gaming console or controllers, which makes it highly accessible. You simply use your mobile phone as a controller. The platform aims for an endless stream of short and easy to approach minigames, combined with player interaction to get that party going. It really isn’t a party game if you can’t group against the leader or push your boss off the ledge, is it?
Accessible party games
No shortage of controllers. All you need is a mobile phone to join the stream of minigames up-to 8 players.
Architecture for the whole stack
We designed and implemented the platform's backend, custom client logic and UI to fit our current and future needs.
Games made in house
To get Gaming Couch going, we quickly created over a dozen minigames and minigame modes. Unity was mainly used due the need for a rapid dev cycle and WebGL support. The only way is up from here.
Quickly make and drop in your game
As a game developer, just make the fun part of your party minigame by leveraging the platforms tools and interfaces. We'll be releasing the tools publicly in the future. Don’t forget to share it with the Gaming Couch community!
The challenge – creating a gaming platform from zero
We at Dead Set Bit have always enjoyed gaming, and especially social party games. The more heated the games get, the better! Our goal was to create both fun party style games as well as a platform that enables players to join in with just their phone – no specialised controllers or consoles necessary. With no existing platforms available that suited our exact needs, we decided to create our own platform and games for it, with future plans to make it accessible for other game developers as well.
The solution – from concept to launch in 4 months
We started from zero and in just four months designed, developed and delivered a fully functioning Minimum Viable Product (MVP) of the platform, including 10 minigames. This MVP was launched at Dead Set Bit's 10 year gala party in 2024 and was well received among the party crowd.
Throughout the concepting and development process, we carefully chose what features to pick and implement. As a small team, we don’t have the benefit of implementing anything that will hinder us along the way or lock us in the wrong path, so even while we were building an MPV, our sights were set into the future.
As the platform should be accessible for everyone, making things as simple as possible is the key and usually goes hand-in-hand with streamlining things:
Game? Fewer actions and simpler game loops!
Game controller? Fewer buttons!
Platform? Centralise everything that can be shared between games, such as: score and placement screens, name tags, health bars and also provide tools to quickly write game code that would usually duplicate between this type of game projects.
At every turn, simpler has proven to be better, as party sessions can be chaotic and at times new players come and go, the simplest games and decisions have received the most praise. At the end, it’s the other players that should provide the challenge, not the game mechanics.
Connecting the players
The platform uses WebRTC for networking between host and player clients. It's a technology that has been around for a long time and has been stable since 2018. WebRTC is not that commonly used in the web, as for most web applications WebSocket is more fitting. But when it comes to real time game communication, we had to opt for speed.
For our use case, there are actually a few good reasons why we picked WebRTC over WebSocket. First of all, we do not want to be the mediator of all of the data (servers, costs, latency, coverage). On top of already added latency (as the data is proxied over a server), there is no option to use UDP protocol with WebSocket that is built around TCP.
Why is UDP so important (for us) and what is it? Well without getting it to the weeds, UDP (User Datagram Protocol) is usually used for time-sensitive applications such as gaming and video chats, where it’s more important to receive the latest package ASAP instead of guaranteeing delivery of a specific package before proceeding.
In contrast, TCP’s (Transmission Control Protocol) core point is to guarantee that a specific package is sent and received in the correct order. The package is sent again and again until it’s confirmed as delivered, which could cause unwanted queues/delays to user inputs.
Below we have some high level options of how the player controller may communicate with the game. The ideal case is a direct LAN connection (scenario 1), if that fails for any reason we will try to connect the player over the internet (scenario 2) and if that fails, we will use a relay server that guarantees access from anywhere (scenario 3). Using a relay server is never something we want, due to the added delay but it’s still better than leaving the player unable to connect.
The future
Gaming Couch will keep growing as a platform as we keep adding more features and games, but most importantly as mentioned above, our target will be to make the platform accessible for anyone to create a game and build a community around that.
We like to play games, but most importantly we love to craft games for others to enjoy. We know the struggle of creating a game and bringing it to an audience, it takes a lot of time and it has a lot of tedious steps that are not part of making the gameplay. Our goal is to simplify the development phase so that a skilled developer can create a party minigame in a weekend and a beginner can actually finish their first game and bring it to an audience (or just for friends and family to enjoy).
How do we accomplish this, you may ask? Well, you just plug your gameplay loop into Gaming Couch and you are set! We provide docs, examples and tools to speed up writing your game logic and integrate with the platform. As the games are limited to be really short and simple with minimal controller inputs to learn, it’s easy to avoid one of the most common pitfalls of game dev known as “feature creep” which will way too likely devour your soul as a passionate game developer, beginner or not.
Start you own couch gaming session!
Don't just read about it, go try it out yourself! The platform and games are available for free at gamingcouch.com. Gather your friends and prepare for an emotional roller coaster as the podium placements change.