Inspiration

Often times, we found ourselves all in one room but bored, looking for a party game to make us all laugh. We all have phones and at least one computer, which we could use for a fun social party game. That's why we made Identity Crisis.

What it does

Our game challenges you and your friends to guess your favorite celebrities' craziest tweets. Every round, you can score points if you guess correctly.

How we built it

The front-end is built primarily using HTML, CSS, JavaScript, and JQuery. The front-end interfaces with our server using socket.io and node.js. For the back-end, we have two servers. The first server is our game services server that handles match-creating, letting users join the game, and managing game dynamics. It uses a web socket that interfaces with out front-end to control the players' and spectators' webpages in real time. The web socket allows us to have a bidirectional channel communication. The second server, written in Python 3 and Flask, is hosted using Google app engine and uses a web-scraper to pick tweets for the game from celebrities' accounts. We intelligently choose tweets based on retweets, likes, and other interactions. We also choose false answers for the questions by intelligently determining other users who would tweet something similar. The chosen tweets and answers interface with our main server using the REST API guidelines. The main server uses a GET request to get the tweet and possible answers.

Challenges we ran into

We ran into a lot of challenges building our main server and using Socket.io and node.js because they were new to us. We also had a lot of challenges handling players joining and leaving the room and the proper handling of that. Other challenges included basic game dynamic logic and creating a nice flow to the game and hosting our server on Google Cloud.

Accomplishments that we're proud of

We are proud of the fact that multiple users can join the game concurrently and everybody will be able to interact with the game in real-time. We are also proud of the fact that we are intelligently picking tweets and the answers instead of just choosing random tweets. We are also extremely proud of how we organized our project such that it was fairly easy to integrate the different components at the end.

What we learned

We learned a lot about WebSockets and running and interacting with a server on Google Cloud Services. We also learned how to tie multiple servers together for one product. We also learned a lot about Web App Development as this was a fairly new area for most of our members.

What's next for Identity Crisis

We would like to expand the game so that we can support multiple rooms concurrently. We also hope to be able to add other ways to play this game such as user submitted twitter handles, and another mode where all the users submit a tweet pretending to be someone else, and everyone must figure out who originally wrote the tweet.

Share this project:

Updates