mushroomhostage / exphc

The Experimental Hardcore Post-Apocalyptic Minecraft Server
www.exphc.com
8 stars 5 forks source link

Forestry: can't crate 17:4 wood logs #82

Closed mushroomhostage closed 12 years ago

mushroomhostage commented 12 years ago

Forestry lets you crate wood, but only the vanilla block (17) with data value 0 ("oak"). This wood is quite rare, making it difficult to find enough to crate.

mushroomhostage commented 12 years ago

Forestry only has one Crated Wood item 13756, created by crating 17:0 http://www.minecraftwiki.net/wiki/Data_values#Wood . Can't seem to crate pine, birch, or jungle wood. If it could, would need a separate crated item to not lose its type when uncrating.

There is a crate request thread: http://www.mod-buildcraft.com/forums/topic/request-crates/

Also a plugin to add crated nikolite: http://www.mod-buildcraft.com/forums/topic/ic2-crops-plugin-for-forestry/ - though I couldn't get it to load via SK's Launcher, but it demonstrates that adding new crates is possible. A new crate for all the log types, in vanilla and Trees++? Probably overkill, would be a lot of work for little benefit, and require a client update.. and the author of Forestry is planning on revamping the crating system anyways.

Maybe have some way to convert any type of wood to regular old 17:0 wood.. put it in an IC2 extractor? (anything but IC2 and RP2 rubberwood). "Extracts" the wood back to its ordinary form.. contrived, but could be useful.

At least, should definitely allow crating 17:4+ wood. Trees++ adds this, and I have a lot of it, it is basically identical to vanilla wood, but annoyingly cannot be crated. Just add a new crating recipe for it..

mushroomhostage commented 12 years ago

For reference:

   public void postInit()
    {
        ItemStack q = ItemInterface.getItem("cratedNikolite");
        if(q == null)
            ModLoader.getLogger().warning("cratedNikolite item is null");
        Item cratedNikolite = q.getItem();
        IGenericCrate t = (IGenericCrate)cratedNikolite;
        if(t.getContained(q) != null)
            ModLoader.getLogger().warning("cratedNikolite already have contained item");
        else
        if(Item.byId[id] != null)
        {
            ItemStack ore = new ItemStack(id, 1, meta);
            t.setContained(q, ore);
            if(RecipeManagers.carpenterManager != null)
                RecipeManagers.carpenterManager.addCrating(ore, q);
        } else
        {
            ModLoader.getLogger().warning((new StringBuilder("Nikolite item ")).append(id).append(":").append(meta).append(" not found").toString());
        }
    }
mushroomhostage commented 12 years ago

Similar report of problems with 17:4 in Forestry, not even using Trees++: http://www.mcportcentral.co.za/index.php?topic=3612.msg19844;topicseen#msg19844

mushroomhostage commented 12 years ago

But in Trees++, too: http://www.minecraftforum.net/topic/1028159-125trees-v1346-forgesmpbukkit36-trees7-biomes10-flowers/page__st__1100#entry17310971

mushroomhostage commented 12 years ago

Well this may explain it.. recompiling:

+ CLASSPATH=../craftbukkit-1.2.5-R4.1-MCPC-SNAPSHOT-173.jar:../SERVER-alpha-mcpc125/mods/thermalexpansion-1.0.4.3_bc2-mcpc-r1.zip:../SERVER-alpha-mcpc125/mods/industrialcraft2-1.103-mcpc1.2.5-r1.zip:../SERVER-alpha-mcpc125/mods/zforestry-1.4.8.6-mcpc1.2.5.zip
+ javac ExphcTweaks.java -Xlint:unchecked -Xlint:deprecation
ExphcTweaks.java:113: package forestry.core.config does not exist
            forestry.api.recipes.RecipeManagers.carpenterManager.addCrating(new net.minecraft.server.ItemStack(17, 1, 4), new net.minecraft.server.ItemStack(forestry.core.config.ForestryItem.cratedWood));
                                                                                                                                                                                 ^
ExphcTweaks.java:113: package forestry.api.recipes.RecipeManagers does not exist
            forestry.api.recipes.RecipeManagers.carpenterManager.addCrating(new net.minecraft.server.ItemStack(17, 1, 4), new net.minecraft.server.ItemStack(forestry.core.config.ForestryItem.cratedWood));
mushroomhostage commented 12 years ago

Actually not, was just a missing path:

https://github.com/mushroomhostage/ExphcTweaks/commit/7f13c6bf379cc736490450ea667a9e553812293a

Requires further testing

mushroomhostage commented 12 years ago

Works now. You can create crated wood from 17;4 logs, and also make crates.