Development Roadmap
Future plans and upcoming features for ALttP Door Randomizer.
Table of contents
- Project Vision
- Bug Fixes
- Logic & Generation Improvements
- New Features
- Quality of Life Enhancements
- Performance Improvements
- Customization & Content Creation
- Multiworld
- External Tools & Integration
- Technical Debt & Refactoring
- Research & Exploration
- Branch Strategy
- Completed Features
- How to Contribute
- Release Schedule
- Success Metrics
- Feedback & Discussion
Project Vision
Door Randomizer aims to provide the most comprehensive and flexible dungeon randomization experience for A Link to the Past while maintaining playability and logical consistency. Our focus is on:
- Robust Generation - Ensuring seeds are always completable and logical
- Feature Richness - Providing extensive customization options
- Community Engagement - Responding to player feedback and needs
- Performance - Improving generation speed and reliability
Bug Fixes
Critical and important bugs that need to be addressed:
Critical Bugs
- Dungeon Key HUD indicator issue (total is incorrect)
- Links House on DM pathing issues (See OWR solution)
Minor Bugs
- Resolve Swamp Trench 2 draining issue (pot obtained but still drains)
- Fix OHKO logic issues - Crystal Path backwards in GT
- Fix MapCompass forbidden boss items mode (currently bugged)
- Killing Certain Red Guards Kills Music
Logic & Generation Improvements
Improving dungeon generation algorithms and logic:
- Enhanced key logic algorithms (experimental mode in New Generation)
- Rework Uncle weapon/Escape small key
- Make Sanctuary heart the logical one (simplify sanctuary heart logic)
- Investigate rupee balancing issues causing failed generations
New Features
New functionality and game modes, mostly planned for the NewGeneration branch:
- Portal placement flexibility (customizability and mixed dungeon pools)
- Smarter trap door placement (reduce forced mirroring)
- DR Keysanity menu improvements
- PitWarp feature
- Door Type pooling customizations
- OWR ER standardization (District ER, Links on Death Mountain issue)
- NewSwappedAlgorithm integration
- Bonk Item Pool from Overworld Randomizer (downstream integration)
- A better hint system
- Prize Shuffle from Overworld Randomizer (downstream integration)
- Map Screen from GK Randomizer (need to investigate)
- Other downstream integrations? (custom goals, follower shuffle, flute shuffle?)
Quality of Life Enhancements
Improving user experience and usability:
- Preferred location groups (control item placement with warnings/failures/retries)
- Preset support
- Control output ROM name (customize generated ROM filename)
- Progress indicators for generations
- Better entrance tracking for trackers (investigate race legality)
- Super-tile split palettes (reduce hinting from palette colors)
- Turn off Bob by default for enemizer (fewer graphical glitches)
Performance Improvements
Making generation faster and more efficient:
- Reduce memory footprint
Customization & Content Creation
Tools and features for creating custom content:
- Re-design customizer file format (improved YAML structure)
- Presets for customizer (start from predefined base)
- Easier enemy customization (simpler interface for customizing specific enemies - better integration with customization system)
Multiworld
Enhancements for multiplayer seeds:
- Multiworld documentation
- Ability to have similar randomizations across multiworlds (makes parts of it co-op)
External Tools & Integration
Integration with external tools and platforms:
- Tracker integration features
- Web-based API
Technical Debt & Refactoring
Behind-the-scenes code improvements:
- Modernize Rules.py (improve readability and maintainability)
- Python upgrade (3.10 deprecated in 2026)
Research & Exploration
Experimental ideas that may or may not be implemented:
Dungeon Randomization Ideas
- Subroom randomization - Randomize smaller rooms within a larger room (subtile vs. supertile doors)
- Euclidean dungeon layouts - Dungeon randomization that makes spatial sense (rooms connected geographically)
- Swapped dungeon generation - Create dungeons by swapping door destinations (requires new algorithms)
Branch Strategy
Current Branches
- NewGeneration - Active development branch for new generation system
- NewSwappedAlgorithm - Experimental branch for swapped item algorithm
- DoorDevUnstable - Main branch, maintenance mode - only bug fixes and patches (ready to be moved to official stable)
- DoorDev - Stale development branch (needs update)
- Dev/Master - Do NOT use for PRs. Used by upstream only.
Planned Branch Changes
- Transition from DoorDevUnstable to DoorDev as main maintenance branch
- Transition NewGeneration to main development branch
Completed Features
Recent accomplishments:
- ✅ Dynamic colored pots
- ✅ Free lamp cone
- ✅ Experimental key logic improvements
How to Contribute
Want to help shape the future of Door Randomizer?
For Players
- Test seeds - Play with different settings and report issues
- Provide feedback - Share what you like and what could be better
- Suggest features - Tell us what you want to see
For Developers
- Submit PRs to DoorDevUnstable
- Join Discord - Discuss development in
#door-rando - Write tests - Improve test coverage
- Improve documentation - Help others understand the code
For Creators
- Custom rooms - Design interesting custom rooms
- Presets - Create balanced preset configurations
- Tutorials - Teach others how to use Door Rando
- Tools - Build complementary tools (trackers, analyzers)
Release Schedule
Regular Releases
- Unstable builds - Automated on every push to DoorDevUnstable
- Hotfixes - As needed for critical bugs
Upcoming Releases (Tentative)
- v1.5.x (Q2 2026) - DoorDevUnstable becomes DoorDev
- v1.6 (Q3 2026) - Python upgrade
- v2.0 (Q4 2026) - New Generation branch release
Success Metrics
How we measure progress:
Technical Metrics
- Generation success rate (target: >95%)
- Average generation time (target: <10s for crossed seeds)
- Memory usage (start measuring)
- Test coverage (start measuring)
Feedback & Discussion
Have thoughts on the roadmap?
- Discord: Join
#door-randoto discuss
This roadmap is a living document and will be updated regularly as priorities shift and progress is made.
Last updated: 2026-01-30