[Addon v1.112+] Liquid UU-Matter v0.7.12b (now officially retired)

  • Is this something i should direct towards you or NEI?


    2012-12-27 22:48:57 [INFO] [STDOUT] LiquidUU: Did not load NEI integration: java.lang.NoClassDefFoundError: avf
    2012-12-27 22:48:57 [INFO] [STDERR] java.lang.NoClassDefFoundError: avf
    2012-12-27 22:48:57 [INFO] [STDERR] at java.lang.Class.getDeclaredMethods0(Native Method)
    2012-12-27 22:48:57 [INFO] [STDERR] at java.lang.Class.privateGetDeclaredMethods(Unknown Source)
    2012-12-27 22:48:57 [INFO] [STDERR] at java.lang.Class.getMethod0(Unknown Source)
    2012-12-27 22:48:57 [INFO] [STDERR] at java.lang.Class.getMethod(Unknown Source)
    2012-12-27 22:48:57 [INFO] [STDERR] at ro.narc.liquiduu.LiquidUU.loadIntegration(LiquidUU.java:190)
    2012-12-27 22:48:57 [INFO] [STDERR] at ro.narc.liquiduu.LiquidUU.postInit(LiquidUU.java:130)
    2012-12-27 22:48:57 [INFO] [STDERR] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    2012-12-27 22:48:57 [INFO] [STDERR] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    2012-12-27 22:48:57 [INFO] [STDERR] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    2012-12-27 22:48:57 [INFO] [STDERR] at java.lang.reflect.Method.invoke(Unknown Source)
    2012-12-27 22:48:57 [INFO] [STDERR] at cpw.mods.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:483)
    2012-12-27 22:48:57 [INFO] [STDERR] at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source)
    2012-12-27 22:48:57 [INFO] [STDERR] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    2012-12-27 22:48:57 [INFO] [STDERR] at java.lang.reflect.Method.invoke(Unknown Source)
    2012-12-27 22:48:57 [INFO] [STDERR] at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:69)
    2012-12-27 22:48:57 [INFO] [STDERR] at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45)
    2012-12-27 22:48:57 [INFO] [STDERR] at com.google.common.eventbus.EventBus.dispatch(EventBus.java:317)
    2012-12-27 22:48:57 [INFO] [STDERR] at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:300)
    2012-12-27 22:48:57 [INFO] [STDERR] at com.google.common.eventbus.EventBus.post(EventBus.java:268)
    2012-12-27 22:48:57 [INFO] [STDERR] at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:140)
    2012-12-27 22:48:57 [INFO] [STDERR] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    2012-12-27 22:48:57 [INFO] [STDERR] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    2012-12-27 22:48:57 [INFO] [STDERR] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    2012-12-27 22:48:57 [INFO] [STDERR] at java.lang.reflect.Method.invoke(Unknown Source)
    2012-12-27 22:48:57 [INFO] [STDERR] at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:69)
    2012-12-27 22:48:57 [INFO] [STDERR] at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45)
    2012-12-27 22:48:57 [INFO] [STDERR] at com.google.common.eventbus.EventBus.dispatch(EventBus.java:317)
    2012-12-27 22:48:57 [INFO] [STDERR] at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:300)
    2012-12-27 22:48:57 [INFO] [STDERR] at com.google.common.eventbus.EventBus.post(EventBus.java:268)
    2012-12-27 22:48:57 [INFO] [STDERR] at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:83)
    2012-12-27 22:48:57 [INFO] [STDERR] at cpw.mods.fml.common.Loader.initializeMods(Loader.java:659)
    2012-12-27 22:48:57 [INFO] [STDERR] at cpw.mods.fml.server.FMLServerHandler.finishServerLoading(FMLServerHandler.java:94)
    2012-12-27 22:48:57 [INFO] [STDERR] at cpw.mods.fml.common.FMLCommonHandler.onServerStarted(FMLCommonHandler.java:350)
    2012-12-27 22:48:57 [INFO] [STDERR] at ho.c(DedicatedServer.java:135)
    2012-12-27 22:48:57 [INFO] [STDERR] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:458)
    2012-12-27 22:48:57 [INFO] [STDERR] at fy.run(SourceFile:849)
    2012-12-27 22:48:57 [INFO] [STDERR] Caused by: java.lang.ClassNotFoundException: avf
    2012-12-27 22:48:57 [INFO] [STDERR] at cpw.mods.fml.relauncher.RelaunchClassLoader.findClass(RelaunchClassLoader.java:179)
    2012-12-27 22:48:57 [INFO] [STDERR] at java.lang.ClassLoader.loadClass(Unknown Source)
    2012-12-27 22:48:57 [INFO] [STDERR] at java.lang.ClassLoader.loadClass(Unknown Source)
    2012-12-27 22:48:57 [INFO] [STDERR] ... 36 more
    2012-12-27 22:48:57 [INFO] [STDERR] Caused by: java.lang.RuntimeException: Attempted to load class avf for invalid side SERVER
    2012-12-27 22:48:57 [INFO] [STDERR] at cpw.mods.fml.common.asm.transformers.SideTransformer.transform(SideTransformer.java:38)
    2012-12-27 22:48:57 [INFO] [STDERR] at cpw.mods.fml.relauncher.RelaunchClassLoader.runTransformers(RelaunchClassLoader.java:222)
    2012-12-27 22:48:57 [INFO] [STDERR] at cpw.mods.fml.relauncher.RelaunchClassLoader.findClass(RelaunchClassLoader.java:171)
    2012-12-27 22:48:57 [INFO] [STDERR] ... 38 more

  • Quote

    java.lang.RuntimeException: Attempted to load class avf for invalid side SERVER

    Urgh. I guess I'm using some client-side-only stuff in the NEI integration. Might help if I mark that as SideOnly(Side.CLIENT). Either way, it won't hurt anything aside from message spam at server start. I'll fix it now so I won't forget, but not making a new release for it.


    Edit to add: Appleblomb: And here I thought I was mostly done with LiquidUU and could concentrate on other mod ideas. You've given me enough excellent ideas to bring me to v0.9, if not 1.0! Thanks kindly, and check your PMs ^^

  • All right, folks, here's a proposed conversion table, built on Appleblomb's work and some careful reading around Buildcraft source and the Forestry wiki. I really want some opinions on it, in particular any recipes that seem severely overpowered (but give a good explanation of why I should ignore the posted rationale, not just "it looks funny").


    Speaking of looking funny, Appleblomb, the only major change from what you initially sent me is the apple juice; have a look at my calculations and tell me if you see anything overtly wrong. If I used the same conversion method for water, I'd get a hilarious 180 water per UU -- which may actually be reasonable, considering.


    Incidentally, we've got two possible conversions here, depending on the cost of UUM -- it's either 1,000,000 EU = 600,000 MJ or 333,334 EU = 600,000 MJ. Speaking for myself, this conversion seems wrong, although it improves somewhat on the "convenience" duplications, where the same amount of EU produces only 300,000 MJ. I may go back and revise everything down a peg (I'm considering something like 3 UU = 1 oil as the baseline).

  • It takes approximately 14 apple juice combined with saplings and mulch to give 20 biomass. which distills down in to 6 biofuel. I ran an experimental study because the numbers from the forestry wiki were leaving me with too much biomass. I must have derped something really hard last night when I was typing it up. I would appreciate it if someone could test it and verify it for me, just in case my installation of forestry got messed up somehow.


    Also, glad you found the creosote oil, couldn't seem to find the values on the railcraft wiki or nei.


    Other than adjusting the honey to the same amount for the apple juice everything looks good. And if you decide to to the the 3uu = 1 oil everything else should scale easily according to my explanation, hence why I based it all off of BC Fuel/Oil.


    Another way to do water could be to take the energy required create the uu matter divided by the energy required to run the ic2 pump which is about 200 eu per bucket since it is basically infinite.

    Error 404: Signature not found!

  • It takes approximately 14 apple juice combined with saplings and mulch to give 20 biomass. which distills down in to 6 biofuel.

    Okay, I really don't like that we're getting such different numbers here. You've got an order of magnitude differential there, unless it's just that the Forestry wiki is being a bit too roundabout and we both missed something while reading that page. The most confusing part I'm reading is this:

    Quote from Forestry wiki

    The amount of biomass produced is equal to the source liquid consumption multiplied by the relevant output modifier

    , which seems to suggest the solid input (saplings, etc) either doesn't matter, or applies as a secondary output modifier. Hm...


    No, I can't seem to manage to convince any combination of 14, 0.8 and 1.5 to result in 20 -- it's either 16.8 if we apply both multipliers, or 21 if we apply just the apple juice. I guess I'll have to look at decompiled source. Sorry, Sengir, it has to be done.


    Also, glad you found the creosote oil, couldn't seem to find the values on the railcraft wiki or nei.

    Mhm, I also had to hunt but eventually found a table hiding at the very bottom of the Steam Boiler page.


    Another way to do water could be to take the energy required create the uu matter divided by the energy required to run the ic2 pump which is about 200 eu per bucket since it is basically infinite.

    Another way to do water is to not do it at all. BC pump + redstone engines and aqueous accumulator both make infinite water; there's really no need to have a UU-to-water conversion at all. If only because 1 UU = 5,000 water seems just a bit odd and might not even work.

  • ...Okay, yes, it's true the saplings really don't matter -- they function as a sort of clock tick, so that for each 0.8 buckets of source liquid consumed (!!!), you consume a sapling, but they don't affect the amount of output at all. The fermenter also doesn't matter, for the same reason: its function is to modify the amount of source liquid consumed in one step of operation, and how many steps can be done with a single fermenter (fertilizer lasts for 200 cycles, at 56 units of source liquid consumed per cycle = 11,200 millibuckets, like the wiki says).


    Which ultimately means the *only* table we care about is the output modifier table: water will turn into biomass at a 1:1 conversion -- for every 1 biomass produced, 1 water will be consumed. Apple juice and liquid honey are consumed at a 2:3 ratio -- for every 2 apple juice consumed, the output will be 3 biomass. Which means you miscounted somewhere, because 14 apple juice makes 21 biomass. It will always make 21 biomass, no matter what organic input or fermenter is used. You will use fewer saplings than any other organic input, and you will produce output faster if you use fertilizer than if you use manure or mulch (14 versus 12 buckets in 250 ticks), but you will use more fertilizer to do so.


    Given this information, it's clear that 1 UU should be equal to 8 apple juice, if we want to match 1 UU to 12 biomass, so I've updated the conversion and rationale.


    That wiki seriously needs to explain better how all the numbers apply.

  • About the liquid electrolizer,
    1) Rename it "Water Electrolizer". It makes more sense.
    2) make the front side input EU, back size ouput EU, left side as water input/output, right side as electrolized water input/output, and make it convert water to elctrolized water on redstone off, and the opposite on redstone off. When you get that working, make it switch between redstone control and a GUI button for controlling it's actions. I will try to make some code for you as soon as I see if ISidedInventory works for liquids.

  • 1) Rename it "Water Electrolizer". It makes more sense.

    No, it doesn't. It electrolyzes liquids, therefore liquid electrolyzer.


    2) make the front side input EU, back size ouput EU, left side as water input/output, right side as electrolized water input/output, and make it convert water to elctrolized water on redstone off, and the opposite on redstone off. When you get that working, make it switch between redstone control and a GUI button for controlling it's actions.

    Or I can do exactly what I already said I'd do and have it use adjacent tanks for water and electric water storage, and have the faces settable using the same method Thermal Expansion uses. Which is what I'm already planning on.


    I will try to make some code for you as soon as I see if ISidedInventory works for liquids.

    It doesn't, liquids are not an inventory item. On the bright side, I already know what needs doing and how to get there.


    BTW, how do you even compile it? It doesn't work for me! Start using the IC2 api, not the source itself!

    I just put IC2 in lib-obf/ and ran runtime/deobfuscate_libs.py. It got automatically added to my classpath. mcp_deobfuscate is nice that way.

  • Alright, I'm satisfied with the ratios now, looks good. Though I agree, we should probably just drop water. Aqueous accumulators on top of a railcraft tank with 2 water sources around each makes it pointless to have such a conversion.

    Error 404: Signature not found!

  • I just put IC2 in lib-obf/ and ran runtime/deobfuscate_libs.py. It got automatically added to my classpath. mcp_deobfuscate is nice that way.


    And where is lib-obf? It doesn't exist for me! And neither does deobfuscate_libs!!! What are you doing??

  • thanks, I think it'll work. MCF* is installing clean as I type, after that I'll copy in BC*, then fetch IC2*, deobf*, decomp*, etc.... Then I'll try to compile the newest LUUM* from GH*!
    * Man I LOVE abbs**!
    **Yes that's an abbrevation too!

  • Oh, and the python files are very wrong! I fixed 1 error, but now it cant find "org.ldg.mcpd.MCPDeobfuscate", and I don't even know what that's supposed to be! It mentiones some main class and sillimar stupidities, and is in general, wrong! PLZ help!

  • There is exactly one thing to fix with the current default mcp_deobfuscate, and that is that it assumes Forge makes a mcp/src/common, which isn't true anymore. I personally get around this by symlinking src/common to src/minecraft, but renaming would also work, since you really only need to compile MCP+Forge once.


    The other part of the process that you're missing is setting up the MCPDeobfuscate jar and its dependencies, which live in the master branch of the mcp_deobfuscate repository. Instructions for compiling MCPDeobfuscate are in the README.txt in master. Instructions for hooking it up to the mcp_interface python scripts are in the README.txt in mcp_interface.


    This is the second time today I catch you saying "I have no idea what I'm doing and I refuse to even try to figure it out myself", which is kind of sad for an aspiring programmer. Did you get your independence removed, or have you not grown it yet?


    Edit: There we go, the README now includes a "Compiling" section.

  • I do have everything! I already told you! I compile everything, and put everything where the readmes told me to, but it doesn't work!!! It has some problems with finding the class that I have checked and seen that it is where it is looking! I really don't understand the problem! It has the dependencies, and it didn't even get to the part where it needs mcp/src/common!

  • Well, don't look at me, I'm not setting up your build environment for you. org.ldg.mcpd.MCPDeobfuscate is the main class of mcp_deobfuscate-1.2.jar, so my primary guess would be that either it or its dependencies are missing from mcp/runtime/bin. But I literally have no idea what's on your hard-drive. If I trust that you "put everything where the readmes told [you] to", then all I can conclude is you've reached some incredibly obscure bug that I've never met, and therefore I cannot help you. Shouting! at! me! isn't going to make me any more able to help you.

    • Official Post

    I know this Problem. No matter which "Modsource" I add to my Dev-Environment, it's always showing Errors, which happened by copying into wrong locations. Best example is the NEI-API, which has always to be fixed, by either making Minecrafts methods public or by commenting out the erroreous Code. I think deobfuscating in that Case can be even worse, as you cant fix the Code resulting from that. However, I always found a way to fix these Bugs, by either looking up on how to do it properly (Forge f.e.), or by restarting from scratch *hint**hint*, after making a backup. Maybe this helps you out. ;)