Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Binnie's hive generation to the Forestry HiveRegistry #486

Closed
wants to merge 13 commits into from

Conversation

temp1011
Copy link
Contributor

@temp1011 temp1011 commented Mar 27, 2018

Adds Binnie hive generation to forestry HiveRegistry so that binnie hives will obey forestry configs (eg - for dimension blacklisting.

Still TODO:
- figure out why this seems to get stuck sometimes
- expose getting the instance of HiveRegistry in Forestry
- Make this faster (worldgen is very slow).

Hopefully it is possible to do this without it being too slow. I'm sure there's a lot that can be done to help that. I'm probably misusing IHivegen at the moment.

if (isValidLocation(world, pos)) {
return pos;
}
pos.add(0, -1, 0);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The strategy here will check every block from the surface down to 0.
A more efficient strategy would be to get the topPos and try a few random locations between 0 and topPos.
Only try a few locations before giving up.

@temp1011
Copy link
Contributor Author

Still needs tweaks to get worldgen to previous levels. Also, the rate registered with forestry should depend on the config settings for extrabees.

}

@Override
public boolean isGoodBiome(Biome biome) {
if (hiveType == EnumHiveType.NETHER) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You can simplify this

return hiveType != EnumHiveType.NETHER
    || BiomeDictionary.hasType(biome, BiomeDictionary.Type.NETHER);

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks

@temp1011
Copy link
Contributor Author

2018-03-29_16 06 09
Current gen with hive debug on.

@temp1011
Copy link
Contributor Author

I'm still not sure if the rates are right. Also, I think marble hives were designed for Red Power 2 marble so don't generate as frequently on chisel marble. I will include some issues I think this resolves:
Closes #459
Closes #424
Closes #393 (as far as I am aware no trees generate in the nether and Forestry does not have cascading issues)
Closes #301 (similarly I don't think trees generate in the deep dark)
Note there is still an issue open for cascading worldgen in #315 which needs the forge PR to solve.

@mezz
Copy link
Member

mezz commented Apr 12, 2018

Whenever I've done tweaks to hive generation, I add some debug logging for how many of each hive are placed.
Start a new world and fly forward for a specific distance and see how many of each hive were placed. Recreate the world with the same seed and do the same thing with your changes applied, and tweak the values until they are close.

@AnrDaemon
Copy link

as far as I am aware no trees generate in the nether

You would be surprized…

@Nedelosk
Copy link
Member

@AnrDaemon He talks about trees from extra trees.

@Nedelosk
Copy link
Member

Nedelosk commented Jun 20, 2018

@temp1011 What's the current state of this PR ?

@temp1011
Copy link
Contributor Author

temp1011 commented Jun 20, 2018

I haven't looked at it in a while sorry. I need to test the numbers to make sure everything works the same. Not sure how good this is for performance as well.

@acanady
Copy link

acanady commented Jun 21, 2018

Oh great though I just couldn't find them, turns out they weren't generating at all to begin with

@temp1011
Copy link
Contributor Author

The bee effect coming off the hives is the wrong colour at the moment too (I get forest bees for rocky hives).

@mezz mezz mentioned this pull request Jul 16, 2018
@temp1011
Copy link
Contributor Author

I can hopefully get this done this Sunday. At the moment it's difficult for me to test it though.

@Nedelosk
Copy link
Member

Nedelosk commented Nov 9, 2018

@temp1011 Any update ?

@temp1011
Copy link
Contributor Author

temp1011 commented Nov 9, 2018

I believe this needs ForestryMC/ForestryMC#2204 to work well, but I haven't looked at this in a while.

@temp1011
Copy link
Contributor Author

See new PR

@temp1011 temp1011 closed this Jan 14, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants