37

RPG Maker MZ: урок №13. База Данных: Персонажи, Классы

Как бы удивительно ни прозвучало, но мы с вами рассмотрели основные команды ивентов! Вы скажете, мол, Луар, но ведь там этих команд целый вагон – три страницы как-никак, неужели остальные бесполезны? Они, безусловно, полезны и регулярно используются, но функции большинства из оставшихся интуитивно понятны из названия. Да, есть еще несколько команд, требующих незначительных разъяснений, но мы коснемся этого в самом конце курса в одном общем уроке, а пока отвлечемся от кода и обратим свое внимание на Базу Данных.


Для тех, кто предпочитает отвлекаться глазами и ушами, запилено видео:

Мы уже рассматривали вкладку Тайлсеты, а теперь давайте пройдемся по остальным:


Персонажи

RPG Maker MZ: урок №13. База Данных: Персонажи, Классы RPG Maker, Gamedev, Курс, Урок, Видео, Длиннопост

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


Обратите внимание, что нельзя просто взять персонажа из базы и разместить на карте, так как персонаж является совершенно отдельной сущностью. Сущность эта – набор настроек в базе и член партии со своим слотом в игровом меню. Я уже говорил, что все персонажи и НПС – просто графические болванчики с набором кода? Вот это оно и есть. НПС – ивент с графикой, а персонаж графический болванчик, хранящийся в базе, и между собой они не имеют ничего общего, хотя в игре выглядят одинаково.


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


Это не какие-то виртуальные люди или типа того. Это просто куски кода. Код НПС – находится в ивенте, причем необязательно том самом, который его отображает. Код персонажа – в базе и только в ней


Таким образом, чтобы, к примеру, создать НПС, которого можно пригласить в партию, вам потребуется создать отдельно персонажа в базе и НПС с помощью ивента на карте. А уже потом, в нужный момент изменить партию командой ивента, включив туда нужного персонажа, после чего удалить сам ивент вместе с НПС.


Единственный персонаж, которым можно управлять как с клавиатуры, так и при помощи команд ивента, это тот, который находится на первом месте в списке текущей партии (но не списка в базе!). Его мукер маркирует, как «Игрок».


Со списком персонажей все должно быть понятно. Типичный мукерский список, как у тайлсетов, переменных и переключателей. По умолчанию открыто 8 слотов, список расширяется кнопкой внизу до 1000 (тысячи) штук. С трудом могу представить игру, где будет 1000 персонажей, ну, да ладно.


В окне «Основные настройки» можно ввести «название», которое будет отображаемым именем персонажа, а так же его прозвище, которое будет отображаться рядом с именем. Прозвище нужно ни для чего. Совсем. Никакого функционала с этими данными не связано, и прозвище существует просто так.


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


Правее от класса задается минимальный и максимальный уровень, который доступен для вкачивания. Без плагинов максимально возможный уровень – 99. Плагины на увеличение этого числа есть.


Ниже мы видим поле «Описание» - сюда можно вбить краткую биографию персонажа. Или анекдот. Главное примерно уложиться в размер этого маленького окошка – больше просто не влезет в экран меню.

Или ничего не вбивать – функциональность этого поля такая же, как у «прозвища».

RPG Maker MZ: урок №13. База Данных: Персонажи, Классы RPG Maker, Gamedev, Курс, Урок, Видео, Длиннопост
RPG Maker MZ: урок №13. База Данных: Персонажи, Классы RPG Maker, Gamedev, Курс, Урок, Видео, Длиннопост

Ниже, в поле «Изображение», можно выбрать лицо персонажа, которое будет отображаться в меню, его чарсет и набор анимаций для битв (с ними позже разберемся)

RPG Maker MZ: урок №13. База Данных: Персонажи, Классы RPG Maker, Gamedev, Курс, Урок, Видео, Длиннопост

Еще ниже расположено поле «начальная экипировка» в которой задается … начальная экипировка персонажа. Здесь можно выбрать то оружие, броню и т.д., которое будет у персонажа при первом присоединении к партии (или с начала игры, если персонаж в партии находится сразу).

RPG Maker MZ: урок №13. База Данных: Персонажи, Классы RPG Maker, Gamedev, Курс, Урок, Видео, Длиннопост

В правом верхнем углу находится поле «Особенности» с большим количеством различных характеристик, которые идентичны таковым в разделе БД «Классы», поэтому мы их рассмотрим позже.


И, наконец, поле «Примечание» - нужно для внесения каких-то заметок. Служит исключительно как блокнотик для разраба, никак не используется движком и не показывается игроку. Но! Рекомендую оставляют это поле пустым, так как многие плагины используют для внесения тегов, которые позволяют творить всякое разное.


Классы

RPG Maker MZ: урок №13. База Данных: Персонажи, Классы RPG Maker, Gamedev, Курс, Урок, Видео, Длиннопост

Классы – в мукере, набор характеристик, скиллов, параметров, а так же кривая прогрессии прокачки и кривые прокачки параметров. Применяется только к персонажам.


Список точно такой же, как и в Персонажах, расширяется до 1000 штук, название класса можно ввести или изменить в поле «Основные настройки».


В этом же поле задается «Кривая опыта», определяющая то, сколько опыта необходимо получить обладателю класса, что бы апнуть очередной уровень.


Окно «Кривой опыта» имеет для удобства две вкладки:


До следующего уровня – количество опыта, необходимое для достижения следующего уровня


Всего – полное количество опыта, которое тратится на изучение уровня, с учетом того, которое было потрачено на предыдущие.

RPG Maker MZ: урок №13. База Данных: Персонажи, Классы RPG Maker, Gamedev, Курс, Урок, Видео, Длиннопост
RPG Maker MZ: урок №13. База Данных: Персонажи, Классы RPG Maker, Gamedev, Курс, Урок, Видео, Длиннопост

Окно имеет четыре ползунка, с помощью которых задается форма кривой опыта. Сама кривая показана полупрозрачным серым графиком на фоне числовых значений.


Ползунки задают данные для расчета кривой прогрессии опыта, которая вычисляется по сложной формуле:

[Базовое * [(уровень -1) ^ (0,9 + (ускорение1 / 250))] * уровень * (уровень + 1)] / [6 + [([уровень ^ 2] / 50) / ускорение2] + [ (уровень -1) * доп.значение]

Впрочем, обычному земному мукеристу эта формула, что козе логарифмы. Так же непонятно, неинтересно и неприменимо.Достаточно просто знать, что:


Базовое значение – собственно, задает базовое значение для вычислений. Может принимать значения от 10 до 50


Дополнительное значение – прибавляется к базовому и нужно для более тонкой настройки


Ускорение 1 – влияет на возрастание количества опыта, требуемого для получения следующего уровня


Ускорение 2 – делает то же самое, но больше влияет на поздние уровни.


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


Спускаемся ниже и видим еще целых восемь окошек с кривыми – это уже кривые параметров. Двойной клик по этому полю вызывает окно, в котором можно эти кривые менять, задавая значения параметров для каждого уровня.


Здесь нужно пояснить - несмотря на то, что данные параметры представлены, как максимальное здоровье, мана, атака, защита и т.д., нужно осознавать и помнить, что это все просто числовые значения. Никто не говорит, что параметр «Атака» обязан называться именно так (название можно изменить) и отвечать за атаку. Это просто один из параметров, значение которого можно использовать в формуле для расчета результата действия в бою. А так же извлекать его в переменную и уже с ней что-то делать.


Да, по дефолту, параметр Макс.НР отвечает за максимально возможное количество очков здоровья на каждом из уровней и вы можете использовать этот параметр именно так. Но при этом, Макс.НР – просто число в характеристиках и первая полоска персонажа. Что показывает эта полоска – решать вам. Изначально ХПшки, но это может быть не РПГ, верно? Может, вы делаете симулятор свиданий и никакие ХПшки в нем нафиг не нужны? Тогда это будет, например, привлекательность. И в формулах вы будете это значение использовать не на уменьшение, а не увеличение. Ну, это чисто как пример.


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


Как бы то ни было, но кривые прокачки параметров есть и при желании их можно настроить под себя. Окно настроек тут попроще, никаких сложных формул – вам предлагается просто вручную задать значение параметра для каждого уровня, либо выбрать из шаблонов A, B, C, D, E. Можно так же задать начальное и конечное значение, а потом ползунком регулировать темп роста параметра (кнопка «Создать кривую»).

RPG Maker MZ: урок №13. База Данных: Персонажи, Классы RPG Maker, Gamedev, Курс, Урок, Видео, Длиннопост

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


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

RPG Maker MZ: урок №13. База Данных: Персонажи, Классы RPG Maker, Gamedev, Курс, Урок, Видео, Длиннопост

Ну и, наконец, «Особенности».


Здесь нам дается на выбор огромное количество различных настроек и параметров, которые мы может придать выбранному классу. Рассматривать их подробно – не хватит никакого урока, да и вы всегда можете прочитать краткое описание в справке, которая вызывается по F1. От себя считаю необходимым отметить следующие:


Шанс стать целью – определяет вероятность того, что враг будет выбирать представителя данного класса в качестве цели. Не путать с шансом на то, что по нему попадут.


Шанс попадания – меткость класса


Добавить тип навыка – добавляет пункт выбора навыка определенного типа в бою


Экипировка – разрешает/запрещает/блокирует слот определенного типа оружия/брони


Почему я указал именно эти 4 особенности? Потому, что все особенности по умолчанию отключены, либо имеют нулевое значение, если не указано иное! И таким образом, не указав «Шанс стать целью» мы получим ситуацию, в которой мобы НИКОГДА не атакуют представителя класса. Точно так же, как мы получаем абсолютно косой класс, забыв указать значение на «Шанс попадания». Без «Добавить тип навыка» мы лишимся всего, кроме стандартной простой атаки, а без разрешенной экипировки представитель класса не сможет ничего на себя надеть.


Все остальные Особенности – штука кастомная, кому-то нужная, а кому-то нет, там нужно смотреть по ситуации. Например, Шанс уклонения влияет на вероятность того, что противник промажет. Необязательная штука, но хотя бы небольшую вероятность иметь было бы неплохо, согласитесь? Равно, как и шанс крита.


Следует помнить, что все параметры класса не являются единственной составляющей в формулах боевки. Кроме того, следует так же помнить, что окно «Особенности» присутствует в разделе Персонажи, Классы, Оружие и Броня, причем если у одного персонажа будут указаны одинаковые Особенности в разных разделах, то их показатели суммируются!


Иначе говоря, если мы зададим Персонажу шанс уклонения 25%, его классу тоже 25%, то у него в игре уже будет 50%. А если добавить сюда броню на 25% уклонения и оружие с такими же 25% на уклонение, то получим неубиваемую имбу, так что это все нужно учитывать.


Ну, что? Не вывихнули мозг еще? В следующем уроке у нас Навыки – там формулы будут, точно вывихнем))

Лига Разработчиков Видеоигр

7.8K постов22.7K подписчиков

Добавить пост

Правила сообщества

ОБЩИЕ ПРАВИЛА:

- Уважайте чужой труд и используйте конструктивную критику

- Не занимайтесь саморекламой, пишите качественные и интересные посты

- Никакой политики


СТОИТ ПУБЛИКОВАТЬ:

- Посты о Вашей игре с историей её разработки и описанием полученного опыта

- Обучающие материалы, туториалы

- Интервью с опытными разработчиками

- Анонсы бесплатных мероприятий для разработчиков и истории их посещения;
- Ваши работы, если Вы художник/композитор и хотите поделиться ими на безвозмездной основе

НЕ СТОИТ ПУБЛИКОВАТЬ:

- Посты, содержащие только вопрос или просьбу помочь
- Посты, содержащие только идею игры

- Посты, единственная цель которых - набор команды для разработки игры

- Посты, не относящиеся к тематике сообщества

Подобные посты по решению администрации могут быть перемещены из сообщества в общую ленту.

ЗАПРЕЩЕНО:

- Публиковать бессодержательные посты с рекламой Вашего проекта (см. следующий пункт), а также все прочие посты, содержащие рекламу/рекламные интеграции

- Выдавать чужой труд за свой

Подобные посты будут перемещены из сообщества в общую ленту, а их авторы по решению администрации могут быть внесены в игнор-лист сообщества.


О РАЗМЕЩЕНИИ ССЫЛОК:

Ссылка на сторонний ресурс, связанный с игрой, допускается только при следующих условиях:

- Пост должен быть содержательным и интересным для пользователей, нести пользу для сообщества

- Ссылка должна размещаться непосредственно в начале или конце поста и только один раз

- Cсылка размещается в формате: "Страница игры в Steam: URL"

Чтобы оставить комментарий, необходимо или