The Achis is a game based on The Settlers 1 and 2. It's built using javaFX (because I was basically forced to use it)
The Game is Multiplayer-Only. You have 2 Options:
- You choose the official server achirealm.com
- You compile/download the server program and run it on your private Server or via VPN with friends
After starting the client you have the options to either create or join a Lobby
Creating a Lobby makes you the Owner of this Lobby. Being the Lobby Owner gives you the ability to kick people from the Lobby and Start the Lobby. If you leave/close the Lobby every Member of it will be kicked.
You can choose a Lobby from the Lobby list. After joining a Lobby you are able to choose from a free Color and Start-Position.
After the Lobby Owner started the game you are able to play against other Players and attack their bases. Last Core standing wins.
This is a modular maven project, to build it you need maven: https://maven.apache.org/ To build the whole project execute in the project root folder:
$ mvn
To build the client module execute in the project root folder:
$ mvn -pl client -am
To Package the Client in a Comfortable installer for Windows (msi) or Debian-Distros (deb) execute respectively "client/build_win.bat" or "client/build_deb.sh"
To build the whole project execute in the project root folder:
$ mvn -pl server -am
The client will create following files in your home directory:
- ".the_achis/options.json"
- Contains all setable options
- ".the_achis/account.achiid"
- Contains the client identifying hash
The client will create following files in your home directory:
- ".the_achis/clients.db"
- Contains client related data as sqlite database
- JavaFx
- OpenSource Java GUI client application platform
- Used for the whole Client-Side Graphical User Interface
- gson
- Json en-/decoder
- Used to write/read local Client Options
- sqlite-jdbc
- Library to create and access SQLite Databases in Java
- Used to save anonymous User-Data (like blocked users) on the Server
- astar algorithm
- Implementation of the A* Algorithm from the Baeldung Tutorial
- client/ic20b106.client.game.astar