Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature request: Map Randomization #23

Open
halgorithm opened this issue May 30, 2019 · 10 comments
Open

Feature request: Map Randomization #23

halgorithm opened this issue May 30, 2019 · 10 comments
Labels
enhancement New feature or request

Comments

@halgorithm
Copy link

halgorithm commented May 30, 2019

This is something I'm sure you've thought of but might be very difficult to implement. I'd like to know if even one of these is feasible: shuffling room locations within the same area, shuffling room locations across multiple areas, mirroring or rotating individual rooms, or moving entire areas to different places within the castle. Getting a new castle every time could be very exciting for runners and I'd consider it one of the most impressive features for a SotN randomizer to have, but I wouldn't be surprised if it's just impossible to do.

@3snowp7im 3snowp7im added the enhancement New feature or request label May 30, 2019
@3snowp7im
Copy link
Owner

This would be very difficult. At best you would be able to shuffle rooms within the same zone so long as their new layouts don't overlap. Then we'd need to figure out how to change the map screen itself to reflect the changes. Work has been done on the latter and it has proven not to be trivial. This would be a great feature, but due to the work involved, it's not currently on the roadmap.

@halgorithm
Copy link
Author

Thanks for the explanation, that's about what I was expecting. As far as the map screen is concerned, I see that https://github.com/LagoLunatic/dsvrandom just informs the user that the map screen will be broken when randomizing the map, which seems acceptable even if it's not exactly ideal. Hopefully some day!

@3snowp7im
Copy link
Owner

good point, +1

@SenseiLeRoof
Copy link

Thanks for the explanation, that's about what I was expecting. As far as the map screen is concerned, I see that https://github.com/LagoLunatic/dsvrandom just informs the user that the map screen will be broken when randomizing the map, which seems acceptable even if it's not exactly ideal. Hopefully some day!

Huh? Room rando on DSV has been map-friendly for a time now.
And regions are kept contiguous, so you might check and see if the code is workable, convertable, whatever.

@3snowp7im
Copy link
Owner

And regions are kept contiguous, so you might check and see if the code is workable, convertable, whatever.

The DS Vania and SotN engines have absolutely nothing in common.

@halgorithm
Copy link
Author

halgorithm commented Jun 7, 2019

@SenseiLeRoof I haven't tried DSVRandom myself but the repo's README for it states that Room connections and Area connections randomization are not map-friendly. I only mentioned it to point out that a broken in-game map screen could still be an acceptable UX. But in any case, the high-level map randomization algorithm doesn't seem to be the challenging part but rather injecting those changes into the base game.

@halgorithm
Copy link
Author

Just checking in on this feature again, would it be possible to just randomize connections between zone doors? (e.g. the door from the Entrance to the Alchemy Laboratory could instead lead to a different area, or potentially even a teleporter room)

Compared to the other ways one could randomize locations, this seems like probably the best ratio of effort vs. payoff. Doesn't seem like it would need any map overlay changes either, as the doors are conceptually just teleporting you to different points in the castle.

@MainMemory
Copy link
Contributor

If figuring out how to generate the map layout is a problem, perhaps you could do what the True Randomization mod for Bloodstained does, and have a selection of pre-made maps that can be randomly picked.

@MainMemory
Copy link
Contributor

Coming back into this to say that I'm currently working on an editor that uses json files to store info about the room layouts, and I could potentially integrate support for them into the randomizer, if that's something you'd be interested in having.

@SenseiLeRoof
Copy link

If you could get that to work, it would breathe new life into the game for sure!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

4 participants