Skip to content

Repository files navigation

Simple Tile-Based Game

Description

A simple tile-based 2D game developed with Java and Spring Boot.

Requirements

Java 17 (JDK 17) or newer is required to build and run this project. The project toolchain is configured for Java 17.

Execution

To run the application, execute ./gradlew run (Linux/macOS) or .\gradlew run (Windows) in the project directory.

Map configuration

Maps can be supplied either through the existing programmatic configuration classes or as standalone JSON files. Each JSON file must follow the structure below and be placed under src/main/resources/maps.

{
  "id": "example-id",
  "displayName": "Example",
  "heroStart": { "column": 1, "row": 1 },
  "tiles": [[3, 3], [3, 999]],
  "items": [[0, 0], [0, 0]],
  "enemies": [[0, 0], [0, 0]]
}
  • tiles defines the terrain using the numeric values from TileType.
  • items and enemies matrices default to empty cells when omitted but must match the tiles dimensions when provided.
  • heroStart uses zero-based coordinates and must reference a walkable tile.

At runtime the repository automatically combines programmatic maps and all JSON resources discovered on the classpath.

Tileset: Floor pixel art 2D

The following tilesets were used in this project, all licensed under the Creative Commons Attribution 4.0 International License:


Other graphics used in this project were generated by OpenAI DALL-E.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages