-
Notifications
You must be signed in to change notification settings - Fork 4.1k
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
Adds some geography. This one is a kind of big deal. #69912
Conversation
Do you plan to jsonify this? I think the math parser for EOC could be used for it. |
Will this bias scenarios like Missed towards dumping you in the eastern megacities? Or is that not how starting locations work Conversely, would it be possible to do that on purpose? It would be fun to have scenarios where you start right on the coast in the biggest megacities or far to the west in the most rural areas. |
It looks great, will this be a worldgen option or just default from the moment it is implemented? Might be worth adding it as an option, between realistic like this or completely random like before |
Qrox: I do definitely plan to expose it to JSON, but not this PR. For now I just want it working and getting bug tested. Terrorforge: I don't think scenarios will usually search far enough afield to find the big cities at this point, but I would like some infrastructure and logic related to them so that we can have scenarios where you start in the city or on an island in the ocean at some point. There's nothing preventing it Karem: not making it an option, no. When it's parameterized out into JSON people could recreate the old boring way |
Aren't the southeastern parts of New England swampier? Could do something with that. Looking great btw! |
Oh yeah, this is good. Personally, I'd relegate it to a mod for those without processing capability for this, but it's really cool! |
It doesn't really add any processing. The cities are no more intensive than any other city. |
This pull request has been mentioned on Cataclysm: Dark Days Ahead. There might be relevant details there: https://discourse.cataclysmdda.org/t/i-did-some-mapgen-changes-you-might-find-cool/29087/1 |
This looks fantastic Erk. Is the new mapgen going account for temperature/rainfall variances due to lake/ocean effect the farther you move inland/toward the ocean? |
It doesn't presently come close to any capacity for that. It's possible to do that and not really difficult but it's entirely separate. Basically this change causes gradual shifts but doesnt make any strict assertions saying "it's city time now" or anything. We could mix this up with some actual biome changes covered in regional settings, and that might actually be a really interesting way to do some stuff. |
Absolutely, just looking at the generation itself this has a lot of potential and opens up a lot of possibilities. The map generation itself reminds me a bit of UnReal World mapgen in a very good way. You have the general expectation of something in a particular direction, but it's still procedurally done. I feel like this will open up the opportunity to start work on a framework for more realistic storms and temperature drops during winter, adding another layer to the game, especially with the dicussed addition of tile slickness values for winter. An excellent addition Erk. |
A little late, but I think this is super neat. Fantastic work. |
Erk, thank you. This is wonderful! I've wanted this for a long time now. Bless |
This looks very cool - can't wait for my compiler to put together a fresh copy of the game. |
It occurs to me that while this is super cool, we should probably find a way to tell people about this. If people go from 0.G to 0.H and mapgen is sufficiently different in long-running games, people might get confused. |
It shouldn't have that big an effect that it needs to be anywhere besides the changelog. THe worst thing someone might see is a sharp, ugly line at the edge of the changed mapgen where the gradient jumps suddenly. Nothing ought to break. |
Summary
Features "The map changes as you travel east-west and north-south, revealing either rural areas or oceans and megacities"
Purpose of change
Our current mapgen creates a sort of weird suburban zone. It's fine but it's bland. There's very little reason to explore outside one overmap. There are no real cities. No ocean. No mountains. No vast forests.
Describe the solution
Adds these things.
Describe alternatives you've considered
The massachussets mod would be another way to do this but I've wanted to boost the mapgen abilities for a while, and it turned out to be easier than I thought.
I wanted to add oceans in this PR (see screenshot below) but they were causing things to hang on generation and I don't want to introduce too many points of failure in one go.
Testing
here's a large image showing just the change to cities:
![image](https://private-user-images.githubusercontent.com/45136638/287424732-38f93c18-9593-4c72-b04e-c2087bfc29ba.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjU5ODE5ODgsIm5iZiI6MTcyNTk4MTY4OCwicGF0aCI6Ii80NTEzNjYzOC8yODc0MjQ3MzItMzhmOTNjMTgtOTU5My00YzcyLWIwNGUtYzIwODdiZmMyOWJhLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA5MTAlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwOTEwVDE1MjEyOFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTA4OTYyNDZmZGY2NTllN2M3ZjE5NzFiYzZkYTBmZDFlMGRmMzQ1NGIyMDExNjdlMmQ2ZTgwMWY3NjBjMjljODcmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.FFZj4J5zzqpRBZKhVQdhu9lCNtg_CCr-74xKnJG0gdQ)
This shows forest density increasing as you head West from the starting map
![image](https://private-user-images.githubusercontent.com/45136638/287467970-d39aa15f-9e46-4c9f-8195-1608d942c0ad.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjU5ODE5ODgsIm5iZiI6MTcyNTk4MTY4OCwicGF0aCI6Ii80NTEzNjYzOC8yODc0Njc5NzAtZDM5YWExNWYtOWU0Ni00YzlmLTgxOTUtMTYwOGQ5NDJjMGFkLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA5MTAlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwOTEwVDE1MjEyOFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTA1MGUyMjY1MjZjMGQxYWQ1ZDM0MTIwMTU1MjI2YjNhNTU2ZmMxNzZkOTBiZTliMzE5OTA0MmMwMzgwMzdkM2EmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.Glso_kim44S-zxK0ww3OURpam3Z_IAXCK1Qo13cQqZM)
This is a city at overmap 10,10, which is getting into the outskirts of boston.
![image](https://private-user-images.githubusercontent.com/45136638/287467793-fcaf53a1-4ee5-4ded-bfa6-467a439bcfb6.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjU5ODE5ODgsIm5iZiI6MTcyNTk4MTY4OCwicGF0aCI6Ii80NTEzNjYzOC8yODc0Njc3OTMtZmNhZjUzYTEtNGVlNS00ZGVkLWJmYTYtNDY3YTQzOWJjZmI2LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA5MTAlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwOTEwVDE1MjEyOFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTM5ODkwYTFjODRkNDRhZGZiZTlkOTIzMWM2YTYzOWE0M2NmN2Q5Y2QwMzRmMDg4YjI3ZDNkMTQyOTRiNDI4YTImWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.Wsnk_J4JfPJRQgkxrqK2-uqek8JIbJNepL8dnRoVUzQ)
When you get into the really rural areas approaching what would be vermont, you get... rural areas.
![image](https://private-user-images.githubusercontent.com/45136638/287468712-06072178-dabf-4bae-9a3f-6113b9f32664.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjU5ODE5ODgsIm5iZiI6MTcyNTk4MTY4OCwicGF0aCI6Ii80NTEzNjYzOC8yODc0Njg3MTItMDYwNzIxNzgtZGFiZi00YmFlLTlhM2YtNjExM2I5ZjMyNjY0LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA5MTAlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwOTEwVDE1MjEyOFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTM3YzE3NDcyNWNiNDljNjZjMWMyNzhjYWQyM2NjODQ5NWQ5MDJkMWFkNThjYTA5MGJkZGMwZTZjZjNhM2NlNzYmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.iVWZefWexiDIP0OCsayMTINCaMuz3cf9LAY8sWFaMT0)
But zooming in, those areas still have roads and points of interest:
![image-1](https://private-user-images.githubusercontent.com/45136638/287468722-3dcf4620-57a0-430f-aa2c-393df8902037.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjU5ODE5ODgsIm5iZiI6MTcyNTk4MTY4OCwicGF0aCI6Ii80NTEzNjYzOC8yODc0Njg3MjItM2RjZjQ2MjAtNTdhMC00MzBmLWFhMmMtMzkzZGY4OTAyMDM3LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA5MTAlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwOTEwVDE1MjEyOFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTMyNjUwNjg3M2I5MzIwN2ViZTQxZDViMzBiNDAxYWU1MjNhOGMxMzg0NTUyMWNjNzQ0NDc1ZTc3OGIwZDE2MDgmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.72vXRobjqMZtI3KpYp_14Oo2-9HLx_VCvDnusAmej6s)
This is just a cool shot around the 5,-2 area:
![image](https://private-user-images.githubusercontent.com/45136638/287468279-ea664ae6-c340-4c5c-8e6c-b4c41f53e969.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjU5ODE5ODgsIm5iZiI6MTcyNTk4MTY4OCwicGF0aCI6Ii80NTEzNjYzOC8yODc0NjgyNzktZWE2NjRhZTYtYzM0MC00YzVjLThlNmMtYjRjNDFmNTNlOTY5LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA5MTAlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwOTEwVDE1MjEyOFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWI0M2U1OGRiMGFmZjhlOTQxM2Y4ODBhYmRlMWU4NTQxMWU3YmEwMWJjNWFmODkwZDAyZTAyNjcyZjM0ZjJkNWImWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.UPdKbyTJ8rt7uqSXAzdCMdh72v5KDCdMz1IGR3yfYHI)
![image](https://private-user-images.githubusercontent.com/45136638/287468316-5f03b4a5-a816-4593-86e7-3922e75ab3bd.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjU5ODE5ODgsIm5iZiI6MTcyNTk4MTY4OCwicGF0aCI6Ii80NTEzNjYzOC8yODc0NjgzMTYtNWYwM2I0YTUtYTgxNi00NTkzLTg2ZTctMzkyMmU3NWFiM2JkLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA5MTAlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwOTEwVDE1MjEyOFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTlmMmM2Mzk2MmU1MmFiMDc5YjA3NDcyNWY5ZmMzYWUyMTM4YzQxN2NjYTJiYTM3MDkyOGZlNzMyMjJiYTg5NjUmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.gq0msV_UcSdvR7GzQM26KL6K_ygh0J1T-hIRfGClIis)
I can't get over how much cooler this is because here's a shot from in the same worldgen, a bit more to the west and north:
Additional context
this one shows the later ocean change. It's super cool but I have moved it to a later PR so I can push the stuff that's working right... the ocean stuff causes worldgen to hang and crash, and the fix is not super simple.
![image](https://private-user-images.githubusercontent.com/45136638/287424750-4ee6257d-0ae8-406d-96e8-e9b88b29ed1f.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjU5ODE5ODgsIm5iZiI6MTcyNTk4MTY4OCwicGF0aCI6Ii80NTEzNjYzOC8yODc0MjQ3NTAtNGVlNjI1N2QtMGFlOC00MDZkLTk2ZTgtZTliODhiMjllZDFmLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA5MTAlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwOTEwVDE1MjEyOFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWM2OWZjYjZhNDc3MjlmNGY3MTg0MTA5ODMwNzQ0MjY3MGQ1NzVmNzFmNzIxYWE0MTQxNGExYTE4MzRlZTE3MTImWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.LZ-kPE673oNc5m767YV_DaRxVottfrU-w0yHhCnhyAU)