Jump to content

RGMIXER.XML Edits


DurtySonuva

Recommended Posts

default is still way to mountain filled.. seems like its all mountains with all the towns being in valleys

 

I've tried some different terrain generators and the more rough the terrain in general (minus mountains) the less hub and hub sizes get produced in the world. The flatter and smoother the terrain produces slightly bigger hubs and more hubs in general (pending on the mountains location).

 

It's going to be a case of finding the happy medium between just enough terrain roughness and smoothness for the flat areas. Mountains can still be set to be rugged but at a cost of in game terrain generation being slowed down some. I am (on and off again) working on a new terrain gen that drastically reduces the water and the amount of mountains. Might take a bit with not having enough time to devote to it fully.

Link to comment
Share on other sites

So you are sitting building a new world and the load times are getting you down?

 

Do this to speed up the process while testing your generators:

 

<hub_rule name="Test">
<hub_type value="city"/>
<width value="100, 100" />
<height value="100, 100" />
<path_material value="asphalt" /> 
<path_radius value="10" />


<prefab_rule name="default"/>

<street_gen level="1" length_multiplier="4">  <!-- Best results so far --> 
	<axiom value="[F+F+F+F]"/>
	<rule char="T" replace_with="F"/>

	<alt_commands chars="T"/>
</street_gen>
</hub_rule>

 

Then add the above to the cellrules and comment the rest out or just have the "Test" hub in the cell rules.

 

<cell_rule name="default">
<cave_count value="1,3"/>
<path_material value="asphalt" /> 
<path_radius value="10" />

<hub_rule name="Test" prob="1"/>
<wilderness_rule name="wildernessDefault"/>
</cell_rule>

 

Have fun building and testing your world generators quicker :)

Link to comment
Share on other sites

Kinda at a stand still on developing new terrain generators till they figure out the issues they're currently having with it. I know they have been tweaking the internal code to the generator itself, so until they get to the point were they no longer need to tweak the code it's kinda a hit or miss deal to even try developing new ones since one little tweak on their part can/will change what you have done.

 

So, I am waiting till then :)

 

Edit: Oh! one thing I can do is have you try the seed "Plague" it has a pretty good distribution of hubs, flat lands, mountains n such. It does have water but what can ya do for now :)

Link to comment
Share on other sites

  • 1 month later...
  • 2 months later...

Since most of this thread is old alpha, i would like to hear if anyone has come up with a way to lower the mountains in Alpha 16.3 rwgmixer and is there a way to control how much water will be on the map ??

 

And it would be nice with an answer for dummies ;-)

Link to comment
Share on other sites

Since most of this thread is old alpha, i would like to hear if anyone has come up with a way to lower the mountains in Alpha 16.3 rwgmixer and is there a way to control how much water will be on the map ??

 

And it would be nice with an answer for dummies ;-)

Most of info here is really useful even now, but really long to read through so......

 

Shortly,

How to lower mountains:

Search scaleBiasOutput (case sensitive), and adjust scale value with lower value

			<module name="scaleBiasOutput" type="ScaleBiasOutput">
			<property name="sourceModule" value="finalLand"/>
			<property name="scale" value="[color="#FF8C00"]182[/color]"/> [color="#0000FF"]<!-- adjust this with such as 160, 140 -->[/color]
		</module>

 

How to control the size of water area:

Search fastWaterFilter and adjust the frequency value, which affect how frequently it generates rivers.

LOWER frequency generates LESS rivers, HIGHER frequency generates MORE rivers.

			<module name="fastWaterFilter" type="FastRidgedMultifractal" seed_additive="3">
			<property name="frequency" value="[color="#FF8C00"]0.05[/color]"/>
		</module>

 

NOTE: this will make rivers slightly narrower/ wider as a side effect.

Link to comment
Share on other sites

How do i have less plants in the desert? Less chance of wasteland to spawn?

 

biome.xml has all the decorations in them.

Search for:

<biome name="desert" biomemapcolor="#FFE477">

 

Then search for the decorations segments:

<decorations>

<decoration type="prefab" name="tinPlainsRockSm01" prob="0.017" rotatemax="4"/>
<decoration type="prefab" name="tinPlainsRockSm02" prob="0.017" rotatemax="4"/>
<decoration type="prefab" name="tinPlainsRockSm03" prob="0.017" rotatemax="4"/>
<decoration type="prefab" name="tinPlainsRockSm04" prob="0.017" rotatemax="4"/>
<decoration type="prefab" name="resource_coal_pile" prob="0.0007" rotatemax="4"/>
<decoration type="prefab" name="resource_nitrate_pile" prob="0.0007" rotatemax="4"/>
<decoration type="prefab" name="resource_lead_pile" prob="0.0007" rotatemax="4"/>
<decoration type="block" blockname="treeDesertShrub" prob="0.03" rotatemax="4"/>
<decoration type="block" blockname="treeCactus01" prob="0.003" rotatemax="4"/>
<decoration type="block" blockname="treeCactus02" prob="0.03" rotatemax="4"/>
<decoration type="block" blockname="treeCactus03" prob="0.03" rotatemax="4"/>
<decoration type="block" blockname="treeCactus04" prob="0.03" rotatemax="4"/>
<decoration type="block" blockname="treeCactus05" prob="0.03" rotatemax="4"/>
<decoration type="block" blockname="treeCactus06" prob="0.03" rotatemax="4"/>
<decoration type="block" blockname="cntBirdnest" prob="0.0015" rotatemax="4"/>
<decoration type="block" blockname="randomCarsHelper" prob="0.0035" rotatemax="4"/>
<decoration type="block" blockname="lootDesertHelper" prob="0.001" rotatemax="4"/>
<decoration type="block" blockname="treeBrownGrassDiagonal" prob="0.025" rotatemax="4"/>

</decorations>

 

Lower the prob="" values to lighten the amount of decorations.

I personally use the half rule. so like if a prob="0.003" is on a particular decoration I want lessened I will make it "0.0015" then load a test seed and view that biome in game. If that is too little then half it up so 1/2 of "0.0015" = "0.00075" + "0.0015" = "0.00225" (rinse/repeat)

 

So you have a biomes list in the rwgmixer.xml:

 

<biome_spawn_rules>
<biome_spawn_rule name="pine_forest">
	<biome_generator range="0,0.1"/>
	<terrain_generator range="150,175"/>
</biome_spawn_rule>

<biome_spawn_rule name="desert">
	<biome_generator range="0.1,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.6"/>
</biome_spawn_rule>

<biome_spawn_rule name="snow">
        <biome_generator range="0.6,0.7"/>
	<terrain_generator range="176,255"/>
</biome_spawn_rule>

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

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

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

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

</biome_spawn_rules>

 

Note the <biome_generator range="0.8,1"/> lines in just about all the biomes. These are what you would want to change the range of.

 

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

 

so the wasteland biome has a range of 0.7 to 0.8 which is a difference of 0.1. The difference is key to keep in mind because if you take the difference of each biome and add them all together it = "1"

 

pine = 0.1

desert = 0.2

burnt = 0.1

forest = 0.2

snow = 0.1

waste = 0.1

plains = 0.2

 

added all together = "1" this is needed that it = "1" (for other reasons not being described).

 

so if you wanted less wasteland:

 

lets say...

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

this would have a difference of "0.05"

you would need to make up "0.05" somewhere else in another biome or multiple biomes so overall everything still = "1" in the end.

 

so lets add that 0.05 to another biome like the "plains" biome so it would need to read:

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

 

so now we get:

pine = 0.1

desert = 0.2

burnt = 0.1

forest = 0.2

snow = 0.1

waste = 0.05

plains = 0.25

everything added together still= "1"

You just made the wasteland biome less likely to spawn.

 

Also keep in mind the ranges need to be in sequence.

so if:

pineforest is "0,0.1"

desert is "0.1, 0.2" they are still in sequence. 0 to 0.1 then 0.1 to 0.2

you don't want your number ranges to overlap or be missing like:

over lap: 0 to 0.2 then have the next biome be 0.1 to 0.3

or missing like:

 

Pine "0, 0.2"

and the next biome be "0.25,0.5" between the 2 biomes you're missing "0.05"

 

you also don't need to use all the biomes either.

you can have maybe 3 biomes if you want:

<biome_spawn_rules>


<biome_spawn_rule name="desert">
	<biome_generator range="0.1,0.3"/>
</biome_spawn_rule>

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

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

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

</biome_spawn_rules>

 

note: radiation biome needs to be integrated in the list if you want to keep the map size vanilla.

 

best I can explain it, hope it makes sense..

Link to comment
Share on other sites

Just want to add this thread is still relevant for A16 and those wanting to get some answers to certain things and will still be relevant in A17 most likely as well. Still using the same stuff for terrain generation its just a bit more refined now.

Link to comment
Share on other sites

@Tin Wow..., this is GUIDE/TUT rather than answer for question. =P

 

- - - Updated - - -

 

Just want to add this thread is still relevant for A16 and those wanting to get some answers to certain things and will still be relevant in A17 most likely as well. Still using the same stuff for terrain generation its just a bit more refined now.

 

Yep, terrain generation system itself is almost same.

What have changed significantly is only xml code. :)

Link to comment
Share on other sites

  • 1 month later...
Is there currently a way to make waterless worlds? Read a lot of this string but it seems like applies mostly to older alphas.

OR

is there a way to make water static in a current world and not flow at all?

 

Mmm the stuff in these post even though they are from older alphas are still applicable as only minor refinement things have been done since the terrain gen came out. So still very useful information floating in this thread.

Yes, its very possible for the terrain gen to not produce any water.

https://7daystodie.com/forums/showthread.php?67996-A16-(stable)-rwgmixer-re-done-top-to-bottom!-(refined)&p=692493&viewfull=1#post692493http://

These terrain generators, in the link provided (all3 terrain generator in the rwgmixer.xml *please read the coments in the file*), do not produce any water but rely on water poi's to give the player any water.

Feel free to use any of these as a template/starting point if you want to mold the world more to your liking.

 

I personally haven't tried to alter the water block in the blocks.xml to not flow so I can't help you with that.. srry.

 

edit: I should explain in what I mean minor refinements. Minor in the aspect of putting together a module. Quite a bit of work has actually been done, in regards to the developer, adding some extra stuff and making the generator itself work better and easier to use.

Link to comment
Share on other sites

Mmm the stuff in these post even though they are from older alphas are still applicable as only minor refinement things have been done since the terrain gen came out. So still very useful information floating in this thread.

Yes, its very possible for the terrain gen to not produce any water.

https://7daystodie.com/forums/showthread.php?67996-A16-(stable)-rwgmixer-re-done-top-to-bottom!-(refined)&p=692493&viewfull=1#post692493http://

These terrain generators, in the link provided (all3 terrain generator in the rwgmixer.xml *please read the coments in the file*), do not produce any water but rely on water poi's to give the player any water.

Feel free to use any of these as a template/starting point if you want to mold the world more to your liking.

 

I personally haven't tried to alter the water block in the blocks.xml to not flow so I can't help you with that.. srry.

 

edit: I should explain in what I mean minor refinements. Minor in the aspect of putting together a module. Quite a bit of work has actually been done, in regards to the developer, adding some extra stuff and making the generator itself work better and easier to use.

 

I figured out what i needed to do. THnx for the response :)

Link to comment
Share on other sites

  • 2 months later...
  • 1 month later...

Yesterday, I released my new terrain-gen mod : Biome Based

This is WIP. Transition nearby biome edge is abrupt. But I think the method worth sharing.

 

(Not sure in-coming feature: biome_intensity replace this method)

The secret of feedback biome into terrain is seed_additive and ScaleInput.

First, start with seed_additive. Module with same seed_additive, type and property always outputs completely same thing. Its name change NOTHING. So, if you copy paste biome_generator modules into terrain_generator, you get same output with biome_generator.

Excepting it is stretched 512 times to X/Z axis in terrain_generator, compared with the one in biome_generator.

 

Second, ScaleInput, this shrink/stretch sourceModule to X/Y/Z axis. Y is not elevation. We need to stretch biome_generator 512 times to fit with terrain_generator, so I use following module. (biomeCtrl in "Biome Based")

			<module name="biome2terrain" type="ScaleInput">
			<property name="sourceModule" value="biomeOutput"/>
			<property name="x" value="512"/>
			<property name="z" value="512"/>
		</module>

biomeOutput is final output of biome_generator.

 

Finally, we get biome_generator value from biome2terra. I use this for controlModule of Select to mix up terrain for each biome into 1 terrain. (Biome Modifier and World Modifier block in "Biome Based")

 

Let me use a vanilla biome_generator for example, following code in terrain_generator provides the same value, which you get from biome_generator in biome_rules.

			<module name="voronoi" type="Voronoi">
			<property name="frequency" value="0.0008"/>
			<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>

		<module name="biome2terrain" type="ScaleInput">
			<property name="sourceModule" value="biomeOutput"/>
			<property name="x" value="512"/>
			<property name="z" value="512"/>
		</module>

 

To confirm this, use following code after the code above in terrain_generator. You can see biome_generator as elevation in game (UI can't show elevation as decimal number, so multiplied 100 times).

			<module name="scaleBiasOutput" type="ScaleBiasOutput">
			<property name="sourceModule" value="biome2terrain"/>
			<property name="scale" value="100"/>
			<property name="bias" value="28"/>
		</module>

		<output module="scaleBiasOutput"/>

Link to comment
Share on other sites

Genorates ALL snow lol, Looks cool, Ummm CLAY !!!!!

 

<biome_spawn_rules>

<biome_spawn_rule name="pine_forest">

<biome_generator range="0,0.2"/>

<terrain_generator range="170,189"/>

<distance_from_center range="0,10"/>

</biome_spawn_rule>

 

<biome_spawn_rule name="desert">

<biome_generator range="0.2,0.3"/>

<distance_from_center range="10,20"/>

</biome_spawn_rule>

 

<biome_spawn_rule name="burnt_forest">

<biome_generator range="0.3,0.4"/>

<distance_from_center range="20,30"/>

</biome_spawn_rule>

 

<biome_spawn_rule name="forest">

<biome_generator range="0.4,0.6"/>

<distance_from_center range="30,40"/>

</biome_spawn_rule>

 

<biome_spawn_rule name="plains">

<biome_generator range="0.8,1"/>

<distance_from_center range="50,60"/>

</biome_spawn_rule>

 

<biome_spawn_rule name="snow">

<biome_generator range="0.6,0.7"/>

<terrain_generator range="50,200"/>

<distance_from_center range="60,9500"/>

</biome_spawn_rule>

 

<biome_spawn_rule name="wasteland">

<biome_generator range="0.7,0.8"/>

<distance_from_center range="9500,10000"/>

</biome_spawn_rule>

 

<biome_spawn_rule name="radiated">

<distance_from_center range="10000,20000"/>

</biome_spawn_rule>

 

<biome_spawn_rule name="water">

<terrain_generator range="-31,-21"/>

</biome_spawn_rule>

Link to comment
Share on other sites

Genorates ALL snow lol, Looks cool, Ummm CLAY !!!!!

 

 

<biome_spawn_rules>

<biome_spawn_rule name="pine_forest">

<biome_generator range="0,0.2"/>

<terrain_generator range="170,189"/>

<distance_from_center range="0,10"/>

</biome_spawn_rule>

 

<biome_spawn_rule name="desert">

<biome_generator range="0.2,0.3"/>

<distance_from_center range="10,20"/>

</biome_spawn_rule>

 

<biome_spawn_rule name="burnt_forest">

<biome_generator range="0.3,0.4"/>

<distance_from_center range="20,30"/>

</biome_spawn_rule>

 

<biome_spawn_rule name="forest">

<biome_generator range="0.4,0.6"/>

<distance_from_center range="30,40"/>

</biome_spawn_rule>

 

<biome_spawn_rule name="plains">

<biome_generator range="0.8,1"/>

<distance_from_center range="50,60"/>

</biome_spawn_rule>

 

<biome_spawn_rule name="snow">

<biome_generator range="0.6,0.7"/>

<terrain_generator range="50,200"/>

<distance_from_center range="60,9500"/>

</biome_spawn_rule>

 

<biome_spawn_rule name="wasteland">

<biome_generator range="0.7,0.8"/>

<distance_from_center range="9500,10000"/>

</biome_spawn_rule>

 

<biome_spawn_rule name="radiated">

<distance_from_center range="10000,20000"/>

</biome_spawn_rule>

 

<biome_spawn_rule name="water">

<terrain_generator range="-31,-21"/>

</biome_spawn_rule>

 

If your map is generating lakes/oceans then look in it to get clay. The "water biome" that generates with 'water' has clay. ('If' you're using the vanilla biome.xml). Have fun in your snow map, it'll just take more time and effort to get everything you need resource wise.

Just a FYI all biomes have all the resource ores underground, just some biomes have more of one type of ore then others (again 'If' you're using the vanilla biomes.xml). ;)

Link to comment
Share on other sites

  • 3 months later...
Most of info here is really useful even now, but really long to read through so......

 

How to control the size of water area:

Search fastWaterFilter and adjust the frequency value, which affect how frequently it generates rivers.

LOWER frequency generates LESS rivers, HIGHER frequency generates MORE rivers.

			<module name="fastWaterFilter" type="FastRidgedMultifractal" seed_additive="3">
			<property name="frequency" value="[color="#FF8C00"]0.05[/color]"/>
		</module>

 

NOTE: this will make rivers slightly narrower/ wider as a side effect.

 

I changed it to 0.01 and while I am not getting rivers, I am getting much more lakes now. Is there any way to reduce lake and complete water generation too? Or could I somehow turn water gen. off?

Link to comment
Share on other sites

I changed it to 0.01 and while I am not getting rivers, I am getting much more lakes now. Is there any way to reduce lake and complete water generation too? Or could I somehow turn water gen. off?

 

	<terrain_generators>
	<terrain_generator name="vanilla" use_old_final="false">
		<module name="landBaseBase" type="FastBillow" no_seed="true">
			<property name="frequency" value="0.02"/>
		</module>
		<module name="scaleLandBaseFilter" type="ScaleBiasOutput">
			<property name="sourceModule" value="landBaseBase"/>
			<property name="scale" value="0.25"/>
			<property name="bias" value="0.25"/>
		</module>
		<module name="landBase" type="ClampOutput">
			<property name="sourceModule" value="scaleLandBaseFilter"/>
			<property name="bounds" value="0.01,0.5"/>
		</module>

		<module name="fastMountainsBase" type="FastRidgedMultifractal">
			<property name="frequency" value="0.25"/>
		</module>
		<module name="fastMountainsT" type="FastTurbulence">
			<property name="sourceModule" value="fastMountainsBase"/>
			<property name="power" value="5"/>
			<!-- <property name="frequency" value="0.25"/> -->
			<property name="frequency" value="0.5"/>
			<property name="roughness" value="1"/>
		</module>
		<module name="fastMountainsScaled" type="ScaleBiasOutput">
			<property name="sourceModule" value="fastMountainsT"/>
			<property name="scale" value="0.3"/>
		</module>

		<!-- <module name="fastWaterBase" type="FastRidgedMultifractal">
			<property name="frequency" value="0.35"/>
		</module>
		<module name="fastWaterBase2" type="InvertOutput">
			<property name="sourceModule" value="fastWaterBase"/>
		</module>
		<module name="fastWaterScaled" type="ScaleBiasOutput">
			<property name="sourceModule" value="fastWaterBase2"/>
			<property name="scale" value="1"/>
			<property name="bias" value="-0.15"/>
		</module>
		<module name="fastWaterClamped" type="ClampOutput">
			<property name="sourceModule" value="fastWaterScaled"/>
			<property name="bounds" value="0,0.1"/>
		</module>
		<module name="fastWaterFilter" type="FastRidgedMultifractal" seed_additive="3">
			<property name="frequency" value="0.05"/>
		</module> 
		<module name="scaleBiasLandFilter" type="ScaleBiasOutput">
			<property name="sourceModule" value="fastWaterFilter"/>
			<property name="scale" value="1"/>
			<property name="bias" value="0.25"/>
		</module>

		<module name="fastLandWater" type="Blend">
			<property name="controlModule" value="scaleBiasLandFilter"/>
			<property name="sourceModule1" value="landBase"/>
			<property name="sourceModule2" value="fastWaterClamped"/>
		</module> -->

		<module name="finalLand" type="Blend">
			<property name="controlModule" value="fastMountainsScaled"/>
			<!-- <property name="sourceModule1" value="fastLandWater"/> -->
			<property name="sourceModule1" value="landBase"/>
			<property name="sourceModule2" value="fastMountainsScaled"/>
		</module>

		<module name="scaleBiasOutput" type="ScaleBiasOutput">
			<property name="sourceModule" value="finalLand"/>
			<property name="scale" value="250"/>
		</module>

		<output module="scaleBiasOutput"/>
	</terrain_generator>
</terrain_generators>

 

That's how I completely removed water generation. I use Tin's lake POI's to add some back into the world in a more controlled fashion.

Link to comment
Share on other sites

Archived

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

×
×
  • Create New...