Jump to content

RGMIXER.XML Edits


DurtySonuva

Recommended Posts

New set of tweaks (a little rougher landscape):

[ATTACH=CONFIG]17588[/ATTACH]

 

Terrain tweaks: Again less water, land is not as flat/flat but a bit rougher

<terrain_generator name="vanilla" use_old_final="false">

		<module name="fastContinents" type="FastNoise">
			<property name="frequency" value="0.05"/> 
		</module>

		<module name="fastLowlandsBase" type="FastBillow" no_seed="true">
			<property name="frequency" value="0.005"/>
		</module>

		<module name="fastLowlandsScaled" type="ScaleBiasOutput">
			<property name="sourceModule" value="fastLowlandsBase"/>
			<property name="scale" value="0.2"/>
			<property name="bias" value="0.5"/>
		</module>

		<module name="fastLowlands" type="FastTurbulence">
			<property name="sourceModule" value="fastLowlandsScaled"/>
			<property name="power" value="1"/>
			<property name="frequency" value="0.2"/>
			<property name="roughness" value="1"/>
		</module>

		<module name="fastMountainsBase" type="FastRidgedMultifractal">
			<property name="frequency" value="0.0008"/>
		</module>

		<module name="fastMountainsScaled" type="ScaleBiasOutput">
			<property name="sourceModule" value="fastMountainsBase"/>
			<property name="scale" value="1.5"/>
			<property name="bias" value="0.55"/>  
		</module>

		<module name="fastMountains" type="FastTurbulence">
			<property name="sourceModule" value="fastMountainsScaled"/>
			<property name="power" value="130"/>
			<property name="frequency" value="0.05"/>
			<property name="roughness" value="5"/>
		</module>

		<module name="fastLandFilter" type="FastNoise" seed_additive="1">
			<property name="frequency" value="0.5"/>
		</module>

		<module name="fastLand" type="Select">
			<property name="controlModule" value="fastLandFilter"/>
			<property name="sourceModule1" value="fastLowlandsScaled"/>
			<property name="sourceModule2" value="fastMountains"/>
			<property name="bounds" value="0,1000"/>
			<property name="edgeFalloff" value="32"/>
		</module>

		<module name="fastOceanBase" type="FastNoise">
			<property name="frequency" value="0.5"/>
		</module>

		<module name="fastOceanScaled" type="ScaleBiasOutput">
			<property name="sourceModule" value="fastOceanBase"/>
			<property name="scale" value="0.5"/>
			<property name="bias" value="0.5"/>
		</module>

		<module name="fastOcean" type="ScaleOutput">
			<property name="sourceModule" value="fastOceanScaled"/>
			<property name="power" value="1"/>
			<property name="frequency" value="0.47"/>  <!-- raise to add water *A little goes a long way* -->
			<property name="roughness" value="5"/>
		</module>

		<module name="fastFinal" type="Select">
			<property name="controlModule" value="fastContinents"/>
			<property name="sourceModule1" value="fastOcean"/>
			<property name="sourceModule2" value="fastLand"/>
			<property name="bounds" value="0, 1"/>
			<property name="edgeFalloff" value="0.5"/>
		</module>

		<module name="scaleBiasOutput" type="ScaleBiasOutput">
			<property name="sourceModule" value="fastFinal"/>
			<property name="scale" value="180"/>
			<property name="bias" value="-1"/>
		</module>

		<module name="clampOutput" type="ClampOutput">
			<property name="sourceModule" value="scaleBiasOutput"/>
			<property name="bounds" value="-28,190"/>
		</module>

		<output module="clampOutput"/>

	</terrain_generator>

 

Biome tweaks: With a bit of help from StompyNZ and Kinyajuu directions that I did.

<biome_generator name="vanilla">

		<module name="voronoi" type="Voronoi">
			<property name="frequency" value="0.0006"/> <!-- lower to have bigger biomes *A little goes a long way* -->
			<property name="displacement" value="0.5"/>  
		</module>
		<module name="biasOutput" type="BiasOutput">
			<property name="sourceModule" value="voronoi"/>
			<property name="bias" value="0.5"/>
		</module>

		<module name="biomeDither" type="FastTurbulence">
			<property name="sourceModule" value="biasOutput"/>
			<property name="frequency" value="0.25"/>
			<property name="power" value="8"/>
			<property name="roughness" value="5"/>
		</module>

		<module name="biomeJiggle" type="FastTurbulence">
			<property name="sourceModule" value="biomeDither"/>
			<property name="frequency" value="0.0016"/>
			<property name="power" value="400"/>
			<property name="roughness" value="1"/>
		</module>

		<module name="clampOutput" type="ClampOutput">
			<property name="sourceModule" value="biomeJiggle"/>
			<property name="bounds" value="0,1"/>
		</module>

		<output module="clampOutput"/>

	</biome_generator>

</biome_generators>
	<!-- 
		Random gen Forest, Burnt Forest, Wasteland and Plains, is done this way to spead it out over the map
	-->	
<biome_spawn_rules>

	<biome_spawn_rule name="forest">
		<biome_generator range="0,0.1"/> 	
	</biome_spawn_rule>

	<biome_spawn_rule name="burnt_forest">	
		<biome_generator range="0.1,0.2"/> 
	</biome_spawn_rule>

	<biome_spawn_rule name="forest">
		<biome_generator range="0.2,0.3"/>
	</biome_spawn_rule>

	<biome_spawn_rule name="burnt_forest">
		<biome_generator range="0.3,0.4"/>
	</biome_spawn_rule>

	<biome_spawn_rule name="forest">
		<biome_generator range="0.4,0.5"/>
	</biome_spawn_rule>

	<biome_spawn_rule name="burnt_forest">
		<biome_generator range="0.5,0.6"/>
	</biome_spawn_rule>

	<biome_spawn_rule name="forest">
		<biome_generator range="0.6,0.7"/>
	</biome_spawn_rule>

	<biome_spawn_rule name="wasteland">
		<biome_generator range="0.7,0.8"/>
	</biome_spawn_rule>

	<biome_spawn_rule name="forest">
		<biome_generator range="0.8,0.9"/> 
	</biome_spawn_rule>

	<biome_spawn_rule name="plains">
		<biome_generator range="0.9,1"/> 
	</biome_spawn_rule>

	<!--  Radiated, Snow and Wasteland barriers -->

	<biome_spawn_rule name="wasteland">
		<distance_from_center range="8250,9250"/> 
	</biome_spawn_rule>

	<biome_spawn_rule name="snow">
		<distance_from_center range="9250,10000"/> 
	</biome_spawn_rule>

	<biome_spawn_rule name="radiated">
		<distance_from_center range="10000,20000"/> 
	</biome_spawn_rule>

	<!-- Height based biomes -->

	<biome_spawn_rule name="snow">
		<terrain_generator range="165,255"/>
	</biome_spawn_rule>

	<biome_spawn_rule name="pine_forest">
		<terrain_generator range="150,164"/> 
	</biome_spawn_rule>

	<biome_spawn_rule name="plains">
		<terrain_generator range="30,50"/> 
	</biome_spawn_rule>

	<biome_spawn_rule name="desert">
		<terrain_generator range="10,30"/> 
	</biome_spawn_rule>

	<biome_spawn_rule name="plains">
		<terrain_generator range="2,10"/> 
	</biome_spawn_rule>

	<biome_spawn_rule name="water">
		<terrain_generator range="-31,2"/>
	</biome_spawn_rule>

</biome_spawn_rules>

 

A short video showcasing the changes: *You will also notice some decoration tweaks for some biomes in this, if you want them let me know*

Link to comment
Share on other sites

  • 2 weeks later...

This seems good and interesting work, I have a question though.

 

I am trying to get a nice world for my mod going myself and have been using Tin's work here to inspire me. However I also wanted to see if I can add in a totally NEW biome, I want to create variations to existing biomes if possible so not to have to rely on the Sub Biomes to much. I basically made a copy of the forest biome as a test, added it to the list, Called it BiomeTest and added it as number 15. Then changed the name to that, had to change the color code for it as well to avoid an error, and changed the ground to Coal so I could see if it actually spawned, forced it at 0, 500 in the list so it would be in the center of the map.

 

But when I teleported to it, it had spawned but I also got the error:

 

KeyNotFoundException: The given key was not present in the dictionary.

at System.Collections.Generic.Dictionary`2[system.Byte,BiomeDefinition+BiomeType].get_Item (Byte key) [0x00000] in <filename unknown>:0

at EnvironmentAudioManager.FixedUpdate () [0x00000] in <filename unknown>:0

 

(Filename: Line: -1)

 

I have a feeling this error relates to something hardcoded and so it might not be possible at all to add NEW biomes in, or is there anyone that succeeded so far?

Link to comment
Share on other sites

This seems good and interesting work, I have a question though.

 

I am trying to get a nice world for my mod going myself and have been using Tin's work here to inspire me. However I also wanted to see if I can add in a totally NEW biome, I want to create variations to existing biomes if possible so not to have to rely on the Sub Biomes to much. I basically made a copy of the forest biome as a test, added it to the list, Called it BiomeTest and added it as number 15. Then changed the name to that, had to change the color code for it as well to avoid an error, and changed the ground to Coal so I could see if it actually spawned, forced it at 0, 500 in the list so it would be in the center of the map.

 

But when I teleported to it, it had spawned but I also got the error:

 

KeyNotFoundException: The given key was not present in the dictionary.

at System.Collections.Generic.Dictionary`2[system.Byte,BiomeDefinition+BiomeType].get_Item (Byte key) [0x00000] in <filename unknown>:0

at EnvironmentAudioManager.FixedUpdate () [0x00000] in <filename unknown>:0

 

(Filename: Line: -1)

 

I have a feeling this error relates to something hardcoded and so it might not be possible at all to add NEW biomes in, or is there anyone that succeeded so far?

 

As of right now you cannot add new "named" biomes :(

 

My suggestion is use the "Water" biome (I tend to think of it as a free biome to play with) and build it how you like. If you use the desert biome and make separate height requirement for it you can make it look like the actual water has a beach effect.

.. And you get a Biome to totally shape how you wish (you just need to keep its "Water" name).

Link to comment
Share on other sites

As of right now you cannot add new "named" biomes :(

 

My suggestion is use the "Water" biome (I tend to think of it as a free biome to play with) and build it how you like. If you use the desert biome and make separate height requirement for it you can make it look like the actual water has a beach effect.

.. And you get a Biome to totally shape how you wish (you just need to keep its "Water" name).

 

Yeah I was afraid of that, might have to confiscate the navezgane only biomes then, they seem to work when called upon on RWG. Navezgane might not work to well then anymore, but I am not making my mod to be used with navezgane, and could always make a seperate mixer file for navez use.

 

Anyway I had another question, I have been tweaking a bit with your last settings and I am trying to get a bit more mountains back into it. I like how the terrain is now, seems very nice the transitions and biome placements, but I miss the big mountains that sometimes popped up in Vanilla. And there are also still lot of big bodies of water somtimes. Hard to control these it seems, I would like more small lakes spread across the map if that is even possible to get going. I found a few nice natural ponds.

 

So any suggestions which handles to pull to get a bit more of those rugged mountains back in, without getting those huge 'Snow Mesas'.?

 

Also, I tried stretching out the world a bit, since vanilla made 10000 - 20000 radiated, I thought should then be doable to make the world to 15000, make a wasteland circle at 15000 - 18000 and then 18000 - 20000 radiated instead. But when I teleported to near this new 15000 border I again was struck with an error.

 

Exception in thread thread_GenerateChunks:

 

It killed the chunk generator and that was it. Guess that might be to much as well then it seems :D Was hoping would be possible within reason to make the world a bit bigger.

Link to comment
Share on other sites

Yeah I was afraid of that, might have to confiscate the navezgane only biomes then, they seem to work when called upon on RWG. Navezgane might not work to well then anymore, but I am not making my mod to be used with navezgane, and could always make a seperate mixer file for navez use.

 

Anyway I had another question, I have been tweaking a bit with your last settings and I am trying to get a bit more mountains back into it. I like how the terrain is now, seems very nice the transitions and biome placements, but I miss the big mountains that sometimes popped up in Vanilla. And there are also still lot of big bodies of water somtimes. Hard to control these it seems, I would like more small lakes spread across the map if that is even possible to get going. I found a few nice natural ponds.

 

So any suggestions which handles to pull to get a bit more of those rugged mountains back in, without getting those huge 'Snow Mesas'.?

 

Also, I tried stretching out the world a bit, since vanilla made 10000 - 20000 radiated, I thought should then be doable to make the world to 15000, make a wasteland circle at 15000 - 18000 and then 18000 - 20000 radiated instead. But when I teleported to near this new 15000 border I again was struck with an error.

 

Exception in thread thread_GenerateChunks:

 

It killed the chunk generator and that was it. Guess that might be to much as well then it seems :D Was hoping would be possible within reason to make the world a bit bigger.

 

Yeah, unfortunately adjusting to get more land use became a issue and I have yet been able to create a larger world effectively :(

.. But I have a new setup I worked on over the weekend that just may solve your dilemma on the mountains...

 

<terrain_generators>

	<terrain_generator name="vanilla" use_old_final="false">

		<module name="fastContinents" type="FastNoise">
			<property name="frequency" value="0.05"/> 
		</module>

		<module name="fastLowlandsBase" type="FastBillow" no_seed="true">
			<property name="frequency" value="0.005"/>
		</module>

		<module name="fastLowlandsScaled" type="ScaleBiasOutput">
			<property name="sourceModule" value="fastLowlandsBase"/>
			<property name="scale" value="0.2"/>
			<property name="bias" value="0.5"/>
		</module>

		<module name="fastLowlands" type="FastTurbulence">
			<property name="sourceModule" value="fastLowlandsScaled"/>
			<property name="power" value="1"/>
			<property name="frequency" value="0.2"/>
			<property name="roughness" value="1"/>
		</module>

		<module name="fastHillsBase" type="FastRidgedMultifractal">
			<property name="frequency" value="0.0008"/>
		</module>

		<module name="fastHillsScaled" type="ScaleBiasOutput">
			<property name="sourceModule" value="fastHillsBase"/>
			<property name="scale" value="0.5"/>
			<property name="bias" value="0.55"/>  
		</module>

		<module name="fastHills" type="FastTurbulence">
			<property name="sourceModule" value="fastHillsScaled"/>
			<property name="power" value="30"/>
			<property name="frequency" value="0.05"/>
			<property name="roughness" value="5"/>
		</module>

		<module name="fastMountainsBase" type="FastRidgedMultifractal">
			<property name="frequency" value="0.0008"/>
		</module>

		<module name="fastMountainsScaled" type="ScaleBiasOutput">
			<property name="sourceModule" value="fastMountainsBase"/>
			<property name="scale" value="1.5"/>
			<property name="bias" value="0.55"/>  
		</module>

		<module name="fastMountains" type="FastTurbulence">
			<property name="sourceModule" value="fastMountainsScaled"/>
			<property name="power" value="130"/>
			<property name="frequency" value="0.05"/>
			<property name="roughness" value="5"/>
		</module>

		<module name="fastLandFilter" type="FastNoise" seed_additive="1">
			<property name="frequency" value="0.5"/>
		</module>

		<module name="fastLandA" type="Select">
			<property name="controlModule" value="fastLandFilter"/>
			<property name="sourceModule1" value="fastLowlandsScaled"/>
			<property name="sourceModule2" value="fastHills"/>
			<property name="bounds" value="0,1000"/>
			<property name="edgeFalloff" value="32"/>
		</module>

		<module name="fastLandB" type="Select">
			<property name="controlModule" value="fastLandFilter"/>
			<property name="sourceModule1" value="fastLowlandsScaled"/>
			<property name="sourceModule2" value="fastMountains"/>
			<property name="bounds" value="0,1000"/>
			<property name="edgeFalloff" value="32"/>
		</module>

		<module name="fastOceanBase" type="FastNoise">
			<property name="frequency" value="0.5"/>
		</module>

		<module name="fastOceanScaled" type="ScaleBiasOutput">
			<property name="sourceModule" value="fastOceanBase"/>
			<property name="scale" value="0.5"/>
			<property name="bias" value="0.5"/>
		</module>

		<module name="fastOcean" type="ScaleOutput">
			<property name="sourceModule" value="fastOceanScaled"/>
			<property name="power" value="1"/>
			<property name="frequency" value="0.75"/>  <!-- raise to add water *A little goes a long way* -->
			<property name="roughness" value="5"/>
		</module>

		<module name="fastFinalA" type="Select">
			<property name="controlModule" value="fastContinents"/>
			<property name="sourceModule1" value="fastOcean"/>
			<property name="sourceModule2" value="fastLandA"/>
			<property name="bounds" value="0, 1"/>
			<property name="edgeFalloff" value="0.5"/>
		</module>

		<module name="fastFinalB" type="Select">      <!-- selector switch -->
			<property name="controlModule" value="fastContinents"/>
			<property name="sourceModule1" value="fastOcean"/>
			<property name="sourceModule2" value="fastLandB"/>
			<property name="bounds" value="0, 1"/>
			<property name="edgeFalloff" value="0.5"/>
		</module>

		<module name="Final" type="Select">      <!-- Selector switch -->
			<property name="controlModule" value="fastContinents"/>
			<property name="sourceModule1" value="fastFinalA"/>
			<property name="sourceModule2" value="fastFinalB"/>
			<property name="bounds" value="0, 1"/>
			<property name="edgeFalloff" value="0.5"/>
		</module>

		<module name="scaleBiasOutput" type="ScaleBiasOutput">
			<property name="sourceModule" value="Final"/>
			<property name="scale" value="180"/>
			<property name="bias" value="-1"/>
		</module>

		<module name="clampOutput" type="ClampOutput">
			<property name="sourceModule" value="scaleBiasOutput"/>
			<property name="bounds" value="-28,190"/>
		</module>

		<output module="clampOutput"/>

	</terrain_generator>

</terrain_generators>

 

I have been messing with and adding new selector switches, not only for the water but for spreading out mountains also.

Link to comment
Share on other sites

Seems a generation range of 12500, 12500 - 15000 wasteland, 15000 - 20000 has had the effect I wanted. Maybe the error was related to teleporting, but I spend a time just driving over the landscape and it is really wonderful. I made it all the way into the radiation without any errors, so maybe an addition of 2500 is doable. Not that the world is not big enough without it lol, its so big :D.

 

Thats cool, I will give it a try and see how my world looks like. I have been using the Test2 seed mainly, which has the central city placed into water :D. I have to place my forced wasteland after the water generation or it will look weird there. Probably will have to do that for the outer rings too as I did not find it, was all eaten up by other biomes over there.

Link to comment
Share on other sites

Seems a generation range of 12500, 12500 - 15000 wasteland, 15000 - 20000 has had the effect I wanted. Maybe the error was related to teleporting, but I spend a time just driving over the landscape and it is really wonderful. I made it all the way into the radiation without any errors, so maybe an addition of 2500 is doable. Not that the world is not big enough without it lol, its so big :D.

 

Thats cool, I will give it a try and see how my world looks like. I have been using the Test2 seed mainly, which has the central city placed into water :D. I have to place my forced wasteland after the water generation or it will look weird there. Probably will have to do that for the outer rings too as I did not find it, was all eaten up by other biomes over there.

 

Sweet find! saves me some extra work >.> I'll hafta see how it effects my puter :)

 

You can try messing with the "cell_offset" (top of the rwgmixer.xml) a bit and move the wasteland hub a bit more or less to try and get it away from the water (or a different seed name for your world tests :p).

 

Life of a modder: "Change 1 thing and you need to readjust everything else" :)

Link to comment
Share on other sites

Yeah this is just a test seed to see the effect of the actual terrain edits I am doing.

 

I have given your new rules a go and cannot see the difference yet, well I am still missing the really steep mountains, maybe I could make an additional rule for those to pop up sometime, just not so familiar yet to know what each setting actually affects.

 

At Test2 Seed I found at least one spot 1600 N 2720 E where the mountain has reached the generation maximum height (the Snow Mesas I talked about earlier). Previous alphas had these as well, probably could be reduced by lowering the total mountain height slightly, but again no idea which setting to tune as of yet. Any suggestions are welcome, but I will probably try some settings when I continue on this later.

 

Water seems much better than in vanilla worlds tho, even for a water heavy seed that is Test2, so thats why I kept using it, if that seeds makes good world then a seed that normally has less water will be even more dry hehe. All I need now is a better way to control the contents of the rural small towns and I am set for now.

Link to comment
Share on other sites

Yeah this is just a test seed to see the effect of the actual terrain edits I am doing.

 

I have given your new rules a go and cannot see the difference yet, well I am still missing the really steep mountains, maybe I could make an additional rule for those to pop up sometime, just not so familiar yet to know what each setting actually affects.

 

At Test2 Seed I found at least one spot 1600 N 2720 E where the mountain has reached the generation maximum height (the Snow Mesas I talked about earlier). Previous alphas had these as well, probably could be reduced by lowering the total mountain height slightly, but again no idea which setting to tune as of yet. Any suggestions are welcome, but I will probably try some settings when I continue on this later.

 

Water seems much better than in vanilla worlds tho, even for a water heavy seed that is Test2, so thats why I kept using it, if that seeds makes good world then a seed that normally has less water will be even more dry hehe. All I need now is a better way to control the contents of the rural small towns and I am set for now.

 

Ohh! sorry, I just pasted those settings so you could use them for the selector switches (it was just easier for me to paste the whole thing). The settings I have are for still a more smoother world I am currently working on *But* You could use those selectors to effectively take the vanilla settings *and* use those with the new selectors and you would cut the amount of mountains generating in half and lessen the ocean appearing a bit from the default settings. I can whip those up if you like also.

 

Major Edit: The snow mesa you can get rid of, or add, by adjusting the height level at which the snow biomes appear. just go up a few post and I have a working biome generation with both height and random factors working together. <- do not follow this.

 

Sorry fighting a major headache all day and finding it hard to concentrate...

 

Follow this --> You would need to adjust the clamp range if you don't want the flat tops for the snow...

 

<module name="clampOutput" type="ClampOutput">
			<property name="sourceModule" value="scaleBiasOutput"/>
			<property name="bounds" value="-28,190"/>
		</module>

 

The value="-28,190" adjust the 190 higher 200 - 255 (think 255 is max height ?!)

*important* 'May' affect the performance since you are allowing the world to generate more objects and whatnot.

 

Sorry about the edit.. head hurts and all. :peace:

Link to comment
Share on other sites

Head hurts, yeah I know about those :( Hope it gets better for you.

 

I will give it a go then, not sure how to use the selectors tho, I added your code all in so should be in there, but not sure what value to change to have them (or does the rwgmixer itself randomly select from them?).

 

I doubt that if the mountains go a bit higher will add a lot, seemed to only occur on a few spots (I had it much bigger when I did some changes to it earlier)

 

I will play around with it a bit and see if I can mold it into what I find suitable, although this already is a massive improvement over vanilla so certainly appreaciated:)

 

Edit: I have made two new modules for mountains based on vanilla and added them in, made a FastlandC and a FinalC and a Total as last one to call upon yours and the FinalC which is the vanilla mountains with same oceans and land. Will see what results are now :) <Judging by the NRE flood it didnt work.. well back to drawing board >

 

Edit2: Typical, I thought probably not possible to add in extra source modules so went the way around it, but seems its possible and now generated a world :)

 

Edit3: Also I tried increasing the bounds from 190 to 220 and then I seemed to kill the Chunkgenerator when I teleported to the mesa to check it, and when I went back to 190 it was ok again. Seems there may be some hard limit here as well. Might try a bit beyond 190, but probably will end up crashing.

Link to comment
Share on other sites

Head hurts, yeah I know about those :( Hope it gets better for you.

 

I will give it a go then, not sure how to use the selectors tho, I added your code all in so should be in there, but not sure what value to change to have them (or does the rwgmixer itself randomly select from them?).

 

I doubt that if the mountains go a bit higher will add a lot, seemed to only occur on a few spots (I had it much bigger when I did some changes to it earlier)

 

I will play around with it a bit and see if I can mold it into what I find suitable, although this already is a massive improvement over vanilla so certainly appreaciated:)

 

Edit: I have made two new modules for mountains based on vanilla and added them in, made a FastlandC and a FinalC and a Total as last one to call upon yours and the FinalC which is the vanilla mountains with same oceans and land. Will see what results are now :) <Judging by the NRE flood it didnt work.. well back to drawing board >

 

Edit2: Typical, I thought probably not possible to add in extra source modules so went the way around it, but seems its possible and now generated a world :)

 

Woot! Good to read! Yeah, you can add as many modules as you want. The selectors are kinda (based on how it is reacting) doing a coin toss "heads or tails" kinda thing, when deciding what to use. So every time (kinda like a coin toss) it will pick ex: ocean(heads) or land(tails). When it picks land(tails), it flips another coin (flips the coin) lowland(heads)or mountains(tails). Add enough selectors and you can make it pick thing's less often. Being random(ish) though it can pick the same thing over and over if you get unlucky.. so to speak.

*This is just how it seems to be working, I could be wrong, but it seems to hold true*

 

and ty for the concern about my headache :)

Link to comment
Share on other sites

This seems to be perfect now (or close to it at least as I still need to work on prefabs/hubs/rurals/deco), but the world looks amazing as it is, somehow the addition of the vanilla rules for mountains into the mix seem to have done away with the mesas (or at least I could not find any). Drove around for a while until I ran out of gas, just driving around in the world feels good already and seems stable too, no errors or anything, only small hiccups when nearing zombie spawns sometimes (as I have enabled UMA zombies in my mod).

 

I might try and add in a bit more water now, see how that might look, water should be scarce and huge bodies of water everywhere make it to easy. I probably will have to up chances for ponds hehe.

 

Yeah was kind of thinking the selectors where something like that, similar to how other stuff in xmls work, but no way to set probability (yet). Would be nice to be able to make Crater maker module that occassionally makes a hole (and thus a lake) in the world.

 

Anyway, thanks for the assistance, I will let you know if I discover anything helpfull :)

Link to comment
Share on other sites

This seems to be perfect now (or close to it at least as I still need to work on prefabs/hubs/rurals/deco), but the world looks amazing as it is, somehow the addition of the vanilla rules for mountains into the mix seem to have done away with the mesas (or at least I could not find any). Drove around for a while until I ran out of gas, just driving around in the world feels good already and seems stable too, no errors or anything, only small hiccups when nearing zombie spawns sometimes (as I have enabled UMA zombies in my mod).

 

I might try and add in a bit more water now, see how that might look, water should be scarce and huge bodies of water everywhere make it to easy. I probably will have to up chances for ponds hehe.

 

Yeah was kind of thinking the selectors where something like that, similar to how other stuff in xmls work, but no way to set probability (yet). Would be nice to be able to make Crater maker module that occassionally makes a hole (and thus a lake) in the world.

 

Anyway, thanks for the assistance, I will let you know if I discover anything helpfull :)

 

Cool! And yeah would appreciate any nooks and crannies you can throw my way :)

Link to comment
Share on other sites

I have been testing and tweaking a bit and finally found the reason why it seems we get these topped of mountains (snow mesas).

 

First I found some odd seeds that always had huge snow areas and when loaded I always found large areas topped off in them. So I loaded vanilla for that seed and almost exactly the same result. Initially I thought then it must be something in the code that makes these bad seeds.

 

But today I got to tweaking, trying some values and changing them with more extreme input, again verified that bound 190 is about the maximum for a map and it seems that around 162-164 is the actual maximum height for a map.

 

But when I tweaked the scaleBiasOutput value down to 100 from 180, suddenly all mountains where gone. I think this value inflates all results from the world generator and it seems at around 145 it gives amazing results. The mountains no longer top off, their peaks only places that reach 160+ levels. I had to reduce snow and pine downwards to componsate and not lose snow caps. Maybe this will help you Tin (and others that read this thread)

 

			<module name="scaleBiasOutput" type="ScaleBiasOutput">
			<property name="sourceModule" value="Final"/>
			<property name="scale" value="145"/>
			<property name="bias" value="-1"/>
		</module>

Link to comment
Share on other sites

I have been testing and tweaking a bit and finally found the reason why it seems we get these topped of mountains (snow mesas).

 

First I found some odd seeds that always had huge snow areas and when loaded I always found large areas topped off in them. So I loaded vanilla for that seed and almost exactly the same result. Initially I thought then it must be something in the code that makes these bad seeds.

 

But today I got to tweaking, trying some values and changing them with more extreme input, again verified that bound 190 is about the maximum for a map and it seems that around 162-164 is the actual maximum height for a map.

 

But when I tweaked the scaleBiasOutput value down to 100 from 180, suddenly all mountains where gone. I think this value inflates all results from the world generator and it seems at around 145 it gives amazing results. The mountains no longer top off, their peaks only places that reach 160+ levels. I had to reduce snow and pine downwards to componsate and not lose snow caps. Maybe this will help you Tin (and others that read this thread)

 

			<module name="scaleBiasOutput" type="ScaleBiasOutput">
			<property name="sourceModule" value="Final"/>
			<property name="scale" value="145"/>
			<property name="bias" value="-1"/>
		</module>

 

I'll start messing around with it TY, I haven't gotten that far yet :)

I am trying to do it as systematically as I can with the time I have, so I can thoroughly understand every area I can.

Link to comment
Share on other sites

I'll start messing around with it TY, I haven't gotten that far yet :)

I am trying to do it as systematically as I can with the time I have, so I can thoroughly understand every area I can.

 

It has been bugging me so I wanted to see what the cause was, lucky it was something we can change around :)

 

I also messed around with the layering of biomes, not that simple and was hoping to be able to force a certain biome height replacement over a limited area (like having a unique layer of height biome set that only applied in the first 1000 of the map) but sadly when combining these two it still replaces biomes all over the map.

 

But I have it now where I think is a nice setup, I have repurposed the city biome for a grasland biome, setup grassland as the 0-40 biome, forest 40-100 pine and everything higher is snow. I repurposed the city_wasteland as central biome and wasteland_hub as outer ring, so I can vary their layout/spawns. But for the correct division of biomes and to get some dithering I had to arrange it differently.

 

This is my setup now, basiscally the first rules are waste since they all get replaced by height based biomes. First the two greenlands, then biomes that I want to appear in the world mostly intact. Then come the replacements of the mountains, then the water, and finally the rules for central wasteland and the wasteland/radiated outer ring. I made biomes a bit smaller so the patches of biome that are made to overlap the greenlands are not to big. So far it seems like a decent and as realistic as possible. Since it feels off it plains are in the mix of height. I probably will turn plains into a form of light desert and the grasslands will fill more of the role of sparsely decorated grass.

 

	
<biome_spawn_rules>

        <biome_spawn_rule name="forest">
		<biome_generator range="0,0.1"/> 	
	</biome_spawn_rule>

	<biome_spawn_rule name="forest">
		<biome_generator range="0.2,0.35"/>
	</biome_spawn_rule>

	<biome_spawn_rule name="forest">
		<biome_generator range="0.55,0.7"/>
	</biome_spawn_rule>

	<biome_spawn_rule name="wasteland">
		<biome_generator range="0.7,0.8"/>
	</biome_spawn_rule>

	<biome_spawn_rule name="forest">
		<biome_generator range="0.8,0.95"/> 
	</biome_spawn_rule>

	<!-- Lowlands -->

	<biome_spawn_rule name="forest">
		<terrain_generator range="40,100"/> 
	</biome_spawn_rule>

	<biome_spawn_rule name="city">
		<terrain_generator range="0,40"/> 
	</biome_spawn_rule>

	<!-- Final Biomes -->

	<biome_spawn_rule name="burnt_forest">	
		<biome_generator range="0.1,0.15"/> 
	</biome_spawn_rule>

	<biome_spawn_rule name="plains">
		<biome_generator range="0.15,0.2"/>
	</biome_spawn_rule>

	<biome_spawn_rule name="desert">
		<biome_generator range="0.35,0.4"/>
	</biome_spawn_rule>

	<biome_spawn_rule name="plains">
		<biome_generator range="0.4,0.5"/>
	</biome_spawn_rule>

	<biome_spawn_rule name="wasteland">
		<biome_generator range="0.5,0.55"/>
	</biome_spawn_rule>

	<biome_spawn_rule name="desert">
		<biome_generator range="0.95,1"/> 
	</biome_spawn_rule>

	<!-- Mountains -->

	<biome_spawn_rule name="snow">
		<terrain_generator range="135,255"/>
	</biome_spawn_rule>

	<biome_spawn_rule name="pine_forest">
		<terrain_generator range="100,135"/> 
	</biome_spawn_rule>

	<!-- Water -->

	<biome_spawn_rule name="water">
		<terrain_generator range="-31,0"/>
	</biome_spawn_rule>

	<!-- Center Wasteland -->

	<biome_spawn_rule name="city_wasteland">
		<distance_from_center range="0,1250"/> 
	</biome_spawn_rule>

	<!--  Radiated and Wasteland barriers -->

	<biome_spawn_rule name="wasteland_hub">
		<distance_from_center range="12000,12500"/> 
	</biome_spawn_rule>

	<biome_spawn_rule name="radiated">
		<distance_from_center range="12500,20000"/> 
	</biome_spawn_rule>

</biome_spawn_rules>

Link to comment
Share on other sites

It has been bugging me so I wanted to see what the cause was, lucky it was something we can change around :)

 

I also messed around with the layering of biomes, not that simple and was hoping to be able to force a certain biome height replacement over a limited area (like having a unique layer of height biome set that only applied in the first 1000 of the map) but sadly when combining these two it still replaces biomes all over the map.

 

But I have it now where I think is a nice setup, I have repurposed the city biome for a grasland biome, setup grassland as the 0-40 biome, forest 40-100 pine and everything higher is snow. I repurposed the city_wasteland as central biome and wasteland_hub as outer ring, so I can vary their layout/spawns. But for the correct division of biomes and to get some dithering I had to arrange it differently.

 

This is my setup now, basiscally the first rules are waste since they all get replaced by height based biomes. First the two greenlands, then biomes that I want to appear in the world mostly intact. Then come the replacements of the mountains, then the water, and finally the rules for central wasteland and the wasteland/radiated outer ring. I made biomes a bit smaller so the patches of biome that are made to overlap the greenlands are not to big. So far it seems like a decent and as realistic as possible. Since it feels off it plains are in the mix of height. I probably will turn plains into a form of light desert and the grasslands will fill more of the role of sparsely decorated grass.

 

	
<biome_spawn_rules>

        <biome_spawn_rule name="forest">
		<biome_generator range="0,0.1"/> 	
	</biome_spawn_rule>

	<biome_spawn_rule name="forest">
		<biome_generator range="0.2,0.35"/>
	</biome_spawn_rule>

	<biome_spawn_rule name="forest">
		<biome_generator range="0.55,0.7"/>
	</biome_spawn_rule>

	<biome_spawn_rule name="wasteland">
		<biome_generator range="0.7,0.8"/>
	</biome_spawn_rule>

	<biome_spawn_rule name="forest">
		<biome_generator range="0.8,0.95"/> 
	</biome_spawn_rule>

	<!-- Lowlands -->

	<biome_spawn_rule name="forest">
		<terrain_generator range="40,100"/> 
	</biome_spawn_rule>

	<biome_spawn_rule name="city">
		<terrain_generator range="0,40"/> 
	</biome_spawn_rule>

	<!-- Final Biomes -->

	<biome_spawn_rule name="burnt_forest">	
		<biome_generator range="0.1,0.15"/> 
	</biome_spawn_rule>

	<biome_spawn_rule name="plains">
		<biome_generator range="0.15,0.2"/>
	</biome_spawn_rule>

	<biome_spawn_rule name="desert">
		<biome_generator range="0.35,0.4"/>
	</biome_spawn_rule>

	<biome_spawn_rule name="plains">
		<biome_generator range="0.4,0.5"/>
	</biome_spawn_rule>

	<biome_spawn_rule name="wasteland">
		<biome_generator range="0.5,0.55"/>
	</biome_spawn_rule>

	<biome_spawn_rule name="desert">
		<biome_generator range="0.95,1"/> 
	</biome_spawn_rule>

	<!-- Mountains -->

	<biome_spawn_rule name="snow">
		<terrain_generator range="135,255"/>
	</biome_spawn_rule>

	<biome_spawn_rule name="pine_forest">
		<terrain_generator range="100,135"/> 
	</biome_spawn_rule>

	<!-- Water -->

	<biome_spawn_rule name="water">
		<terrain_generator range="-31,0"/>
	</biome_spawn_rule>

	<!-- Center Wasteland -->

	<biome_spawn_rule name="city_wasteland">
		<distance_from_center range="0,1250"/> 
	</biome_spawn_rule>

	<!--  Radiated and Wasteland barriers -->

	<biome_spawn_rule name="wasteland_hub">
		<distance_from_center range="12000,12500"/> 
	</biome_spawn_rule>

	<biome_spawn_rule name="radiated">
		<distance_from_center range="12500,20000"/> 
	</biome_spawn_rule>

</biome_spawn_rules>

 

Put all your <terrain_generators> at the bottom of the list. Then your <distance_from_center Range="">. Finally your <biome_generator range"">

 

Top to Bottom of your biomes list

 

<biome_generator range""> <- will override everything, so needs to be at the top.

<distance_from_center Range="">

<terrain_generators range="">

 

So that way you can have certain biomes generate at certain height levels.

 

IDK about the "city", "city wasteland" or the "wasteland hub" if that will work, the rest will, but should be a cool experiment.

let me know if it does :)

Link to comment
Share on other sites

I arranged it this way to get the desired effect, but what I wanted is not possible in fully, mostly because I ran out of Biomes to use. For example I made the plains, desert, burned and wasteland range ones come after I had the world apply the forest biomes over the world. The range ones that I let come first are basically void, they are 100% overwritten, but I read that they need to be 0 - 1, so thats why they are there, they are filler. If I want less of the biomes I actually allow to spawn, I can move more of the range to there.

 

I wanted to created specific wasteland height biomes, so a pine or snow biome formed in the central wasteland would be different from those generated in rest of the world. But if you have two of the same range its always the last in list that applies to the whole world, even if you had set that one to only apply within a range.

 

And yes they work, all biomes spawn correctly, Only ones I am still looking at to use are the cave ones, but I am pretty sure caves currently will still need them, so would have to remove caves from world if I did that. I might use them as transition biomes between snow/pine and pine/forest. Will make the world look even better I think, but at expense of caves.

Link to comment
Share on other sites

I arranged it this way to get the desired effect, but what I wanted is not possible in fully, mostly because I ran out of Biomes to use. For example I made the plains, desert, burned and wasteland range ones come after I had the world apply the forest biomes over the world. The range ones that I let come first are basically void, they are 100% overwritten, but I read that they need to be 0 - 1, so thats why they are there, they are filler. If I want less of the biomes I actually allow to spawn, I can move more of the range to there.

 

I wanted to created specific wasteland height biomes, so a pine or snow biome formed in the central wasteland would be different from those generated in rest of the world. But if you have two of the same range its always the last in list that applies to the whole world, even if you had set that one to only apply within a range.

 

And yes they work, all biomes spawn correctly, Only ones I am still looking at to use are the cave ones, but I am pretty sure caves currently will still need them, so would have to remove caves from world if I did that. I might use them as transition biomes between snow/pine and pine/forest. Will make the world look even better I think, but at expense of caves.

 

I gotcha, well cool! I am Learning something new everyday :) I'll hafta mess with that soon.

Link to comment
Share on other sites

That indeed looks nice, but it seems very seed dependant how water actually looks, although probably with the right tweaks might just be the same as the mountain thing. So far I have seen not as much water as I would like, but the lakes I find always look nice.

 

When I changed this value up to 1.6 my world literally transformed from a nice sloping highland worlds to something more like a a primal paradise world, with lots of honestly real looking mountains and valleys.

			
                               <module name="fastOceanBase" type="FastNoise">
			<property name="frequency" value="1.6"/>
		</module>

 

Here are some screenshots of the results, I think this would make nice, but potentially hard worlds as my current setup of smaller cells with many POIs seems to fail spawning roads and POIs in here :)

 

20161029114913_1.jpg.cbd985e857db66141aab84824fb63178.jpg

 

20161029114558_1.thumb.jpg.d8c1d7d720c4a6e5fea6c93b8670cecb.jpg

 

20161029114737_1.thumb.jpg.1b74e0b20fcf25d4df99f518385027b0.jpg

Link to comment
Share on other sites

That indeed looks nice, but it seems very seed dependant how water actually looks, although probably with the right tweaks might just be the same as the mountain thing. So far I have seen not as much water as I would like, but the lakes I find always look nice.

 

When I changed this value up to 1.6 my world literally transformed from a nice sloping highland worlds to something more like a a primal paradise world, with lots of honestly real looking mountains and valleys.

			
                               <module name="fastOceanBase" type="FastNoise">
			<property name="frequency" value="1.6"/>
		</module>

 

Here are some screenshots of the results, I think this would make nice, but potentially hard worlds as my current setup of smaller cells with many POIs seems to fail spawning roads and POIs in here :)

 

[ATTACH=CONFIG]17837[/ATTACH]

 

[ATTACH=CONFIG]17838[/ATTACH]

 

[ATTACH=CONFIG]17839[/ATTACH]

 

Pic's look nice! A little too much Mountains for my tastes but it looks pretty!

 

It is seed dependent but I am thinking of just dropping the "seed additive" or moving it or making it have less of a change. I have been using a new setup now that I get to make my own world :)

 

Messing with the settings adding/subtracting modules is fun so I don't know If I really need to have it random when I can just have fun whipping up a new world later (If I get bored with what I end up with). :playful:

Link to comment
Share on other sites

I made this, using your example of controls, it just randomizes (seems to work so far) the ocean impact to the slow hills to the much more mountainous looks like in the first pictures.

 

			<module name="fastOceanBaseA" type="FastNoise">
			<property name="frequency" value="1.2"/>
		</module>

		<module name="fastOceanBaseB" type="FastNoise">
			<property name="frequency" value="0.9"/>
		</module>

		<module name="fastOceanBaseC" type="FastNoise">
			<property name="frequency" value="0.6"/>
		</module>

		<module name="fastOceanScaledA" type="ScaleBiasOutput">
			<property name="sourceModule" value="fastOceanBaseA"/>
			<property name="scale" value="0.7"/>
			<property name="bias" value="0.6"/>
		</module>

		<module name="fastOceanScaledB" type="ScaleBiasOutput">
			<property name="sourceModule" value="fastOceanBaseB"/>
			<property name="scale" value="0.65"/>
			<property name="bias" value="0.6"/>
		</module>

		<module name="fastOceanScaledC" type="ScaleBiasOutput">
			<property name="sourceModule" value="fastOceanBaseC"/>
			<property name="scale" value="0.6"/>
			<property name="bias" value="0.6"/>
		</module>

		<module name="fastOceanA" type="ScaleOutput">
			<property name="sourceModule" value="fastOceanScaledA"/>
			<property name="power" value="1"/>
			<property name="frequency" value="0.170"/>  <!-- raise to add water *A little goes a long way* -->
			<property name="roughness" value="5"/>
		</module>

		<module name="fastOceanB" type="ScaleOutput">
			<property name="sourceModule" value="fastOceanScaledB"/>
			<property name="power" value="1"/>
			<property name="frequency" value="0.150"/>  <!-- raise to add water *A little goes a long way* -->
			<property name="roughness" value="5"/>
		</module>

		<module name="fastOceanC" type="ScaleOutput">
			<property name="sourceModule" value="fastOceanScaledC"/>
			<property name="power" value="1"/>
			<property name="frequency" value="0.130"/>  <!-- raise to add water *A little goes a long way* -->
			<property name="roughness" value="5"/>
		</module>

		<module name="fastOcean" type="Select">
			<property name="controlModule" value="fastLandFilter"/>
			<property name="sourceModule1" value="fastOceanA"/>
			<property name="sourceModule2" value="fastOceanB"/>
			<property name="sourceModule3" value="fastOceanC"/>
			<property name="bounds" value="0, 1"/>
			<property name="edgeFalloff" value="0.5"/>
		</module>

 

Yeah tuning around and watching the result is very satisfying to do, almost like a hiking simulator now where you try something and then spend a lot of time going around (or driving) looking at the result.

 

Probably soon will keep it as it is and start really working on the biome.xml to go with the settings I have. Still thinking about sacrificing caves to get that transition biome for Pine/Snow. It looks so cutoff now as dithering does not seem to apply to the height based biomes.

Link to comment
Share on other sites

I made this, using your example of controls, it just randomizes (seems to work so far) the ocean impact to the slow hills to the much more mountainous looks like in the first pictures.

 

			<module name="fastOceanBaseA" type="FastNoise">
			<property name="frequency" value="1.2"/>
		</module>

		<module name="fastOceanBaseB" type="FastNoise">
			<property name="frequency" value="0.9"/>
		</module>

		<module name="fastOceanBaseC" type="FastNoise">
			<property name="frequency" value="0.6"/>
		</module>

		<module name="fastOceanScaledA" type="ScaleBiasOutput">
			<property name="sourceModule" value="fastOceanBaseA"/>
			<property name="scale" value="0.7"/>
			<property name="bias" value="0.6"/>
		</module>

		<module name="fastOceanScaledB" type="ScaleBiasOutput">
			<property name="sourceModule" value="fastOceanBaseB"/>
			<property name="scale" value="0.65"/>
			<property name="bias" value="0.6"/>
		</module>

		<module name="fastOceanScaledC" type="ScaleBiasOutput">
			<property name="sourceModule" value="fastOceanBaseC"/>
			<property name="scale" value="0.6"/>
			<property name="bias" value="0.6"/>
		</module>

		<module name="fastOceanA" type="ScaleOutput">
			<property name="sourceModule" value="fastOceanScaledA"/>
			<property name="power" value="1"/>
			<property name="frequency" value="0.170"/>  <!-- raise to add water *A little goes a long way* -->
			<property name="roughness" value="5"/>
		</module>

		<module name="fastOceanB" type="ScaleOutput">
			<property name="sourceModule" value="fastOceanScaledB"/>
			<property name="power" value="1"/>
			<property name="frequency" value="0.150"/>  <!-- raise to add water *A little goes a long way* -->
			<property name="roughness" value="5"/>
		</module>

		<module name="fastOceanC" type="ScaleOutput">
			<property name="sourceModule" value="fastOceanScaledC"/>
			<property name="power" value="1"/>
			<property name="frequency" value="0.130"/>  <!-- raise to add water *A little goes a long way* -->
			<property name="roughness" value="5"/>
		</module>

		<module name="fastOcean" type="Select">
			<property name="controlModule" value="fastLandFilter"/>
			<property name="sourceModule1" value="fastOceanA"/>
			<property name="sourceModule2" value="fastOceanB"/>
			<property name="sourceModule3" value="fastOceanC"/>
			<property name="bounds" value="0, 1"/>
			<property name="edgeFalloff" value="0.5"/>
		</module>

 

Yeah tuning around and watching the result is very satisfying to do, almost like a hiking simulator now where you try something and then spend a lot of time going around (or driving) looking at the result.

 

Probably soon will keep it as it is and start really working on the biome.xml to go with the settings I have. Still thinking about sacrificing caves to get that transition biome for Pine/Snow. It looks so cutoff now as dithering does not seem to apply to the height based biomes.

 

I would. You just need to add the mushrooms back in somewhere. I redid my water biome to be Dark, Dank and marsh like, to have mushrooms grow above ground. Would like too see a few pics of the final product once you get it ready:)

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...