DEVLOG #0.2 - Посмотри на мои "статы" и просто уйди пожалуйста

DEVLOG #0.2 - Посмотри на мои "статы"  и просто уйди пожалуйста

«Хорошо продуманная игра — это управляемая ракета к мотивационному сердцу человеческой психики»

Кевин Вербах, автор For The Win

0003. Писать всё самому или…

В предыдущем посте я писал о наработках, сделанных за 1-2 месяца в основном — это был этап распаковки/конвертации в obj сегментов карты Gothic 3 и дальнейшей склейки в Blender с последующим преобразованием из MESH в Terrain в Unity. Понятное дело, что расставить объекты из готовых ассетов может любой, кто понимает как перетащить объект на сцену, всё шло к началу этапа по выбору пути — писать всё самому или воспользоваться инструментами из стора ... В основном это были или RPG Builder или GameCreator. Первый мне попался в раздаче на Humble Bundle когда только вышел в AssetStore, а с GameCreator я уже был знаком слегка, так сложилось, что оба были у меня в асетах.

По скринам и видео всё прям очень хорошо, но всегда есть НО
По скринам и видео всё прям очень хорошо, но всегда есть НО
 Вдруг, кто-то ещё не знает об этом инструменте, теперь знаете.
 Вдруг, кто-то ещё не знает об этом инструменте, теперь знаете.

Я понимал, что если писать всё самому во первых — это время. Я люблю код и "проклятие программистов", когда ты постоянно думаешь над реализацией чего то, но я всегда видел себя в первую очередь как Геймдизайнер, а не непосредственно программист, хотя у меня есть проекты без инструментов с "чистым" кодом, когда приходит вдохновение. С другой стороны я подумал: "ну все же используют библиотеки и репозитории других людей, для реализации своих идей, почему я, который заплатил за эти инструменты не могу пользоваться все, ведь они и были для этого созданы, тем более у них открытый код, где я всегда могу что-то сделать под себя".

Почти весь набор нужных мне функций 
Почти весь набор нужных мне функций 

0004. Чем глубже, тем лучше…

Как вы уже поняли я выбрал GameCreator. Не буду описывать как в нём реализовано передвижение, камеры и т.д — удобно, очень удобно. Я начал проектировать блок схему как и что должно работать, какие механики оригинала можно сделать (все), какие можно усовершенствовать или дополнить. И чем глубже я погружался в это, понимал, что всё может получиться ! Меня даже не отпугнули масштабы которые я увидел в Debug режиме Gothic 3. По сути — это грамотно настроенная система фракций, грамотный баланс урона/защиты/статы (привет кабаны), система поведения и квесты. Всё остальное — карта с наполнением растительностью, вторичными объектами и предметами инвентаря.

DEVLOG #0.2 - Посмотри на мои "статы"  и просто уйди пожалуйста
Такое чувство, что и сама Gothic 3 сделана на Unity, судя по коллайдерам и другим компонентам.
Такое чувство, что и сама Gothic 3 сделана на Unity, судя по коллайдерам и другим компонентам.

Я решил начать с системы фракций/репутации персонажей, животных, монстров, чтобы исходный персонаж сравнивал свою переменную репутации с переменной объекта попавшего в поле зрения и если что, действовал по заданной ветке поведения. Всё просто на бумаге, но нужного "условия" в стандартном наборе GC нет, в стандартном варианте вы можете оперировать в условии — как увеличение/уменьшение либо равно какой либо статистики персонажа.

При уменьшении HP у ГГ будет происходить действие или условие с действием 
При уменьшении HP у ГГ будет происходить действие или условие с действием 
Условие после которого будет выполняться действие, как видите здесь нет "сравнения" с другим персонажем
Условие после которого будет выполняться действие, как видите здесь нет "сравнения" с другим персонажем

В настройках GC при подключении модулей расширения, есть возможность настроить какие статы будут использоваться у персонажей просто добавив их

Вы можете и не использовать данную систему, но тогда придётся делать проверку локальных переменных которые вы так же можете задать объектам.
Вы можете и не использовать данную систему, но тогда придётся делать проверку локальных переменных которые вы так же можете задать объектам.

После недолгих поисков было найдено необходимое условие сравнения статистики или атрибутов персонажей (благо есть Discord сообщество) , но сам скрипт не особо сложный. Далее вешаем условие на триггер отслеживания поля зрение и ставим действие которое должно быть, в дальнейшем вместо триггеров будут использованы деревья поведения. Вариантов развития ситуаций может быть множество.

На место Target 2 ставится обнаруженный объект или нужный
На место Target 2 ставится обнаруженный объект или нужный
Всё в действии 

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

«Мы считаем, что вам придется переделывать игру по крайней мере два или три раза, прежде чем вы найдете правильный путь. Мы использовали много возможностей для проектирования и изучения, зная, что многое из этого будет выброшено»

Кен Вонг, Ведущий дизайнер по Monument Valley
Оставлю это здесь для следующего поста ))
2727 показов
553553 открытия
13 комментариев

Здесь должен быть комментарий, но я промазал по кнопке "ответить"

Ответить

точно, вспомнил что больше всего раздражало в готике 3, вот эта дальность прорисовки, задники хз
если просто рисовать всю карту на юнити лучше не будет?

Ответить

Именно, при должном подходе к расстоянию появления растительности и объектов будет конечно намного лучше. Конечно "туман" может присутствовать ведь как по мне, он добавляет атмосферы, но не как в оригинале ))) Сравнивать конечно рано ещё, но думаю суть ясна

Ответить

Ты хочешь готику на юнити перенести чи шо?

Ответить

Именно

Ответить

нормес, поддерживаю геймкреатор. Выглядит гибко.

но я конечно за индивидуальность - чтобы была своя готика с блекджеком и пионерками.

Ответить

Да я тоже, качаешь скил код и мозг и способность гуглить, если вы конечно имеете ввиду "индивидуальность" в плане своего кода

Ответить