Hi ! Found this mod yesterday and it love the constructions. Tried it on 1.10.2 version, but when i use the mod, even if the world is still smooth, mobs are very laggy when i killed then.
Without the mod, pigs are running when i hit them. With the mod, they are like at 2fps in a 60 fps game.
Do you know why ?
I'm on MC 1.10.2, RecurrentComplex 1.2.3, IvToolkit 1.2.8.5, forge 12.182.2107
Thanx, and sorry for my bad english
I'm guessing your server is still generating lots of terrain and thus lagging. Try waiting for terrain to generate a bit before you explore.
It might also be that leaf decay is lagging your server. If that's the case, you can set treeLeavesDecay to false.
I'm guessing your server is still generating lots of terrain and thus lagging. Try waiting for terrain to generate a bit before you explore.
It might also be that leaf decay is lagging your server. If that's the case, you can set treeLeavesDecay to false.
treeLeavesDecay: false unfortunately does not work for me with the latest versions of forge / rcomplex. Even with rcomplex by itself. And with RTG/WTF installed the tick lag is excessive.
treeLeavesDecay: false unfortunately does not work for me with the latest versions of forge / rcomplex. Even with rcomplex by itself. And with RTG/WTF installed the tick lag is excessive.
Yes, the same for me. Neither does setting generate nature to false. I think the configs aren't working properly currently.
treeLeavesDecay: false unfortunately does not work for me with the latest versions of forge / rcomplex. Even with rcomplex by itself. And with RTG/WTF installed the tick lag is excessive.
I just tested again - treeLeavesDecay definitely works for me. Remember the option takes effect only on newly generated trees. Also check your log for config errors or something similar.
Does the tree gen added through this mod replace tree added by mods such as Biomes o Plenty when custom tree are set to gen in the correct biomes (e.g. mountainfoothills)?
Does the tree gen added through this mod replace tree added by mods such as Biomes o Plenty when custom tree are set to gen in the correct biomes (e.g. mountainfoothills)?
It depends on the mod. In RTG it works now, but BoP isn't entirely compatible with Forge's tree decoration event, and not at all with my compatibility fix on it. I've made an issue on the repo but it seems nobody is actively working on the mod right now.
In theory, it should work. If it doesn't, it's because the biome's mod isn't compatible with the tree decoration event.
When I've been messing around with tree gen in jungles, forests, etc. it often occurs that many of the trees get bunched up together a lot, making the forest very thick. I also want to replace all the oak trees that spawn in the jungle biome.
Is there a way to replace all of the oak trees in the jungle biome with custom trees?
Is there a way to prevent tree from grouping up so they can be more spread out?
When I've been messing around with tree gen in jungles, forests, etc. it often occurs that many of the trees get bunched up together a lot, making the forest very thick. I also want to replace all the oak trees that spawn in the jungle biome.
Is there a way to replace all of the oak trees in the jungle biome with custom trees?
Unfortunately, due to the nature of vanilla's tree gen implementation as well as Forge's event implementation, it's impossible to distinguish between different trees to replace in biomes. If you want to get rid of oak trees in jungles the best you can do is replace all trees in jungles (by adjusting the baseWeight_tree option or the weight of the individual jungle trees to something very high). That will replace oak trees, but also the bushes and the normal jungle trees.
Is there a way to prevent tree from grouping up so they can be more spread out?
IIRC trees should not spawn inside each other (at least, logs inside existing leaves or logs) already, which should get rid of most clumping. You could also change the tree transformer preset to make leaves also not spawn in neighbouring leaves, but that might sparse out your forests too much.
The vanilla generator checks for any existing blocks in a 3 block radius hardcoded, no matter the tree type. You can sort of emulate that by placing generic blocks around your trees and adding an Ensure Transformer to the tree transformer preset that will check that generic block for existing air. You might have to experiment with what feels best to you (using transfomers) - but there is no simple solution to this problem. If you can think of one, let me know
BTW I'm having some trouble figuring out the new generation system for structures. I'm currently modifying the 'limit' in the generation section with the positioning options.
What does the 'mark' mean?
And what is with the later or earlier options?
E.g. I want my structure to gen on the surface but go down a max of 2 blocks, I also want it to not spawn above Y75.
Currently my selections are;
Top (World Height)
Move -2
Average Surface
Mark -1
Lastly, I also can't figure out how to do mod dependencies. For example I'm trying to get a structure to spawn in the xeric shrubland from BOP, but for some reasons its not spawning so I assume I need to put in a dependency for BOP.
BTW I'm having some trouble figuring out the new generation system for structures. I'm currently modifying the 'limit' in the generation section with the positioning options.
What does the 'mark' mean?
It marks the area / position from the point where it's currently at as 'the structure can spawn here'.
And what is with the later or earlier options?
The 'limit' factor casts rays to find and identify terrain from specific points to mark it as spawnable for the structure. The rays are cast from the current position, so it matters which ray is cast first (earlier) and vice versa.
E.g. I want my structure to gen on the surface but go down a max of 2 blocks, I also want it to not spawn above Y75.
Currently my selections are;
Top (World Height)
Move -2
Average Surface
Mark -1
With this setup, your ray moves to the top of the world, then down two, and then finds the first surface downwards. After that it marks that point and the point below as spawnable. Your structure has two points where it can spawn now - the surface, and one block below the surface.
If you don't want it to spawn above Y75, you can add another limit factor, move to Y=75 and then mark all positions down to Y=0. That will automatically disqualify spawning anywhere above Y75.
Lastly, I also can't figure out how to do mod dependencies. For example I'm trying to get a structure to spawn in the xeric shrubland from BOP, but for some reasons its not spawning so I assume I need to put in a dependency for BOP.
No, the dependencies are only to limit structure loading. If the structure cannot or doesn't spawn in the shrubland, I assume your biome selection doesn't work out. In the natural generation info, click on Biomes -> Edit and make sure whatever you enter there matches the xeric shrubland biome. /#biome and the Expression wiki page might be helpful in that regard.
Reasoning is that the ray moves up to Y75, then marks all the positions down to Y35 as spawnable, then it finds the surface (if there is one) and spawns either on level or 2 blocks lower.
Reasoning is that the ray moves up to Y75, then marks all the positions down to Y35 as spawnable, then it finds the surface (if there is one) and spawns either on level or 2 blocks lower.
Is this correct?
You will have to split your logic into two placer factors (move 75, mark bedrock and move sky, average surface, mark -2). With your current logic it will mark all blocks from 75 to 45 as spawnable, then from block 45 find the next surface downwards, and mark that height and the two below it as spawnable too. That means your structure could spawn anywhere between 45 and 75, or in some cave underground.
Sorry about my idiocy, i'm just not very familiar with this stuff
So the top line should be 'move 75' (with an acceptance value of 0.00).
The second line should be 'bedrock' (with an acceptance of 0.00).
The third line should be ? (I can't seem to find the option 'sky' in the positioning or move options, do you mean something else? only options for positioning I can find are bedrock, world height and sea level).
The fourth line should be average surface (acceptance 0.00).
The last line should be Mark -2 (with an acceptance value of ~1.04).
What does the acceptance value do?
Also I'm trying to put in the command /#replace biomesoplenty:log_4 5 minecraft:log 1 doesn't work
I'm trying to replace the vanilla spruce log with a biomes o plenty dead wood log
Sorry about my idiocy, i'm just not very familiar with this stuff
So the top line should be 'move 75' (with an acceptance value of 0.00).
I'd rather set acceptance to Ignore, but this works too.
The second line should be 'bedrock' (with an acceptance of 0.00).
This one needs an acceptance value of 1 - because you want to mark all terrain from 75 to bedrock as acceptable for spawning.
The third line should be ? (I can't seem to find the option 'sky' in the positioning or move options, do you mean something else? only options for positioning I can find are bedrock, world height and sea level).
That's Top (World Height), not sky. My bad.
The fourth line should be average surface (acceptance 0.00).
The last line should be Mark -2 (with an acceptance value of ~1.04).
Yes.
What does the acceptance value do?
Acceptance means to which degree you accept the positions you just moved over. 0 means 'don't spawn here' while 1 means 'do spawn here'. 10 would mean 'god please this terrain is perfect please do it here'.
But like I said - you're gonna need two different limit factors. The first would consist of your first two lines and the second of the rest. Then one factor says 'Do not spawn over y=75' and the other says 'spawn either on or up to two blocks below the surface'. Only if both apply can the structure be placed.
Also I'm trying to put in the command /#replace biomesoplenty:log_4 5 minecraft:log 1 doesn't work
The last part (log & property[variant]=spruce) is a positioned block expression determining which blocks to replace. It's more powerful than just accepting a source id and metadata to replace.
The Meaning of Life, the Universe, and Everything.
Join Date:
3/22/2014
Posts:
166
Member Details
Question for you, is there an easy way to give all custom tres the same kind of leaves? With resource packs, having mixed leaves sticks out a bit too much.
Question for you, is there an easy way to give all custom tres the same kind of leaves? With resource packs, having mixed leaves sticks out a bit too much.
Sure... You could edit the tree transformer preset to add a replace transformer, matching leaves | leaves2 and replacing them with oak tree leaves.
I'm trying to spawn this structure, would its enormous size make it rarer even thought I set its spawn type to common?
Nope. If anything, it won't find a place to spawn anywhere...
Also, in the placer tab I edited the placer and removed everything except 'bedrock'. Will my structure spawn at bedrock (y0)?
... except you have edited the placer to always spawn at bedrock, which solves that problem. Your assumption is correct - it will then always spawn at bedrock. Remember to mark the spot you're at though ('Move 0' and set acceptance factor to 1, after moving to 'Bedrock').
You can test if your placer works with /#gen.
I'm guessing your server is still generating lots of terrain and thus lagging. Try waiting for terrain to generate a bit before you explore.
It might also be that leaf decay is lagging your server. If that's the case, you can set treeLeavesDecay to false.
Are you aware of the issue WhichOnesPink posted on the issue tracker concerning leaf decay?
treeLeavesDecay: false unfortunately does not work for me with the latest versions of forge / rcomplex. Even with rcomplex by itself. And with RTG/WTF installed the tick lag is excessive.
Yes, the same for me. Neither does setting generate nature to false. I think the configs aren't working properly currently.
I just tested again - treeLeavesDecay definitely works for me. Remember the option takes effect only on newly generated trees. Also check your log for config errors or something similar.
generateNature was indeed broken. I've fixed it for the latest nightly / next release.
Recurrent Complex is now on 1.2.3.4! This is mostly a stability update, but definitely recommended for everyone to update to.
* Setting the baseWeight_tree to 0 removed almost all trees from forests!
* More boulders and mounts! Also they now spawn in the frequent category to make space in the decoration category for more interesting structures!
+ /#eval, which quickly evaluates a dependency expression. Useful for testing global variables
* The generateNature option was being ignored
* Many village buildings spawned without a floor. Poor villagers.
* /#duplicate now tab completes
* Having a /#generate operation still in preview when loading an old world crashed the game
Does the tree gen added through this mod replace tree added by mods such as Biomes o Plenty when custom tree are set to gen in the correct biomes (e.g. mountainfoothills)?
It depends on the mod. In RTG it works now, but BoP isn't entirely compatible with Forge's tree decoration event, and not at all with my compatibility fix on it. I've made an issue on the repo but it seems nobody is actively working on the mod right now.
In theory, it should work. If it doesn't, it's because the biome's mod isn't compatible with the tree decoration event.
Just another question.
When I've been messing around with tree gen in jungles, forests, etc. it often occurs that many of the trees get bunched up together a lot, making the forest very thick. I also want to replace all the oak trees that spawn in the jungle biome.
Is there a way to replace all of the oak trees in the jungle biome with custom trees?
Is there a way to prevent tree from grouping up so they can be more spread out?
Unfortunately, due to the nature of vanilla's tree gen implementation as well as Forge's event implementation, it's impossible to distinguish between different trees to replace in biomes. If you want to get rid of oak trees in jungles the best you can do is replace all trees in jungles (by adjusting the baseWeight_tree option or the weight of the individual jungle trees to something very high). That will replace oak trees, but also the bushes and the normal jungle trees.
IIRC trees should not spawn inside each other (at least, logs inside existing leaves or logs) already, which should get rid of most clumping. You could also change the tree transformer preset to make leaves also not spawn in neighbouring leaves, but that might sparse out your forests too much.
The vanilla generator checks for any existing blocks in a 3 block radius hardcoded, no matter the tree type. You can sort of emulate that by placing generic blocks around your trees and adding an Ensure Transformer to the tree transformer preset that will check that generic block for existing air. You might have to experiment with what feels best to you (using transfomers) - but there is no simple solution to this problem. If you can think of one, let me know
BTW I'm having some trouble figuring out the new generation system for structures. I'm currently modifying the 'limit' in the generation section with the positioning options.
What does the 'mark' mean?
And what is with the later or earlier options?
E.g. I want my structure to gen on the surface but go down a max of 2 blocks, I also want it to not spawn above Y75.
Currently my selections are;
Top (World Height)
Move -2
Average Surface
Mark -1
Lastly, I also can't figure out how to do mod dependencies. For example I'm trying to get a structure to spawn in the xeric shrubland from BOP, but for some reasons its not spawning so I assume I need to put in a dependency for BOP.
It marks the area / position from the point where it's currently at as 'the structure can spawn here'.
The 'limit' factor casts rays to find and identify terrain from specific points to mark it as spawnable for the structure. The rays are cast from the current position, so it matters which ray is cast first (earlier) and vice versa.
With this setup, your ray moves to the top of the world, then down two, and then finds the first surface downwards. After that it marks that point and the point below as spawnable. Your structure has two points where it can spawn now - the surface, and one block below the surface.
If you don't want it to spawn above Y75, you can add another limit factor, move to Y=75 and then mark all positions down to Y=0. That will automatically disqualify spawning anywhere above Y75.
No, the dependencies are only to limit structure loading. If the structure cannot or doesn't spawn in the shrubland, I assume your biome selection doesn't work out. In the natural generation info, click on Biomes -> Edit and make sure whatever you enter there matches the xeric shrubland biome. /#biome and the Expression wiki page might be helpful in that regard.
Would this fix it;
Move 75
Mark -30
Average Surface
Mark -2
Reasoning is that the ray moves up to Y75, then marks all the positions down to Y35 as spawnable, then it finds the surface (if there is one) and spawns either on level or 2 blocks lower.
Is this correct?
You will have to split your logic into two placer factors (move 75, mark bedrock and move sky, average surface, mark -2). With your current logic it will mark all blocks from 75 to 45 as spawnable, then from block 45 find the next surface downwards, and mark that height and the two below it as spawnable too. That means your structure could spawn anywhere between 45 and 75, or in some cave underground.
Sorry about my idiocy, i'm just not very familiar with this stuff
So the top line should be 'move 75' (with an acceptance value of 0.00).
The second line should be 'bedrock' (with an acceptance of 0.00).
The third line should be ? (I can't seem to find the option 'sky' in the positioning or move options, do you mean something else? only options for positioning I can find are bedrock, world height and sea level).
The fourth line should be average surface (acceptance 0.00).
The last line should be Mark -2 (with an acceptance value of ~1.04).
What does the acceptance value do?
Also I'm trying to put in the command /#replace biomesoplenty:log_4 5 minecraft:log 1 doesn't work
I'm trying to replace the vanilla spruce log with a biomes o plenty dead wood log
I'd rather set acceptance to Ignore, but this works too.
This one needs an acceptance value of 1 - because you want to mark all terrain from 75 to bedrock as acceptable for spawning.
That's Top (World Height), not sky. My bad.
Yes.
Acceptance means to which degree you accept the positions you just moved over. 0 means 'don't spawn here' while 1 means 'do spawn here'. 10 would mean 'god please this terrain is perfect please do it here'.
But like I said - you're gonna need two different limit factors. The first would consist of your first two lines and the second of the rest. Then one factor says 'Do not spawn over y=75' and the other says 'spawn either on or up to two blocks below the surface'. Only if both apply can the structure be placed.
The /#replace has changed:
So in your case it's
The last part (log & property[variant]=spruce) is a positioned block expression determining which blocks to replace. It's more powerful than just accepting a source id and metadata to replace.
Question for you, is there an easy way to give all custom tres the same kind of leaves? With resource packs, having mixed leaves sticks out a bit too much.
Sure... You could edit the tree transformer preset to add a replace transformer, matching leaves | leaves2 and replacing them with oak tree leaves.
I'm trying to spawn this structure, would its enormous size make it rarer even thought I set its spawn type to common?
Also, in the placer tab I edited the placer and removed everything except 'bedrock'. Will my structure spawn at bedrock (y0)?
Nope. If anything, it won't find a place to spawn anywhere...
... except you have edited the placer to always spawn at bedrock, which solves that problem. Your assumption is correct - it will then always spawn at bedrock. Remember to mark the spot you're at though ('Move 0' and set acceptance factor to 1, after moving to 'Bedrock').
You can test if your placer works with /#gen.