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

OCLIDE - IDE для OpenComputers

Рекомендуемые сообщения

Новое обновление: PAT Pre-release 0.0.6

 

- OCEmu сменён на форк от Zen1th, коммит ad6da27ff5acce0a9778a7052e06cc4acfdb6ade. OpenOS соответственно обновлён до 1.7.5.
- Добавлена поддержка Lua 5.3
- Удалены бинарники Lua 5.2 для Windows
- OCEmu вынесен в отдельный поток
- Фикс проблемы с предустановкой OpenOS на файловую систему машины
- Фикс нерабочего алгоритма копирования проектов на файловую систему машины
- Убрана необходимость ввода абсолютного пути к файлу при создании

Скачать:

https://github.com/Vladg24YT/Oclide/releases/tag/v0.0.6

Изменено пользователем VladG24_YT
Пополнил список изменений

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Как-то пропустил релиз этой программы, но вот решил затестить.

Система тестов Windows 7 (amd64) version 6.1. Скачал запустил, запуск 20 сек, ладно. Тыкаю создать проект и вот неожиданность

Скрытый текст

txpwVUA.png

он пытается создать его в системной папке. Причем путь не поменять. Естественно система посылает куда подальше и все, ошибка программы вылет.

Пытался открыть файл, хоть какой-нибудь. Фиг там. Открыть можно только проект, который невозможно создать.

Ладно полез в эмулятор, по количеству файлов там видно, что его толи переписали, толи еще че сделали. Базовый старт, и сразу непонятное пищание.

Скрытый текст


https://www.dropbox.com/s/jmz4p4169h9nh0v/Untitled.mp3?dl=0

Вывод, а че эт вообще за программа такая?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
3 часа назад, Asior сказал:

запуск 20 сек

Java, стоит подкрутить флаги для вм.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
4 часа назад, Asior сказал:

он пытается создать его в системной папке

4 часа назад, Asior сказал:

Пытался открыть файл, хоть какой-нибудь. Фиг там.

Исправил. Выпущу в 0.0.7 (в ближайшие выходные).

4 часа назад, Asior сказал:

его толи переписали, толи еще че сделали.

Эмулятор не был модифицирован. Это та же версия, что лежит сейчас на GitHub у Zen1th: https://github.com/zenith391/OCEmu

4 часа назад, Asior сказал:

Базовый старт, и сразу непонятное пищание.

Проверил, есть такая неприятность. Это проблема скрипта сборки на Windows, так как такое же пищание есть и на отдельно собранной версии. К 0.0.7 пересоберу со скриптом от misiuji, там есть необходимый фикс для SDL 2.0.5.

Изменено пользователем VladG24_YT
Добавил информацию про SDL2.dll

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Новое обновление: PAT Pre-release 0.0.7

 

- Добавлена панель вывода, куда был перенаправлен System.out (java.util.logging.Logger всё ещё выводится в консоль/терминал)

- Добавлена GUI-заготовка для навигатора по переменным

- Заранее собранные версии OCEmu для Windows (собрана на 10 Pro 64-bit версии 19042.746) и Ubuntu (собрана на 20.04.2 LTS) можно скачать с https://github.com/OCLIDE-Modules/OCLIDE-OCEmu
- Слегка изменён интерфейс конфигуратора

- Фикс бага с запуском OCEmu (ошибка с read-only файловой системой)
- Фикс бага с заданием неверной папки при создании проекта
- OCEmu был пересобран с использованием переписанного скрипта misiuji для MSYS2, библиотека SDL обновлена до 2.0.5
- Проведена тотальная реорганизация кода, часть методов и элементов интерфейса вынесено в отдельные классы

 

Скачать: https://github.com/Vladg24YT/OCLIDE/releases/tag/v0.0.7

 

Скриншот с новой версии:

Скрытый текст

image.thumb.png.c61f196915fa143241c415de151751ee.png

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Комментарии конечно позабавили :D
Надо походу нормальную документацию Оцелоту сделать.
 

        //Why update? Really

Ocelot Brain это немного лоу-левел эмуляция.
Есть Workspace со всякими компонентами, компами, соединениями и прочими штуками. Каждый вызов метода update() симулирует 1 тик времени в майне.
 

        while (this.temporaryWorkspace.getIngameTime() < 20) //Why 20?

Потому что это Demo. Демо показывает ровно 20 тиков симуляции, потом делает снапшот и вырубается. Это чисто чтобы показать фишки.
Для полноценного эмулятора ты скорее всего захочешь другое условие выхода, или вообще вечный цикл.
 

        //Why should I make a snapshot?... Ah, whatever
        saveWorkspace(this.temporaryWorkspace);

Опять таки, потому что это Demo.
Снапшот - это просто сохранение текущего состояния Workspace, например чтобы сделать сейв состояния эмулятора, который потом можно продолжить выполнять с того же места.

Если тебе не нужен сейв - снапшот можно не делать.

 

            Thread.sleep(50);

50 миллисекунд это просто время ожидания между тиками в майнкрафте.
20 тиков в секунду.
Если сделать sleep меньше - эмуляция будет идти быстрее. Или наоборот. Таким образом можно рулить скоростью работы эмулятора.

Если тебе нужна интеграция в IDE, может быть больше подойдёт не Ocelot Brain, а Ocelot Desktop?
Это уже на основе Brain готовый эмуль, с графикой и прочим.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
1 час назад, Totoro сказал:

Если тебе нужна интеграция в IDE, может быть больше подойдёт не Ocelot Brain, а Ocelot Desktop?
Это уже на основе Brain готовый эмуль, с графикой и прочим.

Знаю его, продуманный и удобный эмулятор. Но я уже готовый эмуль использую - OCEmu от Zen1th.

Ocelot-Brain я выбрал чтоб сделать эмулятор, который был бы частью OCLIDE, по UI напоминал бы OCEmu или первые сборки OCEmulator, а из фич в нём было бы умеренное логирование состояния машины (а не спам событий как у debug-mode в OCEmu) и какой-нить вывод при взаимодействии с Component API (например отслеживание/симуляция сигналов component.redstone).

Всё что меня остановило в попытках создать такой эмулятор - непонимание двух вещей: как реализовать терминало-подобный интерфейс (спасибо NEO за наводку на Canvas) и где у Ocelot-Brain писать логику к обработчикам событий.

P.S. Блин, пока писал это сообщение, уже сам со scala.Function1 разобрался:lol:

Изменено пользователем VladG24_YT

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ну по поводу логирования если какие-то данные вытащить не получится - пиши, посмотрим, если надо допишем.
Интерфейс - да, можно на канвас. Либо погляди код того же Ocelot Desktop - там через LWJGL (OpenGL) рендерится.
Редстоун уже можно вывести без проблем.
А с эвентами разобрался - классно ) Я не тестировал под Java, поэтому да, могут быть какие-то не самые логичные моменты.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Кое-кто говорил мне, что оцелот десктоп жрет ресурсы компа как обычный майн с ОС. Я эту инфу не проверял, понятия не имею, правда ли это. Если она истинная, то в чем может быть причина? Само ядро эмулятора много жрет или оцелот-десктоп?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
2 минуты назад, hohserg сказал:

Кое-кто говорил мне, что оцелот десктоп жрет ресурсы компа как обычный майн с ОС. Я эту инфу не проверял, понятия не имею, правда ли это. Если она истинная, то в чем может быть причина? Само ядро эмулятора много жрет или оцелот-десктоп?

Не знаю, у меня Ocelot Desktop ест почти в 6 раз меньше оперативной памяти, чем майн. По остальным показателям - одинково.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Он не самый легковесный эмулятор, да.
Запустил сейчас, выполнил команду tree / - эмулятор сожрал 340 мегабайт оперативы.
Большая часть этой памяти - это рантайм Java и Scala, библиотеки и ресурсы.

Кроме того есть такой фактор, что Java по умолчанию не особенно себя ограничивает. Вызовы сборщика мусора снижают производительность, поэтому она предпочитает делать это пореже.
Думаю если поиграться с аргументом -Xmx для ограничения максимального размера стека в памяти - можно заставвить эмулятор ужаться.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Попробовал запустить опять новую версию. Теперь стартует пошустрее, и эмулятор не пищит, но добавились новые проблемы.

  • Эмулятор запустить невозможно из программы
  • Эмулятор при ручном запуске требует чтоб я где-то нашел и скачал файлы, что довольно странно
  • Ну и проблема наверное относится к тому-же эмулятору, интернет там не работает. От слова вообще.

Прилагаю скриншоты.

Скрытый текст

9j9TQC7.png

W5u8C8I.png

 

И немного "хотелок" и странностей, что я заметил

  • Очень не хватает темной темы, или возможности самому собирать свою тему.
  • При создании нового файла, как по мне, странно спрашивать как именовать файл. Окно имени файла было бы уместно, если например его отправляют в эмулятор. Но это лично мое мнение.
  • Почему делается такой сильный упор на проекты? А что если я не создаю их, а использую отдельно файлы программ?
  • Нужно открытие файла путем его переноса в окно, не всегда удобно добираться до места хранения файлов.
  • Руссификация точно не помешает. Хоть там и так все понятно, но желательно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
1 час назад, Asior сказал:

интернет там не работает. От слова вообще.

Давненько не заходил в ОС, разве https работает?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
1 час назад, NEO сказал:

Давненько не заходил в ОС, разве https работает?

Как бы да, давно уже. Я ссылку кинул на скачивание первую попавшуюся. Так то хоть программы, хоть гитхаб, куда угодно не заходит

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в тему...

×   Вы вставили отформатированное содержимое.   Удалить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.


×
×
  • Создать...