Rhineland

ColBashar

Chieftain
Joined
Nov 3, 2010
Messages
32
Description:

Rhineland is designed with the philosophy of fun over form. It promotes a mixture of both land and naval action to achieve victory through the use of mountain ranges in partitioning territory into defensible pockets and a web of sea channels that provide limited naval access throughout much of the map. Rhineland features some panama and thermopylae situations where segments of the map are accessible through passage of only one or two tiles. Every new map offers the player a unique array of strategic challenges where a single tile could be the difference between obscurity and world domination.

The map script also boasts a completely new terrain generator designed to select terrain based on the concept of prevailing winds. This means that that tiles on one side of an elevated landmass (i.e. mountains) will capture moisture that the opposite side is denied. Thus you will find terrain on one side of a mountain range often bearing desert while the opposite side may grassland.

Included with this post are screenshots for each landmass option to this post. Because I am unable to generate images from the WorldBuilder program, I am limited to providing in game screenshots. To permit an adequate presentation, the showcased maps were generated for a game with 6 players and 12 city-states, i.e. the default settings for a size small map.
-- -- -- -- --

Map Settings:

There are five custom settings in Rhineland: Landmass, Civ Density, Axial Tilt, Tile Set, and Ice Caps. The first two alter the map significantly, the third and fifth are of minor impact, and the fourth is purely cosmetic.

LANDMASS:

There are three different landmasses that you can select to play on. These affect the distribution of sea tiles, making each a different stategic experience.

Great Lakes: This was the original prototype for the Rhineland map. Instead of channels, the map features two or three seas or lakes. Of the three map types this one contains the most deep ocean tiles, so it's a good choice if you're fond of blue sea navies. At the same time it has the largest contiguous landmass so Great Lakes may also appeal to you if you prefer to focus on land-based warfare.

Rhineland: The default map type. Though designed with land combat in mind though the map's waterways are arranged in such a way that their control can play a significant role in providing support or transportation.

Bayou: A large sponge-like map made up of many thin tendrils of land that may or may not be sectioned off entirely by mountains. Controlling the long, twisting waterways is required to safely hop from landmass to landmass.

CIV DENSITY:

This setting basically determines map size and thus how quickly you can expect to encounter opposing civilisations. On "Congested" maps, you can expect to encounter opponents fairly quickly and this is a good setting if you want a game that will quickly force you in to combat. Sparse maps by contrast offer players much more room to expand before knocking on one's doorstep, making it the choice for players who want to build up a small empire before dealing with warfare or diplomacy.

Rhineland automatically scales the size map according to several factors, most importantly to the number of civs and city-states assigned in the setup screen. Thus the player's early game experience will be roughly uniform regardless of the number of opponents he faces. The standard "Map Size" setting at the top of the screen has been disabled for purposes of determining map dimensions. Civ Density is the core setting that will determine whether you will have a bounty of territory to which to expand or be forced to defend whatever scraps you can grab a hold of.

AXIAL TILT:

Axial tilt determines the randomness of terrain placement. A strong axial tilt will result in "fantasy" terrain where you might find snow at the equator and desert at the poles. The default "Earthlike" setting will provide enough variation make terrain changes appear organic but keep terrain placement realistic.

TILE SET:

For the sake of simplicity and ease of tile identification, Rhineland maps feature uniform tile sets which determine the cosmetic appearance of your map. This setting allows you to specify which tileset you'd like to use.

ICE CAPS:

None: Ice is completely ignored and will not generate on maps.

Strategic: Glaciers will be spread throughout the seas, though with diminishing frequency with proximity to the equator. Many glaciers may be broken up, allowing ships to navigate around them.

Firaxis: Traditional style of ice caps from Firaxis maps such as Terra or Continents.
-- -- -- -- --

Notes:

Rhineland originated as a map script I made last year for Civilization IV. The core mechanic that makes this map script interesting is in running the fractals intended to determine the placement of mountains and ocean tiles through a solar filter. This creates long, contiguous strands, as opposed to a fractal's "clouds", that simulate the appearance or ranges or river beds. Although the results can be very random and some maps generated will be more enjoyable than others, the overall result is a very organic, and very strategic arrangement of territory.

I found the map tremendous fun to play in Civ4 where it made stacks of doom manageable with a little strategic foresight and bodies of water were neither impenetrable barriers at the start of the game nor a coup de grace at its end. Of course, Civ5 isn't Civ4. Stacks of Doom are gone altogether and water has a new dynamic. Nevertheless I think the map's particular novelty remains strong and might be of interest. Of the two, this latter script is the more polished and sophisticated though if there is demand, I might later fix up the Civ4 version for public release.

As for the terrain generator, I think the result turned out pretty well. It isn't the prettiest script I've ever written but it produces varied and organic looking terrain with minimal direct influence from a random generator, such as a fractal. If there is sufficient interest from other map scripters, I could separate the terrain generator into an include file and make it fully compatible with the Firaxis version. That way you would be able to plug it in to any of the existing map scripts with minimal fuss.

I hope you enjoy the map and please feel free to provide feedback. I've spent a lot more time working on the map than I have actually playing Civ5 so if you think of tweak that would make the map more enjoyable I would be happy to have the benefit of your experience. If you want a change made, though, remember to let me know what map settings you used so that I can replicate them and see specifically what you're talking about. Screenshots are also helpful.
-- -- -- -- --

Version History:
v1.00 (2010-NOV-03)
v1.01 (2010-NOV-17)
- Fixed the bug that would crash the map when random settings were selected
- Generally increased landmass and ocean coverage for better naval access
- Added option to include glacial ice
- Various tweaks
 

Attachments

  • Rhineland_Map_Types.jpg
    Rhineland_Map_Types.jpg
    165.1 KB · Views: 3,743
  • Rhineland_Map_Types_Ingame.jpg
    Rhineland_Map_Types_Ingame.jpg
    126.3 KB · Views: 2,620
  • Civ5_Rhineland_v1.01.zip
    12.3 KB · Views: 725
Unfortunately it seems that the Civ5 SDK only comes with the Steam version of the game. At least that explains why I couldn't find the Worldbuilder when I looked for it. I'm afraid this looks like I'll only be able to make mods the old fashioned way for the time being.

In the meantime, LDiCesare is correct. I should've addressed that in my intial post. Thank you for reminding me. <s>

To install the map, unzip it and place the .lua file in the following directory:

Code:
[Civ5 Directory]\assets\Maps

Alternatively, if you don't like to share, you can put in your personal folder here:

Code:
[User Folder]\My Documents\My Games\Sid Meier's Civilization 5\Maps

I also noticed that I accidentally mis-named the zip file. I'll address that shortly. The map file won't be changed so there will be no reason to re-download it if you have already done so. Just correcting a mistake in the naming convention.

--TG
 
Would love some actual ingame screenshots rather than hard-to-visualize-in-your-mind hexagon grids from the map editor. I understand that its vastly simpler and quicker, but pretty much every map looks the same (random hexes here and there) to the eyes.
 
There you go, Baleur. <s> I've included a set of in-game screenshots on the main post. Let me know if they're not what you're looking for and I'll try to whip up another batch. Note that while the images were shrunk to save space, I kept the minimap images at normal resolution so that you'll be able to see the maps both on a macro and micro level.

--TG
 
Thank you for your word of appreciation, Grandad1982. <s> I hope you enjoy it and let me know if for whatever reason you don't. Rhineland is a work in progress.

Speaking of, a word of warning. I found a bug on the script. If you choose "random" for any of the map options then it will cause an error and generate a blank map. This can easily be circumvented by simply not choosing any random options. The bug will be fixed in version 1.01, which I will upload this week.

--TG
 
ColBasher, this is easily my new favorite map script. I particularly enjoy how controlling water really matters (in Bayou), and the multiple land chokepoints and scales. Also, I like how most of the land was quality and not large swaths of junk terrain (like tundra).

One comment- I think Civ 5 has no concept of torroidal maps (as far as I can tell), so the poles in these maps just kind of end. How hard is it to add "icecaps" of some kind, and make a more graceful border?
 
Thank you, I'm glad you enjoy it! Bayou is the only subtype that I haven't actually played on so it's fantastic that it worked out so well. I guess I ought to load up a game some time and try it for myself.

You're correct about toroidal maps. While I believe the fractal generator itself still retains the ability to wrap along the y-axis, the game itself doesn't support this style of play and there's no work-around for it. It's hard-coded in to the software. I heard, though, that vanilla Civ4 didn't support them either, so there's yet hope it might be implemented in the future!

I fell that map edges are essentially impenetrable walls. Being in the corner of a regional map can be particular advantageous since it limits threats to coming from two directions only. At the same time a corner position can be restrictive because it also limits your own opportunity for expansion. By removing map edges altogether you go a ways toward equalizing map locations. Nowhere and nobody is completely safe. That's a lot of what made the Civ4 version so much fun to play.

Another admitted limitation of the map is the aspect ratio. I would prefer maps to be square. I've noticed that on rectangular maps that it's not uncommon to secure the north and south map edge and then expand east and west. Dovetailing on what I said before, square maps, combined with toroidal wrapping, would equalize the value of each map direction.

In truth there's nothing really preventing me from scripting square maps. The problem is that the fractal generator appears to be biased for a 3:5 aspect ratio. Otherwise terrain formations will have a squished appearance. You can look at the Ice Age script to get an idea of what I mean. I would basically have to script a new fractal generator from scratch. That's do-able but not exactly what I had in mind for a free weekend. <s>

I agree with you on the point of quality terrain. I'm not a big fan of snow because it doesn't serve any function. Desert isn't so bad because there's the opportunity for floodplains and also having wasteland in the -center- of the map can provide interesting strategic scenarios (e.g. Lawrence of Arabia) while snow on the map edges is generally just ignored. I'm still tweaking the terrain generator, though, so expect some changes in the future.

As for ice caps, the reason I've disabled them from the script is because of what I was saying before about the ratio of the map dimensions. By dedicating the north and south edges of the map to wasteland, you're basically making the y-dimension even -smaller-, exacerbating the problem. Thinking on it, though, I could probably write method that would just replace mountains with ice at certain latitudes. That might improve the aesthetic without contravening the map's purpose. Or just make it uglier, not sure until I test it.

Above all, Rhineland is designed with the philosophy of fun over form, so at present I have no plans to add bands of ice just for the sake of appearance. Throwing a few plots of ice in to break up larger bodies of water, though... that could be interesting if people were willing to suspend disbelief. Or maybe just explain them away as glacial icebergs.

In the meantime, I would suggest trying a map with world temperature set to cool. That will make the caps a little snowier and possibly simulate the effect you're looking for.

Thanks again for your compliment and and your comments! They go a long way in making me want to work on the script as much as play on it. <s>
 
Yeah I'm pretty much in love with the "bayou" script. Very nice job! I would like to make some improvements to it- namely, connect a few more of the waterways, and add some kind of polar cap, only because the game can't handle stuff up there. (For example, I'll see city states right on the edge, and half of their tiles are off the map). Not an issue with the map, more an issue with the engine.

I haven't looked at this language much, but it doesn't look terribly difficult... Any thoughts on what I could tweak for these two effects?

Looking forward to the other two scripts...

By the way, I'm all about a good map script- I think much more replayability than huge earth maps and all.
 
Scratch the last request about the more connecting waterways... Let me first check out the otehr map types and settings- it's probably already there.

Still humbly requesting some kind of polar cap, even if it's just a single row of coasts or something. The stuff at the edges makes me nervous for late game...

Again, can't say enough good things about how good this is!!!
 
Just set the sea level to high on the bayou map and you should get an archipelago, or something close to it. Personally I was always fond of the idea of inland seas, going all the way back to my Civ2 map building days, for the reason that it forces you to carefully allocate your resources. You want enough ships to control a waterway but not so many that it draws from your power to project force on other fronts. But I can certainly see the appeal to an island hopping game with lots of naval action. Has a sort of swashbuckling, west indies feel to it, Jenkins Ear War etc.

But also do not neglect cities placed on those narrow strips of land between two seas. These have the ability to significantly expand naval access to the city owner while everybody else is stuck with their ships locked in one sea or the other. I call these "Panama" opportunities, again from my Civ2 days, because I would always try to place a city on that one tile that was adjacent to both the Atlantic and Pacific oceans on the Earth (medium size) map so that my warships on one side wouldn't have to go all the way around South America to get to the other. Not sure if you were able do the same over by the Suez. In any event, it's great fun and make these strategically positioned cities very interesting to fight over.

I'll take a look at adding an ice cap as an option players can choose at setup. It shouldn't be too difficult to implement and if you think it will improve your enjoyment of the map then odds are somebody else feels the same. I'd much rather have one consolidated map that can appeal to everyone than several floating around with various tweaks.
 
I'll take a look at adding an ice cap as an option players can choose at setup. It shouldn't be too difficult to implement and if you think it will improve your enjoyment of the map then odds are somebody else feels the same. I'd much rather have one consolidated map that can appeal to everyone than several floating around with various tweaks.

Awesome. Like I said, I'd be perfectly happy with just a strip of coasts or seas- doesn't have to be a polar cap. But you are the creator- it's up to you :)
 
Version 1.01 is now up. You can find it attached to the first post. There were several changes made.

First, I've increased the dimensions of the map by about 50%; however, ocean coverage has also increased. This means there should be more naval access in the Rhineland map while Bayou I scaled back so that it should remain about the same.

I've added ice caps, though the map does not opt to have them be default. I'm not quite sure it is quite what you were looking for, Cassembler, but I also modified the starting position for city states so they should less frequently settle on the map edges.

You should find that I tweaked mountain ranges so that they are a little more contiguous now. At the same time, though, they should be less scattered. This will create a greater effect of partitioning, which is closer to what I had originally intended. Some areas of the map may even be blocked to the point that they can -only- be accessed by the sea.
 
ColBashar, give me a few days to check this out and I'll get back to you :)
 
Wow, this generates some pretty nice terrain! I really like the Moisture Mapping, and the Axial Tilt was an idea I was toying with, but I much prefer your implementation!

If I promise to spell your name right when I give you credit, would you allow me the honour of pillaging some of the code from this script?

BTW, your code is so much easier to read!

Cheers!
 
Thank you for the compliment, Skweetis. <s> As for copying my script, which parts were you interested in specifically?

If you want to use the prevailing winds model to generate terrain, I would rather publish this separately as an include file so that scripters can plug it in to their map scripts as desired. Moreover, as I develop more tools for working with scripts, I expect that the methods I have used will become more sophisticated. With each improvement, it would be a lot easier for people to replace a single include file than for every person who may choose to borrow this script to update their own work.

Otherwise I don't have a problem. Never stop tinkering, though, as it's the nuances of each scripter that makes their maps individually interesting. Unless I'm asked to make a minor tweak, I expect the next update to Rhineland to feature a lot of new script from the last. There are still ideas rolling around in my head to make it cleaner and more versatile.
 
I've added ice caps, though the map does not opt to have them be default. I'm not quite sure it is quite what you were looking for, Cassembler, but I also modified the starting position for city states so they should less frequently settle on the map edges.

I tested in World Builder and see what you are saying. In fact, I totally copied your method to remove caps completely.

I was thinking, until y-wrapping is implemented, just to do an oceanic cap like the script I put up (Coastal Valleys, arguably the best map script I've ever made... Forget the fact it's the first.)

EDIT: By the way, I'm definitely growing appreciation for the Rhineland and Great Lakes scripts, too.
 
Actually Ty, the more I looked into it, I think I'm going to take a stab at writing my own, mostly so that I can learn and build my skills, but also because there are a few things I would like to add and modify. We had a blizzard here today, so it gave me the opportunity to sit down with pen and paper and plot out the design.

You have some really useful methodology in there though, I think we would all benefit if you released some as a utility file! I know I'll be calling for it if my own design doesn't pan out!

Anyway, thanks again, you have been inspirational!

Cheers!
 
Top Bottom