Files
yaze/docs/index.md
2025-09-25 00:02:38 -04:00

4.3 KiB

Yaze Documentation

Welcome to the Yaze documentation. This cross-platform Zelda 3 ROM editor is built with C++20, SDL2, and ImGui, designed to be compatible with ZScream projects.

Quick Start

Core Documentation

Architecture & Infrastructure

Editors

Dungeon Editor

Overworld Editor

Graphics & UI

Testing

Project Status

Current Version: 0.2.2 (12-31-2024)

Completed Features

  • Dungeon Editor: Full dungeon editing with object rendering, sprite management, and room editing
  • Overworld Editor: Complete overworld editing with ZSCustomOverworld v2/v3 support
  • Canvas System: Refactored pure function interface with backward compatibility
  • Graphics System: Optimized rendering with caching and performance monitoring
  • Integration Tests: Comprehensive test suite for all major components

🔄 In Progress

  • Sprite Builder System: Custom sprite creation and editing
  • Emulator Subsystem: SNES emulation for testing modifications
  • Music Editor: Music data editing interface

Planned

  • Advanced Object Editing: Multi-object selection and manipulation
  • Plugin System: Modular architecture for community extensions
  • Performance Optimizations: Further rendering and memory optimizations

Key Features

Dungeon Editing

  • Room object editing with real-time rendering
  • Sprite management (enemies, NPCs, interactive objects)
  • Item placement (keys, hearts, rupees, etc.)
  • Entrance/exit management and room connections
  • Door management with key requirements
  • Chest management with treasure placement
  • Undo/redo system with comprehensive state management

Overworld Editing

  • ZSCustomOverworld v2/v3 compatibility
  • Custom background colors and overlays
  • Map properties and metadata editing
  • Sprite positioning and management
  • Tile16 editing and graphics management

Graphics System

  • High-performance object rendering with caching
  • SNES palette support and color management
  • Graphics sheet editing and management
  • Real-time preview and coordinate system management

Compatibility

ROM Support

  • Vanilla ROMs: Original Zelda 3 ROMs (US/JP)
  • ZSCustomOverworld v2: Enhanced overworld features
  • ZSCustomOverworld v3: Advanced features with overlays and custom graphics

Platform Support

  • Windows: Full support with native builds
  • macOS: Full support with native builds
  • Linux: Full support with native builds
  • iOS: Basic support (work in progress)

Development

Architecture

  • Modular Design: Component-based architecture for maintainability
  • Cross-Platform: SDL2 and ImGui for consistent UI across platforms
  • Modern C++: C++20 features for performance and safety
  • Testing: Comprehensive integration test suite

Contributing

See Contributing for guidelines on:

  • Code style and standards
  • Testing requirements
  • Pull request process
  • Development setup

Community

License

This project is licensed under the terms specified in the LICENSE file.


Last updated: December 2024