Jump to content

Problem with big tree generation


dwinget2008

Recommended Posts

I am having trouble spotting where I need to make a change to the code of my big tree. I can get the tree to spawn as it should and even be the size that is should be. But for some random reason that I am haing trouble seeing I can't figure out why the branches are made of Soul Sand and not my custom log.

 

This is the WorldGenBigTwoRivers file: http://gw.minecraftforge.net/o7BW

 

And this is the TreeManager for the tree, though I am sure that the problem exists in the tree generator above: http://gw.minecraftforge.net/5zyx

 

Here is the main file: http://gw.minecraftforge.net/nDBV

 

Here is the MainInfo file just in case: http://gw.minecraftforge.net/k7PG

 

Here is the twoRiversLog file: http://gw.minecraftforge.net/j1Ql

 

Thank you for your help.

Link to comment
Share on other sites

Not enough code presented.

 

Need main mod file, HeroCraftMain

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Link to comment
Share on other sites

*Math*

It would appear that the tree generator (like the landscape generator in vanilla) supports up to block ID 255.  Anything over that is truncated to that (600 % 255 = 88 -> soul sand).  Which is why you're seeing what you're seeing.

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Link to comment
Share on other sites

By rewriting the world generator. :V

I actually have no idea, I only know of a couple of people who have succeeded.

I suggest getting a hold of either XCompWiz (who's done it for terrain) or Azanor (who's done trees, but I don't know the method).

 

XCW can be found on the #mystcraft channel at EsperNet or PMed at his forums, Azanor has been generally responsive to PMs, though not necessarily quickly.

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Link to comment
Share on other sites

Ok  interesting development, I can get the normal trees to generate find, as well as the Huge trees. But, I cannot get the Big trees to generate properly. The still give out soul sand as the branches, whereas the Huge trees use my custom log as the branched.

 

Any thoughts on that one?

Link to comment
Share on other sites

I haven't messed with trees all that much :x

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Link to comment
Share on other sites

Very simple.

 

The line

this.placeBlockLine(aint, aint2, (byte)HeroCraftMain.twoRiversLog.blockID);

Is casting the blockID to a byte.  Remove the cast and it'll work fine.  The problem you are seeing is that that the blockID is greater than the maximum value of byte, and the value is being truncated.

 

EDIT: I recommend turning on warnings on unnecessary casts to help prevent similar issues in the future.  This can be done through the Eclipse settings for warnings and errors.

Link to comment
Share on other sites

Very simple.

 

The line

this.placeBlockLine(aint, aint2, (byte)HeroCraftMain.twoRiversLog.blockID);

Is casting the blockID to a byte.

 

Good catch, I didn't see that.

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Link to comment
Share on other sites

Very simple.

 

The line

this.placeBlockLine(aint, aint2, (byte)HeroCraftMain.twoRiversLog.blockID);

Is casting the blockID to a byte.  Remove the cast and it'll work fine.  The problem you are seeing is that that the blockID is greater than the maximum value of byte, and the value is being truncated.

 

EDIT: I recommend turning on warnings on unnecessary casts to help prevent similar issues in the future.  This can be done through the Eclipse settings for warnings and errors.

 

 

Thanks for your help that worked.

 

Next question of the day, and this could just be eclipse being stupid, but MinecraftForge.Event_bus.regiester(new twoRivers_Bonemeal_Event()); doesn't seem to come up the way that is should.

 

Is this still the way that you register bonemeal events?

Link to comment
Share on other sites

Ok, so on that last question I found out my stupid Issue. I wasn't putting the event  in the main load section. Again stupid mistake.

 

New question though. I can get all the trees (normal, big, and huge) to generate in the world. My problem is that I cam use bonemeal to get the normal and big, but something in my code doesn't seem to work the way jungle saplings work. I can't get the huge trees from bonmealing my saplings in the same way you should be able to with a jungle tree.

 

Here is the sapping code if you can help with it: http://paste.minecraftforge.net/view/01bf37e2

 

Here is the code for the huge tree: http://paste.minecraftforge.net/view/ff7b339c

 

Thanks for your help!

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.