Releases: joshzcold/Friendly-Feud
Published Website
Cold-Family-Feud is now available at https://famf.app !
It is currently using the free tier of heroku so if you are accessing it then you might have to wait a second for the app to become un-suspended before it loads up.
Changes:
- websockets run through secure
wss
and the local dev envrionment has some self signed certs to make them functional - new default games
season20
(general questions from the show) andtech
(custom game featuring tech questions) - new script
scripts/point_generator
which can generate realistic point values givin a question amount along with min/max point values. requires ruby
This is useful when creating your own questions and you don't want to come up with point values off the top of your head.
- game creator now allows skipping creating the fast money round.
- created license (MIT)
- websockets get served at a path instead of a dedicated port. This is to allow the websockets to function in production
Getting the website published was a painful process, but now that its finished im excited for the potential of non-tech individuals being able to use the project. For instance my mother in law already want to try and use it for her classroom. I think thats pretty cool 😀.
I currently don't know the limits of the free tier on heroku when used against this project. Hopefully its enough for the foreseeable future as people stumble upon this project and try a quick game.
For the next releases ill be focusing on play-ability improvements using mobile. Off the bat I would like if you didn't have to screen share the game window to be able to play the game.
Rooms 🚪
Features
-
Game session is kept in a cookie. if you refresh your browser it should bring you back into the game where you left off
-
game window is launched from the admin console "Open Game Window". Uses cookie to find room and display the game
-
host can quit the game. kicking everyone out of the game
-
individual players can quit the game
-
Registered players in a room are now listed on the admin console and can be kicked
Launching a Public Instance
I believe this feature is one of the last features before I could launch this app in a public instance. This would be great for people looking to play the game but who do not have experience in web dev or who wants to just host on a non dev machine.
Ill be doing some research, but obviously what I would like to avoid is having the cost of the server be too much for me to handle if I want the game to stay free (not sure if anyone would actually pay for the game anyways).
Ill be experimenting with AWS/Azure free tier, but I have heard some horror stories about cost being unexpectedly high if you make mistakes. If anyone has any ideas or past experiences that they would like to share I would be very grateful.
Also ill need to consider swapping out any "Family Feud" related trademarks/media with non copyrighted versions. I would like to avoid changing the name if I could get away with keeping "Family Feud" kind of like how https://jeopardylabs.com/ uses "Jeopardy".
Overall i'm not looking to make money off Cold_Family_Feud, but would like this project to be the best/easiest way to host your own family feud game.
Thanks for reading.
Potential Caveats:
- I never found a good way to test out rooms at scale. So any local testing I did what with at max 1 host, 2-3 players. I do plan on trying to play this game at my job with my coworkers which would at least do a 60 player test.
- With only 4 characters there is a maximum of 456976 possible rooms. The room code is found randomly in a loop. By time that this limit ever becomes a problem hopefully I would have found a way to monetize this app so I can code in more infrastructure to handle this (much like with what the jackbox games team has to do for their game). It would be better to make the room code generator go in order alphabetically rather than at random.
1.2.1 Small fixes/improvements
1.2.0 Internationalization Support
- support for adding languages
- replaced as many words as I could find in the application
- created an inital spanish translation with the help of my peruvian friend.
- changing language on the admin console changes it for everything else.
- added i18next-scanner config and npm script for easier addition of new languages.
See this wiki link for instructions on adding new languages Link
Cold Family Feud Buzzers ‼️
Since the buzzer feature is something that I figured that most people would want to utilize I figured it would be a good idea to create a release detailing the feature.
-
a new url endpoint
/buzzer
where users can register with the server with their name and their choosen team.
The buzzer ui is focused on users using mobile phones so the ui is meant to be simple -
Once registered the server keeps a avg latency count of each user via a ping/pong in the websocket every 5 seconds. The last 5 recorded latency ms get averaged to account for possible spikes.
On the start of each round (or when the admin manually clears the buzzer) users will buzz in on their phone and /buzzer
/admin
will list out who was first in order.
buzzer order is calculated by timestamp - latency which should hopefully good enough for differn't networks.
When the user can buzz in, the round question is also displayed accouting for delays in VOIP sharing