Skip to content

The Chess Server application facilitates multiplayer gameplay by allowing users to connect, propose moves, vote on moves, and communicate via chat in a chess game environment.

Notifications You must be signed in to change notification settings

MichaelYesgat/ChessServer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Chess: Democracy Edition Server

Overview

The Chess Server application facilitates multiplayer gameplay by allowing users to connect, propose moves, vote on moves, and communicate via chat in a chess game environment.

How To Run The Application

  • Developed in IntelliJ IDEA Community Edition, this project is a Java application built with the Gradle wrapper.
  • To run the application, open the project in IntelliJ IDEA.
  • You'll need the Gradle wrapper plugin installed beforehand.
  • Network connectivity to ensure client-server communication.
  • The IntelliJ Gradle settings we used to develop this app are included below, along with a screenshot:

image

Features

  • Start and stop the server through a GUI.
  • Configure IP address and port settings.
  • Log messages for server activity.
  • Manage client connections and communications.

How to Run the Server

  1. Launching the Server

    • Navigate to the main directory of the project.
    • Run ChessServer class, which starts the server GUI.

    image

  2. Configuring the Server

    • Upon starting, you will see the Server GUI.
    • Enter the desired IP Address (e.g., localhost) and Port (e.g., 5555).
    • These two values are the default configuration. We advise not changing it unless it is absolutely necessary.
    • If changed, you have to change the same value in our main app.
    • Click Start Server to initialize the server.
    • The server log area will display a message confirming that the server is running.

    image

  3. Stopping the Server

    • Click the Stop Server button to shut down the server.
    • This ensures that all client connections are terminated properly.

    image

Files and Structure

  • ChessServer.java: The main entry point for the server application. Manages the server GUI and controls server lifecycle (start/stop).
  • ServerController.java: Handles GUI interactions, server startup/shutdown logic, and client connections.
  • GameServer.java: Manages server socket connections, handles client interactions, and broadcasts messages.
  • ClientHandler.java: Handles individual client connections, message reception, and broadcasting within teams and games.

Troubleshooting Ensure the IP address and port are correctly configured. If clients cannot connect, verify that the server is running and there are no firewall or network issues.

About

The Chess Server application facilitates multiplayer gameplay by allowing users to connect, propose moves, vote on moves, and communicate via chat in a chess game environment.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages