Войти на сайт

Авторизация, ждите ...
×

ТЕМА: RPG Maker GE (Godot Engine)

RPG Maker GE (Godot Engine) 10 мес. 3 нед. назад #129477

  • Doctor_Bug
  • Doctor_Bug аватар
  • Вне сайта
  • Светлый дракон
  • Из горизонта события! ▪_■
  • Сообщений: 568
  • Спасибо получено: 880
  • 3 место в КодировкеВетеранПрограммист RubyПроект месяца 3 место3 местоПроект месяца 1 место
RPG Maker GE (Godot Engine)
Мысли в слух или как организовать большой проект

Запись 1. Начало

Здравствуйте сообщество RPG Maker’а это мысли вслух или возможно будущие начала большого проекта. Я не уверен, что смогу создать подобный проект в одиночку, хотя в интернете существуют достаточно материала чтобы изучить игровой движок «Godot engine», вдоль и поперек. Но я постараюсь, или мы постараемся (если захотите присоединиться к проекту).

К чему посвящена это статья? Я всегда хотел создать свой проект похожий в стиле jRPG, но с некоторыми оговорками. К примеру, чтобы персонаж не ходил строго по клеточкам (отчасти это удобно в создание сюжетных сцен), а мог свободно перемещаться в любом к направлении, или чтобы боевая система не была пошаговой. Конечно все это можно прописать с помощью скриптов, плагинов, изменяя встроенный функционал нагромождая проект еще большими задержками в загрузки проекта. Возможно я не прав.

Было бы замечательно создать свою собственною RPG-игру к примеру в другом движке. Мой выбор пал на игровой движок «Godot engine», так как он бесплатен и в нем есть достаточно инструментов. Но что требуется для создание такого проекта? Много чего, слишком много. Не говоря о знание программирование на python’e(в годоте используется язык похожий на пайтон GDScript), грамотном размещение множество механик и создание собственно этих механик. Ведь создатели RPG Maker всё в аккурат создали за нас эту работу.

Будем придерживаться минимального продукта, далее будем по нарастающие дополнять механики. Предупрежу, создать сразу же игру навряд ли получиться. Разобьём проект на три гигантские части: первое «Бродилка», второе «Боевая система», третье «База данных».
• Бродилка – возможность двигать персонажа в любом направлении, перемещение среди разных локаций, системы диалогов и прочее.
• Боевая система – То как персонаж будет сражаться? Будь то пошаговая система или активная. Я буду придерживаться активной системе.
• База данных – основные данные игры будут расположены здесь. Характеристики, навыки, предметы, классы, все что мы так любим в базе данных.

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

Боевая система:
o Научим махать первым оружием, мечом в разные стороны.

База данных:
o Здесь мы пропишем UI, создадим прогресс бар связанный с жизнью игрока.

Что же это пока минимальный продукт. Господа и дамы если есть у вас какие-либо предложение, можете смело задавать их в эту тему.

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

p.s. А пока будете обдумывать проект, сыграйте созданной мною маленькую игру для школьного мероприятия. Я там создал целый комплекс, связка загадок-сайтов, с мини играми и коптерами. Но здесь лишь мини игра про бешенного зайца (игру делал пару часиков). Да я тот еще чудик хе-хе %)
Бешенный заяц: Mad Hare
ВНИМАНИЕ: Спойлер! [ Нажмите, чтобы развернуть ]
Баг изучает Godot Engine. А слушает эту музыку ~~> Мое сердце
Последнее редактирование: 10 мес. 3 нед. назад от Doctor_Bug.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Kerotan, Фред Канниг, Адский дровосек, Snake Fightin, Alx_Yago

RPG Maker GE (Godot Engine) 10 мес. 3 нед. назад #129491

  • Doctor_Bug
  • Doctor_Bug аватар
  • Вне сайта
  • Светлый дракон
  • Из горизонта события! ▪_■
  • Сообщений: 568
  • Спасибо получено: 880
  • 3 место в КодировкеВетеранПрограммист RubyПроект месяца 3 место3 местоПроект месяца 1 место
Запись 2. Структура проекта

Для начало скачаем Godot Engine. На текущий момент версия 4.1.1. Ссылка на скачивание игрового движка.
https://godotengine.org/
Создадим проект, назовите как хотите, я же назову этот проект «RPG Maker GE». Так как это будет не совсем игра, а лишь инструмент, заготовка для будущих игр.

Немного поразмыслив пришел к выводу что буду создавать корневую директорию (папку) с специально назначенными директориями (папками).
  • Assets – предназначен для хранения игровых наборов, будь то аудио, графика или даже шрифты.
  • DB – (database) – база данных. Здесь будут храниться вся база данных игрового проекта.
  • Entity – сущности. Здесь будут храниться сцены с персонажами, NPC (не игровыми персонажами) и врагами. Все что шевелиться и подает признаки жизни =)
  • Mechanics – Механики. Все игровые механики будут заложены в сценах, которые и будут тут храниться. Скрипты механик будут расположены в другом месте. К примеру, здесь могут храниться: Спецэффекты, диалоговые окна, инвентарь и прочее.
  • Scene – папка предназначенная для хранение уровней и конкретных сцен: главное меню, меню загрузок и сохранения, сцены магазинов и прочее.
  • Scripts – сюда поместим все скрипты какие у нас только будут.

Это будут директории высшего уровня. В папках высшего уровня будут находиться еще поддиректории среднего уровня. Давайте распишем и их, немного возьмем опыта с серии RPG Maker.
Директория игрового набора «Assets»:
  • Fonts – в этой директории будут храниться шрифты. Не советую использовать слишком много разных шрифтов. Рекомендую не более трёх.
  • Audio – директория для хранения звуковых сопровождений.
  • Graphics – все спрайты, листы спрайты (spritesheet), и другие графические элементы будут храниться здесь.
    Директория «DB» пока что будет пуста, будем смотреть по заполнению проекта.

Директория «Entity»:
  • Players – сюда будут помещаться герои, под управление игрока
  • NPC – Неигрово́й персона́ж, или неигра́бельный персонаж, сокр. NPC — персонаж в играх, который не находится под контролем игрока. В компьютерных играх поведение таких персонажей определяется программно.
  • Enemies – в этой директории будут храниться вражеские персонажи, будь то монстры или люди какой либо фракции.

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

Директория «Scene»:
  • Locations – в этой директории будут помещаться локации, будь то лес, равнины, города или даже внутренние помещение.
  • Special – особые сцены, такие как: титульная сцена, сцена загрузки или сохранения, сцена проигрыша.

Директория «Scripts» так же как директория механики, пока под вопросом. Она пуста.


Теперь нижний уровень директории, будет присуще только некоторым директориям. Начнем с директории Audio:
  • BGM – директория хранящая фоновую музыку
  • BGS – директория хранящая фоновые звуки (пламя, грозы, ливень дождя)
  • ME – директория хранящая различные фанфары
  • SE – директория хранящая звуки (удары, стуки, магические залпы и прочее).

Как видите структуру взяли с RPG Maker, с графикой будет почти тоже самое.
Состав директории «Graphics»:
  • Animations – директория для листов спрайтов анимации
  • Background – директория фоновой картинки, сюда же будем помещать и спрайты параллакса.
  • Bust – директория для бюстов, аватарок и лиц.
  • Characters – директория персонажей, нпс и врагов.
  • System – директория системных спрайтов, интерфейсов.
  • Tilesets – директория для спрайтов тайлсетов.

Тайлсеты! Забыл, нужна директория тайлсетов «Tilesets»! Это директория будет на высоком уровне. Сюда будут складываться не спрайты тайлсетов, а именно созданные на их основе файлы тайлсетов. Давайте добавим все эти папки.


Вроде все готово. Теперь обсудим такую деталь как размеры тайлов и спрайтов. Из серии игровых движков RPG Maker наблюдались размеры тайлов 16, 24, 32, и 48 пикселей. В Godot сетку карты так же можно настроить на любые размеры. Но мы будем придерживаться 16х16 пикселей. Вы же можете выбрать другой удобный размер сетки.
В рабочем окне вы можете настроить сетку, выбрав нужную опцию:

Кстати настройте шаг сетки на 16х16 пикселей

Следующее использование ассета, я воспользуюсь бесплатным ассетом (игровым набором).
Создайте милую ферму в пастельных тонах с растениями, домашними животными, друзьями, блэкджеком и … короче вот он набор:
https://cupnooble.itch.io/sprout-lands-asset-pack

Художник (Или художница): Cup Nooble.
Учтите, для коммерции вам понадобиться связаться с автором, а не для коммерции можете использовать, не забудьте указать художника.
Так заглянем что внутри архива набора «Sprout Lands - Sprites - Basic pack»

С папки «Characters» набора закидываем в проект в ту же папку что и у нас.

А вот с папки «Objects» и «Tilesets» закидываем в проект в папку «Tilesets»

Закидываем в проект
Баг изучает Godot Engine. А слушает эту музыку ~~> Мое сердце
Последнее редактирование: 10 мес. 3 нед. назад от Doctor_Bug.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Фред Канниг

RPG Maker GE (Godot Engine) 10 мес. 3 нед. назад #129493

  • Erckert
  • Erckert аватар
  • Вне сайта
  • Бывалый
  • Сообщений: 90
  • Спасибо получено: 226
  • 2 место ГотвПисатель 3 место
Godot Engine обладает достаточно богатой UI системой для того, чтобы делать и полноценный софт на нём (в т.ч. Мейкеры), в экспорте затем используя прекомпиленный exe-шник и подтягивание на лету сериализованных ассетов (так, например, сделан RPG in a Box - это, по сути, игра/проект на Godot Engine, представляющее собой отдельный игровой движок).
У меня когда-то были (ну и даже сейчас есть) мысли сделать свой собственный open-source RPG Maker GE со всеми фишками, которые комьюнити хочет/ждёт от официальных Мейкеров (вроде ивентов-префабов, редактора игровых UI-окон и т.д.). Можно было бы даже совместить это с каким-нибудь лаунчером/соц.сетью, чтобы делиться и играть в игры других разработчиков в пару кликов, без возни со скачиванием, установкой, распаковкой и т.д.
Правда, пока эта идея лежит в ящике и ждёт своего часа, сейчас много других проектов и забот. Но может я когда-нибудь соберусь.

Тут, как я понял, идея попроще - сделать просто проект-болванку под RPG. Посмотреть на результат будет занимательно, но ЦА такого решения пока непонятна - работа в движках слишком комплексна для неподготовленного человека, который пришёл пожмакать ивенты и посмотреть результат, а хороший разработчик и без темплейтов придумает, как реализовать свои механики.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Doctor_Bug, Фред Канниг

RPG Maker GE (Godot Engine) 10 мес. 3 нед. назад #129495

  • Doctor_Bug
  • Doctor_Bug аватар
  • Вне сайта
  • Светлый дракон
  • Из горизонта события! ▪_■
  • Сообщений: 568
  • Спасибо получено: 880
  • 3 место в КодировкеВетеранПрограммист RubyПроект месяца 3 место3 местоПроект месяца 1 место
Да будет болванка-проект, может даже сам себя мотивирую создать проект на этой основе. Было бы круто создать open-source RPG Maker GE со всеми фишками, жаль я не обладаю достаточным опытом чтобы создать такой проект =_=
Баг изучает Godot Engine. А слушает эту музыку ~~> Мое сердце
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Фред Канниг

RPG Maker GE (Godot Engine) 10 мес. 2 нед. назад #129506

  • Фред Канниг
  • Фред Канниг аватар
  • Вне сайта
  • Просветлённый
  • Сообщений: 450
  • Спасибо получено: 203
  • Поддержка Фонда
Doctor_Bug пишет:
Директория «Entity»:
  • Players – сюда будут помещаться герои, под управление игрока
  • NPC – Неигрово́й персона́ж, или неигра́бельный персонаж, сокр. NPC — персонаж в играх, который не находится под контролем игрока. В компьютерных играх поведение таких персонажей определяется программно.
  • Enemies – в этой директории будут храниться вражеские персонажи, будь то монстры или люди какой либо фракции.
Эти деления на категории условны, так как отношения между игроком и персонажем могут меняться в процессе игры.
Администратор запретил публиковать записи гостям.

RPG Maker GE (Godot Engine) 10 мес. 9 ч. назад #129567

  • AnnTenna
  • AnnTenna аватар
  • Вне сайта
  • Администратор
  • ловлю волны настроения
  • Сообщений: 4555
  • Спасибо получено: 4711
  • РазработчикКоммерсантУчительПроект месяца 1 место3 место в КодировкеПобедитель Сбитой кодировкиВетеран2 место Организатор конкурсовПроект месяца 3 место
Звучит здорово, надеюсь, проект будет развиваться :) и когда-нибудь сама смогу сделать игру на этой базе)

Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Фред Канниг, Адский дровосек

RPG Maker GE (Godot Engine) 9 мес. 4 нед. назад #129570

  • Фред Канниг
  • Фред Канниг аватар
  • Вне сайта
  • Просветлённый
  • Сообщений: 450
  • Спасибо получено: 203
  • Поддержка Фонда
Проект, безусловно, сложнейший. Если он состоится, будут в основном плюсы - более широкие возможности. Существенный минус, на мой взгляд один - нельзя будет использовать RTP.
Администратор запретил публиковать записи гостям.

RPG Maker GE (Godot Engine) 8 мес. 1 нед. назад #129657

  • AnnTenna
  • AnnTenna аватар
  • Вне сайта
  • Администратор
  • ловлю волны настроения
  • Сообщений: 4555
  • Спасибо получено: 4711
  • РазработчикКоммерсантУчительПроект месяца 1 место3 место в КодировкеПобедитель Сбитой кодировкиВетеран2 место Организатор конкурсовПроект месяца 3 место
А я тут в зайца поиграла наконец :laugh: (кстати думала будет отдельная тема но нашла только тут)
Наверное прошла игру, играла минут 5, дошла до пня и было написано Упорство там :laugh: Я много раз падала за что не люблю платформеры, а мобы не работали в игре вообще хотя их дизайн прикольный особенно лягушка понравилась. И анимация поднятия флага клевая, музычка прикольная не помню ее даже что из Марио. Мостик хочется чтоб прогибался когда идешь бревенчатый.

В общем, забавный платформер, сама механика ощущается вполне комфортно, но не понятно, зачем зайцу бананы :laugh: в общем не забрасывай проект это весело :cheer:

Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Doctor_Bug

RPG Maker GE (Godot Engine) 7 мес. 3 нед. назад #129675

  • Фред Канниг
  • Фред Канниг аватар
  • Вне сайта
  • Просветлённый
  • Сообщений: 450
  • Спасибо получено: 203
  • Поддержка Фонда
оффтоп про мультиплеер [ Нажмите, чтобы развернуть ]
Администратор запретил публиковать записи гостям.
Время создания страницы: 0.281 секунд