Posts by MJEvans

    Quite; while your probably won't blow up (for a while; I suspect the cooling water may evaporate enough for it to slowly heat up), it will swing through the zone where the reactor hurts the user. My reactor design replaces exterior water cooling with a little internal cooling and the IHDs also act as dampeners for the thermal swings to keep the reactor in the sweet zone without going over 70% max temperature.

    I was initially planning a master clock for 4 reactors, so toggling the clock there was not a design consideration. Each reactor has (was planned, only one was built) individual controls for all the options (force reaction every tick, water on/off, warmup clock, and master off+cool).

    I honestly don't see how a toggle latch would have any fewer issues than the RS latch. I'm leaning towards every so-often the reactor evaporating the block coming down from the source block and causing a void to flush across it just long enough for at least one cooling to be absent. The redpower2 waveform issue (is it off by one/two on length, delay/sync etc) I could probably spend a whole evening wiring up a crap-load of latches delays and redpower2 light blocks to capture a snapshot of; but I don't really want to expend that level of effort when there's a more promising design that has better specs anyway.

    It also has two major advantages I've learned since last build.
    #1 redpower2 logic can live on walls.
    #2 I seriously just cannot rely on exterior water-cooling (except maybe as an emergency shutdown thing) if I want any modicum of reliability. I haven't seen it happen but that makes the most sense.

    Here's the python2 script:

    The important part is that I've used values to simulate a redpower2 clock, counter and sequencer.


    warmup_cycles = 46 << counter
    warmup_len = 13 << one sequencer side
    warmup_len2 = 39 << three sequencer sides

    (every other for the bucket, the clock, actually a second clock for filling the water buckets/extracting would be more reliable)


    Display Spoiler

    #!/usr/bin/python2
    import sys
    from math import floor, ceil

    debug = 0
    init_temp = 0
    bucket_tick = 0
    warmup_cycles = 46
    warmup_len = 13
    warmup_len2 = 39

    class reactor:
    t = 0
    t_limit = 14000
    name = "core"
    children = []
    def __init__(self):
    self.t = 0
    self.children = []

    def tick(self):
    self.t = self.t - 14
    if len(self.children) > 0:
    for ch in self.children:
    if ch.tick() == False:
    ch = "NaN"
    if self.t > self.t_limit:
    print "Reactor component lost: %s" % (self.name)
    self.t = 999999
    sys.exit()

    def add_child(self, child):
    self.children.append(child)

    def remove_child(self, child):
    self.children.remove(child)

    def csv(self):
    print unicode(self) + "," , ",".join((unicode(s) for s in self.children))

    def __unicode__(self):
    return unicode(self.t)


    class reactor_IHD(reactor):
    parent = None
    t_limit = 10000
    name = "IHD"
    def __init__(self, parent):
    self.t = 0
    self.children = []
    self.parent = parent
    parent.add_child(self)

    def tick(self):
    if len(self.children) > 0:
    temp = self.t

    for ch in self.children:
    temp = temp + ch.t

    t_avg = temp / (1 + len(self.children))

    for ch in self.children:
    d = t_avg - ch.t
    if d > 12: diff = 12
    if d < -12: diff = -12
    self.t = self.t - ceil(d / 2.0)
    ch.t = ch.t + ceil(d / 2.0)
    if debug:

    print "%s : %d\t<>\t%s : %d" % (self.name, self.t, ch.name, ch.t)
    d = self.t - self.parent.t
    if d > 50: d = 50
    if d < -50: d = -50
    self.t = self.t - floor(d / 2.0)
    self.parent.t = self.parent.t + floor(d / 2.0)
    if self.t > self.t_limit:
    print "Reactor component lost: %s" % (self.name)
    return False
    if debug:
    print "%s: %d" % (self.name, self.t)


    class reactor_cool(reactor):
    t_limit = 10000
    name = "cool"
    def __init__(self, parent):
    self.t = 0
    self.children = []
    parent.add_child(self)

    def tick(self):
    if self.t > 1:
    self.t = self.t - 1
    if self.t > self.t_limit:
    print "Reactor component lost: %s" % (self.name)
    return False
    if debug:
    print "%s: %d" % (self.name, self.t)


    # setup reactor

    r = reactor()
    r.t = init_temp
    #r.t = 0


    i = reactor_IHD(r)
    i.name = i.name + "_0"
    i.t = init_temp

    c = reactor_cool(r)
    c.name = c.name + "_0.1"
    c.t = init_temp
    i.add_child(c)


    c = reactor_cool(r)
    c.name = c.name + "_0.2"
    c.t = init_temp
    i.add_child(c)


    i = reactor_IHD(r)
    i.t = init_temp
    i.name = i.name + "_1"

    c = reactor_cool(r)
    c.name = c.name + "_1.1"
    c.t = init_temp
    i.add_child(c)

    c = reactor_cool(r)
    c.name = c.name + "_1.2"
    c.t = init_temp
    i.add_child(c)

    i = reactor_IHD(r)
    i.name = i.name + "_2"
    i.t = init_temp

    c = reactor_cool(r)
    c.name = c.name + "_2.1"
    c.t = init_temp
    i.add_child(c)

    i = reactor_IHD(r)
    i.name = i.name + "_3"
    i.t = init_temp

    c = reactor_cool(r)
    c.name = c.name + "_3.1"
    c.t = init_temp
    i.add_child(c)


    for x in xrange(1,warmup_cycles):
    for y in xrange(1,warmup_len):
    r.t = r.t + 270
    r.tick()
    r.csv()
    for y in xrange(1,warmup_len2):
    r.tick()
    r.csv()

    for x in xrange(0,99999):
    print "\nTick %0.3d" % (x),
    r.t = r.t + 270
    if x % 2 == 1 and x >= bucket_tick:
    r.t = r.t - 500
    print "\t%0.5d\tBucket at %d" % (r.t, x)
    else: print "\t%0.5d" % (r.t)
    r.tick()

    Using Redpower2, instead of buildcraft, why not combine a timer and counter? The timer constantly pulses while the reactor is on, and the counter ticks up/down based on the timer. When it's done you'll need some kind of latch (RS or toggle) that also forces the reactor off. A toggle of either kind might be used to switch from count-up to count-down and reset things again.

    Edit: -much- more data.

    This is the automated warmup timer I'll probably build for my self and my modification of the design later this week/weekend.

    Here is the python2 script I used to calculate the values:
    -- Oops too big I'll carry over in to a new post --

    Here are the values until it stabilizes:

    Display Spoiler

    1872.0, 126.0,76.0,76.0,126.0,76.0,76.0,169.0,120.0,169.0,120.0
    205.0, 197.0,203.0,203.0,199.0,206.0,206.0,202.0,208.0,205.0,212.0
    2077.0, 325.0,277.0,277.0,329.0,279.0,279.0,374.0,324.0,377.0,328.0
    409.0, 400.0,406.0,406.0,403.0,410.0,410.0,406.0,412.0,409.0,415.0
    2281.0, 528.0,480.0,480.0,533.0,483.0,483.0,578.0,528.0,581.0,531.0
    612.0, 604.0,610.0,610.0,608.0,613.0,613.0,610.0,615.0,612.0,619.0
    2484.0, 732.0,684.0,684.0,736.0,687.0,687.0,781.0,732.0,784.0,735.0
    816.0, 808.0,814.0,814.0,810.0,817.0,817.0,813.0,819.0,816.0,822.0
    2688.0, 936.0,888.0,888.0,940.0,890.0,890.0,985.0,935.0,988.0,938.0
    1019.0, 1011.0,1017.0,1017.0,1014.0,1021.0,1021.0,1017.0,1023.0,1020.0,1026.0
    2891.0, 1139.0,1091.0,1091.0,1144.0,1094.0,1094.0,1189.0,1139.0,1192.0,1142.0
    1223.0, 1215.0,1221.0,1221.0,1218.0,1224.0,1224.0,1221.0,1226.0,1223.0,1230.0
    3095.0, 1343.0,1295.0,1295.0,1346.0,1298.0,1298.0,1392.0,1343.0,1395.0,1346.0
    1427.0, 1419.0,1424.0,1424.0,1421.0,1428.0,1428.0,1424.0,1430.0,1427.0,1434.0
    3299.0, 1547.0,1498.0,1498.0,1551.0,1501.0,1501.0,1596.0,1546.0,1599.0,1550.0
    1630.0, 1622.0,1628.0,1628.0,1625.0,1632.0,1632.0,1628.0,1633.0,1631.0,1637.0
    3502.0, 1750.0,1702.0,1702.0,1755.0,1705.0,1705.0,1799.0,1750.0,1803.0,1753.0
    1834.0, 1826.0,1832.0,1832.0,1829.0,1835.0,1835.0,1832.0,1837.0,1834.0,1840.0
    3706.0, 1954.0,1906.0,1906.0,1957.0,1909.0,1909.0,2003.0,1954.0,2006.0,1956.0
    2038.0, 2030.0,2035.0,2035.0,2032.0,2039.0,2039.0,2035.0,2041.0,2038.0,2044.0
    3910.0, 2158.0,2109.0,2109.0,2162.0,2112.0,2112.0,2207.0,2157.0,2210.0,2160.0
    2241.0, 2233.0,2239.0,2239.0,2237.0,2242.0,2242.0,2239.0,2244.0,2242.0,2248.0
    4113.0, 2361.0,2313.0,2313.0,2365.0,2316.0,2316.0,2410.0,2361.0,2414.0,2364.0
    2445.0, 2437.0,2443.0,2443.0,2439.0,2446.0,2446.0,2442.0,2448.0,2445.0,2452.0
    4317.0, 2565.0,2517.0,2517.0,2569.0,2519.0,2519.0,2614.0,2564.0,2617.0,2568.0
    2649.0, 2640.0,2646.0,2646.0,2643.0,2650.0,2650.0,2646.0,2652.0,2649.0,2655.0
    4521.0, 2768.0,2720.0,2720.0,2773.0,2723.0,2723.0,2818.0,2768.0,2821.0,2771.0
    2852.0, 2844.0,2850.0,2850.0,2848.0,2853.0,2853.0,2850.0,2855.0,2852.0,2859.0
    4724.0, 2972.0,2924.0,2924.0,2976.0,2927.0,2927.0,3021.0,2972.0,3024.0,2975.0
    3056.0, 3048.0,3054.0,3054.0,3050.0,3057.0,3057.0,3053.0,3059.0,3056.0,3062.0
    4928.0, 3176.0,3128.0,3128.0,3180.0,3130.0,3130.0,3225.0,3175.0,3228.0,3178.0
    3259.0, 3251.0,3257.0,3257.0,3254.0,3261.0,3261.0,3257.0,3263.0,3260.0,3266.0
    5131.0, 3379.0,3331.0,3331.0,3384.0,3334.0,3334.0,3429.0,3379.0,3432.0,3382.0
    3463.0, 3455.0,3461.0,3461.0,3458.0,3464.0,3464.0,3461.0,3466.0,3463.0,3470.0
    5335.0, 3583.0,3535.0,3535.0,3586.0,3538.0,3538.0,3632.0,3583.0,3635.0,3586.0
    3667.0, 3659.0,3664.0,3664.0,3661.0,3668.0,3668.0,3664.0,3670.0,3667.0,3674.0
    5539.0, 3787.0,3738.0,3738.0,3791.0,3741.0,3741.0,3836.0,3786.0,3839.0,3790.0
    3870.0, 3862.0,3868.0,3868.0,3865.0,3872.0,3872.0,3868.0,3873.0,3871.0,3877.0
    5742.0, 3990.0,3942.0,3942.0,3995.0,3945.0,3945.0,4039.0,3990.0,4043.0,3993.0
    4074.0, 4066.0,4072.0,4072.0,4069.0,4075.0,4075.0,4072.0,4077.0,4074.0,4080.0
    5946.0, 4194.0,4146.0,4146.0,4197.0,4149.0,4149.0,4243.0,4194.0,4246.0,4196.0
    4278.0, 4270.0,4275.0,4275.0,4272.0,4279.0,4279.0,4275.0,4281.0,4278.0,4284.0
    6150.0, 4398.0,4349.0,4349.0,4402.0,4352.0,4352.0,4447.0,4397.0,4450.0,4400.0
    4481.0, 4473.0,4479.0,4479.0,4477.0,4482.0,4482.0,4479.0,4484.0,4482.0,4488.0
    6353.0, 4601.0,4553.0,4553.0,4605.0,4556.0,4556.0,4650.0,4601.0,4654.0,4604.0
    4685.0, 4677.0,4683.0,4683.0,4679.0,4686.0,4686.0,4682.0,4688.0,4685.0,4692.0
    6557.0, 4805.0,4757.0,4757.0,4809.0,4759.0,4759.0,4854.0,4804.0,4857.0,4808.0
    4889.0, 4880.0,4886.0,4886.0,4883.0,4890.0,4890.0,4886.0,4892.0,4889.0,4895.0
    6761.0, 5008.0,4960.0,4960.0,5013.0,4963.0,4963.0,5058.0,5008.0,5061.0,5011.0
    5092.0, 5084.0,5090.0,5090.0,5088.0,5093.0,5093.0,5090.0,5095.0,5092.0,5099.0
    6964.0, 5212.0,5164.0,5164.0,5216.0,5167.0,5167.0,5261.0,5212.0,5264.0,5215.0
    5296.0, 5288.0,5294.0,5294.0,5290.0,5297.0,5297.0,5293.0,5299.0,5296.0,5302.0

    7168.0, 5416.0,5368.0,5368.0,5420.0,5370.0,5370.0,5465.0,5415.0,5468.0,5418.0
    5499.0, 5491.0,5497.0,5497.0,5494.0,5501.0,5501.0,5497.0,5503.0,5500.0,5506.0
    7371.0, 5619.0,5571.0,5571.0,5624.0,5574.0,5574.0,5669.0,5619.0,5672.0,5622.0
    5703.0, 5695.0,5701.0,5701.0,5698.0,5704.0,5704.0,5701.0,5706.0,5703.0,5710.0
    7575.0, 5823.0,5775.0,5775.0,5826.0,5778.0,5778.0,5872.0,5823.0,5875.0,5826.0
    5907.0, 5899.0,5904.0,5904.0,5901.0,5908.0,5908.0,5904.0,5910.0,5907.0,5914.0
    7779.0, 6027.0,5978.0,5978.0,6031.0,5981.0,5981.0,6076.0,6026.0,6079.0,6030.0
    6110.0, 6102.0,6108.0,6108.0,6105.0,6112.0,6112.0,6108.0,6113.0,6111.0,6117.0
    7982.0, 6230.0,6182.0,6182.0,6235.0,6185.0,6185.0,6279.0,6230.0,6283.0,6233.0
    6314.0, 6306.0,6312.0,6312.0,6309.0,6315.0,6315.0,6312.0,6317.0,6314.0,6320.0
    8186.0, 6434.0,6386.0,6386.0,6437.0,6389.0,6389.0,6483.0,6434.0,6486.0,6436.0
    6518.0, 6510.0,6515.0,6515.0,6512.0,6519.0,6519.0,6515.0,6521.0,6518.0,6524.0
    8390.0, 6638.0,6589.0,6589.0,6642.0,6592.0,6592.0,6687.0,6637.0,6690.0,6640.0
    6721.0, 6713.0,6719.0,6719.0,6717.0,6722.0,6722.0,6719.0,6724.0,6722.0,6728.0
    8593.0, 6841.0,6793.0,6793.0,6845.0,6796.0,6796.0,6890.0,6841.0,6894.0,6844.0
    6925.0, 6917.0,6923.0,6923.0,6919.0,6926.0,6926.0,6922.0,6928.0,6925.0,6932.0
    8797.0, 7045.0,6997.0,6997.0,7049.0,6999.0,6999.0,7094.0,7044.0,7097.0,7048.0
    7129.0, 7120.0,7126.0,7126.0,7123.0,7130.0,7130.0,7126.0,7132.0,7129.0,7135.0
    9001.0, 7248.0,7200.0,7200.0,7253.0,7203.0,7203.0,7298.0,7248.0,7301.0,7251.0
    7332.0, 7324.0,7330.0,7330.0,7328.0,7333.0,7333.0,7330.0,7335.0,7332.0,7339.0
    9204.0, 7452.0,7404.0,7404.0,7456.0,7407.0,7407.0,7501.0,7452.0,7504.0,7455.0
    7536.0, 7528.0,7534.0,7534.0,7530.0,7537.0,7537.0,7533.0,7539.0,7536.0,7542.0
    9408.0, 7656.0,7608.0,7608.0,7660.0,7610.0,7610.0,7705.0,7655.0,7708.0,7658.0
    7739.0, 7731.0,7737.0,7737.0,7734.0,7741.0,7741.0,7737.0,7743.0,7740.0,7746.0
    9611.0, 7859.0,7811.0,7811.0,7864.0,7814.0,7814.0,7909.0,7859.0,7912.0,7862.0
    7943.0, 7935.0,7941.0,7941.0,7938.0,7944.0,7944.0,7941.0,7946.0,7943.0,7950.0
    9815.0, 8063.0,8015.0,8015.0,8066.0,8018.0,8018.0,8112.0,8063.0,8115.0,8066.0
    8147.0, 8139.0,8144.0,8144.0,8141.0,8148.0,8148.0,8144.0,8150.0,8147.0,8154.0
    10019.0, 8267.0,8218.0,8218.0,8271.0,8221.0,8221.0,8316.0,8266.0,8319.0,8270.0
    8350.0, 8342.0,8348.0,8348.0,8345.0,8352.0,8352.0,8348.0,8353.0,8351.0,8357.0

    10222.0, 8470.0,8422.0,8422.0,8475.0,8425.0,8425.0,8519.0,8470.0,8523.0,8473.0
    8554.0, 8546.0,8552.0,8552.0,8549.0,8555.0,8555.0,8552.0,8557.0,8554.0,8560.0
    10426.0, 8674.0,8626.0,8626.0,8677.0,8629.0,8629.0,8723.0,8674.0,8726.0,8676.0
    8758.0, 8750.0,8755.0,8755.0,8752.0,8759.0,8759.0,8755.0,8761.0,8758.0,8764.0
    10630.0, 8878.0,8829.0,8829.0,8882.0,8832.0,8832.0,8927.0,8877.0,8930.0,8880.0
    8961.0, 8953.0,8959.0,8959.0,8957.0,8962.0,8962.0,8959.0,8964.0,8962.0,8968.0
    10833.0, 9081.0,9033.0,9033.0,9085.0,9036.0,9036.0,9130.0,9081.0,9134.0,9084.0
    9165.0, 9157.0,9163.0,9163.0,9159.0,9166.0,9166.0,9162.0,9168.0,9165.0,9172.0

    Tick 000 09435

    Tick 001 09091 Bucket at 1

    Tick 002 09438

    Tick 003 09094 Bucket at 3

    Tick 004 09442

    Tick 005 09098 Bucket at 5

    Tick 006 09444

    Tick 007 09100 Bucket at 7

    Tick 008 09446

    Tick 009 09102 Bucket at 9

    Tick 010 09448

    Tick 011 09104 Bucket at 11

    Tick 012 09450

    Tick 013 09106 Bucket at 13

    Tick 014 09451


    Tick 015 09107 Bucket at 15

    Tick 016 09453

    Tick 017 09109 Bucket at 17

    Tick 018 09453

    Tick 019 09109 Bucket at 19

    Tick 020 09455

    Tick 021 09111 Bucket at 21

    Tick 022 09456

    Tick 023 09112 Bucket at 23

    Tick 024 09457

    Tick 025 09113 Bucket at 25

    Tick 026 09457

    Tick 027 09113 Bucket at 27

    Tick 028 09458

    Tick 029 09114 Bucket at 29

    Tick 030 09459

    Tick 031 09115 Bucket at 31

    Tick 032 09459

    Tick 033 09115 Bucket at 33


    Tick 034 09460

    Tick 035 09116 Bucket at 35

    Tick 036 09460

    Tick 037 09116 Bucket at 37

    Tick 038 09461

    Tick 039 09117 Bucket at 39

    Tick 040 09461

    Tick 041 09117 Bucket at 41

    Tick 042 09461

    Tick 043 09117 Bucket at 43

    Tick 044 09461

    Tick 045 09117 Bucket at 45

    Tick 046 09462

    Tick 047 09118 Bucket at 47

    Tick 048 09462

    Tick 049 09118 Bucket at 49

    Tick 050 09462

    Tick 051 09118 Bucket at 51

    Tick 052 09462

    Tick 053 09118 Bucket at 53

    This is stable until the end of the simulation length; well past uranium duration.

    I'm likely abandoning the idea I was working with here in favor of the more resource and more promising to stabilize effort here: https://forum.industrial-craft.net/index.php?page…d&threadID=2760

    The issues I suspect I was running in to may have been:
    * synchronizing the redstone pulses to the reactor (doubt it),
    * evaporating water (seems plausible),
    * or accurately forming a redstone clock of exactly 3 seconds to 2 seconds high/low (or inverse) using an RS latch and two timers (might be the case, but I tried a large number of off by a few mS adjustments).

    http://www.talonfiremage.pwp.blueyonder.co.uk/reactorplanner…1201521s1r11r19

    Ok, so this requires preheating the cooling components you toss in. They don't need to be exact but they do have to be fairly close. 9250 to 9650 is ideal (it must be that temp when /starting/) up to 9999 for the cooling components will work (as long as your reactor is < 9500).

    It uses only air cooling externally, so no fear of water evaporation. The internal cooling cells are to make up for the loss of external cooling. The IHDs act as buffers to stabilize the reaction between 9000 and 9800 over 2 cycles.

    This design may address the reason I /suspect/ my redstone gated breeder is unstable; actually since the timing is no longer dependent on synchronizing redstone to the reactor it fixes it also, thus making both possible design issues in my current setup vanish.

    The only issue is heating it up; the hull it's self is easy enough, but the cooling components inside are impossible to heat quickly enough. Even stuffing it with IHDs, the IHDs would catch up but the cooling cells to match the missing external cooling would take more time. A single shot startup is not possible.

    I've simulated it with a crude python script and this design does not loose any components over 99999 cycles.

    PS: the 9800 limit is so the reactor doesn't try to hurt the player. Otherwise I could care less as long as the components don't melt.

    Design goals:

    Heat using uranium.
    Short heating time.
    Minimal cooling component* (Mostly for short heating time)

    Traditional breeders use a vast array of cooling components; each of which must be brought up to your desired breeding temperature. This is why the reactor planner says you need a gazillion buckets of lava to heat the bloody things. They are also extremely slow to heat up, or use multiple uranium cells. That's why I've been experimenting with this design:

    http://www.talonfiremage.pwp.blueyonder.co.uk/reactorplanner…1501521s1r11r19


    As you can see, it produces an excess heat of 20 per active reactor tick. Cooling is supposed to be 34 per inactive tick (less 4 for the isotope cells). This naturally leads to a 3:2 ratio. It runs at 60% of traditional breeder speed, but higher efficiency of fuel and less babysitting (when stable).

    The IHDs are required for a single-run startup timer (if the water in is piston-blocked off; which is a must for speed), the excess IHDs only moderately increase the cost of producing the reactor but make that process far safer. The current startup time would thus be desired-temp * 7 / 37 (*for fully cold components; 6 heat sinks inside and the reactor vessel).

    I'm not sure if it's boiling water around the reactor, or if it's the fault of redpower2 timing, but using 2 timers and an RS latch to switch between the two I have not yet achieved the predicted perfect ratio.


    An alternative approach which might also work is building a reactor with zero external cooling and CASUC/CARUC style bucket cooling, I might try that next if unable to nail this down.

    http://www.talonfiremage.pwp.blueyonder.co.uk/reactorplanner…1201521s1r01r19 << Note the lack of any water blocks around the reactor (unlike the other recent thread about a CASUC breeder I looked at after coming up with this design from just the 'casuc breeder' title.) Mine also only enriches 16 per instead of 20, but won't swing so violently through the hurts-player 70-85% thermal region.


    Over an ideal cycle my design's internal components (10) will help the reactor vessel by containing 75 of 200 heat for each tick... However that's a really crazy network to conceptualize given the multiple sub-components interactions. I'll have to write out a proper simulation of it later tonight.

    Very -eep- on the /time thing. Could make my latest project boom.

    I feed the RP2 signal through a normal minecraft repeater before hitting the reactor.

    About timing... It's still not quite right. I'm using a few other gates to control waterflow+clock gating. That part is correct. Where I'm getting in to trouble is not knowing the propagation delays for RP2 components. It doesn't actually matter anywhere except my source-clock; that's using two timers and an RS latch to alternate with different up and down periods. So far I've only been able to get a slight lead or slight loss of heat even though it's supposed to be a perfect breeder (on average).

    I use a bash script to automated mixing things together.

    Due to the crappy assumption of modloader (which is also used in the server version of modloadermp), I have to also add the mods to my minecraft.jar to make sure there aren't ordering issues, just 'I already have this' warnings. The files themselves are still necessary in the patch folder to satisfy modloadermp that the mods were in fact present.

    Would this be what's causing the losses with glass cable as well?

    I made a test with an MFS Unit and two wings of 16 panels using; 32 solars, 10 glass fiber, 1 MFSU.

    Daytime run, expected energy value: 417600, total value attained: 374920.

    There are two possibilities I see.
    1) Not sending partial packets at the start/end of the day.
    2) Some odd cable length loss calculation.

    I don't think it's #1, as the worst case losses for that would make the final value 384832 or greater.


    Edit:

    Tested with 3 solar panels at one end and a batbox at the other end, of 36 TIN wire.

    1 full day's collection of energy: 3952

    That is approximately 1/10th of what it should be. It seems as if you are calculating cable losses in floats instead of applying a more accurate formula.

    You should calculate bursts as: Normal packet if traversing the cable type * number of packets; all of which can be determined via integer operations. There should be no floating point at any point in that chain of calculation.

    BurstFreq = floor( min(cable_type, storage_type) / normal_packet ) << 'integer' operations result in the floor already
    ResultForStorage = (BurstFreq * (normal_packet - (int)cable_length/(int)one_loss_cable_length))

    If you use a special insert/extract pipe or other mod, than core + 5 chambers is possible. If you use Redpower2 there is no such entity and you must instead attach both a filter (to remove empty buckets) and an incoming pipe for full buckets; thus limiting you to 4 extra chambers.

    I've posted pictures of my RP2 prototype CARUC (the coolant is REUSABLE/Recyclable, not single-use) reactor which should show you the various stages you'll want. Obviously use ReStone instead of glass and mind the 5x5 block (core in the center) exclusion area for your source blocks.

    Actually if a CARUC/CASUC goes up that's something like 40exp power + like 5 * 30 for all the uranium... about 200EXP power? 3-4. maybe 5 if you get unlucky about which direction things want to jump, blocks thick is probably necessary.

    Yes, true for SSP. However I wouldn't trust SMP to never split it further. A 16x16x16 block sounds particularly tasty for alignment to me. Something that /may/ have changed with the ability to use > 128 high as a global setting (it's in the release notes that the groundwork is in /place/ for that).