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

Chebuya

Пользователи
  • Публикации

    609
  • Зарегистрирован

  • Посещение

  • Победитель дней

    72

Все публикации пользователя Chebuya

  1. Раньше была, потому что раньше MineOS ставилась поверх OpenOS. А майнось не переопределяла print, поэтому он был. После "переезда" в самостоятельную OC, она лишилась текстового интерфейса. Насколько знаю, в MineCode IDE есть аналог брейкпоинтов, в видео сказано об этом. А другой результат незачем выводить, ведь система заточена под "графику". UPD: Насколько знаю, при запуске программы всё содержимое буфера экрана сохраняется. Т.е можно творить с экраном всё что угодно, после окончания работы всё встанет на свои места. Могу предложить эту тему:
  2. Смею предположить, что в MineOS нету функции "print". В OpenComputers в принципе на уровне EEPROM нет такого понятия как "print", функция переопределена в machine.lua за пределами майна. https://github.com/MightyPirates/OpenComputers/blob/master-MC1.7.10/src/main/resources/assets/opencomputers/lua/machine.lua#L752
  3. Сейчас можно раскрафчивать EEPROM, делая из него EEPROM, потом копируя с другим.
  4. Что за extra_reboot? Это какой-то кастомный ивент? Ты делаешь где-то computer.pushSignal("extra_reboot")? Ты такую программу в цикле должен гонять, чтобы что-то сделать. event.listten лишь создаёт слушателя, который реагирует на какие-то события. P.S По поводу кода - если редстоун-сигнал принимает какая-либо из редстоун-плат, то есть сигнал redstone_changed. По быстрому написал код, не проверял, но работать должен. local event = require("event") local computer = require("computer") local redstone = require("component").redstone local rebootSide = 2 --Сторона с которой идёт приём сигнала https://minecraft-ru.gamepedia.com/OpenComputers/Sides_API local function reboot(address, side) if side == reboootSide then if redstone.getInput(reboootSide) > 0 then computer.shutdown(true) --Перезагружаем компьютер P.S true означает перезагрузку, computer.shutdown() - просто выключение. end end end event.listen("redstone_changed", reboot)
  5. С дебаг-картой опка не обязательна. debug.getWorld().insertItem(id:string, count:number, damage:number, nbt:string, x:number, y:number, z:number, side:number):boolean как-то так.
  6. Небольшое обновление Программа переделана на EEPROM. Минимальный билд робота: Добавил пару функций: eject addpoint Eject извлекает бумагу/настройщик по его имени. Addpoint добавляет предмет, который лежит рядом с роботом. Если это настройщик или бумага - предмет остаётся в роботе. Если остальное - выплёвывает под себя. Прошивка робота(одной командой): wget https://github.com/BrightYC/Other/blob/master/telepad.lua telepad.lua && flash -q telepad.lua telepad.lua По поводу конфига - ejectSide - сторона, с которой выплёвывается предмет при извлечении.
  7. Всем привет. Написал небольшую программу для автоматизации телепорта из EnderIO. В роботе должны присутствовать: Улучшение "Чат" Улучшение "Контроллер инвентаря" Улучшение "Инвентарь"(Больше - лучше, с 4 инвентарями будет доступно 64 точки) Плата на красном камне(Любой уровень) Собственно, сама программа: https://github.com/BrightYC/Other/blob/master/telepad.lua В программе можно настроить symbol(Префикс команд) whiteList(Другие игроки не смогут использовать телепорт) side(Сторона телепорта - верх, низ, спереди) bufferSide(Нужно только для версий выше 1.7, там вместо настройщиков нужно класть в инвентарь телепорта распечатку, а достать оттуда распечатку невозможно, хотя получить имя предмета - можно, поэтому ставим буфер/сундук с трубой) version(Версия работы - selector для 1.7, paper - для версий выше) Текстовая инструкция, как сделать точку телепортации: Берём настройщик координат(Если у вас версия выше 1.7 - нужно будет прихватить бумагу) Тыкаете(пкм) в то место, где хотите поставить точку. Если у вас 1.7 - можете идти домой(P.S для назначения уникального имени на 1.7 нужно переименовать настройщик в наковальне). Если нет - у вас открывается интерфейс, где можно назначить имя точки. Кладём в робота. Пишем в чате ?update Пишем ?list и проверяем наличие точки. Итог - копия плагина MyWarp(чат-команды практически заимствованы оттуда), доступно до 64 "варпов", немного дописав можно приделать доп. инвентарь, тогда количество точек стремится к бесконечности. Видеодемонстрация:
  8. Робот, упавший с TLWY - нештатная ситуация. Тут вполне хватит 2 команд >lua >component.modem.broadcast(1, '') И всё. Робот пробужен.
  9. А для чего вообще вейкапы нужны в штатной работе? Выключать робота, который например собирает кактусы, и из-за этих грошей городить целую инфраструктуру? Да любой самый простой механизм кушает намного больше, чем робот, который будет собирать кактусы. Не проще просто поставить на все модемы одно сообщение, и будить всё сразу?
  10. А если сделать так - print(s.serialize(x, true)), тогда таблица выйдет в более читаемом виде, как в интерпретаторе. Но конечно там контент урежется немного.
  11. Какого магазина? В смысле моего? Там же без ключа в любом случае не получится ничего сделать. Да и магаз же лежит в открытую на гитхабе, зачем искать где-то на пастебине?
  12. Это же одиночная игра. С какой стати серверу посылать состояние компов? Нужно только клавиатуру/монитор.
  13. Каким образом из памяти игры прочитать ключ? @vx13 призываю тебя, @NEO так же обсуждали эту тему
  14. Каким образом? Я не понимаю о чём ты. Как он модифицирует свой счёт? P.S Приведи реальный пример, я не в курсе каким образом можно достать данные с жёсткого диска не имея к нему прямого доступа. Ключ хранится на жёстком диске - каким образом игрок может вытащить ключ? Есть реальный метод, или это теория? P.P.S Был у меня сервер в игровом мире, это неудобно. Всякие отзывы и прочее при вайпе потом фиг достанешь, это не практично.
  15. "както" - либо у них там чанклодер стоит, либо счёт идет только при прогруженном чанке. Ну или у кого-нибудь там доступ к админке, не знаю.
  16. Такая программа должна работать в прогруженных чанках 24/7. В ином случае, это невозможно сделать.
  17. а, да это я сам вручную делаю просто. Утилита есть небольшая.
  18. Ну, надеюсь точно доделал. Доделал почти всё что хотел. Из новинок: Возможность выбрать режим поиска(весь инвентарь/1 слот) Запуск с EEPROM(никаких зависимостей, программа целиком и полностью на голом HDD) Админ-панель. Ну, чтож, теперь "админы" в программе указываются в EEPROM, ибо для обновления/запуска программы требуется знать, кто же администратор. В админ-панели можно банить игроков, обновлять базу данных предметов, вводить терминал в режим тех-работ, удалить ключ с диска. Небольшая переделка интерфейса, так же теперь игроки при первом логине ОБЯЗАНЫ прочитать "помощь"(Это отсеивает игроков, которые не понимают что это вообще такое) Ключ не указывается в программе, его теперь нужно вставлять через буфер обмена. Сохраняется на жёстком диске по пути в корне диска key.lua Немного адекватнее стал конфиг. Добавил openperipheral selector, позволяет показывать предмет, который пользователь выбрал. И еще куча всяких вещей, вроде того что скроллбар работает с мышью. К слову, теперь установить программу можно вроде как проще. Прошиваем EEPROM, и она автоматически скачивает программу с репозитория. Обновить можно будет комбинацией клавиш CTRL+D. Появилась утилита автоматического экспорта. Позволяет автоматически экспортировать предметы, если в таблице items указать параметр needed. Будет поддерживать это кол-во в мэ сети, но нужен мост между основной мэ-сетью и сетью магазина. Buffer - это сколько предметов должно быть в сети, чтобы можно было экспортировать предмет(Необязательный параметр). Для работы этого экспорта нужна деревянная мотыга в сети. Даже не спрашивайте зачем Пачка скриншотов:
  19. Не-а. Никак. Увы. Пробовал адаптером подцепить, не работает. А роботы по гуишкам не умеют лазить.
  20. От неё можно избавится? Ну разве что чёрный фон
  21. Мне непонятно зачем гнаться за "должен жрать очень мало ресурсов". Ибо дефолтная сейчас заставка MineOS лагодромит в разы больше, чем если какой-то микроконтроллер будет дёргать фс раз в полторы секунды.
  22. Проблема в том, что os.time, что computer.uptime возвращает майновское время. Во время низкого тпс'а тикать начнёт медленнее - соответственно computer.uptime при стабильных 20 тиках в секунду и 10-15 тпс будет одинаков. Нужно сравнивать реальное время, только так можно определить тпс.
  23. Давно его делал, что поделать. Ну тут увы дороги расходятся. Я бы не стал дожимать до последнего.
×
×
  • Создать...