Posts by Cadde

    you dont need MCP for this, all IC2 methods and classes have proper names, decompile class and check whatever you want.


    Yes, but MCP is easier for those who don't have JD-gui etc. It decompiles everything and it makes it easier to follow the source in eclipse since the eclipse workspace that comes with MCP is set up and ready to go.
    Plus, if you fix the decompile errors you can make changes and test them easily. Can't say the same about manually decompiling everything.
    Hence why i suggested MCP.


    EDIT: Oh and MCP de-obfuscates for you. So the few vanilla MC calls made from IC have readable names instead of aa.bb.xyz()

    Just FYI, it took 1 hour just to get the first generator and macerator going... Redstone is the problem. I dug for a very long time just to find enough to make the battery for the generator and the 3 circuitits for two macerators and one electro furnace.
    Then i had to dig for some more to make a drill, chainsaw and a bat box.


    I also had to start off the first minecraft day with cutting down trees to make a shelter, as well as a few fences to plant melon seeds without them being trampled. I had to gather some food and kill 3 sheep to make a bed. I also had to make ladders so i could go down a cave that had a straight vertical drop. Among all the other bits and pieces like 3 stone furnaces, a chest (because i forgot to give myself chests, so i made some so i didn't have to start over just to add some chests to my character.


    ...


    May i suggest we simply compare build times instead?
    We are given the resources needed to build the stuff. The competiton ends when both have Q-Boots. If one has his Q-boots before the other he will simply focus on mining as much materials as he can to show the difference in time spent vs resources mined between the two.
    If wind power (which is cheaper, i don't argue that) takes longer to build and thus solar power manages to gain a lot of resources in the mean time, enough to offset the costs of solar power then resources are not important in the end. What's important is the time it takes to set them up.


    On a side note, before i had found some redstone (i did gather other ores while i was looking for it) i managed to find 143 copper, 131 iron, 56 tin, 4 gold and 86 coal. That's what i returned home with after having found ~4 redstone blocks, a total of 13 redstone dust.
    I spent roughly 15 minutes on the surface to build my base. I then spent ~35 minutes gathering ores in the underground. So in 35 minutes, that's what i managed to find using a diamond pickaxe. Though, much of that time was also spent walking around a cave system placing torches to stop those pesky skeletors, spiders and creepers for sneaking up on me while i cut stuff out of the walls.
    I would think it's actually faster to find resources by digging 1x2 tunnels instead because you don't have to fight off mobs.. Skeletons have aimbot as well, killing one means you are likely to get hit once. Killing 2 of them at the same time means you are getting hit up to 3 times.
    Thus you have to wait for your health to go back up slowly. (That i had to do a few times during those 35 minutes)


    Still, i am certain that since a solar array is so easy (and thus fast) to build. The time saved is worth A LOT in resources as that time can be spent looking for resources.


    EDIT:


    Oh and i am taking a break now, my friends woke up and they want to play Battlefield 3.

    This whole thread is pointless until someone wants to compare the two alternatives in a REAL LIVE situation.
    You can pull all the numbers you want out of your hole but that doesn't compare to what happens in a game.


    I shall start a new world using only IC2, give myself the starting resources suggested and build a solar farm which i will then use to UU-M myself some Q-boots. Using any resources i have to spare to make scraps to speed up the process.
    Then i shall start another world (new random one as to not use my familiarity with the first and build a wind farm with the same goal as the solar one.


    Results will not be 100% accurate since there are so many randoms to deal with (ore distribution being the major one) but they will give me a guideline as to which is the best after all is said and done.
    The moment i have Q-boots in my hand i will stop the timer and close the world.
    Then, the world that was the fastest will be played until both worlds have been played equally long. Any extra resources i have over on the fastest world after i have matched them in time spent will be taken into consideration as to which wins in resources in the end.


    Unless someone throws himself at me saying he wants to do the competiton after all...


    EDIT: If it turns out (during my personal testing) that i am right and Rick is wrong, i would have him leave these forums for all eternity because he is a troll.

    With my totally non-scientific method of observation I also noted that tapping empty holes kills your taps pretty quick. (twice as fast?) I didn't test it much just stoped doing it. Have not tried it in 1.337b


    Good thing then that it was totally non-scientific or otherwise i would have your licence revoked. ;)


    Code
    setMaxDamage(16);
    ...
    itemstack.damageItem(1, entityplayer);


    Those two are the ONLY codes that deals with tree tap damage. You get 16 uses per tree tap, empty hole or not.


    When using a (RP2) deployer the "entityplayer" is "world" or "null" (IIRC, cannot remember which of the two it was though) but they should still work. I shall test this later and return with my findings.
    When a sap hole emits resin it doesn't care about blocks in front of it. the resin will fall into (and out of if no block is surrounding) the deployer. If you can't catch the resin with something (flowing water) then use an obsidian pipe. (BC's obsidian pipes suck items THROUGH blocks)

    Do you get butterflys when your about to wrench said MFE? I do.


    Have you (or anyone else for that matter) had an MFE break on you when you wrench it?


    As far as i can tell, looking over the source code, MFE's should not break from wrenching.


    Code
    public float getWrenchDropRate()
        {
            return 1.0F;
        }


    That is the default wrench drop rate.



    Code
    if(world.rand.nextFloat() <= iwrenchable.getWrenchDropRate())
                        {
                            arraylist.set(0, new ItemStack(i1, 1, j1));
                        }


    That is the code for when you wrench something. If a random float between 0 and 1 returns less than ore equal to "getWrenchDropRate()" the block is returned as normal.


    Since the MFE doesn't implement IWrenchable, nor does it's base class TileElectricBlock, nor does that base class TileEntityMachine. The first class in that chain to implement IWrenchable is TileEntityBlock. (Used for all things IC2 pretty much)
    The MFE uses the standard wrenchDropRate from TileEntityBlock (Which is 1.0F) and as such should NEVER break from wrenching. The same applies to bat boxes and MFSU's.


    And before you go thinking that a random.nextFloat() <= 1.0 means there is a chance that the random.nextFloat will return 1.0 and this break the machine. If it could do that then all machines that shouldn't break from wrenching could break when doing so.
    But yeah, random.nextFloat() cannot return a value of 1.0...


    Quote from &quot;http://docs.oracle.com/javase/1.4.2/docs/api/java/util/Random.html#nextFloat()&quot;

    The general contract of nextFloat is that one float value, chosen (approximately) uniformly from the range 0.0f (inclusive) to 1.0f (exclusive), is pseudorandomly generated and returned. All 224 possible float values of the form m x 2-24, where m is a positive integer less than 224 , are produced with (approximately) equal probability. The method nextFloat is implemented by class Random as follows:


    Code
    public float nextFloat() {
          return next(24) / ((float)(1 << 24));
     }

    I use MCP (Minecraft Coder Pack) which can be found here: http://mcp.ocean-labs.de/index.php/Main_Page


    To decompile IC2 you need to install ModLoader, ModLoaderMP, Forge and finally Industrial Craft into a 1.8.1 minecraft.jar and place it in the "jars/bin" folder. Then you run decompile.bat (or decompile.sh on linux) and all source files end up in the "src" folder.
    You WILL get a bunch of errors when you decompile. There will be a set of "HUNK FAILED" messages, for each of those there will be a file created like "classname.java#" where class name is the class that failed.


    I also include the IC 1.23 decompilation fixes: http://forum.industrial-craft.…page=Thread&threadID=1443
    This helps with some things when decompiling 1.337 but you have to manually patch the "mod_ic2.java" file.


    For instance, the patch meant to do this:


    "- public static Block blockCable = new BlockCable(getBlockIdFor("blockCable", 228));"
    "+ public static Block blockCable;"
    Pretty much removing the default value of the initialization. I figured out that doing that doesn't give you the expected results. You are better off commenting out the late assignments in the "static { ... }" clause further down in the file.


    If you don't intend to recompile, then making fixes is needless. Just be aware that if you don't make the fixes then you might have some inconsistent results.


    While i use the patched MCP 4.4 to decompile IC2 1.23 it's not recommended to use it for 1.337 and if you are going to make chances and recompile it's better to make all the fixes manually (and release a .patch file in the addons section if you want to)

    I had this exact same issue, on both my home computer and a crappy old thinkpad T61 I sometimes use. I think it has to do with the way it interfaces with the sound card drivers. Both systems have a basic on board sound card. The fix worked as well for me, but only LWJGL 2.7.1 woked. There are newer versions available (up to 2.8.2 as of this post) but all of them cause minecraft to crash shortly after logging in.


    Good to know, thanks for the contribution!

    The string is too long. (I don't know which string that is)
    1,953,068,645 is 1.95 BILLION, a string that long would take up nearly 1.8 gigabyte of memory.
    I also believe the max string length is 65535 not 6535 since representing the value 65535 takes two bytes in a computer. (2^16, or 16 bits)


    With that error given, it's nearly impossible to trace it to a problem. We need more details!


    Not exactly. The 1.23 -> 1.337b compatibility was sort of a one time thing. 1.15 addons (for 1.7.3) weren't compatible with 1.23 (for 1.8.1) when it came out.


    Well obviously since they where two different MC versions. I am talking about between IC versions here that doesn't move to another MC version.
    MC 1.0.0 is as ready as it can be, when IC2 updates to 1.0.0 i bet all the addons (that are in use) will get updated rather quickly.

    Rick... You are only thinking about the difference in resource costs. I am thinking about both the difference in resource cost and time to set up as well as how tedious+difficult it is.
    My point isn't that solars are cheaper to build in resources. my point is that in the time it takes to make an equally well performing wind farm to my solar farm you are going to spend MUCH MORE time building and crafting and walking/climbing. You would do well with a jet pack but then you have to build that. You would do well with a water hole to fall into, each time you do you still have to climb back up there.


    In the time it takes you to finish your wind farm, i able to finish my solar farm AND resume looking for resources. Can your resources comparisons match some diamonds, a few stacks of iron ore, copper ore, tin ore and redstone dust as well as some stacks of cobble to run through a recycler etc etc?
    You would still be building after i have gathered enough resources to build another solar farm!

    Are you aware of the complexity of the micro block system? Do you understand that you would have to add pretty much the whole of RP2 core to the addon in question to make it work?
    Did you know that Eloraam have specifically asked modders NOT to re-distribute her code, reverse engineer it or otherwise mess with it?


    Sure, we don't HAVE to follow her wishes, while we can't re-distribute her code we could reverse engineer it and make a clone of our own. We would be going against her wishes but we would be perfectly right in doing so.
    Alternatively we could write our very own microblock system from scratch... But we are still stuck with the complexity of doing such a thing. Is it worth it?
    The microblock system in RP2 makes a lot of sense since redstone wiring and stuff like that can easily take up more space than the actual machines the redstone is designed to control. Just look at all the digital clocks people have made using RP2. The circuitry is still several times larger than the display. (Whereas in reality, the circuitry for such clocks have always the same size as the display or smaller.


    Before RP2, the circuitry for such a clock took up a field as far as you could see. And was VERY tall as well.
    So once more, sub-blocks in RP2 makes sense because they have a real use. Jacketed wires is just a bonus feature because the system was already written and in place.

    You can use rubber :Rubber Boots: boots for landing. they should stop all falldamage now as well. and it's a resource you already should have plenty of. I like to keep a pair on hand all the time, even with a jetpack in use... never know when you'll run out of fuel/energy.


    Nope, if you fall more than a certain number of blocks even with rubber boots you will take damage. Read the source on that just now to check.
    However, the fall distance in source is not the number of blocks you have fallen and i don't know the conversion ratio. It might be blocks per x ticks or something, like i said, not sure.

    Bricked almost has a good idea there. You want the LV tin cable for the top 40, then a transformer capable of handling the entire maximum input (either an MVTF or an LVTF; it's actually easier (though not cheeper) to build an MVTF) then some proper cable to where-ever... of course you could also just thunk a storage unit at level 88 and call that your treehouse base.


    Still needs to /get/ there and build that stuff.


    Have we tested to see if tin cables can melt from wind gens yet? Production of a wind gen can exceed 5 during the right conditions.

    Thanks MJ, but i feel Rick isn't up to the task. And he thinks 1+1=2 is equally simplistic to solar power being OP against wind power. That is a very simple mindset from a very simple mind IMHO.


    EDIT:


    About the ingots, good call, makes sense!
    But about the Q boots, wouldn't it suffice to give each player a set of 8 MFSU's or something along those lines. The person who fills his 8 MFSU's first (using wind/solar) wins? There might even be a solution for a detector cable in there somehow?
    Obviously the MFSU's will not be in serial as that would limit the energy production to 512 EU/t. I doubt we will breach 4096 EU/t...


    And about mobs... Creepers are very random and if they blow up your MFSU's or your matter generator etc etc. That doesn't a good test make.
    I am not afraid of them but i can only imagine the frustration when after a few hours of hardcore competition one player gets the odd creeper that spoils the test. We don't get a definite answer that way.


    EDIT #2: You have a PM MJEvans!

    This was a question posed in a thread that is now closed. How often can you tap a resin hole using a timer (RP2 stuff) without breaking the hole.


    ------


    The meta data of the block is as follows:
    1 = Not a resin block, just a normal rubberwood
    2-5 = resin in hole (The different numbers are for the different faces, East, West, North, South)
    8-11 = no resin in hole (The different numbers are for the different faces, East, West, North, South)


    If there is resin in the hole, you can use the tree tap on it and gain between 1 and 3 resin. The number 6 is now added to the meta data of the block. (turning it into one of the empty faces for E,W,N,S respectively)
    The block is scheduled to update in 100 ticks (5 secs).


    If there is no resin in the hole, the block is updated after 100 ticks (5 seconds).
    Here, there is a 1 in 200 (0.5%) chance that the blocks meta data will be set to metadata % 6. Effectively adding resin in the hole again. Thus, statistically it should take ~1,000 seconds (16 minutes and 40 seconds) for a resin hole to refill.
    If the resin hole isn't filled, the block is scheduled for another update. Until the hole gets filled. (All based on chance)


    IF you use a tree tap on an empty hole there is a 1 in 5 (20%) chance that the hole will be destroyed. Leaving you with just a rubbertree block.
    However, there is an additional 1 in 5 (20%) chance that you extract 1 resin out of an empty hole. Destroyed after the fact or not, doesn't matter.
    So before you cut down a rubber tree that has empty holes in it. It is a good idea to tap all empty holes until the disappear (unless you are in love with that particular tree tap)
    Doing so will give you one extra resin per 5 holes you tap on average.


    Now you know all you need to know about resin extraction.


    EDIT: Updated a miss i made, meta 8-11 is no resin in hole. Had it wrong at 7-11.

    I also have capacity available on my server (16GB i5, symmetric 25Mbit)


    Will be mostly unavailable until after Christmas, though. :(


    Heck, I'd be willing to play the wind gen part, just 'cause it sounds like fun. lol


    Well, i am still up for the challenge. Get the issue settled once and for all. It doesn't have to be Rick doing it as long as we can get the actual differences tested in the practical world.