scawful bfcf54e271 Refactor DungeonEditor and introduce new components for enhanced dungeon editing
- Integrated new components: DungeonToolset, DungeonObjectInteraction, DungeonRenderer, DungeonRoomLoader, and DungeonUsageTracker to streamline dungeon editing functionalities.
- Updated DungeonEditor to utilize the new components for room loading, object interaction, and rendering, improving code organization and maintainability.
- Enhanced object selection and placement features, including drag-and-drop functionality and improved UI interactions.
- Removed legacy methods and refactored existing code to delegate responsibilities to the new components, ensuring a cleaner architecture.
- Added support for usage tracking of blocksets, spritesets, and palettes across dungeon rooms, providing insights for optimization.
2025-09-25 19:56:39 -04:00
2024-12-31 15:04:05 -05:00

Yet Another Zelda3 Editor

A modern, cross-platform editor for The Legend of Zelda: A Link to the Past ROM hacking.

  • Platform: Windows, macOS, Linux
  • Language: C++23 with modern CMake build system
  • Features: ROM editing, Asar 65816 assembly patching, ZSCustomOverworld v3, GUI docking

Key Features

  • Asar Integration: Apply 65816 assembly patches and extract symbols
  • ZSCustomOverworld v3: Enhanced overworld editing capabilities
  • Message Editing: Advanced text editing with real-time preview
  • GUI Docking: Flexible workspace management
  • Modern CLI: Enhanced z3ed tool with interactive TUI

Takes inspiration from Hyrule Magic and ZScream

Building and Installation

Quick Build

git clone --recurse-submodules https://github.com/scawful/yaze.git 
cd yaze
cmake --preset default
cmake --build --preset default

Targets

  • yaze: GUI Editor Application
  • z3ed: Command Line Interface with Asar support
  • yaze_c: C Library
  • yaze_test: Unit Tests

Asar Examples

# Apply assembly patch
z3ed asar patch.asm --rom=zelda3.sfc

# Extract symbols  
z3ed extract patch.asm

# Interactive TUI
z3ed --tui

See build-instructions.md for detailed setup information.

Documentation

License

YAZE is distributed under the GNU GPLv3 license.

SDL2, ImGui and Abseil are subject to respective licenses.

Screenshots

image

image

image

Description
Yet Another Zelda3 Editor
Readme 34 MiB
Languages
C++ 85.8%
JavaScript 3.7%
Assembly 2.3%
CMake 2%
Shell 1.6%
Other 4.6%