Складальний автомат
alaindustrial:assembler
Зведення
Складальний автомат — перша MV-машина моду й кінець ручному крафту по 64 стеки. Він пам'ятає верстакові рецепти (записані на Схему складання) і штампує їх безперервно, поки є сировина й заряд. Редстоун не потрібен — машина працює сама.
Сировину автомат бере не зі свого інвентаря і не з труб, а з власного складу, зібраного з Модулів зберігання. Готове кладе в окрему вихідну зону, щоб продукція не змішувалася із сировиною.
На відміну від ванільного «Крафтера», який заново розв'язує сітку на кожен редстоун-імпульс і нічого не запам'ятовує, автомат зберігає чергу з трьох схем і перемикається між ними сам.
Енергія
| Поле | Значення |
|---|---|
| Роль | споживач |
| Буфер (EU/FE) | 12000 |
| Макс. вхід (EU/FE/такт) | 128 (MV) |
| Макс. вихід (EU/FE/такт) | н/з |
| EU/FE/такт | 12 |
Живиться від наявних генераторів через золотий кабель (MV-транспорт, 48 EU/FE/т) — окремий MV-генератор чи трансформатор для запуску не потрібен. Мідний LV-кабель (12 EU/FE/т) теж упорається рівно впритул: машині потрібно якраз 12 EU/FE/т.
Енергія витрачається лише під час робочого тика. Простій із будь-якої причини — немає схеми, немає інгредієнтів, немає місця у вихідній зоні — EU/FE не витрачає взагалі.
Процесинг
| Поле | Значення |
|---|---|
| Що вміє збирати | будь-який рецепт верстака — з формою і без |
| Тривалість (тики) | 40 |
| Ціна операції (EU/FE) | 480 |
| Авто-вивантаження | немає |
Власного типу рецептів в автомата немає. Він розв'язує звичайні верстакові рецепти, а отже автоматично підтримує ванільні, рецепти самого моду, рецепти будь-якого стороннього моду й датапаків. Теґи працюють безкоштовно: «будь-які дошки» в рецепті означає саме будь-які дошки — рівно як у верстаку.
Рецепти машин моду (дроблення, плавка, екстракція) автомат не виконує — це окремі типи рецептів і окремі машини.
Вибір схеми з черги
Схеми опитуються по колу, позиція курсора зберігається між циклами. Схема пропускається, якщо
на складі не вистачає інгредієнтів; у вихідній зоні немає місця під результат; рецепт схеми не існує (наприклад, зник після зміни датапака).
Якщо жодна схема не готова — машина йде в сон і прокидається при зміні складу або заряду.
Круговий обхід обрано навмисно замість пріоритету «згори вниз»: за строгого пріоритету перша схема з нескінченною сировиною ніколи не віддала б чергу решті.
Порядок однієї операції
Порядок жорсткий, відступ ламає або результат, або повернення залишків:
- Зібрати вхід із сітки схеми й перевірити наявність кожного інгредієнта на складі.
- Перевірити, що результат влазить у вихідну зону, а залишки — на склад. Якщо ні — операцію не
починати взагалі (це те, що захищає від втрати предметів).
- Списати EU/FE і тікати прогрес.
- На фініші: отримати результат рецепта, потім залишки, і лише потім витратити інгредієнти.
Кроки 1–2 виконуються на копіях складу й вихідної зони: операція або прорахована цілком, або не почата взагалі. Перевірка і дія — той самий код, тому «перевірили, що влізе» і «поклали» не можуть розійтися.
Прорахунок відбувається двічі за операцію — на старті (вирішити, чи починати) і на фініші (склад міг змінитися за 40 тиків), але не на сорока проміжних тиках. Якщо на фініші плану більше немає (склад спорожнів, рецепт зник), машина завмирає на фінішній межі: прогрес і вже витрачені EU/FE зберігаються, і операція завершується одразу, щойно план знову зійдеться.
Підстановка інгредієнтів
Типово автомат бере зі складу рівно ті предмети, що записані у схемі, порівнюючи за предметом і ігноруючи компоненти. Зношений інструмент тому годиться там, де у схему поклали новий.
Тумблер підстановки (квадратна кнопка зі стрілками праворуч від «Записати») перемикає це для тієї схеми, чию розкладку показує вікно. Налаштування живе на самому предметі-схемі: переставили схему в інший автомат — вона підставляє там теж.
Коли підстановка увімкнена, порядок такий:
- Спершу — предмет, який поклав гравець. Поки він є на складі, береться він і лише він.
- Якщо його немає — кандидати з інгредієнта того самого слота рецепта, у порядку самого рецепта.
Не «з теґа взагалі»: для рецепта, написаного через «будь-які дошки» (палиці, верстак, миска), кандидатів дванадцять; для сходів, де інгредієнт — літерально дубові дошки, кандидатів немає зовсім, і підстановка не спрацює. Ситуація «у схемі будь-які дошки, на складі дуб і береза, незрозуміло які сходи вийдуть» неможлива в принципі: ванільні рецепти родин порідні.
- Заміна приймається, лише якщо перезбірка дає той самий результат — рецепт і далі сходиться, і
зібраний стек збігається з тим, що схема обіцяє в тултипі. Не зійшлося — операція не починається зовсім, EU/FE не витрачається, склад не чіпається.
Чому типово вимкнено. Штатне порівняння інгредієнта дивиться лише на предмет і ігнорує компоненти, тому при увімкненій підстановці в комірку може піти зачарована книга замість чистої або зношений інструмент замість нового. Тултип кнопки про це попереджає, а сама схема з увімкненою підстановкою підписана окремим рядком.
Залишкові предмети
Рецепти з контейнерами (відро в торті, пляшка) повертають предмет назад. Залишок кладеться в ту саму комірку складу, з якої було взято його інгредієнт; якщо вона зайнята — в будь-яку вільну комірку складу; якщо склад повний — у вихідну зону; якщо повна й вона — операція не починалася (крок 2).
Повернення «в рідну комірку» обрано не заради краси: саме воно змушує ковальський молот лишатися на місці й просто втрачати одиницю міцності, а не переповзати складом на одну комірку за кожен крафт.
Стек-залежні залишки (молот моду, що втрачає одиницю міцності замість зникнення) працюють автоматично, бо залишки беруться через рецепт, а не напряму з предмета.
Інвентар
| Слот | Приймає | К-сть |
|---|---|---|
| Схеми | Схема складання із записаним рецептом | 3 |
| Вихідна зона | лише видача (автомат кладе, гравець забирає) | 6 |
| Бланк схеми | чиста схема складання — те, на що пише «Записати» | 1 |
| Апгрейди | модулі-апгрейди | 4 (робочий — перший) |
| Склад | будь-які предмети | 27 + 27 за кожен модуль, стеля 108 |
Сітка задання рецепта не є інвентарем: це дев'ять «примарних» комірок, предмети в них не витрачаються й не зберігаються — вони лише показують, що записати у схему.
Вихідна зона на 6 слотів обрана усвідомлено: однослотовий вихід — відома причина клину машини, коли результат забив єдину комірку й виробництво стало.
Інтерфейс
Вікно машини (відкривається правим кліком по автомату) складається з двох вкладок: «Робота» і «Запис». Це один блок і одне вікно — перемикається лише те, що показано.
Перемикання вкладки — це зміна вигляду, а не режиму. Машина продовжує крафтити, поки гравець сидить на вкладці запису: вкладка не чіпає ні чергу, ні прогрес, ні енергію.
Вкладка «Робота»
три слоти схем — черга, з рамкою на активній; розкладка активної схеми 3×3 і її продукт — лише перегляд; вихідна зона на 6 слотів; смуга енергії і смуга прогресу; рядок статусу: працює / немає схеми / не вистачає сировини / вихід заповнений / немає енергії / рецепт не знайдено. Гравець має розрізняти причини простою — інакше «машина стоїть» невідрізнне від «машина зламалася».
Вкладка «Запис»
Чим займаються, коли складають рецепт:
сітка 3×3 з примарних комірок; передперегляд результату — що ця розкладка робить; слот чистого бланка; кнопка «Записати» — перетворює бланк на записану схему; квадратна кнопка зі стрілками ліворуч від «Записати» — тумблер підстановки для показаної схеми: сірі стрілки — вимкнено, зелені — увімкнено.
Комірки сітки заповнюються кліком: наведи на комірку й клацни, тримаючи предмет на курсорі, — у комірку ляже одна його копія; клацання порожнім курсором комірку очищає. Предмети при цьому не витрачаються: сітка показує розкладку, а не зберігає її.
Бланк лежить тут, а не в черзі схем: вкладка запису має бути самодостатньою. Записана схема з'являється на місці бланка; звідти її забирають і кладуть у чергу на вкладці «Робота». Записувати — не те саме, що ставити в чергу.
Слоти прихованої вкладки недоступні
Слот, що належить невидимій зараз вкладці, не можна ні заповнити, ні спорожнити — ні кліком, ні шифт-кліком, ні перетягуванням. Прихована вкладка не просто не намальована: поки вона прихована, її слотів для гри не існує.
Вкладка — стан вікна, а не машини: вона ніде не зберігається, і два гравці біля одного автомата можуть дивитися різні вкладки, не заважаючи одне одному.
Показ активної схеми
Вкладка «Робота» показує розкладку схеми з черги — тієї, за якою машина працює, а якщо вона простоює, то першої записаної. Продукт схеми намальований під вихідною зоною, яку він і наповнює.
Показана розкладка позначена як чужа й нередагована: приглушені предмети, і тултип по комірці додає рядок «Розкладка схеми N — лише перегляд». Блідо-блакитна рамка стоїть навколо слота схеми, з якої розкладку взято.
Рамки в черзі відрізняються за змістом: помаранчева — схема, за якою йде поточна операція, блідо-блакитна — схема, чия розкладка показана. Зазвичай це та сама схема.
Крім того, у кожної записаної схеми її продукт намальований прямо в іконці предмета — див. Схему складання. Три схеми в черзі помітні без наведення.
Властивості блока
| Поле | Значення |
|---|---|
| Форма | суцільний куб 16³ |
| Міцність | 3.0 |
| Вибухостійкість | 6.0 |
| Інструмент | кайло |
| Дроп з NBT енергії | ні |
При зруйнуванні автомата випадають схеми зі слотів і вміст вихідної зони. Вміст складу залишається в модулях — втрачається лише зв'язність, і модулі простоюють до встановлення нового автомата. Закріплено TC-ASM-026: те, що випадає, вважається точним числом, тож видно й втрату схеми (її не скрафтити назад), і подвійний дроп вихідної зони.
Черга схем, прогрес і позиція кола (курсора) переживають перезавантаження — TC-ASM-027 проганяє машину через NBT, тим самим шляхом, що збереження й завантаження чанку. Курсор у цьому списку — єдине поле без видимого симптому: загубись він, коло мовчки почало б знову з першої схеми, і чесність черги, заради якої він і існує, тихо перестала б працювати.
Передня грань позначена і, як у решти машин моду, виключена з автоматизації: труба, приткнута до лицьової сторони, не побачить слотів.
Рецепти
Автомат збирається на базі просунутого корпусу машини — це його вхідний квиток у MV. Власних рецептів переробки він не має: він виконує звичайні верстакові рецепти, записані на схему.
Рецептів переробки немає — машина використовує ванільний minecraft:crafting
Склад за зразком жанру — корпус тиру + дві схеми + «ідентичність» + «зберігання», а чотири кути зайняті механікою, яка ці деталі рухає:
У центрі — просунутий корпус машини: серце й тир машини. Над ним верстак — те, що машина власне робить; під ним модуль зберігання — звідки вона бере деталі. Ліворуч і праворуч від корпуса — дві електронні схеми, логіка, що читає схему складання. Усі чотири кути — залізні шестерні, «руки», що подають деталь у сітку.
Посилання: Просунутий корпус машини, Електронна схема, Модуль зберігання, Залізна шестерня.
Кути — саме шестерні, а не ще пластини: автомат — перша машина моду, яка сама перекладає деталі, і шестерня — та деталь, яку мод уже витрачає рівно на це (Бак, Предметна труба читаються так само). Заповнені дев'ять клітинок заразом ставлять крафт в один ряд з рештою машин моду, де порожній кут — виняток.
Прогресія
Тир: MV. Перша MV-машина моду. Потребує: просунутий корпус, а отже пройдені лінії металургії й нафтохімії (через просунуту схему). Працює у зв'язці зі складом із модулів — сировину бере лише звідти.
Пов'язане
Схема складання — носій записаного рецепта. Модуль зберігання — склад, з якого автомат бере сировину. Просунутий корпус машини — база крафта. Золотий кабель — MV-підводка.
Крафт
Крафт на верстаку
▶
Складальний автомат