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

Лидеры


Популярный контент

Показан контент с высокой репутацией 06.08.2020 в Сообщения

  1. 1 балл
    Думаю в случае с транспоузерами что б сделать максимальную скорость нужно просто их соеденять правильно. Не делать просто палку из транспоузеров. (ибо с последнего сундука при 20 транспоузерах будет вещ ити 1 сек). А соеденять их более компитентно.
  2. 1 балл
    Не всяко. Зависит от масштабов логистики и от применения в каждой конкретной ситуации. Параллельная обработка позволяет манипулировать одновременно несколькими стаками предметов, что иногда может оказаться полезным. И я надеюсь, что это обсуждение поможет отделить полезные применения от вредных. А в остальном я с тобой согласен: не надо заставлять сервер молотить то, что можно получить без молочения.
  3. 1 балл
    Для увеличения производительности требуется минимизировать коммуникацию. Поэтому и в задаче с конвейером надо уходить от идеи виртуальных компонентов. Тогда схема становится асинхронной, где каждый из узлов получает своё задание и выполняет его с максимально возможной скоростью, изредка общаясь с головным компьютером. С задачей увеличения производительности виртуальные компоненты пока справляются плохо. Но в этой идее есть рациональное зерно. Предлагаю расширить изначальную идею и считать виртуальным компонентом весь удалённый компьютер (микроконтороллер, робот, дрон) с любыми подключенными к нему реальными компонентами. А вместо синхронно управляемого конвейера я предлагаю систему умных воронок. Умная воронка это микроконтроллер со встроенным транспозером и простой программой в EEPROM, которая принимает к исполнению задачу от управляющего компьютера. Задачи могут быть любыми: перемещать все обнаруженные предметы с максимальной скоростью с запада на юг, или с востока и севера наверх; выбирать направление перемещений в зависимости от типов предметов или других условий; сообщать управляющему компьютеру об изменениях в инвентаре; и т.п. При этом далеко не всем микроконтроллерам требуется работать на пределе возможностей и порождать лагодромы. Зачастую требуется проверка инвентаря раз в минуту или реже. Производственная логистика в Майнкрафте легко поддаётся планированию, что позволяет избавиться от ежетиковых проверок. Управляющий компьютер может посылать умным воронкам новое задание, если предыдущее задание предусматривает возможность его отмены. Или может ставить текущий процесс на паузу. Или давать временные задания, прекращающиеся по таймеру или иному условию. Умные воронки время от времени посылают на управляющий компьютер короткий отчёт, чтобы тот знал, что воронки не зависли. Время отправки отчётов можно выбирать псевдослучайно, чтобы равномерно размазать передачу сообщений во времени. Управляющий компьютер может давать воронкам команду на отключение или будить их. Умную воронку можно считать виртуальным компонентом и управлять с одного компьютера огромным заводом, не только осуществляя большое количество операций за один тик, но и минимизируя затраты на коммуникацию.
  4. 0 баллов
    большым количеством сундуков). Или уменьшив тики модом.
  5. 0 баллов
    На английском, но с примерами есть тут: http://lua-users.org/wiki/GotoStatement >>здесь главное форма реализации, >>Мой код умеет так же, но он намного более компактный Можно вопрос - а зачем? Зачем тебе такой компактный код? В биосе 4к места, почему бы им не воспользоваться? >>А вот здесь поподробней пожалуйста. А вот тут я уже не удержался, что бы посидеть 2 часа и выжать из каждого символа максимум. Твой код написан хорошо, и абсолютно без изменения функционала удалось сжать его всего на 4-10 символов. С небольшими изменениями, которые не отразятся на условиях работы программы при 90% случаев, можно сжать 230 вариант примерно до 150 байтВ принципе можно остановиться на этом варианте, но я пошел дальше. Если отказаться от входных параметров, которые не нужны, так как их можно реализовать в клиентской программе, можно сжать первый вариант до 130 байт Если добавить еще небольших условностей, типа без проверки на сигнал модема, можно сжать код до 107 байт Если отказаться от отсылки сообщений об ошибках обратно, которые можно и так определить первым сообщением, код получается 92 байта
  6. 0 баллов
    Например, 157 байт m=component.proxy(component.list('modem')()) m.open(42) while true do e,_,_,_,_,cmd=computer.pullSignal() if e=='modem_message' then pcall(load(cmd)) end end
Эта таблица лидеров рассчитана в Москва/GMT+03:00
×
×
  • Создать...