Team Liars Table
presentLiars Table

Liars Table Demo Video

Liars Table Demo Video

Lie and cheat to the top!

The app is a digitial version of the card game cheat. The app is a cross platform multiplayer game, working on web, IOS and android, meaning players can join the same game no matter what device they are using! Users can create a profile, log in, create and join game rooms. We decided to go for western/cowboy theme and have included hand drawn artwork throughout the app.

We decided to go with making a game app as we felt it would be more fun and we could test out some front end features we'd not used before as well as other technologies such as socket.

The Team

  • Team member imagePreview: Team member image

    Taiga Allaire-Rousse

  • Team member imagePreview: Team member image

    Craig Robinson

  • Team member imagePreview: Team member image

    Martin Grennan

  • Team member imagePreview: Team member image

    Kaleem Ashraf Parveen

  • Team member imagePreview: Team member image

    Lewis Freely

Technologies

Tech Stack LogosPreview: Tech Stack Logos

We used: React Native, Typescript, Node.js, Socket.io, Firebase, Render, MongoDB

Typescript - very popular language often used in the professional world and we wanted more practise.
React Native - You can use it to easily make apps for IOS and Android and use the same files opposed to having to make specific Android and IOS apps.
Socket.io - We made a multiplayer game and this was one of simpler ways of doing that.
Firebase/MongoDB - The code we used was more front end based, so we needed a noSql database to hold account information and Firebase for account verification.
Render-We needed to host socket.io and it was a familiar piece of software. We tried Horoku but had issues.
Node.js - familiar node packaging and workes with Typescript.

Challenges Faced

We initally made the cards draggable and had more annimation, however quickly found it made the logic of the game more complicated so had to simplify the game play for the MVP.
We also ended up having one person dealing with Socket.io meaning near the end it created a bottleneck where the rest of the team lacked knowledge to assist.
Node.js had an update today which caused issues with socket node modules not working on some of our team members laptops.
Initial testing of the game was done with 2 players which caused some scaling issues when trying to live test it with 4 players.
With a lot of heavy asynchronos code via socket.io, we had to do a lot of refactoring to limit states and other sockets racing against eachother causing components not to render in some instances and server preformance issues.
Render was the only free hosting service we could find and it doesnt work very well with socket.io.
A lot of our team members had issues with Android Studio and the Android Emmulator crashing continually.
We had issues with passing types via socket and Typescript as it was a new technology, cause crashes and server restarts on a few occasions.

Big ups the rubber ducks John and Mitch <3
ALSO THE CARDS WERE DRAGGABLE AT ONE POINT.