Create: Additional Logistics
create-additional-logistics · 353951 загрузок · MIT
клиент: required · сервер: required (заявлено автором мода)
Добавляет в Create несколько новых блоков, ориентированных на логистику, и настраивает несколько вариантов поведения.
Описание
Дополнение для Create 6 для Майнкрафт 1.20.1 и 1.21.1.
Этот мод направлен на улучшение или расширение нескольких областей, связанных с логистикой, с помощью Создать мод.
Дополнения
Пределы обещаний (улучшение заводской шкалы)
Мы все были там. Вы устанавливаете новую заводскую шкалу и запрашиваете 100 стопок. чего бы то ни было, только чтобы узнать, что ваше производство не справляется с поставленными задачами и Компания Create попыталась отправить 1000 посылок с ингредиентами, и теперь все в порядке. ужасно.
Ограничения обещаний здесь, чтобы помочь. При настройке заводского датчика теперь вы можете установите ограничение на количество промисов, которые он может открыть одновременно. Это позволяет вам, например, ограничьте его ожиданием не более стопки чего-либо за раз.
Логистическая сеть вашего завода скажет вам спасибо.
Дополнительный запас (улучшение шкалы пополнителя)
Рестокеры — это очень круто, но что мне в них не нравится, так это то, как они продаются. на конкретное значение, и как только не хватает хотя бы одного булыжника, они запросят точное количество, необходимое для повторного достижения этого значения. Это может быть немного глупо и расточительно. Как таковой дополнительный запас! Скажем, например, у вас есть Рестокер, который будет держать под рукой одну стопку булыжника. Благодаря этому вы можете скажите рестокеру, чтобы он запросил 8 дополнительных стопок предметов, когда они доступны. количество не превышает запрошенного уровня (1 стак). Затем назовите количество булыжник в хранилище падает до 32. Полстака. Вместо того, чтобы просить 32 булыжник, чтобы вернуться в одну стопку, потребуется 544 булыжника. Это недостающие 32 и еще 8 стопок. Что-то вроде порогового переключателя, но для пополнение запасов. И с несколько более неуклюжим пользовательским интерфейсом из-за того, как работает Restocker.
Регулярные выражения (улучшение адреса пакета)
Капли — это хорошо, но иногда им чего-то не хватает, верно? Ну, иди
вперед и используйте регулярное выражение, если осмелитесь*. Нет, правда. Теперь вы можете. Просто начните свой адрес
шаблон с regex: (без учета регистра), а остальная часть будет рассматриваться как
регулярное выражение.
Кассовый аппарат (новый блок, похожий на биржевой тикер)
Новый блок, который служит альтернативой биржевому тиккеру. Кассовые аппараты предназначены специально для использования в магазинах. Они имеют пользовательский интерфейс для извлечения элементов. вместо того, чтобы щелкнуть правой кнопкой мыши, как биржевой тикер. Кроме того, они отслеживают все продажи, осуществленные через них, заносятся в книгу продаж. Плюс, они выглядят аккуратно!
В качестве небольшого бонуса вы можете вынуть книгу продаж из кассового аппарата и щелкните им по «Хранителю запасов», чтобы быстро выбрать все проданные вами товары. Хорошо для пополнения запасов вашего магазина, если вы делаете это вручную. (Это работает так же, как список элементов в буфере обмена для схематической пушки.)
Package Accelerator (новый блок, упаковщики идут в масштабе)
Вспомогательный блок для сопровождения упаковщиков. Этот блок использует единицы напряжения для ускорить упаковщик перед ним. Я использую сложное хранилище для больших объемов данных. хранения предметов, и по мере роста системы наличие одного упаковщика стало стало узким местом для отправки товаров. Это мое решение, позволяющее посылки будут отправлены намного быстрее, но за дополнительную плату.
Для работы пакетных ускорителей требуется не менее 30 об/мин.
Редактор пакетов (новый блок, переименование пакетов)
Новый блок обработки пакетов. Редактор пакетов похож на переупаковщик. но вместо того, чтобы объединять пакеты из одного порядка, он позволяет редактировать адреса пакетов с помощью правил. Правила вводятся путем размещения подпишите рядом с редактором пакетов или прикрепив буфер обмена сбоку от Редактор пакетов. Рекомендуется использовать буфер обмена.
При написании правил для редактора пакетов первая строка представляет собой шаблон, который будет
совпадение, а вторая строка — это текст, которым нужно заменить совпадение. Например,
скажем, у вас есть посылки, направляемые на склад с префиксом Ware1-
а полное имя пакета может быть Ware1-Floor2-Storage. Что, если ты хочешь
отрезать Ware1-, как только посылка доберется до вашего склада? Это легко,
просто отправьте пакеты через редактор пакетов с этим шаблоном и
пустая строка замены:
Ware1-
Редактор пакетов будет искать каждое имя пакета по Ware1- в начале,
а если найдет, то замените ничем. Вы также можете написать это так:
Ware1-{*}
$1
Так что же там происходит? Редактор пакетов рассматривает все, что находится внутри { и }, как
группа захвата. Другими словами, этот текст сохраняется, и на него можно ссылаться в вашем
замените текст, добавив $, за которым следует желаемый текст. Вы также можете использовать обычный
выражения, конечно, если вы хотите сделать что-то более продвинутое, чем globs
позволить.
Наконец, есть два особых поведения, которыми вы можете управлять, если используете буфер обмена:
- Если вы установите флажок рядом с линией шаблона, шаблон будет интерпретирован как регистронезависимый.
- Если вы установите флажок рядом со строкой замены, то Редактор пакетов будет остановиться после этого правила (при условии, что это правило соответствует). Вы можете использовать это для Например, создать универсальное правило, которое отправляет пакеты в какой-нибудь Lost & Found, если они не соответствует никаким другим правилам.
Train Network Monitor Peripheral (новый блок, CC: только изменено)
Знаешь, что круто? Поезда. Знаешь, что круче? Иметь большую классную стену данные о ваших поездах. Прибытие, отправление, состояние поездов. И поезда очень важно и для логистики. Монитор железнодорожной сети представляет собой единый блок. который позволяет вам искать актуальные данные для любой станции и любого поезда на заданном сеть поездов. Сюда входит все, что дает обычное периферийное устройство железнодорожного вокзала. вас, а также дополнительные события для прибытия и отправления поездов. Вы также можете увидеть сколько посылок находится в системе и статус каждого почтового ящика, прикрепленного к различные вокзалы.
Если вы любите приключения, вы можете включить дополнительные функции для просмотр более подробной информации об инвентаризации поездов и доступ для чтения и записи к удаленному поезда и станции. Хотите оперативно обновлять расписания с помощью компьютера? Будь моим гостем. Однако по умолчанию это отключено, потому что это кажется слишком для меня несбалансирован.
Короткие и высокие сиденья (Новый блок, по сути... сиденья?)
Эээ, места это не логистика? Что ты имеешь в виду? Ты можешь, эм... посидеть на них, и — ладно, ладно. Это немного выходит за рамки «Дополнительной логистики», но есть веская причина, по которой мы добавили места! Эстетика, конечно.
В зависимости от того, какой тип моба вы выберете для своего Хранителя запасов, место по умолчанию не будет всегда на хорошей высоте для любой сборки, которую вы делаете. Таким образом, мы добавили Короткие сиденья и высокие сиденья. Короткие сиденья имеют высоту 2/16 блока, а высокие сиденья имеют высоту 14/16 блока. (Обычные места, конечно, составляют 8/16 или 1/2 части блок высотой.)
Ленивые валы (новый блок, в основном валы)
Я знаю, о чем ты думаешь. Это тоже не логистика. И у Create были валы в течение многих лет. Соберись, Хлоя. Но это важно, я обещаю. Ленивые валы — это моя попытка создать валы, удобные для задержек. По сути, обычные валы имеют блочная сущность для каждого отдельного блока, верно? Они стараются избегать этого, когда это возможно. Если у вас более двух Ленивых валов подряд, вы обязательно придете. впереди по блочным объектам. Если вы используете много валов, а я имею в виду много, то замена их на эти может повысить производительность вашего сервера.
Гибкие ленивые валы (новый блок, в основном коробки передач + ленивые валы + ???)
Также существуют гибкие ленивые валы. Это похоже на ленивые валы, но они могут соединяться в любом направлении. Мало того, у них есть настраиваемые стороны. Просто используйте свой боковой ключ, чтобы обнажить вал. Снова используйте гаечный ключ, чтобы изменить направление.
Просто будьте осторожны при подключении вещей. Из-за того, как они связаны в коде, иногда В случае возникновения проблемы Create приводит к поломке неудобного гибкого ленивого вала. с несовместимыми вращениями.
Я упоминал, что ленивые валы, гибкие ленивые валы и ленивые шестерни могут быть заключены в корпус? Они поддержка андезитового корпуса, латунного корпуса, медного корпуса, промышленного железного блока и Выветренный железный блок. (Да, я хочу реализовать Train Caseing, но на самом деле это немного странно это делать по каким-то странным техническим причинам, по крайней мере, если я хочу подключиться текстуры работают корректно. Это произойдет в конце концов™.)
Улучшения
Оптимизация сопоставления адресов
Сопоставление адресов пакетов в Create немного медленное и неоптимизированное. Это может быть хорошо, но это также может вызвать проблемы при использовании Create с другими модами. Мы здесь, чтобы решить проблему с помощью пары простых изменений:
Кэшируйте скомпилированные сопоставления. Каждый адрес пакета компилируется в обычный выражение при выполнении сопоставления пакетов. Это предполагает сначала анализ glob в регулярное выражение, а затем скомпилируйте регулярное выражение в шаблон Java. Все, что у нас есть нужно это кэшировать.
Технически существует два кэша из-за внутреннего устройства пакета. адресная система работает, поэтому я считаю это двумя вещами. Но на самом деле, просто кэширование было достаточно, чтобы улучшить работу в сценарии конца света, который видел мой сервер SMP в последнее время благодаря усовершенствованному хранилищу, обрабатывающему пакеты с фильтрами пакетов.
Регулярные выражения (безопасность)
Я на самом деле знаю, что уже был другой мод, который позволял вам делать регулярные выражения с помощью адреса пакетов, но когда мы попытались это сделать в нашем SMP, сервер упал из-за игрок почти сразу. Регулярные выражения на самом деле могут быть довольно опасными, поэтому Я включил несколько основных вещей, которые, надеюсь, должны остановить кого-то хотя бы от случайно убил с ними сервер. А именно:
- Ограничение высоты звезды. Знаете ли вы, что регулярное выражение
(a+)+опасно? Это из-за так называемого катастрофического возврата и обычного Java библиотека выражений уязвима для этого. Их не невозможно написать случайно в этом отношении. Мы проверяем высоту звезды всех регулярных выражений и предотвращаем им не бежать, если они проблематичны. - Ограничение повторений. Это не так уж плохо, но если вы попытаетесь сопоставить, скажем, 1000 что-то подряд, производительность может начать затягиваться. Это никогда не должно всплывать для адресов пакетов в первую очередь, поэтому ставим защиту.
- Нет обратных ссылок. Обратная ссылка в регулярных выражениях позволяет вам сказать «сопоставить то, что уже было сопоставлено», что может быть полезно, но это также вероятно, не имеет значения для адресов пакетов и может быть медленным. Они запрещены по умолчанию.
Мы также обязательно проверяем каждое регулярное выражение в момент его анализа.
Create Glob.toRegexPattern, хотя обычно он не компилирует
выражение, просто преобразуйте его из глобального в регулярное выражение. Это важно, потому что это
подразумевалось, что все регулярные выражения, возвращаемые этим методом, должны компилироваться без
любые ошибки.
Более длинные имена Frogport
Регулярные выражения имеют тенденцию быть немного... больше, чем глобусы, что может быть проблемой. для лягушек. Таким образом, мы увеличили максимальную длину имени лягушек и почтовых ящиков до 100. ... хорошо, что можно копировать и вставлять.
Пусть ваши хранители запасов остаются на своих местах
Позвольте мне создать для вас сцену. Вы в магазине меда. Хранитель запаса — пчела. ты получите список покупок и будете готовы оформить заказ, поэтому нажимаете на складской запас и... о нет! Вместо этого вы щелкнули сиденье! Ты только сел, и пчела взялась за небо с вновь обретенной свободой. У вас нет лидерства. Как ты собираешься получить пчела снова на сиденье? Летающие мобы - худшие.
Это простое изменение. Если нажать на место, занятое кладовщиком, ничего не произойдет. произойдет. Если вам нужно выбить запаску, вы можете сломать сиденье или биржевой тикер. Но, по крайней мере, вы не сделаете это случайно.
Версии (14)
| Версия | Minecraft | Загрузчики | Файл |
|---|---|---|---|
1.4.5 |
1.21.1 | neoforge | скачать |
1.4.5 |
1.20.1 | forge, neoforge | скачать |
1.4.4 |
1.20.1 | forge, neoforge | скачать |
1.4.3 |
1.21.1 | neoforge | скачать |
1.4.3 |
1.20.1 | forge, neoforge | скачать |
1.4.2 |
1.20.1 | forge, neoforge | скачать |
1.4.1 |
1.21.1 | neoforge | скачать |
1.4.1 |
1.20.1 | forge, neoforge | скачать |
1.4.0 |
1.21.1 | neoforge | скачать |
1.3.0 |
1.21.1 | neoforge | скачать |
1.2.6 |
1.21.1 | neoforge | скачать |
1.2.5 |
1.21.1 | neoforge | скачать |
1.1.0 |
1.21.1 | neoforge | скачать |
1.0.0 |
1.21.1 | neoforge | скачать |