BoardGameWork is a framework for creating 2D board game applications.
Read on how to get started, or take a look at the complete API documentation for bgw-gui, bgw-net-common, or bgw-net-client.
Examples are available for MauMau, Sudoku and Tetris.
BoardGameWork is built on top of JavaFX 17 and therefore requires at least JDK 11. Since JavaFX was decoupled from the JavaJDK as of JDK 11, BoardGameWork comes with JavaFX dependencies including their native libraries for various platforms like Windows, Linux and Mac.
We recommend installing a JDK build that already includes JavaFX to ensure your platform is supported. Azul Zulu Builds of OpenJDK support a wide range of platforms and architectures including Mac M1.
Start by adding the latest version of BGW as a dependency to your project.
implementation("tools.aqua:bgw-gui:0.8.1")
<dependency>
<groupId>tools.aqua</groupId>
<artifactId>bgw-gui</artifactId>
<version>0.8.1</version>
</dependency>
You also need to specify the correct JVM target in your build system.
compileKotlin {
kotlinOptions.jvmTarget = "11"
}
<configuration>
<jvmTarget>11</jvmTarget>
</configuration>