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

Totoro

Гуру
  • Публикации

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

  • Посещение

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

    289

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

  1. @ArtHacker ты предлагаешь добавить режим автоматизации Оцелота через скрипты на Луа. Да, в принципе такое можно сделать, но я не вижу особой необходимости в такой фиче. Более полезной будет возможность создавать "шаблоны" - готовые конфигурации, которые потом можно будет создать в один клик. Типа "компьютер второго тира со всей начинкой и установленной OpenOS" - что-то такое что часто нужно, чтобы не возиться. Баги с графикой любопытны. MineOS поддерживает дисплеи / видеокарты второго тира?
  2. Необходимо именно в массив? Можно считать всё в строку и работать с ней как с массивом байт. local file = io.open("file.name", "rb") local content = file:read("*a") file:close() Весь файл будет прочитан и сохранен в переменной content.
  3. Я вообще качал OpenJDK с репозиториев Debian и OracleJDK с какого-то репозитория Ubuntu. Там формы заполнять не надо. Мораль - пользуйтесь Линуксом.
  4. Никаких скандалов. У тебя просто слишком "наполеоновские" планы и их слишком много сразу. Ты выбери какой-нибудь простой проект для начала, для разминки.
  5. Ядро эмулятора - это Scala библиотека. Она использует нативные Lua бинарники для эмуляции в обычном режиме. Запустить их на Андроид наверное не получится. Но можно использовать Ocelot Brain в режиме LuaJ. Сохранения и ограничение ресурсов не будет доступно, но в остальном будет работать. Изучать надо скорее всего не Java, а Scala. Есть и второй вариант - это Ocelot Online, который можно и сейчас открывать с любого смартфона, где есть браузер.
  6. К сожалению, как раз нужен Луа. И желание реально что-то делать.
  7. Ну эт надо уже к Алексу, наверное. =) Или какое-то сотрудничество замутить, с кем-то. В тот который сейчас на сайте доступен - никак. А в тот который пишется - по ПКМ на блоке компьютера.
  8. Идея точно так же как и предыдущая. Если есть желание лично заниматься этим, и есть ресурсы - занимайся. Если получится - с меня лайк. А больше ни для чего кроме личного саморазвития не годится.
  9. Всем привет. Мы тут пишем эмулятор OpenComputers, и в процессе его нужно тестировать. Поэтому будет очень здорово, если кто-нибудь напишет утилиту-бенчмарк. Утилита должна выглядеть как программка для OpenOS, на Lua. В идеале её надо загрузить в Hel, чтобы было быстрее устанавливать. Для чего именно она нужна? Делать бенчмарк компьютера в Minecraft смысла особо нет - там и так понятно насколько будет производительной твоя "сборка". Но это имеет смысл делать в эмуляторе - потому что эмулятор может глючить, лагать, багать, и жрать оперативную память. (Например, сегодня мы запустили в Ocelot Online демку, которая очень быстро рендерила текст на экране, и в результате, у @Fingercomp браузер сожрал 5 гигабайт оперативной памяти, засвопился и вырубил на час весь компьютер.) Что именно она должна тестировать? Утечки оперативной памяти, производительность рендера и лаги эмулятора. Для этого можно например запустить интенсивный рендер на экране какого-нибудь цветастого мусора. Или любой другой вариант. Засечь время и потом сверить "внутриигровые" часы с настоящими, чтобы определить, не лагало ли оно. (Параллельно тесту можно будет уже вручную смотреть диспетчер задач - не жрет ли браузер или десктопный эмулятор ресурсы больше положенного.) Правильную работу компонентов. То есть проверить, соединяет ли интернет карта с интернетом, посылает ли сетевые сообщения модем, и так далее. Всю инфу надо потом красиво вывести на экран. Можно в графическом виде, можно в командной строке. Награда? Большое спасибо от всей души. Короче, если кто-то будет искать идею "что бы написать" - бенчмарк для эмулятора это вариант. Он нам пригодится.
  10. Я могу встроить что-нибудь типа Ocelot API в эмулятор. Типа глобальный объект ocelot который будет доступен везде из Луа и будет нести всякие dev-функции типа логирования. Ну а лог сам выводить куда угодно - в файл, в отдельное окно. Я тебя услышал. Попробуем что-нибудь типа профайлера прикрутить. Это задача непростая, но интересная. Тайминги должны быть если не идеально точными, то близкими.
  11. Над выбором произвольной папки надо будет подумать. Я думаю сложностей не должно быть. Сейчас там сделано как в OC - есть папка save и в ней жесткие диски по адресам. С отключенной буферизацией можно работать прямо в этих папках, любым внешним редактором, как в OC. Насчет developer tools - хорошая мысль. Я тоже над этим думал. Эмулятор ведь дает возможность загляуть "под капот" комьютеру, потенциально. Как минимум - я могу динамически показывать загруженность проца, "бюджет вызовов", сколько занято оперативной памяти, лимит компонентов и т.п. Можно подумать над тем, какие именно инструменты могут понадобиться - какой-нибудь дебаггер-профайлер... хз. Короче да, спасибо за идеи - предлагайте ещё, не стесняйтесь. =) Все сделать не обещаем, но кое что обязательно попадет в релиз.
  12. Не копия, а эмулятор. Есть разница. Но если проще запустить майн, чем открыть сайт, то конечно стоит запустить майн. Спору нет.
  13. А вот и WIP-видео Ocelot Desktop подъехало. Отлично =) Только в головах авторов, пока. Ядро эмулятора готово - к нему надо будет составить подробную документацию. Клиенты (онлайн и десктоп) пока имеют только базовую функциональность - одно окно и фиксированный сетап компа. В разработке (и там и там) система типа "графа" из блоков, соединенных "кабелями". Это позволит строить любые схемы. Далее скорее всего будет сериализация (сохранение) проекта и загрузка. Затем - развитие эмулятора путем добавления новых блоков и возможностей - типа робота, например.
  14. Да, всё верно. Это ограничение не эмулятора Ocelot, а именно браузера. Хоткей Ctrl + W не переопределяется через JS код, он жестко закреплен для закрытия вкладки. Наверное беспокоятся о том, что можно будет создать веб-сайт, который переопределит кнопки закрытия чтобы пользователю было сложнее его покинуть. Поэтому пришлось поменять его в настройках OpenOS.
  15. Гениальная ссылка. Предлагаю залить картинку на Imgur или куда угодно.
  16. Для тех, кто спешит: Потестировать онлайн: https://ocelot.fomalhaut.me/ Скачать на комп и потестировать: Ocelot Desktop На форуме давно мелькают упоминания Ocelot. Это эмулятор OpenComputers, который находится в разработке примерно с 2015 года, был несколько раз переписан и наконец увидел свет в закрытом альфа-тесте зимой 2018. Я немного отвлекся на другие проекты (привет Stem), но теперь возвращаюсь к разработке Ocelot, и с гордостью предствляю вам тизер-анонс и, по совместительству, открытый альфа-тест Ocelot. Ещё один эмулятор? Да. Будем честны. Нормального эмулятора OpenComputers не существует. Те что есть - полны костылей, не совсем соответствуют реальному моду, сложны в установке, заброшены... и так далее. Ocelot - это решение всех этих проблем. Основная идея Ocelot - взять уже существующий код мода OpenComputers, тщательно отделить всё не нужное (Майнкрафт), затем осторожно переписать то что получилось с поправкой на реалии эмулятора. Благодаря этому, Ocelot эмулирует OpenComputers с ранее невиданной точностью. Вплоть до того, что в эмуляторе могут встречаться те же самые баги, что и в моде. Что он умеет? Практически всё. В перспективе. Ocelot позволяет воссоздать схему любой сложности из любого количества блоков - мониторов, компьютеров (любой конфигурации), проводов, модемов и прочих компонентов. Он позволяет управлять скоростью работы компьютеров, позволяет изменять "игровое" время, ставить его на паузу, сохранять состояние работы компьютеров и потом возобновлять работу с любого сохранения. Сейчас доступен базовый набор компонентов и блоков. Это кабель, корпус компьютера, APU/CPU, плашки памяти, видеокарты, дата-карты, EEPROM, дискеты, жесткие диски (managed и unmanaged режимов), интернет-карта, линкед-карта, сетевая карта (проводная и безпроводная), редстоун-карта / блок и монитор. Список будет расширяться. В перспективе будет эмуляция всех блоков и компонентов стандартного OC, роботов, дронов, микроконтроллеров, серверных стоек, плюс эмуляция адаптера и интеграции с ванильными блоками и блоками других модов. Что можно потрогать? Ocelot задуман как модульный проект. А именно: Ocelot Brain Основа эмулятора - это библиотека Ocelot Brain. Она написана на Scala и может быть подключена к любому другому проекта на Scala (и, может быть, Java). Ocelot Brain - это как раз переработанный код OpenComputers в компактной и удобной форме. Отвечает за всю эмуляцию кода и компонентов, а также сохранение / загрузку проектов. Вы можете использовать его для своих проектов, можете помочь с разработкой и патчами. Проект открыт и доступен по адресу: https://gitlab.com/cc-ru/ocelot/ocelot-brain На данный момент Ocelot Brain актуален версии OpenComputers 1.7.7. Ocelot Online На основе проекта Ocelot Brain, в качестве демонстрации его возможностей, создается проект Ocelot Online. Ocelot Online это эмулятор OpenComputers в виде сайта. Да. Всё что вам нужно для его запуска - это открыть сайт. Ссылка: https://ocelot.fomalhaut.me/ Исходный код тоже доступен: https://gitlab.com/cc-ru/ocelot/ocelot-online Поскольку проект пока находится в альфа-релизе, большая часть возможностей закрыта. Доступен только один монитор на всех, который позволяет взаимодействовать с уже настроенным демо-проектом. Конфигурация проекта: Креативный корпус, CPU T3, видеокарта T3, две планки памяти T3.5, managed жесткий диск T3, unmanaged жёсткий T3, интернет карта, редстоун карта T2, дисковод с дискетой Open OS, монитор T2, клавиатура и EEPROM с Advanced Loader от товарища Luca_S. Отличия от стандартного OpenComputers: * В OpenOS уже установлен HPM. Благодаря этому можно быстро ставить разные программы через hpm install. * Вставка текста заменена с Insert на Ctrl + V. Браузер не дает изменить этот хоткей. * В редакторе edit кнопка выхода заменена на Ctrl + E. Стандартная комбинация юзается браузером для закрытия вкладок - и переопределить её нельзя по соображениям безопасности. * Вместо OpenOS EEPROM используется Advanced Loader. Это сделано для удобства и наглядности. * Не работает лок на пользователя - по понятным причинам. Ocelot Online должен так же работать на смартфонах. Однако возможно придется отключить T9 - он портит эвенты клавиатуры. В разработке находится более сложная версия, где все получат возможность зарегистрировать аккаунт и создавать личные проекты любой конфигурации. Но это дело будущего. Ocelot Desktop Это классический вариант эмулятора Ocelot в виде программы, которую можно скачать и запустить на любой операционной системе, где есть Java. Построен на Ocelot Brain и библиотеке LWJGL (как и сам майнкрафт). Разработкой занимается товарищ @LeshaInc. Протестировать проект, сообщить о багах и поддержать разработчиков можно в топике Ocelot Desktop: Альфа-тест Итак, дорогие пользователи, пишите ваши хотелки, сообщайте о багах, обо всем что работает не так как должно, и как в оригинальном OC. Я, со своей стороны, постараюсь проект не забрасывать, развивать и своевременно (или не очень) обновлять. Благодарности Над проектом также работали: @LeshaInc, @Laine_prikol, @Fingercomp и @MeXaN1cK. За что им огромное спасибо и респект. Не забудем также всех, кто помогал с альфа-тестированием, Сангара - за чудесный мод, и мейнтейнеров OpenComputers за то что его не забросили. Enjoy!
  17. Чувствую про Ocelot надо уже сделать анонс, лол. А то щас без меня зарелизите.
  18. Респект таким парням, которые поддерживают и совершенствуют отечественные разработки.
  19. Да, чтобы упрощать такие вещи, тебе потребуется построить абстрактное синтаксическое дерево для исходника. Вряд ли минификатор таким занимается. Скорее просто заменяет все неключевые слова на более короткие и убирает лишние пробелы и переносы.
  20. У каждого эмулятора просто свои заскоки. Стандартов эмуляции-то нет. =) Придется под каждый эмулятор совместимость вручную делать.
  21. Наполеоновские планы. Уже что-то начато? Это вариант. И он сильно зависит от того, какой именно эмулятор планируется использовать.
  22. В тему: https://oc.cil.li/topic/1886-vscode-opencomputer-api/
  23. Так можно же сразу открыть скрипты в сейве эмулятора (с выключенной буферизацией). Редактируй себе и тут же тестируй. Автокомплит можно, да. Чтобы там сразу справка была, и все такое.
  24. А что должен будет делать этот плагин?
×
×
  • Создать...