This is a two-player Rock-Paper-Scissors game implemented in Python using socket programming and PyQt for the graphical interface. The game allows a server and client to connect over a local network and play multiple rounds, with scores tracked automatically.
- Local Network Multiplayer: Play Rock-Paper-Scissors with a friend on the same network.
- Graphical Interface: A PyQt-based interface with easy-to-use buttons and score display.
- Score Tracking: The game keeps track of each player's score until one decides to quit.
- Python 3.7 or higher
- PyQt6 library
-
Clone the repository:
git clone https://github.com/your-username/rock-paper-scissors-game.git cd rock-paper-scissors-game -
Run the game by starting the server and client as described below.
-
Run the Game:
- Open two terminals to run the server and client scripts.
- Ensure that both terminals are on the same network.
- Replace
SERVER_IPwith the server's IP address inclient.py.
-
Start the Server:
- Run
server.pyto start the server (Player 1).
python server.py
- Run
-
Start the Client:
- On a different terminal, run
client.pyto start the client (Player 2).
python client.py
- On a different terminal, run
-
Play the Game:
server.py: The main server script, handles Player 1's gameplay and communicates with the client.client.py: The client script, connects to the server for Player 2's gameplay.README.md: Project documentation.
- Network Play: Extend to allow play across the internet.
- Additional Rounds: Implement more gameplay modes or variations.
- Leaderboard: Add persistent storage for scores across sessions.
This project is licensed under the Apache License 2.0. See the LICENSE file for more details.