Totoro
Гуру-
Публикации
1 950 -
Зарегистрирован
-
Посещение
-
Победитель дней
289
Тип публикации
Блоги
Профили
Форум
Багтрекер
Магазин
Все публикации пользователя Totoro
-
@ArtHacker ты предлагаешь добавить режим автоматизации Оцелота через скрипты на Луа. Да, в принципе такое можно сделать, но я не вижу особой необходимости в такой фиче. Более полезной будет возможность создавать "шаблоны" - готовые конфигурации, которые потом можно будет создать в один клик. Типа "компьютер второго тира со всей начинкой и установленной OpenOS" - что-то такое что часто нужно, чтобы не возиться. Баги с графикой любопытны. MineOS поддерживает дисплеи / видеокарты второго тира?
-
Необходимо именно в массив? Можно считать всё в строку и работать с ней как с массивом байт. local file = io.open("file.name", "rb") local content = file:read("*a") file:close() Весь файл будет прочитан и сохранен в переменной content.
-
Я вообще качал OpenJDK с репозиториев Debian и OracleJDK с какого-то репозитория Ubuntu. Там формы заполнять не надо. Мораль - пользуйтесь Линуксом.
-
Никаких скандалов. У тебя просто слишком "наполеоновские" планы и их слишком много сразу. Ты выбери какой-нибудь простой проект для начала, для разминки.
-
Ядро эмулятора - это Scala библиотека. Она использует нативные Lua бинарники для эмуляции в обычном режиме. Запустить их на Андроид наверное не получится. Но можно использовать Ocelot Brain в режиме LuaJ. Сохранения и ограничение ресурсов не будет доступно, но в остальном будет работать. Изучать надо скорее всего не Java, а Scala. Есть и второй вариант - это Ocelot Online, который можно и сейчас открывать с любого смартфона, где есть браузер.
-
К сожалению, как раз нужен Луа. И желание реально что-то делать.
- 59 ответов
-
- игра
- программирование
-
(и ещё 1 )
Теги:
-
Ну эт надо уже к Алексу, наверное. =) Или какое-то сотрудничество замутить, с кем-то. В тот который сейчас на сайте доступен - никак. А в тот который пишется - по ПКМ на блоке компьютера.
-
Ocelot Online не отстает.
-
Идея точно так же как и предыдущая. Если есть желание лично заниматься этим, и есть ресурсы - занимайся. Если получится - с меня лайк. А больше ни для чего кроме личного саморазвития не годится.
-
Всем привет. Мы тут пишем эмулятор OpenComputers, и в процессе его нужно тестировать. Поэтому будет очень здорово, если кто-нибудь напишет утилиту-бенчмарк. Утилита должна выглядеть как программка для OpenOS, на Lua. В идеале её надо загрузить в Hel, чтобы было быстрее устанавливать. Для чего именно она нужна? Делать бенчмарк компьютера в Minecraft смысла особо нет - там и так понятно насколько будет производительной твоя "сборка". Но это имеет смысл делать в эмуляторе - потому что эмулятор может глючить, лагать, багать, и жрать оперативную память. (Например, сегодня мы запустили в Ocelot Online демку, которая очень быстро рендерила текст на экране, и в результате, у @Fingercomp браузер сожрал 5 гигабайт оперативной памяти, засвопился и вырубил на час весь компьютер.) Что именно она должна тестировать? Утечки оперативной памяти, производительность рендера и лаги эмулятора. Для этого можно например запустить интенсивный рендер на экране какого-нибудь цветастого мусора. Или любой другой вариант. Засечь время и потом сверить "внутриигровые" часы с настоящими, чтобы определить, не лагало ли оно. (Параллельно тесту можно будет уже вручную смотреть диспетчер задач - не жрет ли браузер или десктопный эмулятор ресурсы больше положенного.) Правильную работу компонентов. То есть проверить, соединяет ли интернет карта с интернетом, посылает ли сетевые сообщения модем, и так далее. Всю инфу надо потом красиво вывести на экран. Можно в графическом виде, можно в командной строке. Награда? Большое спасибо от всей души. Короче, если кто-то будет искать идею "что бы написать" - бенчмарк для эмулятора это вариант. Он нам пригодится.
-
Я могу встроить что-нибудь типа Ocelot API в эмулятор. Типа глобальный объект ocelot который будет доступен везде из Луа и будет нести всякие dev-функции типа логирования. Ну а лог сам выводить куда угодно - в файл, в отдельное окно. Я тебя услышал. Попробуем что-нибудь типа профайлера прикрутить. Это задача непростая, но интересная. Тайминги должны быть если не идеально точными, то близкими.
-
Над выбором произвольной папки надо будет подумать. Я думаю сложностей не должно быть. Сейчас там сделано как в OC - есть папка save и в ней жесткие диски по адресам. С отключенной буферизацией можно работать прямо в этих папках, любым внешним редактором, как в OC. Насчет developer tools - хорошая мысль. Я тоже над этим думал. Эмулятор ведь дает возможность загляуть "под капот" комьютеру, потенциально. Как минимум - я могу динамически показывать загруженность проца, "бюджет вызовов", сколько занято оперативной памяти, лимит компонентов и т.п. Можно подумать над тем, какие именно инструменты могут понадобиться - какой-нибудь дебаггер-профайлер... хз. Короче да, спасибо за идеи - предлагайте ещё, не стесняйтесь. =) Все сделать не обещаем, но кое что обязательно попадет в релиз.
-
Не копия, а эмулятор. Есть разница. Но если проще запустить майн, чем открыть сайт, то конечно стоит запустить майн. Спору нет.
-
А вот и WIP-видео Ocelot Desktop подъехало. Отлично =) Только в головах авторов, пока. Ядро эмулятора готово - к нему надо будет составить подробную документацию. Клиенты (онлайн и десктоп) пока имеют только базовую функциональность - одно окно и фиксированный сетап компа. В разработке (и там и там) система типа "графа" из блоков, соединенных "кабелями". Это позволит строить любые схемы. Далее скорее всего будет сериализация (сохранение) проекта и загрузка. Затем - развитие эмулятора путем добавления новых блоков и возможностей - типа робота, например.
-
Да, всё верно. Это ограничение не эмулятора Ocelot, а именно браузера. Хоткей Ctrl + W не переопределяется через JS код, он жестко закреплен для закрытия вкладки. Наверное беспокоятся о том, что можно будет создать веб-сайт, который переопределит кнопки закрытия чтобы пользователю было сложнее его покинуть. Поэтому пришлось поменять его в настройках OpenOS.
-
Гениальная ссылка. Предлагаю залить картинку на Imgur или куда угодно.
-
Для тех, кто спешит: Потестировать онлайн: 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!
- 125 ответов
-
- 25
-
-
-
-
Чувствую про Ocelot надо уже сделать анонс, лол. А то щас без меня зарелизите.
-
Респект таким парням, которые поддерживают и совершенствуют отечественные разработки.
-
Да, чтобы упрощать такие вещи, тебе потребуется построить абстрактное синтаксическое дерево для исходника. Вряд ли минификатор таким занимается. Скорее просто заменяет все неключевые слова на более короткие и убирает лишние пробелы и переносы.
-
У каждого эмулятора просто свои заскоки. Стандартов эмуляции-то нет. =) Придется под каждый эмулятор совместимость вручную делать.
-
Наполеоновские планы. Уже что-то начато? Это вариант. И он сильно зависит от того, какой именно эмулятор планируется использовать.
-
В тему: https://oc.cil.li/topic/1886-vscode-opencomputer-api/
-
Так можно же сразу открыть скрипты в сейве эмулятора (с выключенной буферизацией). Редактируй себе и тут же тестируй. Автокомплит можно, да. Чтобы там сразу справка была, и все такое.
-
А что должен будет делать этот плагин?
