Check out our latest project ✨ OpenChapter.io: free ebooks the way its meant to be 📖

Edgar.Godot

An asset by RickyYC
The page banner background of a mountain and forest
Edgar.Godot hero image

Quick Information

0 ratings
Edgar.Godot icon image
RickyYC
Edgar.Godot

`Edgar.Godot` is a GDScript toolkit that integrates the [Edgar-DotNet](https://github.com/OndrejNepozitek/Edgar-DotNet) procedural level generation algorithm into Godot. It converts Tiled maps and custom room graph resources into Godot-ready data for runtime Rogue-like dungeon assembly, with a replaceable kernel supporting both C# and GDExtension implementations.Uses the C#/.NET types via [Edgar.Aot](https://github.com/RickyYCheng/Edgar.Aot); requires a .NET-enabled Godot build. For the native GDExtension version, see [Edgar.GDExtension](https://github.com/RickyYCheng/Edgar.GDExtension).

Supported Engine Version
4.5
Version String
0.0.5
License Version
MIT
Support Level
community
Modified Date
5 hours ago
Git URL
Issue URL

Edgar.Godot

[!CAUTION] WIP: This project is currently under active development. Features and implementations are subject to change.

Overview

Edgar.Godot is a GDScript toolkit that integrates the Edgar-DotNet procedural level generation algorithm into Godot. It converts Tiled maps and custom room graph resources into Godot-ready data for runtime Rogue-like dungeon assembly, with a replaceable kernel supporting both C# and GDExtension implementations.

Edgar.Godot consumes Tiled map files (*.tmx / *.tmj) and custom JSON graph resources (*.edgar-graph) that define room connectivity and metadata.

Dependencies

  • YATI plugin (bundled with this repository)

[!NOTE] Uses the C#/.NET types via Edgar.Aot; requires a .NET-enabled Godot build.
For the native GDExtension version, see Edgar.GDExtension.

[!IMPORTANT]
The primary focus of development is on the GDScript and C# versions, with GDExtension updates potentially lagging behind the main development efforts.

Core Features

  • 🗺️ Converts Tiled map files into Godot-compatible JSON resources, complete with metadata for procedural map generation using YATI.
  • ⚙️ Custom JSON room graph format (*.edgar-graph) for defining room connectivity.
  • 🔄 Kernel Replaceability: Standardized interfaces that are compatible with both C# scripts and GDExtension versions.
  • Generates Godot-friendly Dictionary layouts utilizing the Kernel's API.
  • Includes a sample renderer for displaying generated maps on TileMapLayer.

Development Roadmap

  • Kernel Standardization: Unified interfaces for both C# and GDExtension implementations
  • Renderer Improvements
    • Pivot room selection
    • Partially render (e.g. specific layers, rooms) of the generated layout
    • Anchor system in pivot rooms for precise positioning
  • Feature parity with Edgar-DotNet
    • Template transformations
    • Deterministic generation via seed management
  • Publish on the Godot Asset Library / Store
  • Ability to render 3d maps with 2d layouts

Meta Reference

There are some already in-used fields in the Tiled map's properties.
They are used to define the room's metadata for Edgar.

Firstly, since this project use YATI, please refer to YATI's reference.

After that, the specific fields for Edgar.Godot can be found in reference.

Quick Start

Please check the default scene.

`Edgar.Godot` is a GDScript toolkit that integrates the [Edgar-DotNet](https://github.com/OndrejNepozitek/Edgar-DotNet) procedural level generation algorithm into Godot. It converts Tiled maps and custom room graph resources into Godot-ready data for runtime Rogue-like dungeon assembly, with a replaceable kernel supporting both C# and GDExtension implementations.

Uses the C#/.NET types via [Edgar.Aot](https://github.com/RickyYCheng/Edgar.Aot); requires a .NET-enabled Godot build.

For the native GDExtension version, see [Edgar.GDExtension](https://github.com/RickyYCheng/Edgar.GDExtension).

Reviews

0 ratings

Your Rating

Headline must be at least 3 characters but not more than 50
Review must be at least 5 characters but not more than 500
Please sign in to add a review

Quick Information

0 ratings
Edgar.Godot icon image
RickyYC
Edgar.Godot

`Edgar.Godot` is a GDScript toolkit that integrates the [Edgar-DotNet](https://github.com/OndrejNepozitek/Edgar-DotNet) procedural level generation algorithm into Godot. It converts Tiled maps and custom room graph resources into Godot-ready data for runtime Rogue-like dungeon assembly, with a replaceable kernel supporting both C# and GDExtension implementations.Uses the C#/.NET types via [Edgar.Aot](https://github.com/RickyYCheng/Edgar.Aot); requires a .NET-enabled Godot build. For the native GDExtension version, see [Edgar.GDExtension](https://github.com/RickyYCheng/Edgar.GDExtension).

Supported Engine Version
4.5
Version String
0.0.5
License Version
MIT
Support Level
community
Modified Date
5 hours ago
Git URL
Issue URL

Open Source

Released under the AGPLv3 license

Plug and Play

Browse assets directly from Godot

Community Driven

Created by developers for developers