I was poking around Chibi Rebellion lately thinking I could replicate it's level randomization and use it for HeXen. Because it's really nice system, having bunch of small maps, that get randomized and connected into a HUB. It's a best compromise between randomized gameplay and hand made levels that can be done inside the engine and not generated by some external program. On top of that it would fit HeXen really well as some kind of dungeon delving adventure with city where you return in between different runs etc...
Problem is I don't have a clue how exactly it's achieved apart from being done by ACS.
I get the logic it should have somehow. You generate a graph representing the mission, it should have some nodes with special meaning like start, junction, locked gate, key and boss. Those need to be in correct order, like key not being hidden behind locked door etc. Other nodes are filler. Than you pick levels for each node from a level list of maps of the specific types. And in the end you determine what exit should go to which map and somehow propagate it to the levels. You can probably make it even easier and have just few patterns for the layouts and only randomize lenghts of different chains of filler maps. But how to do it in ACS or even better Zscript I have no clue.
Would somebody who can understand that system be willing to work on a generalized system like this with me? I can imagine it being basis of nice community project in the end.
Generalized Chibi rebelion level randomization
Ask about mapping, UDMF, using DoomBuilder/editor of choice, etc, here!
Forum rules
Before asking on how to use a ZDoom feature, read the ZDoom wiki first. If you still don't understand how to use a feature, then ask here.
Before asking on how to use a ZDoom feature, read the ZDoom wiki first. If you still don't understand how to use a feature, then ask here.
Jump to
- Official
- ↳ ZDoom (and related) News
- ↳ The Spotlight
- ↳ Rules and Forum Announcements
- Projects
- ↳ Levels
- ↳ Gameplay Mods
- ↳ TCs, Full Games, and Other Projects
- ↳ Resources
- ↳ Requests
- ↳ Script Library
- ↳ Graphic/Audio Patches
- ↳ Shaders
- Doom Editing Help
- ↳ Scripting
- ↳ Programming & Collaboration Tools
- ↳ Mapping
- ↳ Assets (and other stuff)
- ↳ Tutorials
- ↳ Programming and Compiling
- Discussion
- ↳ General
- ↳ Networking
- ↳ Legacy Discussion
- ↳ Off-Topic
- Technical Issues
- ↳ Technical Issues
- ↳ Helpful Stickies
- ZDoom Development
- ↳ Bugs [UZDoom]
- ↳ Feature Suggestions [UZDoom]
- ↳ Bugs [LZDoom]
- ↳ Bugs [GZDoom]
- ↳ Important Threads
- ↳ Please check the latest version (or dev builds) before reporting!
- ↳ Classic ("Carmack") Software Renderer Bugs
- ↳ OpenGL Renderer Bugs
- ↳ OpenGLES Renderer Bugs
- ↳ Vulkan Renderer Bugs
- ↳ Audio/Music Bugs
- ↳ LZDoom Bugs
- ↳ ZDoom.org Bugs
- ↳ On Hold Bugs
- ↳ On-Hold Softpoly Bugs
- ↳ Closed Bugs [GZDoom]
- ↳ Vintage Build Bugs
- ↳ SoftPoly2 Bugs
- ↳ Feature Suggestions [GZDoom]
- ↳ ZDoom.org Suggestions
- ↳ Code Submissions
- ↳ On Hold Suggestions
- ↳ Closed Feature Suggestions [GZDoom]
- Raze-Specific Stuff
- ↳ Raze
- ↳ News
- ↳ Raze (and ZDoom-related) News
- ↳ Technical Issues
- ↳ Technical Issues
- ↳ Raze Development
- ↳ Bugs [Raze]
- ↳ On Hold Bugs
- ↳ Closed Bugs [Raze]
- ↳ Feature Suggestions [Raze]
- ↳ Code Submissions
- ↳ On Hold Suggestions
- ↳ Closed Feature Suggestions [Raze]
- ↳ Discussion
- ↳ General
- ↳ Editing Help
- ↳ Scripting (Build)
- ↳ Mapping (Build)
- ↳ Tutorials (Build)
- ↳ Projects
- ↳ Projects
- ↳ Abandoned Projects
- Software and Ports
- ↳ Launchers
- ↳ Game Engines
- ↳ Creation, Conversion, and Editing
- ↳ Miscellaneous
- Important Threads
- ↳ Official ZDoom Community Rules
- ↳ Official Discord Server
- ↳ New Password Requirements and Password Reset
- ↳ HELP! "Account is inactive!"
- ↳ Mod Download Broken? Request Reuploads Here
- ↳ Don't see your first post(s) here? DON'T PANIC
- Archives
- ↳ The Halls of the Dead
- ↳ Abandoned/Dead Projects
- ↳ Editing (Archive)
- ↳ Archived Bugs & Suggestions (Mantis Tracker)
- ↳ Developer Blog
- ↳ Errors? Can't run that new mod? Your GZDoom or ZDoom may be too old!
- ↳ A quick notice about privacy (Re: Our efforts to combat spam)