Skip to content
This repository has been archived by the owner on Dec 29, 2022. It is now read-only.
/ chess Public archive

An old school project meant for demonstrative purposes

Notifications You must be signed in to change notification settings

Sponge5/chess

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SEMESTRAL PROJECT - CHESS

This repo is supposed to act as a demonstration of my Java skills, please do tread lightly. It is a client/server application using Java 10, JavaFX 11, JUnit, Maven, java.util.logging, sockets and some special data structures. It can also serve educational purposes, since making an application of similar scope and functionality by yourself should pass you through Programming in Java course at CTU.

Warning: This game is barely functional.

Screenshot

Requirements

Open JDK 10, Maven, JavaFX 11.0.2 (This requirement should be sorted by Maven, as I understand it)

Running

Compile

make compile

Run client in order to play local games

make client

REMOTE GAME IS CURRENTLY BROKEN Run server and two clients in order to play remote game

make server

HIT ENTER AFTER EACH TEXTFIELD ENTRY

To play as white, type localhost as address and 8888 as port to play as white, then hit connect, on second client type localhost, 8889 and check the radio button.

Testing

make test

TODO

  • Client creates it's own thread for server in case of game on 1 machine
  • Communication in own thread
  • Add modifiers to class datastructures (for security)
  • Highlight selected piece in GUI
  • FIX - Check on king against random computer player can desync BoardPane and Board
  • FIX - Remote game doesn't even remotely work...
  • Actually add checkmate and en passant
  • Replace client/server communication with JSON

About

An old school project meant for demonstrative purposes

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published