Posts by Sabriath

    Yep, but that honestly wouldn't be much of a problem. For example, if you use BC to pump items into the top a generator, they just have to be extracted from the generator. So if anyone has a problem with that, then...

    I think Alb was talking about items with a recursion loop mechanic. For example, you can macerate ingots back to dust, and then heat it up to get the ingots back. In code, the "backwards" cost of an ingot would get stuck in an endless loop trying to negotiate the cost. There aren't many items that have recursions, and this was the most basic....but others include almost ALL of RP2 (especially the panels and subblocks).


    However, EE already contains a "cost" of materials, so why not do the following:


    1. Create a database with API hooks so that items could be added to the list (with an associated cost) and can be retrieved at any time
    2. Ask Eloraam/SpaceToad to include it into Forge
    3. Use it, and any items not in the list, cannot be a "valid" target for UU creation (maybe have a green/red light to show acceptance). So it leaves it up to the mod developers to add their items to the price list (which also relieves the burden on IC2 of checking if specific other mods are installed).


    Also, when putting UUM into the "input" slot, the machine should accept it as added energy directly (the amount required to make UUM in the first place). Although UUM is not required (the machine _is_ creating matter), it helps in the same manner scrap does in a normal fab. However, this now makes this machine idea a Mass Copier....but I think it's one of the turned down machine ideas, can't remember.


    The item pricing database could be general enough to allow mods that already have a pricing guide institute it without wasting memory on duplicate listings (Tale of Kingdoms and EqEx for example already do item prices). If created, there should be a cfg file so that the prices of the vMC items can be located and altered if player/admin feels the need to. Obviously there would be a conversion multiplier between the price of an item and the EU cost to fabricate it, but I figured it didn't need to be said...prices should just be basic values.

    I personally would love for more devices in an open design rather than the GUI one Alb has for the Nuclear Reactor now (meaning separate the units so that the players can decide how they want to build their engines rather than just the structures around it, making it look like its function). The problem is that Alb said he is "not adding any new blocks" to IC2, and this may require one (or more?) new ID for reactor components (such as the turbine, pressure tank, etc. below). The way I picture it is as follows:


    Air Pipe


    Allows for pressurized gas (for now, refrigerant and steam are the only gas I'll talk about, but more could be added). Along with the gas type flowing through the pipe, you'd need 3 other values to move in code: liquid, gas, and heat. 'Liquid' is how much of the 'gas type' is in the pipe at that location that is in liquid form, and 'gas' is how much is in its gas form. As the pipe 'heat' goes up, its liquid turns to gas if there is room, causing pressure...or if it goes down, it turns gas into liquid if able. The formulas for the values "move" across the pipes similar to liquid in waterproof pipes. The values themselves are limited:


    'liquid'
    from 0 to 100


    'gas'
    from 0 to 800


    'heat'
    from 0 to 1350
    will increase slowly if near lava/fire/engine/etc (reducing those things in heat, or turning lava into obsidian over time)
    will decrease slowly if near ice/water/cooler/etc (increasing those things in heat, or destroying source blocks)
    if above boiling point of liquid type, 'liquid' -1, 'gas' +2, and 'heat' -1 (so that it doesn't boil all at once, requires steady heat over time)
    if below condensation point of liquid type, 'liquid' +1, 'gas' -2, and 'heat' +1
    if below freezing point of liquid type AND 'liquid' is more than 49, pipe turns into "Broken Air Pipe"
    if above 1350, pipe melts (connected pipes become "Broken Air Pipe" and this pipe is destroyed, expelling its ingredients upon deletion)
    if below 270, nearby water will start to freeze


    'pressure'
    not a value, but a calculation, formula is 'gas' / ( 100 - 'liquid' )
    a value of 1 represents atmospheric pressure at sea level/room temp
    a value above 8 turns the pipe into a "Broken Air Pipe" and harms nearby players


    Boiling points
    water 275 + 100 * Pressure
    refrigerant 200 + 50 * Pressure


    Condensation points
    water 270 + 100 * Pressure
    refrigerant 195 + 50 * Pressure


    Freezing points
    water 270
    refrigerant 170


    Broken Air Pipe
    All liquids entering this part of the pipe is attempted to be expelled into the nearby area, 'gas' and 'liquid' values are not transferred to other pipes, but other pipe values are transferred to it ('heat' value is still transferred across pipes).


    Safety Valve
    If the pressure reaches above 7, 'gas' is reduced by 1


    Expansion Valve
    Allows 'liquid' and 'heat' values to move across this pipe (one-way), but 'gas' is blocked. In an AC unit setup, when the liquid moves into the new area, it will quickly expand, causing the pressure to be decreased and the boiling point to lower, which results in boiling and the lowering of the temperature of the pipe.


    Compressor
    Requires power, allows 'gas' and 'heat' to move across this pipe (one-way), but 'liquid' is blocked. This engine will also create 'heat' while running on the output side (+1 per tick?)


    Inline Pump
    Requires power, moves 'gas', 'heat' and 'liquid' across this pipe (one-way). This engine will also create 'heat' while running on the output side (+1 per tick?)


    Radiator
    'heat' in the pipe is reduced by 10 if near air, 50 if near water, or 150 near ice (but ice melts). 'heat' will not reduce below 300


    Bleeder Pipe
    Attempts to move 'liquid' to only 1 of the output faces (only going to the other faces if unable), but 'gas' is allowed to traverse along the other directions (and will not go to the liquid side). 'heat' will move as normal to all faces.


    Turbine
    Moves 'gas', 'heat' and 'liquid' across this pipe (one-way). Each 2 'gas' that is moved, 1 is turned into 2 'liquid' and 1 'heat' is removed and power is made (any 'liquid' that is moved reduces the power output, so best to have a bleeder pipe).


    Air Tank
    Allows 'gas', 'heat' and 'liquid to move in and out, but is limitted to 10 'gas' in/out and 5 'liquid' in/out at a time. Connections at the top will attempt to move 'gas' out first, while 'liquid' is attempted at the bottom. 'heat' is reduced by 1 per tick.



    With these things, you can now make nuclear and boiler generators possible, by just adding 'heat' to the pipe system. Above values are just an example situation, easily changed/configured for balancing. An actual powerhouse generator could be designed and crafted to not only look awesome, but make the players have a sense of accomplishment.


    Example setup would be a loop containing: Air Tank (bottom to) Inline Pump, Heater, Bleeder Pipe (water back to air tank), Turbine, and Radiator (back to air tank). A better setup would involve a line of Bleeder Pipes after Turbines repeated until there was no more 'gas' and then feed back to the tank. Why refrigeration? It can be used to quickly cool an overheating system, create lakes of ice, or a 'Stirling Engine' can be created that creates power based on the difference of heat between 2 pipes (the 'heat' values are averaged out for the pipes). Just a suggestion anyway.



    EDIT: This probably is better as a BC addition, but I sometimes get carried away with my ideas and mods that I use tend to blur together...oh well.

    Feel free to code it, not gonna bother to mess with minecrafts basecode there ^^'

    I didn't realize it would require a basecode overwrite....as I stated earlier, I do not know how to mod for minecraft. The only game I ever modded for was WoW, and the hooks for the game were laid out easily for everyone to see and use. I take one look at a minecraft mod tutorial about "blockthis extends blockthat" and I'm dumbfounded. I can code up something in C/C++ or pseudo-C for you if you want. By the way, FiniteLiquid uses this technique as well, so I know it's possible.

    problem is not CPU, problem is network load, every update must be sent to every player nearby.

    Networks are actually my specialty, which is funny to me seeing that. The updates only need to be sent to players __on completion__. For example, when dust is sitting in an electric furnace, you don't need to tell everyone in the room "it just ate another 20 units of energy" every second...it only needs to tell everyone in the room "hey, I'm done with this piece" every 8 seconds that it takes to burn through it. Just as you don't need to tell everyone how much EU is in _every single machine in the 9x9 chunk range players are in_ <-- that makes no sense. You don't even need to tell anyone how much EU is ANYWHERE unless they CHECK it (with an EU-reader or the GUI of certain machines).


    If SMP is actually sending these updates, then the code is worse than I thought.

    Minecraft is about playing the game though....I would rather have the lag maintained within the machines and not the ENTIRE game. At the moment, I have 8 water mills surrounded by water in a stack feeding a batbox outside (which I planned on increasing later), along with a miner outside being fed by hand until I got the materials needed. Inside my house I have 2 generators (handfed charcoal) to a batbox wired to 2 macerators, an extractor, 2 efurnaces and another batbox which is wired to my recycler and compressor.....I get 10 FPS while within the same chunk as all of these machines, but the moment I step outside, I drop to 1 FPS....ONE (compared to about 30 FPS I get in turning off IC2 in the modloader config).


    I don't sit there with the GUI open watching progress bars move, so I don't see a point in worrying about if there is a "noticed lag spike" on a bar that hardly gets seen...I play minecraft. IC2 isn't the only thing in minecraft to do, I would like to cave dive for enemies for my Tale of Kingdoms mod, or even set up a control station with RP2 but if I'm limited to a 16x16 block chunk, it doesn't get me anywhere. I don't know if anyone else is experiencing such problems, but if you are doing that many updates per tick, you are bound to lag a computer.


    Again, the method I described would only be noticed if you have a GUI open....but even THAT could be resolved so that engines with open GUIs would be updated EVERY tick, while all others operate on the todo list. I suggest the following functions for the 'todo' class:


    add_item - add an engine to the list, giving the x/y/z position of the engine and the callback function as parameters
    remove_item - given an x/y/z position, find the engine in the list, update the engine 1 last time and then remove it from list
    update_item - given an x/y/z position, find the engine in the list, update the engine now
    foreground - find the engine in the list, update the engine, and then place this engine in an "always update" list (remove it from the other list)
    background - find the engine in the "always update" list and remove it, place it back in the 'todo' list


    The callback functions would have a "ticks" parameter which is how many ticks have passed since this engine was last updated. When a player opens a GUI of an engine, obviously you would use 'foreground' until the GUI is closed, then 'background' it.


    An example of how this might work, let's take a solar panel. When the player places the panel in the world, it will call 'add_item' with it's location and a callback to a function that looks like this:


    Code
    update_solar(ticks)
    {
      for(i = y+1; i < maxheight; i++)
        if(!is_air(x,i,z))
          return;
      eunet_add(x,y,z,ticks);
    }


    A possibility of "cheating" can occur in the span of the lag by placing blocks above a solar panel (in this instance) and still receiving the full amount of energy if the block is removed before the update occurs....however there are 2 things to consider:


    1. A block placed directly above the solar panel sends updates to surrounding blocks correct? In that case, "update_item" can be called to immediately update the engine and the player actually loses all the energy up to the last update.
    2. A person who wants to spend their time placing and deleting blocks far above a solar panel to get "free energy from no light" has way too much time on their hands to actually not play the game, so a moot point.


    If you don't want to code it with thread-like abilities, that's fine, I'll have to deal with no IC2 (not even BC2 with a 64x64 quarry and a 16 engine power house lags as much). I would create my own mod if I could, but I can't figure out for the life of me how to (even though I know every programming language, it doesn't tell me the inner workings of MC, modloader, forge, or any of the hooks....and all of the tutorials are about "how to make a block" which doesn't really help either).


    Oh well, nice work on the mod though otherwise.

    We can have our cake and eat it too if only Al introduced roundrobin coding. It works like this, you have a list called "todo", and in this list are IC2 engines that currently need to do something. This list can actually be saved separate from the file, so engines that are in unloaded chunks could still be working (astounding right, wow...anyway). With this list is a variable called "currenttick"....and all it does is increment by 1 every update (1/20th of a second, or whatever future IC tick rates will be) -- if this value is a short, it can easily wrap around without problems. Each engine in the list also contains a "lasttick" value, and during its update, it will subtract the 'currenttick' from 'lasttick' to get how many 'ticks' it needs to work for (and set 'lasttick' to 'currenttick' for the next update).


    Why all this? Instead of updating every engine every tick, you only update the 'todo' class. This class will go through the list of engines and update them individually, and the number of engines that are updated can be _throttled_ <-- very important word. The number of engines updated can be set to a minimum start value (say 10), and this value can be increased slowly (throttled) as long as the FPS rate does not decrease by more than 5%, and will decrease the value if the FPS is above 10% drop. To determine "normal" FPS in order to calculate drop rates, simply put the 'todo' class in a 'hold' state (where it continues to increase 'currenttick' but it doesn't update any machines), and calculate an average FPS over a few seconds.


    This would allow the game to be played without ANY apparent lag whatsoever, but allow for all the machines to work as intended (a solar panel will still give off 12000 EU during the day whether you are on a crappy computer or not).

    From the wiki: "Uranium Cells have a chance to turn into Near-Depleted Uranium Cells when they're used up."


    Am I missing something, or does that mean not ALL of the uranium cells turn into near-depleted? If there is a chance to lose the uranium cells, than you have to account for that loss of item. I have not personally created a nuclear reactor (mainly because I think they are not worth it, and I like to do things "legit" which means no TMIing, so I haven't gotten there yet) so I don't know exactly how it works.

    A fully surrounded uranium cell will give off a 5 million EU of power in its lifetime (if it doesn't explode). This, in conjunction with a mass fab, will produce 5 UUM. The uranium has a chance of becoming a depleted cell which can be re-enriched to produce more power. It makes sense that UUM cannot be used to create uranium, otherwise there is a positive gain from the cycle. You can compare this to the 3 'mills' but those produce far less EU/t and require a massive amount to compensate for what a reactor can do (plus BC can automate this process somewhat).


    However, I do not know the actual UUM craft for what it used to be with uranium, so if it requires at least 6 UUM, then I'm fine with it.

    yellow cake is a uranium compound not a nice meal its radioactive :Reactor: :Reactor: :Reactor: :Uranium Cell:

    No...yellow cake is cake that is yellow colored, but yellowcake (one word) is uranium dust. A lot of people don't realize that it's actually yellow and not green (in fact, it comes mostly from a grayish rock and the more enrichment, the more dark gray it becomes), I guess people played too much Final Fantasy growing up (green for poison).

    In the real world, maintenance is required on "free energy" systems. I think the same thing should apply.


    Solar panels: Either have a small chance of becoming dirty or a damage value associated with it, either way, it will not produce EU if it's dirty. You can build a squeegee (2 sticks and 3 rubber like a pickaxe) in order to clean the top of the solar panels. There could be an option to allow flowing water to clean them too, but I think that could cause a chance of cracking the panels by rapid cooling.


    Wind mills: There is a chance that a "bird" gets caught in the turbine chamber, or whatever explanation you want to give that causes a breakdown. A player must simply click a button in the GUI saying "unclog" or whatever to turn it back on...this maintenance is easy due to the fact that wind farms (in order to be effective) are spread out.


    Water mills: The ingredients are wood, so rotting is an issue. There is a chance that these mills will breakdown and require 4 sticks and 4 planks to turn back on. This can be done in the current GUI or have a different one based on if its in the "broken" state or not.


    This keeps it out of the "set it and forget it" mindset, and may weigh a decision on players on whether they should stick with the generators they have (and supply it with coal, requiring maintenance) or upgrade them to one of the above (which still requires maintenance but less often).

    I don't like the idea of putting miners and pumps at a higher "tier" level (in terms of BetterThenWolves). I would rather see a slow miner receiving around 8 EU/t to keep it at LV comparable machines than to make it require advanced machine blocks and lapatrons. But even at 24 EU/t, I still do not see a problem with using a 32 EU line...however I have not personally had to move a miner that often (I scan for good spots, mine it, and repeat 3 or 4 times until I have enough for a BC quarry).


    Instead of all that mess, why not make a craft AFTER lapatron crystals that reduce the output to LV but still store the 1mEU and not change the charge rate when placed in an MFSU:


    _L_
    GEG
    CEC


    L - lapatron crystal
    E - electronic circuit


    G - gold 2xins cable
    C - copper ins cable


    Input: -
    Output: 31 EU/t (but loses 32 EU/t, a 3.125% loss in stepping down the voltage)
    Storage: 1mEU



    An intermediary device could also be suggested that drops down to MV (not sure of its usefulness though):



    _L_
    GEG



    L - lapatron crystal
    E - electronic circuit


    G - gold 2xins cable


    Input: -
    Output: 126 EU/t (but loses 128 EU/t, a 1.5625% loss in stepping down voltage)
    Storage: 1mEU


    The design allows for a direct decent into the LV output lapatron with this formula:


    _M_
    CEC


    M - MV dropdown lapatron unit
    E - electronic circuit
    C - copper ins cable




    The loss rates are an option suggestion to keep it from being too imbalanced with other engines. This would allow you to place your miner in the middle of nowhere and give it an LV-lapatron and walk away, come back and pick it all up, recharge your LVL and move to the next spot.

    Quote

    Ehm right... and you are sure you understand the difference between burning hydrogen with air ( 2 H2 + O2 => 2 H2O) and fusing 2 Cores into a new one ( Deuterium + Tritium => Neutron + Helium)?


    Yes, and the point of the analogy was to get to the last part of that paragraph, not to correlate burning with fusion (that last part stated "That doesn't mean the energy produced is more than was required to make the thing").




    Quote


    Lol converting mass to energy gives tons of energy. You prolly never saw E=mc2....


    oh and fusion IS NOT BURNING!!!


    1. Maybe you've heard of "activation cost" when it comes to chemical reaction, well it applies to other areas as well. In order to get the "E" part out of mass, you need to perform some actions of conversion (smashing atoms or fracturing them costs energy). Humans do not have the ability to turn mass into energy at a 100% efficiency...in fact, we can't even turn any mass into energy (the HC comes close, but the energy produced from smashing 2 protons is miniscule to detect, we only see the aftershock from magnetic detectors). A nuclear reactor only yields maybe 0.1% efficiency of the possible energy the uranium could provide, and even that's over-exaggerating. Yes, I am comparing fission energy to atomic deconstruction because it's the closest to entropy we have.



    2. I know fusion is not burning, when did I say that? Again, caught up in analogies, I won't use them I guess, it confuses you guys.


    Quote

    I have a degree in the field. You are wrong. Gorni and Rick have already explained why, so I won't repeat.

    A man in the field would not state another one is wrong in such a trolling fashion. Plus, if they were right, then there would be fusion reactors all over the planet and we'd be harnassing the power of a thousand suns....we're not, and all the tests of the "Iter" like devices have all shown far below expected values.

    Quote

    >> "Its not a perpetual mobile. It basically converts mass to energy. So you are right it has to come from somewhere and it does come from somewhere."


    Converting mass to energy requires energy, and trying to get more energy out of a system that was put into it is over -unity and more mythological as world peace.

    Quote


    >> "D + T => n (14.1 MeV) + He(3.5 MeV) This means 1 kg of this fuel gives out 100 GWh.
    No perpetual motion there.
    Your turn."


    I'm not understanding your formula, but I'm assuming you got it off this wikipedia article:



    http://en.wikipedia.org/wiki/Fusion_power


    I'm gladd you can read, so here's some more material for you:


    http://www1.eere.energy.gov/hy…oduction/natural_gas.html


    That's the method used for about 95% of the US. Not saying it's the best, but let's look at electrolysis:


    http://en.wikipedia.org/wiki/Electrolysis_of_water


    quote: "Water electrolysis does not convert 100% of the electrical energy into the chemical energy of hydrogen"


    It's actually closer to 60-85% effeciency when not including the burning-to-energy conversion (and using methods by many DIY people on youtube), simply the process of creating the H2 from water (the previous mentioned method of production is a bit above this one).


    Now that we got the hydrogen from water, we can just smash it all together to form a sun right? No, Lawson criterion wants to dope it to make deuterium (quickly burns up in the sun, but hey, that's Lawson criterion for you) and tritium (which is itself fissile and I question that the energy got out of this system is merely this decaying)...are these methods free to make, or are we just ignoring all the steps of energy required in the system? Even then, you get neutron radiation as the byproduct, yay...and how exactly will that help, or did some magical box get created that suddenly absorbs neutrons and produces electricity? Oh, and don't forget the energy used in the electromagnetic torus and the air conditioning units.


    Or you can do what I originally stated in my earlier post, simply get a massive amount of hydrogen (1e30 grams of it) and voila. Just having that much mass in one general location would cause the atoms to ball from gravity until the center begins to fuse from its own pressure and bam, herpes...I mean sun.


    Quote

    >> "Oh and guess why almost every nuke today uses a fusion booster"


    Now you know something about nukes do you? When you decide to light your bbq grill with lighter fluid as opposed to lighter fluid plus gunpowder...obviously the latter will have more effect. We all know hydrogen burns, you throw a bunch of it compressed on the back of a nuke, obviously it will be bigger. That doesn't mean the energy produced is more than was required to make the thing.

    >> "before posting meaningless BS, pls take a second to get acquainted with actual research. and take a look at the iter project. thx"


    I have and I know about it...but just because someone is getting grants to do research on something, doesn't make it any more possible or proven efficient. Look at all the companies/idiots trying to create perpetual motion for example. There was a device created years ago (similar to the design of Iter) that injected hydrogen on small scales in a magnetic centrifuge but the power output was less than that of straight burning it in comparison (and burning is 80% efficient).


    So before posting a comment as if I know nothing, you might want to say to yourself "this guy might know wtf he's talking about, maybe he has degrees in the field," or at the very least, rub a couple of your neurons together to remember that you can't create more energy than you put into a system....ever! Even our own sun has limited power, it will eventually die, that's called entropy (although it's more of the expanding universe theory and the cooling effect, but we won't get into quantum mechanics and other proofs when you can't even handle basic Einstein energy law).

    >> "First of all, something that eats 24 EU/t shouldn't be running on LV."



    Uhhh....what? Isn't LV anything up to 32 EU/t....and isn't 24 less than 32? That's like saying your vacuum cleaner should be using your clothes-dryer outlet just because it uses 80% of the amps allotted for the other outlets -- ridiculous and absurd!



    Increasing the square range of the miner and allowing configuration on-the-fly (and not the cfg file) of what to pick up would be awesome. Why is the cfg file not good enough? Well, imagine a miner going down and hitting an abandoned mine, no reason to let all that plank/fence/etc. go to waste right...but you might not want the miner to ALWAYS collect that stuff.



    Also, as I may have stated already, it would be nice to put those foam pellets in the piping slot and take out the drill to cause the miner to backfill foam in the area it just mined. I'm not sure 100% on how MC renders blocks, but I would imagine that a block face that is against another solid will make MC not place it into the texture list...which could possibly speed up the chunk modeling if all those holes were filled in with solids.

    A fusion reactor would require more energy than you would get out. I know this is just a game, but still, IC2 (to me) tries to mimic real life components in some fashion.....do we have fusion reactors? And no, the HC is not a fusion reactor in any sense.


    In order to create a sun, you would need a yotta-mega-gram of hydrogen (that's 1e30) compressed until self-fusion reaction occurs. Currently, in order to get hydrogen from water, it requires about 1kj of power to produce 22g of hydrogen...which means you would need 45.5 yotta-mega-joules of power in order to create enough material (at the current rate of a nuclear reactor in IC2 pumping out say 400 EU/s, it would take 3.6 zetta-years). AND that would require 8x more water as resource in order to make the hydrogen in the same mass. PLUS, the energy produced by this sun with our current technology only allows us to absorb and use only about 80% of it back as EU in the system....there is no perpetual engines in thermodynamics, there is always loss somewhere.


    This is why fusion reactors are not feasible, in real life, but if you want it in a game, fine, but I won't be using it (I feel it is either OP or useless no matter how you justify it).

    14:3 - gold block


    15:4 - iron block
    16:1 - coal block
    21:3 - lapis
    56:5 - diamond
    73:3 - redstone
    247:4 - uranium
    248:2 - tin
    249:2 - copper


    How exactly is that metadata? Anyway, those values are how valuable the ores are, for the OV/OD scanners.

    miner is for ores, for bulk recovery there's quarry

    There's a quarry machine in IC2? I was sure I didn't see one in the list....? Or did you mean the quarry in buildcraft, which is a completely different mod altogether and shouldn't have any relation to this one at all. Well since buildcraft has a quarry, why not just get rid of the miner altogether....right?


    Let's keep the mods separate, that would be great.