Announcement: This map generator has been updated. Go here for the new version.
Hi all,
I have here probably the first random map generator for Elemental! Follow the link below to download.
Elementerra random map generator - mirror
This application requires the .NET framework runtime version 3.5 to run. Most people have this already, but if you don't you can get it through Windows Update.
To use the map generator, just play with all the funny sliders until you have something you like, then press one of the 'Publish' buttons. The 'Publish Random Map' button will publish a map with the current settings, but scrambles the map and does not show it to you. When asked for a location to save the file, usually you want to save it in the 'Documents/My Games/Elemental/Maps' directory. If you have mods turned on in the game options, you should then be able to load the map in game.
Most of the controls are self explanatory, but there are three noise fields that might need some explanation. For the landforms, there is a noise field and a turbulence field that are weighted against each other with their weight sliders. The climate uses a separate noise field. The 'Frequency' control adjusts the size of the noise features. High frequency makes small features and low frequency makes large features. The roughness slider controls the 'bumpyness' of the noise field. Low roughness makes very smooth transitions, high roughness increases the randomness and gives a grainy appearance.
The 'Calculate Start Positions' button shows you the start locations, but it is not necessary to press it. Start locations are always calculated on publish, but since it takes some time to calculate them, I didn't do real time updates. The button is there just for early feedback.
Let me know if you have any problems or bugs. Enjoy!
The maps generated by this application are somewhat different than the normal Elemental maps, as the following screenshots will show. For one thing, I eliminated the coastal cliffs altogether. The map looks better without them and they aren't required for gameplay. For swamps I added some props from the campaign map and also lowered their altitude so that they are slightly under the water level so you can see the ripple effect. Characters can still walk on it and use it as normal, and it looks very swampy! I also punched up the mountains a bit to make them big and dramatic. Fantasy worlds need big, big mountains!
One thing that still needs to be done is the placement of resources. I expect that the rules will be changing a great deal in the near future, so I'm holding off on that. Currently they will be placed randomly at game start, sometimes in huge clusters, and considering their enormous importance that is obviously not ideal. I'll tackle that issue once I learn more about it. If anyone has any opinions on how resources ought to be placed, please post them. I've noticed that I've never seen an Elementium resource in any game I've played, not sure why.
One difficulty here is that I do not know that it's possible to turn off the random resource spawns. If I place resources on the map in the cartography room, they end up randomized anyway. If anyone knows how to turn that off I'd like to hear it.
Take a look...
Version History
1.2 - Wrote floating point numbers correctly for non-US operating systems.
1.1 - Matched the XML encoding from Elementerra to the one that Elemental uses.
Oh neat. Thanks.
There's one other noise algorithm that creates very interesting sprawling mountain shapes, but i forgot what its called lol.I remember it from Mojoworld and Terragen
The ability to manually choose the noise filter for each of the two sets of sliders in the future, would be amazing *hint hint!*
Out of curiosity, I downloaded the mojoworld demo and did the tutorial. The tutorial made mountains with a noise formula called 'Ridged Value'. That is actually the same as what I'm calling 'turbulence'. It's a special kind of noise that inverts the data at some point (usually zero) to create a random ridge like shape. If you turn the 'noise' weight all the way down you can see it more clearly.
I'm actually creating mountains from local differences in value. Over the whole map I store standard deviances from a small surrounding area of a tile. One thing about noise altitudes that's difficult to get away from is that 'mountains' tend to always be in the middle of the continents, because that is the nature of brownian motion that the noise field is trying to capture. It's kindof what makes it believeable and useful, but in this sense highly predictable. By using standard deviance, I'm creating anomalous features that still have a natural looking shape. That is how I'm getting mountains near the coast and valleys near the middle of continents. It's really kindof a slapdash solution but it works well on game maps where you have distinct terrainst called 'mountains', 'hills' and 'flat'.
Regarding our earlier conversation about varying the original terrain a bit.
I think you've not used the Rugged Land terrain type so far.I think it could be a good way to add some variety to the basic terrain.
The difference in basic texture
http://img228.imageshack.us/img228/1487/elemental1284384877.jpg
The difference after environments have been added
http://img137.imageshack.us/img137/5656/elemental1284384516.jpg
I didn't even know it existed actually. I'll have to come up with some rules for placement. Any suggestions? It functions like basic land correct?
As far as I know. It's fairly common in the standard maps, and I cannot remember being mysteriously puzzled by anything like that.
Edit: As far as placement... small, stretchy patches maybe. Possibly as a "border" between normal land another type.
I must add that i'd LOVE to see, at least a version (a checkbox to be ticked, or whatever) that also adds environments to the maps upon generation.It could also use the noise filters that the terrain generation (the physical terrain) uses, to make it appear natural.
Such as, snow near the top and bottom of the map, blending into the standard barren, or / and grasslands near the middle of the map (very broadly and varied), with some nice deserts as are already placed, but mostly on the equator and in more coherent shapes.And perhaps some fallen terrain in rare places, like a dark valley or peinsula somewhere.
It'd add more variety to the maps, not only the terrain itself, but now also the texture, the same map could have several different looks, an ice world, a normal map with a mordor-lookalike valley surrounded by mountains, or a desert world with occational grassland bordering the oceans or lakes.Perhaps as simple as making the forest noisemap include grasslands terrain, and making the swamps a bit more random (not just tied to the center of forests).Maybe the current Barren terrain could be imagined as steppe, or plains (if going by Civ4 mapscript examples), acting as a soft buffer between desert - grasslands, or grasslands - arctic, or anything - fallen. Or even just randomly spread between most to form a natural looking terrain without clear cut borders.I dunno how much more work it would be, but that remains my wish
The rules in the Perfect World mapscript for Civ4 were very good, although produced a bit too large deserts. Meh, i wish Elemental had a proper random map generator by default, the more i think about Civ4 again
Excellent mod. This keeps the game fresh and with the bigger maps I am able to get a foot hold before encountering another race. One question I am hoping you can clear up is which slider indicates the frequency or random monster encounters, and which slider indicates the level of those encounters. I only ask because it seems that I am overrun with monster encounters about the time i have 4-5 cities and the strength of those monsters is nothing my little group can handle all too well. Any advice you can give would be appreciated. Keep up the excellent work it is appreciated and keeps me coming back for more.
I don't actually have control over anything except the landforms at this point. Hopefully in the future I will be able to do something with those things but not yet. 'Frequency' is actually the frequency of the noise signal that makes the land forms. High frequency makes smaller features and low frequency makes larger features.
As for being outpaced by the monsters, I think the adventure tech tree needs to be used with care. It raises the level of monsters that spawn so you want to be ready for that.
Yeah, about that...
Thanks for the reply. Maybe I am too eager to increase the adventure tech tree in my gaming. I will use your advice and see how it goes. Appreciate your assistance. Keep up the good work.
Cephalo,
As the person with probably the greatest knowledge of maps / mapmaking so far that I am aware of I wonder if I could get you to look at the tactical map files and see how similar they are and how difficult it might be to generate them in a similar manner. I have the idea that it could be interesting to have randomization of the tactical maps based on a set of presets like was mentioned above with spawn points assigned in a similar manner. This could give the tactical battles a much needed boost in terms in at least requiring a bit more thought.
Along the same lines since it seems that the tactical maps are virtually identical to the overland maps I wonder if it could be possible to create "dungeon" or "lair" encounters at the goodiehut location by creating it in the editor and then assigning defenderstart locations for the monsters and NPCs on the inside in the rooms areas. The current limitation to this would be that the monsters would all immediately head to where the player enters based on their current AI but perhaps those working on the AI could improve that aspect if this would work.
That would definately be alot of work, and the only really big problem with that is that Civ5 comes out in a week!!!!! I'm definately gonna be out of commission for a month or so. Hopefully while I'm in Civ5 land SD will expose some of this stuff in a way that makes it a bit easier to get to. My next item on the Elemental wish list is to control the placement of resources and shards.
This is really cool! Thank you!
I'm also looking forward to civ5 immensely. I'll be keeping an eye out for map generators, cephalo!
Heh. It won't be so quick this time. I have to port all my code to Lua. Blegh.
For those interested in procedural terrain generation, here are a few useful links I have found:
Generating Random Fractal Terrain http://www.gameprogrammer.com/fractal.html#ref http://www.vterrain.org/ http://www.vterrain.org/Elevation/Artificial/ http://www.lighthouse3d.com/opengl/terrain/index.php3?introduction home brew algorithm http://www.devmaster.net/forums/showthread.php?t=3593 Terrain Generation Using Fluid Simulation http://www.gamedev.net/reference/articles/article2001.asp landscapes and terrains http://www.gamedev.net/reference/list.asp?categoryid=188 agents http://www.eng.unt.edu/ian/pubs/terrain.pdf some java code – like C++ home brew algorithm http://mavdisk.mnsu.edu/kallhw/world/world.txt
Generating Random Fractal Terrain
http://www.gameprogrammer.com/fractal.html#ref
http://www.vterrain.org/
http://www.vterrain.org/Elevation/Artificial/
http://www.lighthouse3d.com/opengl/terrain/index.php3?introduction
home brew algorithm
http://www.devmaster.net/forums/showthread.php?t=3593
Terrain Generation Using Fluid Simulation
http://www.gamedev.net/reference/articles/article2001.asp
landscapes and terrains
http://www.gamedev.net/reference/list.asp?categoryid=188
agents
http://www.eng.unt.edu/ian/pubs/terrain.pdf
some java code – like C++
http://mavdisk.mnsu.edu/kallhw/world/world.txt
Thanks for the links. The fractal links offer some interesting points. I don't think the rest are particularly useful, though. The agent paper provides an algorithm that may be used or adapted but can be summarised as 'we found this to look nice, nevermind it's slow', which I think is a bit lame.
These papers don't seem to worry in any way about realism of generated terrain outside rivers, like having mountain ranges near coasts instead of the middle of the continents. Most often generate random maps that can work for a piece of world but don't really work for a planet.
Civ IV's fractal terrain generators were nice in their placement of mountains and hills, limited hills to be created on land, and mountains on hills, all the while using the same fractal algorithm. It was obviously not a heightmap, so not very useful river-wise, but I thought it was an elegant way of handling terrain (although I prefer heightmaps, even crude ones).
It may be beacuse the default settings in this map generator has ALOT of forests, baddies spawn in forests Try reducing the forests and the inevitable baddie-count should reduce too (i think).
Works great, makes more "real feeling" maps.
One request: I don't really understand the settings, but I can mess around with the sliders to get a map that looks right to me. Is there any way we can save settings so they're there next time??
Doesn't seem to work with the latest version released on October 7th. Worked on the 6th before the new release
I also am having troubles loading ANY map, even frogboy's mega map, so I do not think it is anything that the map generator has caused, even when frogboy's megamap is the ONLY map that is not stock in the elemental folders, it STILL dumps. sofar in my testing it is ONLY the stock maps that work. I am posting another support request regarding this.
harpo
I'm getting a game crash when trying to load maps by Elementera Mod?
Updated to 1.09e.
Non-stock maps do that due to a new bug. To be hotfixed today.
Great job. I've tried it and have fun playing the map.
There are many great features available to you once you register, including:
Sign in or Create Account