Open
Conversation
- Improve performance by pre-creating the Location.Coord tuple. This tuple was re-created a ton during overworld generation. Better to store it as a tuple to begin with, so the Coord comparisons are cheap. - Some remaining offsets by 30 have been adjusted. - There were some GetLocationByCoords calls that did not have the correct Y+30 offset in 5.0, and surely were wrong in: WestHyrule.BlockCaves EastHyrule.BlockCaves MazeIsland.DrawRiver - (Some are still left as offset by 30 because it's not worth messing with when it's not broken.)
- Refactor Climate to use new IWeightedSamplers
- Multiple Overworld sizes per continent - Tweak ComboBox theme a bit - No longer try to put ocean perpendicular to DM Calderas as there are always already mountain in place and will always fail.
- Existing code had a lot of copy-paste and was less robust. It should have a higher success rate now. - Using new IntVector2 type to make code that traversed the map more readable.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This contains a lot of work on the overworld, some of it to make smaller overworlds possible, and some of it general improvements.
I'm sure there will be feedback, so I pushed it to it's own branch in this repo if you want to check it out and test it. The commits are pretty well separated. (I would not recommend viewing all the changes at once.)
The "Vanilla-Weighted" West & East climates uses the count of each tile in the vanilla game for weighting (as opposed to classic where every tile type is weighted equally.) This means mostly less graveyards and swamps. (Also West and East are somewhat different). Since it uses a different weighted sampler, it's not a performance problem. I'm open to better name suggestions than Vanilla-Weighted.
Refactor and improve Overworld cave and trap tile placement probably fixes some bugs with VoD trap tiles.
Personally, I really like the option of smaller overworlds to play quicker seeds.
With the performance improvements to GrowTerrain this is quite a bit faster than 5.0 in my testing.
(GUI is likely not final.)