/Terreria

Terreria is a scuffed clone of the open world sandbox game 'Terraria' (notice how we swapped the 'a' for an 'e'). Refer to the README.md for furthur details

Primary LanguageJava

Terreria

Description This project is a 2D sandbox game built with Java, Gradle, LWJGL, ImGui, JBox2d, and GSON. It offers an immersive and interactive gaming experience where players can explore, build, and interact with a dynamic world.

Prototype

prototype

Features

  • Exploration: Discover a vast and procedurally generated world filled with unique landscapes, biomes, and caves.
  • Building: Create and design your own structures, houses, and buildings using a variety of materials.

Installation and Setup

To clone and build the project locally, follow these instructions:

  1. Ensure you have Java Development Kit (JDK) installed on your system. If not, download and install the latest version of JDK appropriate for your operating system.

  2. Install Git, if not already installed, and set it up with your preferred Git client.

  3. Open a terminal or command prompt and navigate to the directory where you want to clone the project.

  4. Clone the repository by running the following command:

    git clone https://github.com/azhan3/Java-Game.git
  5. Once the cloning is complete, navigate tot he project directory:

    cd root-directory
  6. Build the project using Gradle

    ./gradlew build
  7. Run the game:

    ./gradlew run

    This will launch the game, and you can now start playing!

Controls

Action Key
Movement Use the arrow keys or WASD keys to move the character
Jump Press the spacebar or W key to make the character jump
Break Blocks Use the left mouse button to break blocks
Place Block Select a block from your inventory and right-click to place it in the world

License

This project is licensed under the MIT License.

Acknowledgments

  • LWJGL - Lightweight Java Game Library.
  • ImGui - Immediate mode GUI library.
  • JBox2D - Java physics engine.
  • GSON - Java library for JSON serialization and deserialization.