48

RPG Maker MZ: урок №11. Выбор, Метка и Ввод числа

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


Разумеется, для желающих есть и видео версия:

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


Теперь перейдем к сегодняшним темам, и начнем с команды «Показать Выбор».

Извините за политическую шутку, но показалось уместным:)


Команда располагается в поле «Сообщение» прямо под командой «Показать сообщение» и вызывает вот такое окно:

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


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


Настройки справа:


Фон – то же самое, что и Фон у окна ввода сообщения, дает выбор между оконным режимом, уменьшенной освещенностью и прозрачностью


Положение окна (Справа, Середина, Слева) – определяет местоположение меню выбора на экране


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


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


Давайте применим на практике эту команду. Вернемся к нашему многострадальному квесту с грибами. Кстати, я его немного доработал, сделав грибы срываемыми, поэтому размножил их ивенты и раскидал по карте. Теперь у нас тут растут 5 мухоморов и 5 опят.

Давайте сразу займемся самым сложным из НПС, которые у нас имеются – Любителем грибов.


Добавим в начальный диалог выбор для игрока, хочет ли он брать данный квест.

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

Под сообщением ставим выбор с двумя вариантами:

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

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

Нужно привыкать к тому, что НПС и герои – это просто графика на экране, а управляться она может откуда угодно.


Так, ну простой вариант выбора мы разобрали. А что если сделать длинный ветвистый диалог? Да, это возможно, но потребуется внимательность, так как лесенки из вложений дело опасное и трудночитаемое.


Обратимся к любителю мухоморов и запилим в его ивенте после первого сообщения диалог следующего вида:

Дальше, под вариантом «Сейчас принесу» включаем переключатель квеста(я его уже задействовал в ивентах мухоморов) и добавляем сообщение от лица героя, намекающее игроку на поставленную задачу.


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


Третий вариант с отказом оставляем как есть, так как он у нас выбран в качестве варианта отказа от квеста.

Теперь под вопросом НПС мы создадим еще один выбор:

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


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


Поскольку RPG Maker создан не для запиливания новелл (в отличие от Visual Novel Maker от этой же компании), то функции прокрутки сообщений взад-вперед в нем по умолчанию нет. Функции нет, но необходимость есть. Реализовать такую возможность удается с помощью команды «Метка».


Команда расположена в поле «Управление процессом» и вызывает простенькое окно настроек с единственной возможностью – ввести имя метки.

Для погроммистов и сочувствующих – метка, это что-то вроде Go To.


Метка ставится в какой-либо части кода, к которой мы хотим иметь возможность вернуться при необходимости. Помним, да, что выполнение команд происходит подряд сверху вниз? Так вот, при обращении к метке, игра начинает заново выполнять команды ивента начиная с того места, где метка стоит.


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


Внимание: в команде «Переход к метке» нужно вводить имя метки без ошибок и точно так же, как вводили при ее создании! Регистр имеет значение, т.е. мукер различает большие и маленькие буквы. Язык ввода имени метки значения не имеет.

Создадим метку перед сообщением о том, что НПС ест мухоморы и обратимся к ней при выборе варианта «Повтори, я не расслышал»

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


Ну и давайте применим еще одну простенькую команду, которую я в названии анонсировал – «Ввести число».


Расположена она в поле «Сообщение» под «Показать выбор»

Эта команда делает лишь то, что запрашивает у игрока какое-либо число и записывает его значение в переменную. Всё. Тоже мне команда, скажете вы! И толку от нее? От нее толку немного, но иногда можно его извлечь, например, делая кодовый дверной замок.


Но замки нам тут не нужны. А нужна нам, например, возможность избавиться от лишних грибов, ведь мы помним, что Любитель Грибов требует ровно 5 штук и если у игрока будет перебор, то квест не засчитается.


Окей, нет проблем, создадим яму!

Графика подходящей ямы лежит у нас на вкладке D, которую мы создавали в первых уроках.


Рассмотрим код этого ивента:


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


Вроде бы все просто, верно? Проверим, как это все работает:

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


Синьоронора!

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

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

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

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

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


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

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

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

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

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

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

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

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

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

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

ЗАПРЕЩЕНО:

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

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

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


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

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

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

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

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

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества