Skip to content

Entze/Strategy-Game-Engine

Repository files navigation

Strategy Game Engine

Gradle 8.13 Java

A strategy game engine written in Java.

Installation

Gradle

Add the following to your build.gradle:

repositories {
    maven { url 'https://jitpack.io' }
}

dependencies {
    implementation("com.gitlab.StrategyGameEngine:strategy-game-engine:v1.0.5")
}

From Source

./gradlew jar shadowJar sourcesJar javadocJar

This produces four jar files (in build/libs/):

One executable

  • sge-1.0.5-exe.jar (Executable)

And three jars usually used for development

  • sge-1.0.5.jar (Library)
  • sge-1.0.5-sources.jar (Sources)
  • sge-1.0.5-javadoc.jar (Documentation)

Usage

For an extensive overview see:

java -jar sge-1.0.5-exe.jar --help

If you want to let two agents agent1.jar and agent2.jar play a game of game.jar against each other run the command:

java -jar sge-1.0.5-exe.jar match game.jar agent1.jar agent2.jar

There is also a manual available.

Games

Name Link
Risk gitlab.com/StrategyGameEngine/sge-risk
Dice Poker gitlab.com/StrategyGameEngine/sge-dice-poker
Kalaha gitlab.com/StrategyGameEngine/sge-kalaha
Hexapawn gitlab.com/StrategyGameEngine/sge-hexapawn

Agents

Name Link
AlphaBeta gitlab.com/StrategyGameEngine/sge-alphabetaagent
Monte-Carlo-Tree Search gitlab.com/StrategyGameEngine/sge-mctsagent
Random gitlab.com/StrategyGameEngine/sge-randomagent

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

License

GNU AGPLv3

About

♠ A text-based game-engine with a sensible Java-API

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Languages