eu_tomat 2 158 Опубликовано: 15 мая, 2021 1 час назад, whiskas сказал: Теоретичиски с нейтронами может получится больше. Вероятность этого не высока, т.к. на бесконечном поле использование отражателей снижает среднюю производительность. Но на краях, как всегда, возникают нюансы. Поэтому проверить будет полезно. Найденные тобой 8 вариантов схем можно свести к 3 базовым, учитывая симметрию. Найденный мной вариант не сдвигает узлы изначальной сетки. В двух других, найденных электронными мозгами, изначальный порядок узлов сильно нарушен, для человеческих мозгов такие решения неочевидны. Похоже, дальнейшие улучшения возможны только перебором. А что касается оптимизации, то первым делом я предлагаю выбросить рекурсию. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
yura0138 Автор темы 4 Опубликовано: 23 января, 2022 (изменено) Прошу прощения за некропостинг, но у меня только сейчас дошли руки описать и рассказать о работе программ. 1,5 года назад её использовал на сервере с низким тпс, всё работало вполне нормально, но иногда реактор всё же бахал, как и почему не понятно, просто он исчезал из защитной коробки, но за часов 100 работы с загруженным чанком он бахнул всего 3 раза. Это без защитной схемы, ибо не было нуклеарконтрола, восстанавливал конденсаторы я не роботом, а другим способом. Сейчас я на другой сборке, и мне необходимо использовать автокрафт на роботе. Если для восстановления конденсаторов использовать обычный лазурит, а не блоки(их нельзя использовать в крафте), они восстанавливаются не полностью, думаю стоит добавить проверку прочности и перекрафт в случае, если прочность ниже 90%. Так же я нашел баг, Майнкрафт-1.12.2, OC-1.7.5.192, робот по какой то причине не выкладывает скрафченый конденсатор назад в сундук, из за чего ругается на ошибку в крафте, вот видео . Так же я проверил как лучше снимать энергию, нужен 5-ый энергоуровень что бы ничего не бахало, так же снимать лучше напрямую с реактора,через стекловолокно съём в 2 раза медленнее. Не важно, ставить хранилище к 2-ум стенкам, или к 1-ой, оно набирает энергию одинаково. Хранилище набирает 50 миллионов рф за минуту и двадцать секунд, это 625к за секунду, это 31к РФ/тик, или же 7750 ЕУ/тик, реактор вырабатывает 17440 ЕУ/тик, моё хранилище точно может принять гораздо больше, 100 миллионов за 20 секунд с творческого блока, так что очевидно что где то есть ограничение. (Как нибудь потестирую на чистом майне с индастриалом и ОС). И тут я заметил странность, по какой то причине, через стекловолокно, которое пропускает 8192 ЕУ/тик, проходит только половина от 7750 ЕУ/тик. Если что, на видео выше я показал хранилища через волокно и напрямую, там видно что в разница набранной энергии в 2 раза. Ну и раз уж программа есть, и она работает, может создать тему с ней в ветке Разное? Прога всё же очень полезна, такой способ выработки сильно дешевле других(при условии наличия бесконечности лазурита), особенно на хардкорных сборках Изменено 23 января, 2022 пользователем yura0138 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
serafim 273 Опубликовано: 23 января, 2022 (изменено) @yura0138 здаров, робот это конечно лампово и атмосферно, но для автоматизации лучше использовать МЕ Скрытый текст программу для робота я посмотрю, но не факт что получится отловить баг ps не используй блок управления редстоуном, он не отключает сигнал если комп помер, используй плату редстоуна первого уровня кстати, в сборке есть мод OpenPeripheral ? Изменено 23 января, 2022 пользователем serafim 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
yura0138 Автор темы 4 Опубликовано: 23 января, 2022 (изменено) @serafim Приветствую. Тоже верно, вот только АЕ2 на предыдущем проекте отказывался востанавливать конденсаторы, а другие автокрафтеры были запрещены, так что робот точно пригодится Изменено 23 января, 2022 пользователем yura0138 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
serafim 273 Опубликовано: 23 января, 2022 (изменено) откатил прогу на предыдущую версию https://pastebin.com/WgcCKBFn Скрытый текст напишешь, работает, нет Изменено 23 января, 2022 пользователем serafim 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
yura0138 Автор темы 4 Опубликовано: 23 января, 2022 @serafim Проверил, работает как надо 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
yura0138 Автор темы 4 Опубликовано: 23 января, 2022 (изменено) 2 часа назад, serafim сказал: ps не используй блок управления редстоуном, он не отключает сигнал если комп помер, Так вот почему бахал реактор, и удивительно что так мало, думаю стоит это добавить в пост с программами Изменено 23 января, 2022 пользователем yura0138 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
num_pi 30 Опубликовано: 15 ноября, 2025 (изменено) Выкладываю свой вариант программы под eeprom. local function clear_screen() gpu.fill(1, 1, 50, 16, " ") end local function proxy(c) local ad = component.list(c)() if ad then return component.proxy(ad) else error(string.format("Component: %s, is not found!", c)) end end gpu = proxy("gpu") gpu.bind(component.list("screen")(), true) gpu.setResolution(50, 16) clear_screen() --------------- Константы ---------------- local chamber_component = proxy("reactor_chamber") local redstone_component = proxy("redstone") local me_interface = proxy("me_interface") local temperature_controll = true local max_heat_reactor = 9500 local soft_sleep = 0.1 local redstone_side_output = 1 local reactor_enable_status = true computer.addUser("nickname") local reactor_scheme = { ["rod_slots"] = { 1, 3, 4, 6, 7, 8, 10, 12, 13, 14, 15, 17, 18, 19, 20, 21, 23, 24, 25, 26, 29, 30, 31, 32 ,34 ,35 , 36, 37,38, 40, 41 ,42 ,43, 45,47,48,49,51,52,54 }, ["LZH_slots"] = { 2, 5, 9, 11, 16, 22, 27, 28, 33, 39, 44, 46, 50, 53 } } --------------- Константы ---------------- local function redstone_toggle(enable_status) redstone_component.setOutput(redstone_side_output, enable_status == "OFF" and 0 or 15) end local function sleep(timeout) local deadline = computer.uptime() + (timeout or math.huge) repeat computer.pullSignal(deadline - computer.uptime()) until computer.uptime() >= deadline end function error_handle(text) clear_screen() gpu.set(1, 8, text) while true do computer.beep(500, 1) if reactor_enable_status or chamber_component.isActive() then redstone_toggle("OFF") reactor_enable_status = false end while true do sleep(0.2) computer.beep(1000, 1) local s = { computer.pullSignal(0) } if s and s[3] == 57 then break end end end end local function draw_status(msg) gpu.fill(1, 1, 50, 15, "*") gpu.set(1, 8, msg) end local function replace_item(chamber_slots, slots_scheme, take_slot, dmg, id) for _, i in pairs(slots_scheme) do if not chamber_slots[i] or chamber_slots[i].dmg >= dmg and chamber_slots[i].id == id then if reactor_enable_status then redstone_toggle("OFF") reactor_enable_status = false -- продвинутый сон while chamber_component.isActive() do sleep(0.1) end end if not me_interface.pullItem("DOWN", i) and chamber_slots[i] then error_handle("ME is FULL") else ::try_again:: local s, e = pcall(me_interface.pushItemIntoSlot, "DOWN", take_slot, 1, i) if not s then error_handle(e) elseif type(e) == "number" and e == 0 and not chamber_component.getStackInSlot(i) then draw_status("ITEM ENDED, try_again") computer.beep(500, 0.1) goto try_again else draw_status("REPLACE ITEMS") end end end end if not reactor_enable_status then redstone_toggle("ON") reactor_enable_status = true draw_status("RK WORK") end end do computer.beep(666, 0.2) while true do sleep(soft_sleep) local s = { computer.pullSignal(0) } if s and s[3] == 48 then redstone_toggle("OFF") clear_screen() gpu.set(1, 8, "RK OFF") while true do sleep(0.2) computer.beep(1000, 1) local s = { computer.pullSignal(0) } if s and s[3] == 57 then draw_status("RK WORK") redstone_toggle("ON") break end end end if chamber_component.getHeat() > max_heat_reactor and temperature_controll then error_handle("REACTOR TEMP OVERHEAT") end local s, chamber_slots = pcall(chamber_component.getAllStacks, false) if not s then error_handle(chamber_slots) end replace_item(chamber_slots, reactor_scheme["LZH_slots"], 4, 8700, "IC2:reactorCondensatorLap") replace_item(chamber_slots, reactor_scheme["rod_slots"], 3, 0, "IC2:reactorUraniumQuaddepleted") end end Изменено 15 ноября, 2025 пользователем num_pi Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
num_pi 30 Опубликовано: 15 ноября, 2025 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах