This software includes a web-based client which will be hosted directly by the software in form of a website. This website will inevitably need to save game-specific data, requiring the host to provide legal texts regarding cookies
and general terms of service
(see GDPR). Moreover the host might also need to provide a Legal Notice
or About
page, depending on the hosts location.
We provide placeholders for these purposes which can be replaced, or removed, depending on your needs. Said placeholders are located as following:
- Cookies and Terms of Service:
../ServerLogic/PAClient/Shared/_Layout.cshtml
- Terms of Service:
../ServerLogic/PAClient/TermsOfService.cshtml
- Privacy:
../ServerLogic/PAClient/Privacy.cshtml
- About:
../ServerLogic/PAClient/About.cshtml
We highly recommend setting everything up according to legal requirements, regardless of the location of the host and the userbase, to circumvent possible future issues with the law and law enforcement.
Make sure that Python3 is installed and Docker is running. Place a valid .pfx certificate in QualityQuest/ServerLogic
. Run install_and_run.py
with administrator privileges. The script offers you three options to start QualityQuest:
- (Install) Must have been run once to enable the other two options. Creates a new Docker image, the requested parameters are used to start a Docker container and run QualityQuest directly afterwards.
- (Configurate) Start QualityQuest from an existing Docker image and change the parameters for port and URL. Also resets parameters such as LogLevel and password from previous sessions.
- (Continue) Start QualityQuest and apply settings from previous sessions.
In general it is sufficient to use option one in the script only once to generate a docker image. From there on, options two and three are perfectly sufficient for normal operation.
If somehow the ServerShell-Terminal is closed without stopping the ServerShell/qqservercontainer beforehand, you can use docker attach qqservercontainer
to interact with the container again.
Possible issues and possible fixes:
- Website or WebSocket not available?
- Specify 'https://' explicitly for the website.
- Check whether the sockets on your device are enabled or occupied by another service.
[Warn] Failed to Authenticate System.AggregateException: One or more errors occurred.
- This Exception is thrown when a PlayerAudience-Client tries to connect using HTTP, TLS 1.1 or other "outdated" protocols.
- The Exception is non-critical for the server, the PlayerAudience-Client still has to connect via HTTPS
- The website looks broken or is not working correctly!
- A big part of the website's communication is handled through JavaScript - Any add-ons or extensions blocking JavaScript need to be disabled to play the game.
If you have any problems, please write us an issue, we will be happy to help you.
The server-shell contains the following commands:
- password Show or set the server-access password
- start Start the server
- stop Stop the server
- sess Shows the currently active sessions
- log Show the logs
- exit Exit the shell
Use 'command --help' to read about a specific command.
The settings made in the shell persist beyond the end of the container and are thus also available after a restart via the script if option three is selected. The same applies to the log file, which can be found in /Saves
, although unlike the parameters, this is not reset with any of the three options. This should be done, if desired, via the server shell with log --clear
.
The PlayerAudience-Client is designed to be easy to be used by the audience, as they only need to enter the SessionKey
provided by the Moderator-Client into the provided textfield. Alternatively the audience may scan the QR-Code provided by the Moderator-Client to skip entering the SessionKey
altogether.
After the joining the Session
the audience can lay back and wait for the next poll to start, where they can vote by simply pressing one of the buttons appearing on their screen.
The Moderator-Client is a simple to use client written in C# using the Unity engine. For an optimal experience we suggest playing the game with a resolution of 1080p/FULL-HD or higher!
The options menu gives the user to seperately change audio options, choose a different resolution and switch between windowed mode and fullscreen, using simple buttons, sliders and dropdown menus.
After clicking on Online spielen
the user is prompted to enter an IP, a port and a password, which are the informations the user had to enter when setting up the server using the handy Python-Setup-Script.
While online, the user may press the button in the upper right-hand corner to pause the game at any given timer - Effectively stopping the ongoing Online-Session and thus stopping the Voting-Timer.
The user may presst he button in the upper left-hand corner, while in-game, to open up an option menu at any given time. Here the user may adjust the game-options, return to the main menu or close down the game completely.
"Easy Lemon" by Kevin MacLeod (incompetech.com)
Licensed under Creative Commons: By Attribution 3.0
https://creativecommons.org/licenses/by/3.0/
"Wallpaper" by Kevin MacLeod (incompetech.com)
Licensed under Creative Commons: By Attribution 3.0
https://creativecommons.org/licenses/by/3.0/
"Shades of Spring" by Kevin MacLeod (incompetech.com)
Licensed under Creative Commons: By Attribution 3.0
https://creativecommons.org/licenses/by/3.0/
"Blue Ska" by Kevin MacLeod (incompetech.com)
Licensed under Creative Commons: By Attribution 3.0
https://creativecommons.org/licenses/by/3.0/
"Upbeat Forever" by Kevin MacLeod (incompetech.com)
Licensed under Creative Commons: By Attribution 3.0
https://creativecommons.org/licenses/by/3.0/
"Beach Party" by Kevin MacLeod (incompetech.com)
Licensed under Creative Commons: By Attribution 3.0
https://creativecommons.org/licenses/by/3.0/
"Beach Party" by Kevin MacLeod (incompetech.com)
Licensed under Creative Commons: By Attribution 3.0
https://creativecommons.org/licenses/by/3.0/
"Office ambience" by Nightwatcher98 (freesound.org)
Licensed under Creative Commons: By Attribution-NonCommercial 3.0
https://creativecommons.org/licenses/by-nc/3.0/
"computer keyboard typing" by FREE_SOUND_ENTERTAINMENT (freesound.org)
Licensed under Creative Commons: By Attribution 3.0
https://creativecommons.org/licenses/by/3.0/
"Party Crowd 1" by Kolezan (freesound.org)
Licensed under Creative Commons: By Attribution 3.0
https://creativecommons.org/licenses/by/3.0/
"Beach Ambience" by bone666138 (freesound.org)
Licensed under Creative Commons: By Attribution 3.0
https://creativecommons.org/licenses/by/3.0/
"Button Click 3" by Mellau (freesound.org)
Licensed under Creative Commons: By Attribution-NonCommercial 3.0
https://creativecommons.org/licenses/by-nc/3.0/
"Electro win sound" by Mativve (freesound.org)
Licensed under Creative Commons: By Attribution 3.0
https://creativecommons.org/licenses/by/3.0/
This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.