Skip to content

Documentation

AshVXmc edited this page Mar 9, 2022 · 7 revisions

Project Description

ReonixeDungeons is a short, 2D-platformer Metroidvania type game inspired from Hollow Knight and Pixel Dungeon. It is developed using the Godot Game Engine

License and Extras

License for this game and repository can be viewed here. The license is subject to change. I'm working on this project for fun, so the update schedule won't always be consistent.

For bugs and issues check out this repository page and my WIP itch.io profile page.

Tools I use

Building and running from source

  1. Install the latest version of Godot
  2. Download the project from this repository
  3. Import the project into the engine
  4. Build and run the game

Pushing files to github

  1. Open git bash on the main directory
  2. git add .
  3. git commit -m "commit message"
  4. git push origin main
  5. git push --mirror github
  6. Wait until the project syncs with the repo

Project Features (Incomplete)

  • Player movement and controls
  • Health and Mana/energy system and various abilities
  • Consumables and Inventory system
  • A roster of enemies
  • Levels, obstacles and interactable objects
  • Save/Load and pause system
  • In-game debugging console and FPS counter
  • Bosses

General Architecture

The project is divided into several distinct folders, each with its own distinct purpose. It is designed to be modular, flexible, and easy to observe, modify and scale them.

Scene structure and naming conventions

Most reusable objects in this project are created with consistent architecture. For example, the Spider scene is stored in scenes/enemies/Spider.tscn and its script is stored in scripts/enemies/Spider.gd. This may not be the case for all objects and components, but this is generally how everything is structured.

The Player

The Player node and script are generally the most essential piece in any level scene, not just because of gameplay necessity, but because many important UI elements and enemy nodes "hook" upon the player script via signals and will not work properly without it. It is also the longest and most complicated script in the project, and although I tried to make them as concise as possible, you might need to spend some time to fully figure out the script.

UI layers

UI layers are separated thoroughly (although some may argue its split into too many different chunks that it makes it harder to track) for each component. For example, the Heart and Mana UI layer are separate (legacy code, was made a long time ago and too lazy to refactor), But as long as its bundled together, everything should be working.

Debugging tools

F3 - Toggle FPS display F11 - Take screenshot (Saved in%Appdata%ReonixeDungeons/screenshots) / - Toggle debug and cheats console