The Multiplayer Game Server is a robust and efficient server application designed for real-time multiplayer games. It handles player connections, manages game state, and facilitates real-time communication between players using UDP sockets.
- Real-time multiplayer interactions
- Dynamic port binding and automatic retry
- ✨ Scalable and efficient network handling ✨
- Real-time communication with UDP sockets
- Efficient packet handling for player connections and movements
- Dynamic port binding to avoid conflicts
- Easy integration with existing game clients
The Multiplayer Game Server uses the following technologies and libraries:
- Java - Programming language for the server implementation
- Maven - Dependency management and build automation
- Travis CI - Continuous integration and build automation
- Java 11 or later: Make sure you have Java 11 or a later version installed on your machine. You can download it from Oracle's official site or use an open-source version like OpenJDK.
- Maven: Maven is used for dependency management and building the project. You can download and install Maven from the Apache Maven website.
To build the project, follow these steps:
-
Clone the repository:
git clone https://github.com/Maksikos-ctrl/Multiplayer2dGame-Server.git cd src/main
Build the project using Maven:
mvn clean install
This command will compile the code, run the tests, and package the application into a JAR file.
To start the server, use the Maven command to execute the main class:
mvn exec:java -Dexec.mainClass="com.maksikos.game.GameLauncher"
- Ensure the server is allowed to bind to the configured port (default: 1331). If the port is already in use, the server will attempt to bind to the next available port.
Start the Server: Run the server using the command provided in the Running section.
Connect Clients: Configure your game client to connect to the server’s IP address and port. The default port is 1331 unless otherwise configured.
Monitor Activity: Check the server logs for connection activity, packet processing, and any errors.
Interested in contributing? Awesome! Here’s how you can get started with development: Building
To build the project from source:
mvn clean install
We'd like to thank the following individuals and organizations for their contributions and support:
- OpenJDK: For providing the open-source Java Development Kit used to build and run the project.
- Apache Maven: For the powerful build automation tool that manages dependencies and builds our project.
- GitHub: For hosting the project and providing version control through Git.
- Travis CI: For continuous integration and automated build status checking.
Special thanks to our contributors and the community who provided feedback, reported issues, and suggested improvements.
If you have any feedback or suggestions, feel free to open an issue or contribute to the project by submitting a pull request.
This project is licensed under the ANSYS License - see the LICENSE file for details.