Для тех, кто спешит:
Потестировать онлайн: 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!