Phase Of Horizon | HollowEngine
385 subscribers
159 photos
98 videos
12 files
68 links
Engine for development story-based maps & modpacks.

Support the project:
https://boosty.to/hollowhorizon/
Download Telegram
Комментарии теперь открыты 🤔
🌭8
Ладно, вот вам небольшой эксклюзивный спойлер...
🤯8🗿2
Как я вижу блокировка особо никого не останавливает :)
Но думаю новости и эксклюзивные посты временами сюда публиковать тоже буду
🕊6
This media is not supported in your browser
VIEW IN TELEGRAM
Экранирование кавычек и авто-закрытие кавычек в новом редакторе :)
🥰3
This media is not supported in your browser
VIEW IN TELEGRAM
Ещё одна из фишек HollowEngine, которая скоро будет в редакторе 🙃
👀5❤1
Media is too big
VIEW IN TELEGRAM
У вас тоже так, пытаетесь сделать редактор шаблонов для нпс, а получается какая-то другая игра?...
❤2
Media is too big
VIEW IN TELEGRAM
Шейдерные фракталы на HollowEngine :D
❤4
This media is not supported in your browser
VIEW IN TELEGRAM
- Мам, можно нам калькулятор?
- У нас есть калькулятор дома.
Калькулятор дома:
👾2
Media is too big
VIEW IN TELEGRAM
Ах да, недавно узнал, что у shapes.inc появилось открытое API до 5 запросов в минуту... И тут я подумал, а почему бы не замутить базовые ИИ диалоги, и спустя 15 минут получилось это)

Ktor - интересная штука однако 🤔

Возможно в ближайшем будущем появятся модели, которые смогут отвечать по строгим шаблонам, тогда можно было бы даже частично это в геймплей внедрять... Ну а пока это разве что "поразвлекаться" задавая нпс всякие неудобные вопросы)
🔥3❤2
Я тут понемногу доделываю документацию для HollowEngine, пока выходит что-то такое 🙃
https://hollowhorizon.github.io/HollowEngineDocumentation/

В целом, сам движок уже плюс-минус стабильно работает, разве что остаётся отшлифовать систему анимаций по мелочи, да и базовую диалоговую систему создать, после этого можно и в запой релиз)
Если есть идеи, предложения и дополнения, можете их предлагать в одноимённом Discord канале, он теперь снова открыт.
❤‍🔥4❤2🔥2
Сделал небольшой тестик для доступа к документации, теперь ей точно никто не будет пользоваться 😂
https://hollowhorizon.github.io/HollowEngineDocumentation/

А вообще оказывается React - интересная штука, не Kotlin конечно, но достаточно интересная задумка 🤔
❤2
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Дорабатываю тут диалоговое окно 🤔
Предполагается что в левой части можно будет также указывать разные иконки или условия для выбора (При наличии репутации / предмета / характеристики, по времени и т.п.)
🍓4❤1🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
Работаю над улучшением встроенного редактора.
- Добавил поиск классов по всему модулю (классы игры, библиотек и всех модов), а также их индексацию как в большинстве IDE, угадайте сколько она будет длиться на сборке с 200+ модами 🙃 + автоматическое добавление импорта в начало файла
- Работаю над автоматическими отступами при переходе на новую строку, как видите не без багов))
- При выборе метода с лямбдой в конце среда сама добавляет нужные скобки в конце и перемещает курсор

Вообще есть ещё куда стремиться в плане оптимизации, например в идеале вообще бы отказаться от парсинга файла при каждом изменении и редактировать напрямую AST файла, да и давно пора перейти на анализатор K2, вместо текущего, но для этого нужно существенно переписывать весь редактор кода, так что оставлю это когда-нибудь после релиза)

#repost
🍓6❤1
3 месяца... ПОЧТИ 3 МЕСЯЦА не было постов тут... Признавайтесь, кто уже забыл, кто я и почему Вы на меня подписаны?)

Пришло время рассказать что за это время я несделал и над чем я вообще работаю...
Прежде всего я сделал достаточно большой перерыв в разработке, чтобы обдумать, чего я вообще хочу от движка и как оно должно выглядеть. Прежде всего я слил HollowCore и HollowEngine в один мод, а также тяжёлый компилятор в ближайшем будущем будет устанавливаться отдельно от мода. Подробнее об этом я писал на моём Boosty (пост бесплатный).

А скриптинг в моде уходит от довольно разрозненных объектов вроде крафты, сюжет, события, модификации, диалоги, интерфейсы и др.
Вместо них теперь остаётся буквально парочка универсальных: Компоненты (например, .entity-component.kts) и События (например, .handler.kts). Компоненты позволяют хранить данные, а события их обрабатывать.

Компоненты можно крепить к большинству объектов игры: предметы, блоки, мобы, чанки, измерения и мир целиком.
Будет довольно много встроенных компонентов, которые будут реализовывать те или иные свойства. Например, если взять компоненты Кирка и Топор и нацепить на предмет, то он получить соответствующие свойства, а также автоматически создаст зависимые компоненты, например `Прочность`, т.е. предмет с этими компонентами сможет копать камень и рубить дерево. Ну и разумеется эти компоненты будут иметь настройки (скорость копания, радиус, уровень добычи и т.п.), а также появится новый инструмент для настройки этих компонентов через визуальный редактор.
Это лишь пример, того, как это можно применить и совмещать. Аналогично можно добавлять различную логику и тем же мобам и блокам.
Но что там по сюжету? - он тоже технически является компонентом. То есть с переходом на эту систему, сюжет можно привязывать к игрокам, самим нпс, даже к серверу целиком. Да, вместо того, чтобы адаптировать одну систему под несколько условий, я просто свалил всю ответственность на вас, которые будут писать эти скрипты :)

Вторая система - это события, по сути она представляет собой более удобную систему (Neo)Forge, но не зависимую от модлоадера:
@SubscribeEvent
fun RenderEntityEvent.Pre.`Срабатывает при отрисовке мобов`() {
// Получение компонента, либо завершение вызова при отрисовке сущности
val model = owner.getOrNull<ModelComponent>() ?: return
model.render(...) // Отрисовка через сам компонент
isCanceled = true // Отмена стандартной отрисовки сущности
}

Это псевдокод компонента модели, который можно нацепить на любую сущность в игре и изменить её модель.

А чтобы не настраивать так каждого моба/предмет/блок внутри игры появятся префабы, как и в большинстве нормальных игровых движков :D
Работать это будет просто - создаёте новый файл для сущности или другого объекта: /hollowengine/prefabs/entity/my_npc.prefab и настраиваете его компоненты в IDE мода, после чего при /reload движок сам добавит его, как нового моба, которого можно призвать через что-то вроде: /summon hollowengine:prefabs/my_npc.

Надеюсь вышло не слишком сложно и много, поскольку всё что я описал, это лишь порядка 15% от реальных объёмов работы, которая была проделана. А я тут старался особо сложные моменты обходить стороной... Но если кому-то интересно, то на Boosty, я расписывал более подробно эти темы, плюс там ещё есть пара моих мыслей про мой аналог FTB Quests на базе этих систем, который я точно скоро начну делать 🙃
Готовых инструментов по началу будет меньше, но функционала станет существенно больше. Думаю подобные системы сильно упростят разработку не только сюжета, но и разного контента для сборок, построек, карт и других интересных проектов.
P.S. Подходящих картинок или видео для поста не нашёл, но постараюсь в ближайшие дни пару демонстраций записать :)
🔥10❤1✍1💯1
Недавно ⁨DanBat сделал мини-игру "Тетрис" для движка Kool, тут я и подумал, а почему бы не попробовать скопировать её для демонстрации возможностей HollowEngine, получилось что-то такое :)
https://youtu.be/lInFMW-1eZE
🍓2👾2🔥1