Перейти к содержимому

CircuitSimCraft

Учите аналоговой электронике в Minecraft: от резисторов до транзисторов, полноценная 3-фазная система, три торгующих жителя, анализ AC/Боде и настоящий решатель цепей MNA (семейство SPICE). Смотрите https://github.com/rpicos-uib/circuitsimcraft.

Fabric
Загрузчики
Fabric
Скачиваний на Modrinth
283
Подписчиков на Modrinth
4
версий
15
Обновлён
18 октября 202618 окт.
Опубликован
в 2026
Oscilloscope viewing a RLC filter. — Oscilloscope viewing a RLC filter using a triangular waveform as the input. · свайп

Коротко о моде

Работает на Fabric
Для Minecraft 26.2–26.3
Нужен и в игре, и на сервере
Последняя версия — 1.26.3 от 18 октября 2026
Лицензия CC-BY-4.0 — бесплатно
Где нужен
В игреобязателенНа сервереобязателен

Нужен и в игре, и на сервере

Версии игры26.2–26.3
Описание переведено автоматическиПоказать оригинал (EN)

CircuitSimCraft

Fabric-мод, превращающий Minecraft в лабораторию аналоговой электроники. Размещайте резисторы, конденсаторы, катушки индуктивности и мемристоры как блоки, соединяйте их проводами, подавайте питание от источников и функциональных генераторов и измеряйте напряжение и ток в реальном времени портативным осциллографом — всё это работает на настоящем модифицированном узловом анализе (MNA), том же семействе алгоритмов, что использует SPICE, а не на скриптованной аппроксимации. Это обучающий инструмент: цель в том, чтобы поведение в игре действительно совпадало с тем, что вы увидели бы на реальном стенде (кривые заряда RC, переходные процессы RL, дрейф сопротивления мемристора с накопленным зарядом), только в масштабе тиков Minecraft, а не реального времени.

Скриншоты

Осциллограф отображает три канала одновременно — функциональный генератор, конденсатор и резистор, каждый со своей цветной дорожкой и живыми показаниями напряжения и тока:

Прямоугольный сигналТреугольный сигнал

Требования

  • Minecraft 26.2 — обратите внимание, это новая схема версионирования Mojang year.release, а не старая линейка 1.21.x. Мод нацелен именно на эту версию, потому что на момент сборки она означает «последняя».
  • Fabric Loader >= 0.19.3
  • Fabric API 0.155.2+26.2 (должна соответствовать версии Minecraft)
  • Java 25 — это общее требование Minecraft 26.2 (он поставляется необфусцированным и требует актуальный JDK), а не что-то специфичное для этого мода.

Установка

Вариант A — готовый jar

  1. Установите Fabric Loader для Minecraft 26.2.
  2. Скачайте jar Fabric API для 26.2 с Modrinth или CurseForge и положите его в папку mods.
  3. Возьмите `circuitsimcraft-.jarсо страницы [Releases](../../releases) этого репозитория и положите его в ту же папкуmods`.
  4. Убедитесь, что профиль, с которого вы запускаете игру, использует Java 25+ (современные лаунчеры, автоматически управляющие JVM для каждой версии Minecraft, сделают это сами, как только вы выберете 26.2).
  5. Запустите игру с профилем Fabric.

Вариант B — сборка из исходников

git clone https://github.com/rpicos-uib/circuitsimcraft.git
cd mine-memristors
./gradlew build

Готовый jar мода появится в `build/libs/circuitsimcraft-.jar. Вам нужен доступный JDK 25; либо сделайте его java` по умолчанию, либо укажите его Gradle явно:

JAVA_HOME=/path/to/jdk-25 ./gradlew build

Полезные задачи для разработки: ./gradlew runClient (запускает клиент для разработки с загруженным модом) и ./gradlew runServer (выделенный сервер без графического интерфейса — удобно для проверки, что мод загружается без GUI).

Базовые компоненты

Для любого компонента, значение которого — одно число, а не категория (сопротивление, ёмкость, индуктивность, напряжение, частота, параметры мемристора), shift+ПКМ пустой рукой открывает экран ввода текста — по духу то же взаимодействие, что и редактирование таблички — предзаполненный текущими значениями и тем же диапазоном min/max, который уже покрывает циклический перебор пресетов. Обычный ПКМ пустой рукой по-прежнему переключает фиксированные пресеты точно как раньше; оба взаимодействия сосуществуют. Это основной товар жителя-Электрика (см. ниже) — повседневные пассивные компоненты, источники и измерительные приборы, необходимые для базовой схемы. Транзисторы, управляемые источники и диод живут в разделе Продвинутые компоненты, их продаёт Инженер-электронщик.

Блок/ПредметЧто это
РезисторОмический резистор. ПКМ (пустая рука) переключает 10 / 100 / 1 000 / 10 000 Ω; shift+ПКМ открывает редактор значения для точного сопротивления.
КонденсаторИдеальный конденсатор, модель с трапециевидным интегрированием. Переключает 1 / 10 / 100 / 1 000 µF; shift+ПКМ открывает редактор значения для точной ёмкости.
Катушка индуктивностиИдеальная катушка индуктивности, модель с трапециевидным интегрированием. Переключает 0,01 / 0,1 / 1 / 5 H (отмасштабировано под частоту тиков Minecraft, а не под реальные номиналы компонентов); shift+ПКМ открывает редактор значения для точной индуктивности.
МемристорМодель мемристора с линейным дрейфом (HP), управляемая зарядом. Сопротивление дрейфует между $R_{on}$ и $R_{off}$ в зависимости от накопленного через него заряда — «память» сохраняется даже при пересборке схемы. ПКМ пустой рукой переключает пресет «скорости переключения» ($q_{max}$) как и раньше (по умолчанию: $R_{on}=100,\Omega$, $R_{off}=10{,}000,\Omega$); shift+ПКМ открывает редактор значений для всех трёх параметров сразу — $R_{on}$ (10–1 000 Ω), $R_{off}$ (1 000–100 000 Ω) и $q_{max}$ (1e-4–1e-2 C).
Источник питанияИдеальный источник постоянного напряжения. Переключает 1,5 / 5 / 9 / 12 / 24 V; shift+ПКМ открывает редактор значения для точного напряжения. Неактивен (разомкнутая цепь), пока не получит сигнал редстоуна — сначала соберите схему, затем подайте питание.

| Генератор сигналов | Источник напряжения, изменяющегося во времени. ПКМ пустой рукой переключает пресеты синусоиды/меандра/треугольника (только форма сигнала — амплитуда и частота задаются модулем напряжения/частоты, описанным ниже, оба значения передаются от соседнего модуля). Shift+ПКМ открывает собственный редактор значения для Фазы (0–360°, применяется ко всем трём формам сигнала, не только к синусоиде) — единственный параметр, задаваемый прямо на самом генераторе, а не через модуль. Такое же поведение активации редстоуном, как у блока питания. По умолчанию 5 В / 1 Гц / 0° без подключённых модулей. | | Провод | Блок-проводник с нулевым сопротивлением. Соединяется со всех шести сторон. К нему можно подключить щуп напрямую (см. Щуп ниже) — он показывает абсолютное напряжение в этой точке цепи, а не только падение между двумя выводами. | | Земля | Привязывает любую сеть, к которой подключена, к настоящей опорной точке 0 В — так же, как реальной цепи нужна опорная земля, прежде чем «напряжение в этом узле» вообще что-то значит. Проводит ток со всех шести сторон, подключается как любой другой участник цепи. При подключении щупа всегда показывает ровно 0 В, подтверждая, что действительно привязано к опорной точке. | | Амперметр | Источник напряжения 0 В, включённый последовательно — электрически это идеальный провод, так что он не возмущает цепь, но даёт точное измерение тока. Подключите к нему щуп, чтобы увидеть живой график тока на осциллографе — так же, как вы наблюдали бы напряжение. | | Идеальный операционный усилитель | Бесконечное усиление, бесконечное входное сопротивление, нулевое выходное сопротивление — классический идеальный операционный усилитель, обеспечивающий «виртуальное короткое замыкание» между двумя входами через собственную выделенную неизвестную ток ветви в решателе (тот же приём MNA, что и для источников напряжения, только для ограничения используются другие узлы, чем для инжекции тока). Единственный трёхвыводной компонент: выход и инвертирующий вход (V−) — это передний/задний выводы, как обычно; неинвертирующий вход (V+) — верхняя грань блока (или его северная грань, если блок ориентирован вертикально). Фиксированное идеальное поведение без каких-либо настраиваемых параметров, поэтому нет ни цикла пресетов, ни редактора значений; решатель AC (график Боде) вместо этого использует фиксированную модель усиления с двумя полюсами (усиление 100 дБ на постоянном токе, полюсы на 20 Гц и 3 МГц) — см. Источник переменного тока / Щуп переменного тока ниже. | | Источник переменного тока | Возбуждение для развёртки по переменному току (малому сигналу). Подключается как любой другой двухвыводной компонент, но электрически это источник 0 В (обычный провод) в обычной симуляции постоянного тока/переходных процессов — его реальное поведение проявляется только через Щуп переменного тока. Все три параметра (амплитуда, минимальная частота, максимальная частота) задаются только через Shift+ПКМ, поскольку диапазон частот плохо представляется коротким списком пресетов — у этого блока вообще нет цикла пресетов по обычному ПКМ. | | Модуль напряжения | Ненаправленный служебный куб (без ориентации, без выводов), который касается Генератора сигналов любой гранью и задаёт его амплитуду. ПКМ переключает его собственный пресет (1,5/5/9/12/24 В); Shift+ПКМ открывает редактор значения для точного напряжения. Модули одного типа, касающиеся друг друга, передают одно общее значение по всей цепочке — побеждает тот модуль, по которому щёлкнули ПКМ последним, и значение распространяется на каждый генератор, до которого дотягивается цепочка, так что одно управление может задавать параметры нескольким генераторам сразу. | | Модуль частоты | Та же идея, что и у Модуля напряжения, но задаёт частоту Генератора сигналов (пресеты 0,5/1/2/5/10 Гц); Shift+ПКМ открывает редактор значения для точной частоты. Смешанная цепочка из модулей напряжения и частоты передаёт оба значения, независимо от порядка их расположения. | | Щуп | ПКМ по компоненту, Проводу или Земле закрепляет его как один из до 3 каналов, одновременно отображаемых на HUD осциллографа (закрепление 4-го вытесняет самый старый); Shift+ПКМ открепляет его. Держите щуп в любой руке, чтобы видеть HUD — каждый закреплённый канал получает собственную прокручиваемую дорожку, с цветовой кодировкой, сложенные в углу. Компонент показывает падение напряжения между двумя его выводами; Провод или Земля показывает абсолютное напряжение в этой единственной точке. Дорожка каждого канала автоматически масштабируется по своей истории, а значение полной шкалы печатается сверху и снизу его графика в форме с приставками СИ (к/м/мк/н/п — в зависимости от того, что делает число компактнее). Когда все 3 слота заполнены, самый старый канал обводится жёлтым и помечается «(следующий)», чтобы вы видели, какой из них будет вытеснен новым закреплением, прежде чем подтвердить его. |

| X-Y Oscilloscope Probe | Второй, независимый щуп: вместо построения каналов по времени он строит напряжение одного закреплённого канала относительно другого — настоящий режим X-Y лабораторного осциллографа, вычерчивающий фигуры Лиссажу для сравнения фазы и частоты. ПКМ, чтобы закрепить — блок, по которому вы только что кликнули, всегда становится (или остаётся) каналом Y, понижая предыдущий Y до X и вытесняя старый X, если оба слота уже заняты; shift+ПКМ открепляет. Каждая ось масштабируется независимо по пиковой величине своего канала, а значение полной шкалы печатается на обоих концах каждой оси прямо на графике в форме с приставками СИ (k/m/u/n/p), так что два очень разных по величине сигнала оба используют весь диапазон графика, вместо того чтобы один был сжат общим масштабом — пара сдвинутых на 90° и равных по амплитуде сигналов всё равно вычерчивает настоящую окружность, поскольку две независимые шкалы совпадают, когда амплитуды действительно равны. Не зависит от собственных закреплений обычного Probe — держите оба одновременно, чтобы видеть оба HUD рядом. | | AC Oscilloscope Probe | Настоящий двухшаговый щуп, в отличие от двух других: сначала кликните ПКМ по AC Source, чтобы закрепить его как возбуждение развёртки (появится подсказка; пока ничего не вычисляется). Затем кликните ПКМ по второй, другой точке — любому компоненту, проводу или земле — чтобы запустить развёртку (60 логарифмически распределённых частот в настроенном диапазоне источника) и показать график Боде: амплитуда в дБ сверху, фаза в градусах снизу, обе по логарифмической частоте. Источник остаётся закреплённым после этого, так что вы можете исследовать другие точки относительно него, не кликая по нему каждый раз заново; shift+ПКМ открепляет. | | R2V Converter | Интерфейс redstone-в-напряжение: должен быть размещён прямо на блоке Ground (это и требование размещения, и его электрический ноль 0V). Считывает две силы сигнала redstone от 0 до 15 — север = A, юг = B — и выдаёт V = A×16 + B (0-255V) на своей верхней грани, подключаясь к остальной схеме как любой другой источник. Без редактора значений; выход полностью управляется redstone. | | V2R Converter | Обратный к R2V Converter: также размещается прямо на Ground, считывает любое напряжение, подведённое к его верхней грани (идеальный вольтметр — не потребляет ток, никогда не нагружает измеряемое), и декодирует его обратно в два выхода redstone от 0 до 15 на своих северной (A) и южной (B) гранях, точная инверсия V = A×16 + B. | | Breadboard | Не компонент схемы — у него нет выводов, и он не участвует в решателе. Это рабочий блок жителя-Electrician (см. ниже): поставьте один, дайте безработному жителю занять его, и он начнёт продавать всё остальное из этой таблицы. |

Правила подключения

Каждый компонент занимает один блок, ориентированный по направлению, в котором вы смотрели при его размещении. Два его электрических вывода — это передняя и задняя грани (вдоль этой оси направления) — остальные четыре грани изолированы. Блоки проводов проводят по всем шести граням. Две позиции объединяются в один электрический узел всякий раз, когда каждая из них обращена проводящей гранью к другой — так что компоненты «соединяются» либо через провод, либо размещением двух компонентов вывод-к-выводу напрямую друг против друга, без провода между ними. Неподключённый вывод ничего не ломает — он считается плавающим узлом, так что вы можете строить схему постепенно, и она будет симулироваться (бесполезно, но безопасно) на каждой промежуточной стадии. R2V/V2R Converters и четыре управляемых источника (VCVS/VCCS/CCCS/CCVS, см. Advanced Components) — исключение из правила «выводы следуют направлению, в котором вы смотрели при размещении»: их ориентация всегда фиксирована (вверх = подключённые электрические выводы, вниз = требуемое подключение к Ground, север/юг = redstone I/O или управляющие выводы), независимо от того, куда вы смотрели при их размещении. Они также физически требуют блок Ground прямо под собой, чтобы их вообще можно было поставить — сломайте этот Ground, и конвертер или управляемый источник сломается вместе с ним. Транзисторы (NPN/PNP/NMOS/PMOS) и Ideal Op-Amp — 3-выводные компоненты: передняя и задняя грани — два из трёх выводов, как обычно, а третий (база/затвор, или V+ операционного усилителя) — верхняя грань блока — или его северная грань, если сам блок ориентирован вертикально (направлен вверх или вниз).

Advanced Components

Транзисторы, четыре классических зависимых/управляемых источника и пара инструментальных элементов, дополняющих настоящую лабораторию — продаются жителем Electronics Engineer (см. ниже), а не Electrician. Все параметры «простейшей модели» ниже (β, пороговое напряжение, крутизна, усиление) редактируются через shift+ПКМ, по тому же соглашению редактора значений, что и у базовых компонентов. Каждый зависимый источник здесь полагается на намеренную задержку в один тик: Circuit.step() проставляет каждый элемент до решения, так что любой элемент, читающий уже решённое напряжение другого узла (или уже решённый ток другого источника) при построении собственной проставки, неизбежно читает сошедшееся значение предыдущего тика — та же философия «линеаризации относительно прошлого тика», которую уже использовал Diode. Именно это позволяет всем четырём управляемым источникам, BJT и MOSFET работать без каких-либо изменений в основном цикле решения Circuit (помимо одного нового вспомогательного метода проставки, stampTransconductance — полное описание см. в MOD_ARCHITECTURE.md).

Block/ItemWhat it is

| Диод | Вывод, смотрящий в ту сторону, куда вы смотрели при установке, — это анод, противоположный вывод — катод: ток свободно течёт от анода к катоду после превышения прямого напряжения и (почти) блокируется в обратном направлении. ПКМ переключает пресеты кремний (~0,7 В) / германий (~0,3 В) / красный светодиод (~2 В) — это категориальный выбор, поэтому для диода нет редактора значений по shift+ПКМ. Моделируется линеаризованным уравнением диода Шокли, пересчитываемым каждый тик, а не таблицей значений. | | Источник тока | Идеальный независимый источник постоянного тока — дуальный аналог блока питания. Переключает 0,1 / 0,5 / 1 / 2 А; shift+ПКМ открывает редактор значений для точной силы тока. Такое же поведение активации редстоуном, как у блока питания (неактивен = разрыв цепи, пока не подан сигнал). | | Вольтметр | Идеальный вольтметр, включённый последовательно — бесконечное входное сопротивление, не потребляет ток, никогда не нагружает измеряемую цепь. Напряженческий аналог амперметра: закрепите его пробником, чтобы видеть график напряжения в реальном времени, как и у любого другого компонента. | | NPN-транзистор | Коллектор — передний (обращённый к вам) вывод, эмиттер — задний, база — верхняя грань (или северная, если установлен вертикально). Переход база-эмиттер использует ту же линеаризованную модель Шокли, что и диод; ток коллектора равен β × ток базы и вносится как точный член крутизны (без запаздывания) через stampTransconductance. Shift+ПКМ редактирует β (коэффициент усиления по току), 5–500. | | PNP-транзистор | Та же модель и те же выводы, что у NPN, но все направления токов обратны (polarity = -1 в базовой модели Bjt). Shift+ПКМ редактирует β, 5–500. | | NMOS-транзистор | Сток — передний вывод, исток — задний, затвор — верхняя грань (или северная, если установлен вертикально). Квадратичная модель, только для режима насыщения, линеаризуется каждый тик вокруг предыдущего тока стока. Shift+ПКМ редактирует пороговое напряжение (0,1–5 В) и крутизну k (1e-4–0,1 См). | | PMOS-транзистор | Та же модель и те же выводы, что у NMOS, но направление тока стока обратное. Shift+ПКМ редактирует те же два параметра. | | ИНУН (источник напряжения, управляемый напряжением) | Должен быть установлен прямо на блок Ground, как и преобразователи R2V/V2R. Северная грань считывает управляющее напряжение (относительно Ground); выход (усиление × управляющее напряжение) подаётся на верхнюю грань. Shift+ПКМ редактирует усиление, 0,1–100. | | ИТУН (источник тока, управляемый напряжением) | Такая же форма, как у ИНУН, но с верхней грани подаёт ток (крутизна × управляющее напряжение), а не напряжение — вносится как точный член крутизны, без запаздывания, поскольку зависимость чисто линейная. Shift+ПКМ редактирует крутизну, 1e-4–1 См. | | ИТУТ (источник тока, управляемый током) | Компонент с 4 гранями: северная/южная — выводы считывания управляющего тока (внутренний амперметр на 0 В, как блок амперметра), верхняя подаёт выходной ток (коэффициент усиления по току × считанный ток) относительно обязательного Ground снизу. Shift+ПКМ редактирует коэффициент усиления по току, 0,1–100. | | ИНУТ (источник напряжения, управляемый током) | Такая же 4-гранная форма, как у ИТУТ, но подаёт напряжение (передаточное сопротивление × считанный ток), а не ток. Shift+ПКМ редактирует передаточное сопротивление, 1–1000 Ом. | | Верстак | Не компонент цепи — у него нет выводов, и он не участвует в решателе. Это рабочий блок жителя-инженера-электронщика (см. ниже): поставьте его, дайте безработному жителю занять его, и он начнёт продавать всё остальное из этой таблицы. |

Трёхфазные компоненты

Целый второй электрический «мир», существующий рядом с однофазным, описанным выше — у каждого компонента здесь один объединённый вывод, несущий все три фазы (A/B/C) сразу, а не три отдельных физических соединения. Специальный жгутовый провод позволяет прокладывать этот жгут куда угодно (он сливается с любым касающимся жгутовым проводом или объединённым выводом, точно так же, как обычный провод делает это для одного узла), а пара «Объединитель/Разъединитель» позволяет переходить между двумя мирами, когда это нужно. Продаётся жителем-инженером-электриком (см. ниже), а не электриком или инженером-электронщиком.

Блок/ПредметЧто это
Трёхфазный проводЖгутовый аналог провода — прокладывается свободно в любом направлении, сливается с любым касающимся трёхфазным проводом или объединённым выводом. Несёт фазы A/B/C вместе как одно соединение; обычный однофазный провод, касающийся его, просто не подключается (для перехода между двумя мирами нужен объединитель/разъединитель) — кроме Ground, который замыкает любой из миров напрямую (см. ниже).

| 3-Phase Source | Направление, в которое смотрит блок, — это связанный трёхфазный выход (три внутренних синусоидальных источника с одинаковой частотой и амплитудой, сдвинутые на 120° — стандартное чередование фаз A/B/C); противоположная сторона — обычный одиночный нейтральный вывод, подключаемый к блоку Ground так же, как «задний» вывод любого другого источника. Shift+ПКМ редактирует амплитуду (12–400 В) и частоту (0.5–5 Гц). Управляется редстоуном, как и Power Supply. | | 3-Phase Ammeter | Три независимых идеальных амперметра, соединённых последовательно, по одному на фазу — оба вывода связаны в пучок, включение в линию, как у обычного Ammeter. | | 3-Phase Resistor | Три обычных резистора, соединённых параллельно, по одному на фазу, с общим редактируемым сопротивлением (10–10 000 Ом) — сбалансированная резистивная нагрузка/батарея. | | 3-Phase Inductor | Та же идея: три катушки индуктивности с общей редактируемой индуктивностью (0.01–5 Гн). | | 3-Phase Capacitor | Та же идея: три конденсатора с общей редактируемой ёмкостью (1–1 000 мкФ). | | Phase Bundler | Фиксированные, не поворачиваемые грани: связанный вывод всегда сверху, фазы A/B/C всегда север/восток/юг. Чисто топологический — не добавляет импеданса, в точности как обычный провод — принимает три отдельных одиночных подключения и напрямую привязывает их к соответствующим подузлам пучка. | | Phase Unbundler | Электрически идентичен Bundler (те же фиксированные грани, то же привязывание с нулевым импедансом) — отдельный блок исключительно для того, чтобы «пучок → три провода» и «три провода → пучок» читались как разные элементы при сборке стенда. | | 3-Phase Oscilloscope Probe | ПКМ по компоненту с пучком, чтобы закрепить его (Shift+ПКМ — открепить) — до 3 каналов одновременно, как у обычного Probe, только каждый канал теперь накладывает все три фазы на один график в стандартных цветах фаз красный/жёлтый/синий, вместо одной кривой на канал. | | Switchboard | Не компонент схемы — рабочий блок деревенского жителя Electrical Engineer (см. ниже). | Каждая трёхфазная деталь собирается из трёх её однофазных аналогов — 3× Wire → 1× 3-Phase Wire, 3× Power Supply → 1× 3-Phase Source, 3× Ammeter → 1× 3-Phase Ammeter, 3× Resistor/Inductor/ Capacitor → 1× соответствующей трёхфазной детали, 3× Probe → 1× 3-Phase Probe — все без формы. The Bundler/Unbundler — это 3× Wire + 1 железный слиток, тоже без формы. Схемы крафта смотри в таблице Crafting recipes ниже. Ground работает в обоих мирах — блок circuitsimcraft:ground проводит пучок так же, как и обычную однофазную проводимость, поэтому линия 3-Phase Wire может заканчиваться прямо на Ground без Bundler/Unbundler, в точности как уже могла линия обычного провода. Unbundler нужен только когда ты действительно хочешь разделить три фазы на отдельные однофазные назначения (три отдельных измерителя, три отдельных нагрузки и т. д.) — а не просто чтобы замкнуть контур обратно на 0 В.

Crafting recipes

Все ингредиенты ванильные, без зависимости от других модов. Рецепты без формы показаны как свободный набор ингредиентов; рецепты с формой показывают фактическую раскладку сетки 3×3. Там, где рецепт принимает любой из двух материалов в одном слоте, оба варианта показаны стопкой как два полных рецепта, ведущих к одному результату, а не объединены в одно изображение.

RecipeNotes
Resistor ×2 — железный самородок, комок глины или уголь в качестве резистивного тела, железный самородок: выводы с обеих сторон тела, с формой.
Capacitor ×2 — железный самородок, бумага как исторический диэлектрик конденсатора, железный самородок: выводы с обеих сторон, с формой.
Inductor ×2 — железный самородок, медный или железный слиток для катушки, железный самородок: выводы с обеих сторон, с формой.
Memristor ×1 — осколок аметиста в качестве переключающей среды.
Power Supply ×1 — оболочка 3×3 из железа/меди вокруг ядра из блока редстоуна.
Function Generator ×1 — оболочка 3×3 из железа/меди, ядро из кварца + факела редстоуна.
Wire ×9 — три медных слитка в ряд, с формой, дёшево/массово.
Ground ×4 — железный самородок + медный слиток.

| | Амперметр ×2 — железный самородок, медный слиток, редстоун. | | | Модуль напряжения ×1 — золотой самородок, редстоун, железный самородок. | | | Модуль частоты ×1 — осколок аметиста, редстоун, железный самородок. | | | Диод ×2 — железный самородок, редстоун, кварц. | | | Идеальный операционный усилитель ×1 — 2 золотых самородка, редстоун, кварц. | | | Щуп ×1 — редстоун, железный самородок и палка, расположенные вертикально. | | | Щуп осциллографа X-Y ×1 — редстоун, кварц и палка, расположенные вертикально. | | | Источник переменного тока ×1 — редстоун, светопыль, золотой самородок (без формы). | | | Щуп осциллографа переменного тока ×1 — редстоун, светопыль и палка, расположенные вертикально. | | | Преобразователь R2V ×1 — оболочка 3×3 из железа/меди вокруг компаратора, ванильного устройства для считывания силы редстоун-сигнала. | | | Преобразователь V2R ×1 — оболочка 3×3 из железа/золота вокруг компаратора. | | | Макетная плата ×1 — рамка 3×3 из дубовых досок вокруг ядра из редстоуна и железных самородков. | | | Источник тока ×1 — оболочка 3×3 из золота/меди вокруг блока редстоуна (пара к блоку питания). | | | Вольтметр ×2 — железный самородок, золотой самородок, редстоун. | | | NPN-транзистор ×2 — 2 железных самородка, кварц, редстоун. | | | PNP-транзистор ×2 — 2 железных самородка, светопыль, редстоун. | | | NMOS-транзистор ×2 — 2 железных самородка, бумага (изоляция затвора), кварц. | | | PMOS-транзистор ×2 — 2 железных самородка, бумага, светопыль. | | | ИНУН ×1 — оболочка 3×3 из меди/золота вокруг компаратора. | | | ИТУН ×1 — оболочка 3×3 из меди/железа вокруг компаратора. | | | ИТУТ ×1 — оболочка 3×3 из золота/меди вокруг компаратора. | | | ИНУТ ×1 — оболочка 3×3 из золота/железа вокруг компаратора. | | | Верстак ×1 — рамка 3×3 из гладкого камня вокруг ядра из редстоуна и железных самородков (та же схема, что у макетной платы, но в камне). | | | Трёхфазный провод ×1 — 3× Провод (без формы). | | | Трёхфазный источник ×1 — 3× Блок питания (без формы). | | | Трёхфазный амперметр ×1 — 3× Амперметр (без формы). | | | Трёхфазный резистор ×1 — 3× Резистор (без формы). | | | Трёхфазная катушка индуктивности ×1 — 3× Катушка индуктивности (без формы). | | | Трёхфазный конденсатор ×1 — 3× Конденсатор (без формы). | | | Объединитель фаз ×1 — 3× Провод + 1 железный слиток (без формы). | | | Разделитель фаз ×1 — 3× Провод + 1 железный слиток (без формы). | | | Трёхфазный щуп осциллографа ×1 — 3× Щуп (без формы). | Ни у одного из них пока нет достижений-разблокировок для книги рецептов, так что всплывающее уведомление о «новом рецепте» не появится — но прямо сейчас всё это можно скрафтить вручную. Смотрите Contributing, если хотите добавить их.

Все предметы также доступны на отдельной вкладке CircuitSimCraft в творческом инвентаре.

Житель-электрик

Поставьте Макетную плату (крафтится, как показано выше) и позвольте безработному жителю занять её как рабочее место; он станет Электриком и будет как продавать собственные компоненты мода, так и выкупать сырьё, необходимое для их крафта, — всё за изумруды, вместо обычных сделок. У него собственный вид, а не стандартная заглушка с отсутствующей текстурой: серо-стальной рабочий фартук с жёлтыми предупреждающими значками, не похожий на одежду ни одной ванильной профессии. Как и любая ванильная профессия, он повышает уровень (Новичок → Мастер) по мере успешных сделок, открывая более высокие уровни. Каждый уровень предлагает не более двух компонентов на продажу и не более двух видов сырья на покупку (никогда больше, всегда и то и другое), так что ни один житель не превращается в стену сделок — кроме Мастера, который является намеренным исключением (см. ниже):

УровеньПродаётПокупает
1 — НовичокРезистор, КонденсаторЖелезный самородок, Комок глины
2 — ПодмастерьеБлок питания, Генератор сигналовЖелезный слиток, Медный слиток
3 — РемесленникИсточник переменного токаЗолотой самородок, Светопыль
4 — ЭкспертПробник, Пробник осциллографа переменного токаRedstone, Палка
5 — Мастерлюбые 2 из Мемристор / Преобразователь R2V / Преобразователь V2RОсколок аметиста, Redstone (обычно оба)

Сделки на покупку собирают 8 единиц сырья за сделку (4 для осколка аметиста, самого редкого — партия, которую реально набрать без гринда); сделки на продажу сохраняют исходное количество каждого компонента за сделку (1–2 за раз, без изменений). Каждую сделку — и на покупку, и на продажу — теперь можно использовать 15 раз, прежде чем этому жителю потребуется пополнить запасы через новые сделки (max_uses: 15, фиксированное число вместо прежних значений 4–12 для разных уровней). Цены покупки ниже цен продажи для одного и того же уровня, как и настоящая магазинная наценка: сырьё стоит меньше, чем готовый компонент, в который оно превращается. Не каждый крафтящийся предмет теперь можно продать таким образом — Провод, Земля, Катушка индуктивности, Модуль напряжения, Модуль частоты и Пробник осциллографа X-Y были убраны, чтобы уложиться в лимит два на уровень (все шесть по-прежнему остаются простыми дешёвыми рецептами на верстаке, это не затронуто). Диод не убран, а перемещён — его продаёт Инженер-электронщик (см. ниже), а не Электрик. Сделки полностью управляются данными (data/circuitsimcraft/{villager_trade,tags/villager_trade,trade_set}/electrician/), а не захардкожены в Java — в этой версии Minecraft VillagerProfession указывает только на ресурсные ключи TradeSet для каждого уровня, так что перебалансировка цен или добавление сделок — это правка JSON, без пересборки. Параметр amount у trade_set каждого уровня установлен равным размеру пула сделок этого уровня, поэтому все перечисленные сделки всегда предлагаются вместе, а не случайным подмножеством (в отличие от ванильных профессий, которые обычно выбирают несколько сделок из большего пула) — это единственный способ гарантировать обещание выше, что «оба предмета на продажу и оба предмета на покупку всегда присутствуют». Мастер — единственное намеренное исключение. По просьбе пользователя пул продаж Мастера содержит три предмета (Мемристор, Преобразователь R2V, Преобразователь V2R) вместо двух, и любой конкретный Электрик случайно предлагает только два из трёх — настоящая ванильная случайность, намеренно возвращённая для этого одного уровня. Система наборов сделок Minecraft может рандомизировать только в пределах одного объединённого пула на уровень, без возможности оставить одно подмножество (две сделки на покупку) детерминированным, а другое подмножество (три сделки на продажу) рандомизировать в пределах того же уровня — поэтому полный пул Мастера состоит из 5 записей (3 на продажу + 2 на покупку) с amount: 4, что означает, что ровно одна запись исключается случайно. В большинстве случаев это один из трёх предметов на продажу (что даёт задуманное «любые два из трёх»), но иногда это один из двух предметов на покупку — Мастер является единственным уровнем, где гарантия «оба предмета на покупку всегда присутствуют» не абсолютна.

Мастерская электрика

Мод поставляется с готовым магазином в виде функции датапака — вручную строить не нужно. Встаньте там, где хотите его разместить (на любом рельефе: он сначала расчищает своё место и заливает собственный фундамент, так что неровная земля, склоны или не сгенерированные чанки — всё подойдёт) и выполните:

/function circuitsimcraft:electrician_shop

Это построит небольшую дубово-медную мастерскую с крышей из плит, громоотводом на вершине (самый буквальный символ «электрика» из доступных) и Макетной платой, уже размещённой внутри у задней стены рядом с небольшой полкой с запасом (провод, резистор, конденсатор) — готово к тому, чтобы житель зашёл и занял эту работу: Исходник функции (data/circuitsimcraft/function/electrician_shop.mcfunction) — это обычные команды /fill//setblock, если вы хотите изменить её оформление — см. MOD_ARCHITECTURE.md о том, как она была построена и проверена.

Житель-инженер-электронщик

Поставьте Верстак (крафтится, как показано выше) и позвольте безработному жителю занять его как рабочее место; он станет Инженером-электронщиком и будет продавать/покупать предметы из таблицы Продвинутые компоненты выше, так же как Электрик работает с базовой. У него тоже собственный отличительный вид — белый лабораторный халат, перекрашенная текстура самого Электрика, со значками, смещёнными с предупреждающе-жёлтого на диодно-красное свечение, чтобы эти две профессии никогда не путались визуально. Та же система уровней (Новичок → Мастер), то же правило «не более двух продаж и двух покупок на уровень, никогда больше», и Мастер снова намеренное исключение:

УровеньПродаётПокупает
1 — НовичокДиод, ВольтметрКварц, Бумага
2 — ПодмастерьеИсточник тока, NPN-транзисторЖелезный самородок
3 — РемесленникPNP-транзистор, NMOS-транзисторСветопыль
4 — ЭкспертPMOS-транзистор, VCVSЗолотой слиток
5 — Мастерлюбые 2 из VCCS / CCCS / CCVSБлок Redstone (обычно присутствует)

Те же условия торговли, что и у Электрика, на всём протяжении: покупные сделки принимают 8 единиц сырья за сделку (4 блока редстоуна на уровне Master — самом дорогом), каждая сделка допускает 15 использований до пополнения запасов, а цены продажи растут с уровнем (2 изумруда на уровне Novice и до 8 на Master — в соответствии с собственными ценами Электрика по схеме R2V/V2R для зависимых источников). В пуле продаж Master три предмета, но одновременно предлагаются только два — тот же приём «случайного исключения», что и на уровне Master у Электрика, только здесь полный пул состоит из 4 записей (3 продажи + 1 покупка) с amount: 3, так что иногда исключённой записью оказывается покупная сделка, а не предмет на продажу, а не просто «любые два из трёх» на продажу.

Мастерская инженера-электронщика

Та же идея, что и у Мастерской электрика, но намеренно построенная в другой палитре, чтобы постройки двух профессий различались с первого взгляда — «лаборатория» из каменного кирпича и полированного андезита с железными прутьями и кварцевым навершием вместо дубовой хижины с медью у Электрика:

/function circuitsimcraft:engineer_workshop

Ставит верстак к задней стене с небольшим стеллажом для запасов (диод и NPN-транзистор) рядом с ним — точно так же, как в лавке Электрика ставятся макетная плата и стартовый запас. Исходник функции — data/circuitsimcraft/function/engineer_workshop.mcfunction — обычные команды /fill//setblock, как и у Электрика.

Житель-электротехник

Поставьте Распределительный щит (крафтится так же, как верстак и макетная плата — см. Рецепты крафта) и дайте безработному жителю занять его как рабочее место; он станет Электротехником и будет продавать/покупать по таблице Трёхфазные компоненты выше — третья профессия, наряду с Электриком (базовые моно-компоненты) и Инженером-электронщиком (продвинутые моно-компоненты), на этот раз для мира объединённых трёхфазных компонентов. Та же система уровней (Novice → Master), те же правила цен и пополнения запасов, что и у двух других:

УровеньПродаётПокупает
1 — NoviceТрёхфазный провод, Трёхфазный амперметрМедный слиток ×8
2 — ApprenticeТрёхфазный источник, Трёхфазный пробникКусочек железа ×12
3 — JourneymanОбъединитель фаз, Разделитель фазСветопыль ×4
4 — ExpertТрёхфазный резистор, Трёхфазная катушка индуктивностиЗолотой слиток ×4
5 — MasterТрёхфазный конденсаторБлок редстоуна ×1

Те же условия торговли, что и у двух других жителей: каждая сделка допускает 15 использований до пополнения запасов, а цены продажи растут с уровнем — по 2 изумруда на уровне Novice и до 8–9 изумрудов на Expert/Master для самых дорогих деталей графа объединения (Объединитель/Разделитель по 8, Катушка индуктивности/Конденсатор по 9).

Мастерская электротехника

Та же идея, что и у двух других мастерских, но в собственной палитре, чтобы постройки всех трёх профессий различались с первого взгляда — «подстанция» из глубинного сланца, кирпича и меди с навершием в виде громоотвода вместо дубовой хижины Электрика или каменной лаборатории Инженера-электронщика:

/function circuitsimcraft:electrical_engineer_workshop

Ставит распределительный щит к задней стене, готовый к тому, чтобы житель зашёл и занял рабочее место. Исходник функции — data/circuitsimcraft/function/electrical_engineer_workshop.mcfunction — обычные команды /fill//setblock, как и у двух других.

Готовые примеры схем

Восемь готовых схем, по одной функции датапака на каждую, по тому же принципу на основе /fill//setblock, что и три мастерские выше — ручная разводка для начала не требуется. Встаньте туда, где должен быть юго-западный угол стенда, и запустите одну из них:

/function circuitsimcraft:voltage_divider           # Эксперимент 1: базовый делитель напряжения
/function circuitsimcraft:rc_lowpass                # Эксперимент 2: АЧХ RC-фильтра низких частот
/function circuitsimcraft:rlc_resonance             # Эксперимент 3: АЧХ RLC-резонанса
/function circuitsimcraft:half_wave_rectifier       # Эксперимент 4: однополупериодный выпрямитель
/function circuitsimcraft:memristor_hysteresis      # Эксперимент 5: петля гистерезиса мемристора
/function circuitsimcraft:opamp_bode                # Эксперимент 6: АЧХ операционного усилителя в разомкнутой петле
/function circuitsimcraft:three_phase_load          # Эксперимент 7: симметричная трёхфазная резистивная нагрузка
/function circuitsimcraft:three_phase_bundle_unbundle  # Эксперимент 8: цикл объединения/разделения фаз

Каждая очищает своё пространство, заливает собственный фундамент, разводит схему на стандартном пресете каждого компонента (ни один компонент в этом моде не сохраняет выбранный правым кликом пресет между сохранением и загрузкой, так что только что поставленный всегда начинает со стандартного, что бы ни требовал эксперимент), ставит неопрокинутый рычаг поверх источника и выдаёт нужный пробник осциллографа для задачи. Заголовочный комментарий самой функции указывает точные правые клики, необходимые для достижения нужных значений компонентов в каждом эксперименте, и ожидаемый результат. Первые шесть полностью описаны (вывод формул, предсказанные числа и физика каждого) в сопроводительной статье мода, latex_mod/sections/07_results_experiments.tex, воспроизведённой здесь как собираемые структуры, а не оставленной в виде схемы — Эксперименты 7 и 8 (трёхфазные стенды) появились после написания той статьи и в неё ещё не вошли. Эксперимент 8 также служит эталонной сборкой мода для пары Объединитель/Разделитель: трёхфазный источник питает Разделитель, три отдельных моно-резистора (по одному на каждую фазу), Объединитель, вновь объединяющий их, трёхфазный резистор и сразу на землю — демонстрируя оба направления перехода между объединёнными и моно-компонентами на одном стенде, а также то, что земля замыкает объединённую цепь напрямую, без второго Разделителя. Их исходники лежат в data/circuitsimcraft/function/, обычный текст, как и у всех остальных функций в моде.

Архитектура — для тех, кто хочет расширить этот мод

src/main/java/com/rpicos/circuitsimcraft/ sim/ Чисто-Java решатель цепей — без зависимостей от Minecraft, тестируется отдельно block/ Классы блоков (установка, ориентация, взаимодействие по правому клику) blockentity/ Классы BlockEntity (собственно состояние симуляции + подключение компонента к цепи) network/ Граф соединений проводов на стороне мира + протокол обмена клиент<->сервер item/ Предмет-щуп src/client/java/com/rpicos/circuitsimcraft/client/ Отрисовка HUD, клиентская часть сети

### Решатель (пакет `sim`)
`Circuit` — это универсальный движок модифицированного узлового анализа: узел 0 всегда земля, все остальные узлы — целые числа, которые вы выделяете через `addNode()`. Реализации `Element` (`Resistor`, `Capacitor`, `Inductor`, `Memristor`, `CurrentSource`, `Vccs`, `Bjt`, `Mosfet`) вписывают себя в матрицу проводимостей на каждом шаге; `VoltageSource` получает собственную неизвестную — ток ветви, стандартный подход MNA для идеальных источников — `Vcvs` и `Ccvs` это просто тонкие фабрики, которые строят его. Реактивные элементы используют сопутствующие модели на основе трапециевидного интегрирования (тот же приём, что и в SPICE), а не обратный метод Эйлера, поэтому поведение LC-типа не гасится искусственно; модели BJT и MOSFET используют тот же дух «линеаризации относительно прошлого тика» (переход база-эмиттер у BJT буквально переиспользует собственный вспомогательный класс `DiodeMath` диода). Определяющая асимметрия каждого зависимого/активного элемента по сравнению с пассивным взаимным резистором заложена в один общий вспомогательный метод штамповки, `stampTransconductance` — см. [Advanced Components](#advanced-components) выше о причине задержки в один тик, которая позволяет всем четырём управляемым источникам и обоим семействам транзисторов работать, вообще не трогая этот цикл решения.
Рядом находится второй решатель с комплексными значениями, `AcCircuit`, для AC-анализа (построения диаграмм Боде): `Complex` — это обычное неизменяемое комплексное число, реализации `AcElement` штампуют зависящую от частоты проводимость при заданной угловой частоте напрямую (без участия шага по времени), а `AcVoltageSource`/`AcOpAmp` обрабатывают источники и двухполюсную модель усиления операционного усилителя тем же способом «собственной неизвестной тока ветви», что и их переходные аналоги. `CircuitNetworkManager` вычисляет топологию соединений один раз и переиспользует одинаковую нумерацию узлов для обоих решателей, поэтому они никогда не разойдутся в том, какая позиция какому узлу соответствует.
Поскольку в этом пакете вообще нет импортов Minecraft, вы можете писать и запускать обычные Java-тесты прямо против него с помощью `javac`/`java` — без Gradle, без декомпиляции Minecraft, быстрая итерация. Именно так решатель проверялся во время разработки: против аналитических откликов RC/RL на ступеньку, аналитического ОДУ мемристора с управлением зарядом и — для AC-решателя — аналитических эталонов диаграмм Боде (плоский отклик резистивного делителя, точка среза -3дБ/45° и спад 20дБ/декаду у RC/RL-делителя, а также усиление по постоянному току и частота полюса у модели операционного усилителя).
### Добавление нового типа компонента
1. Добавьте физику в `sim/`, если это новый вид элемента (пропустите, если это просто другой пресет существующего).
2. Создайте `blockentity/YourComponentBlockEntity.java`, наследующий `ComponentBlockEntity` и реализующий `addToCircuit`, `probeCurrent`, `probeSummary` и `cyclePreset`.
3. Создайте `block/YourComponentBlock.java`, наследующий `ComponentBlock` (скопируйте существующий, например `ResistorBlock.java` — это шаблон примерно на 25 строк).
4. Зарегистрируйте его в `ModBlocks`, `ModBlockEntities`, `ModItems` и добавьте в `ModCreativeTab`.
5. Добавьте текстуру (`textures/block/your_component.png`, 16×16 — передняя и задняя стороны автоматически получают общую текстуру вывода `terminal.png`, так что для остальных четырёх граней нужна только текстура корпуса), `blockstates/your_component.json` и `models/block/your_component.json` (скопируйте существующую пару — они универсальны, кроме пути к текстуре), а также запись в lang.
6. При желании добавьте `data/circuitsimcraft/recipe/your_component.json`.
Если у вашего компонента 3+ вывода, наследуйте `NetworkBlockEntity` напрямую вместо `ComponentBlockEntity` (см. `OpAmpBlockEntity`, `NpnBlockEntity` или семейство `Vcvs`/`Vccs`/`Cccs`/`Ccvs` как пример) и добавьте собственную ветку диспетчеризации в `CircuitNetworkManager.rebuild()`. Если он всегда должен стоять на блоке Ground с фиксированной ориентацией (как преобразователи R2V/V2R и четыре управляемых источника), наследуйте `GroundedComponentBlock`, а не `ComponentBlock` напрямую.
Полное руководство, включая шаблон второй профессии жителя, если ваш компонент должен продаваться новой профессией, а не существующей, см. в [`COMPONENT_ADD.md`](COMPONENT_ADD.md) и [`MOD_ARCHITECTURE.md`](MOD_ARCHITECTURE.md).
### Известные ограничения
- **Состояние компонента сбрасывается при перестройке цепи.** `CircuitNetworkManager` перестраивает весь `Circuit` с нуля всякий раз, когда где-либо в этой сети меняются соединения, поэтому заряд конденсатора или ток катушки индуктивности в этот момент сбрасываются в ноль. Мемристор — исключение: его доля состояния явно переносится через перестройки, поскольку постоянное состояние — это весь смысл мемристора. Сделать остальные тоже сохраняющимися — хороший первый вклад.
- **Нет достижений, открывающих рецепты** — рецепты работают, но не будут подсвечиваться/всплывать при первом появлении.
- **AC-анализ только для малого сигнала и пока не охватывает Advanced Components и Three-Phase Components вообще.** Любой независимый источник, кроме закреплённого AC Source, во время свипа всегда штампуется как 0В, независимо от его собственного состояния, активированного редстоуном; двухполюсное усиление операционного усилителя (усиление 100дБ по постоянному току, полюса на 20Гц/3МГц) — фиксированная константа, пока не выведенная через редактор значений; а AC-случай мемристора — это просто замороженный резистор без какой-либо собственной частотной зависимости, пока не смоделированной. У транзисторов, четырёх управляемых источников и любого трёхфазного компонента вообще нет реализации `AcStampable`, поэтому во время свипа для диаграммы Боде они ведут себя как разрыв цепи по причине отсутствия, а не по какому-либо намеренному

- **Текстура значка базы/затвора на вертикально размещённом транзисторе не проверена.** Электрическая
  модель Java в любом случае корректна по ориентации (база/затвор — всегда северная грань блока
  при размещении вверх/вниз, согласно правилам подключения выше) — не проверено только то,
  читается ли *текстура*, нанесённая на эту буквальную северную грань, правильно для игрока, когда
  сам блок лежит на боку. Подтверждено для всех четырёх горизонтальных ориентаций; визуально
  ещё не проверено для направления вверх/вниз.
- **Фактический рендеринг 3-фазного осциллографа на экране и торговые предложения
  Electrical Engineer не были визуально подтверждены в реальном подключённом клиенте** — оба
  были проверены только через серверное headless-тестирование (реальные решённые значения
  схем, проверенные по логу), а не через просмотр отрендеренной игры.
## Участие в разработке
Issues и PR приветствуются. Если вы добавляете компонент, пожалуйста, приложите заметку о
физической модели, которую вы использовали (ссылки на уравнения достаточно) — цель этого мода
в том, чтобы поведение в игре было действительно корректным, а не просто правдоподобным.
## Цитирование
Если вы используете CircuitSimCraft — в классе, в статье, в демо, в производном моде, где угодно —
пожалуйста, укажите авторов: Rodrigo Picos, Stavros G. Stavrinides, George Stavrinides, Ariadna Picos
и Gerard Picos. Ссылки обратно на этот репозиторий достаточно для неформального использования; для
академической работы, пожалуйста, цитируйте так:

Rodrigo Picos, Stavros G. Stavrinides, George Stavrinides, Ariadna Picos, and Gerard Picos. CircuitSimCraft: a Fabric mod for teaching analog electronics in Minecraft. https://github.com/rpicos-uib/circuitsimcraft, 2026.

BibTeX:
```bibtex
@software{picos_mine_memristors,
  author = {Picos, Rodrigo and Stavrinides, Stavros G. and Stavrinides, George and Picos, Ariadna and Picos, Gerard},
  title  = {CircuitSimCraft: a Fabric mod for teaching analog electronics in Minecraft},
  url    = {https://github.com/rpicos-uib/circuitsimcraft},
  year   = {2026}
} 

См. также CITATION.cff, который GitHub читает автоматически для своей кнопки «Cite this repository».

Лицензия

CC BY 4.0 — см. LICENSE. В отличие от разрешительной лицензии на ПО (MIT, Apache и т. п.), CC BY требует указания авторства как юридического условия повторного использования, а не просто из вежливости — цитирование выше как раз удовлетворяет этому требованию для академического использования; ссылки обратно на этот репозиторий достаточно для неформального использования.

Частые вопросы

Как установить CircuitSimCraft?

Установите Fabric под свою версию Minecraft, скачайте CircuitSimCraft под ту же версию и загрузчик, положите файл в папку mods и запустите игру с профилем загрузчика.

Для каких версий Minecraft есть CircuitSimCraft?

У CircuitSimCraft есть сборки для Minecraft 26.2–26.3.

Нужен ли CircuitSimCraft на сервере?

Нужен и в игре, и на сервере

Лицензия и источник
Creative Commons Attribution 4.0 Internationalможно распространять, указывая автора и лицензию
Оригинал — Modrinth↗Файлы — без изменений, проверены по SHA-512Это ваш мод? Правообладателям

Сайт использует cookie: необходимые — для входа и темы, а также счётчики посещений Яндекс Метрика и LiveInternet — по ним мы видим, как пользуются сайтом. Рекламных cookie у нас нет. Подробнее