Trivia Quiz Multiplayer is a multiplayer quiz game developed in C. The project allows multiple players to challenge each other by answering general knowledge questions, with customizable quizzes stored in the quizzes
folder.
- Client-Server Architecture: Allows multiple user to connect to the same server and play Trivia Quiz
- I/O Multiplexing: Utilizes the
select
primitive to ensure maximum scalability of the service. - Clients Ranking: Server keeps track of connected clients and rankings for each quiz theme.
- Customizable Quizzes: Add or modify questions in the
quizzes
folder. - Developed in C: Well-organized source code compiled via a Makefile.
- Documentation: Generate technical documentation using Doxygen (configured via the
Doxyfile
).
- C Compiler: GCC or a compatible C compiler.
- Make: To simplify the compilation process.
- (Optional) Doxygen: To generate technical documentation.
- Clone the repository:
git clone https://github.com/lorenzo-moni/triva-quiz-multiplayer.git
- Navigate to the project directory:
cd triva-quiz-multiplayer
- Compile and start the application:
The following script builds the source codes by using make and creates a server instance and two client instances
Follow the on-screen instructions on one of the client instance to begin a quiz game.
./start.sh
To generate the project's technical documentation:
-
Ensure Doxygen is installed
-
Run the command:
doxygen Doxyfile
The documentation will be created in the directory specified in the Doxyfile.
- src/: C source code.
- quizzes/: Files containing the quizzes.
- Makefile: Script to compile the project.
- start.sh: Script to launch the game.
- Doxyfile: Configuration for generating documentation with Doxygen.