Войти на сайт

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

ТЕМА: Случайные действия в играх на RPG Makerʼе

Случайные действия в играх на RPG Makerʼе 3 года 1 мес. назад #101191

  • Dmy
  • Dmy аватар
  • Вне сайта
  • Архитектор Миров
  • осторожно, хрупкое
  • Сообщений: 1015
  • Спасибо получено: 2088
  • Программист RubyОраторЗа 2 место на конкурсе маппингаПаладинДаритель СтимкеяУчительРазработчикВетеранПоддержка Фонда2 место
Случайные действия в играх на RPG Makerʼе

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

Этот урок предназначен в первую очередь для новичков. Продвинутым пользователям может быть интересна статья «Как улучшить случайность в RPG Makerʼе».



Что такое случайные действия

Случайные действия — это действия, которые могут произойти или не произойти, причём их причины не зависят от нас, и мы не можем их предугадать.

Например, когда мы бросаем кубик, мы не знаем, какое число выпадет. Может выпасть любое число от 1 до 6. То, какое именно значение выберется, узнаётся наугад.

Некоторая случайность в RPG Makerʼе уже заложена: в битвах атаки не всегда наносят одинаковый урон, а отнимают случайное число очков в пределах допустимых значений.

Однако можно добавить случайность не только в битвах. Вот несколько идей, какие действия могут происходить случайно:
  • Персонаж в таверне может рассказать случайный факт о городе.
  • Если бросить монетку в волшебный фонтан, у тебя может увеличиться случайная характеристика.
  • Когда герой спит в гостинице, ему может присниться сон. Или не присниться, выбирается случайно.

Умелое использование случайности сделает игру интереснее и даст игрокам повод её перепройти. Но если переборщить, то для одних игра станет слишком сложной, а для других — слишком скучной. Так что важно соблюдать баланс.



Теория: случайные числа в RPG Makerʼе

RPG Maker позволяет присвоить переменной случайное значение в заданном промежутке. Для этого в командах события используется команда управления переменными и выбирается вариант присвоения случайного числа.

В RPG Maker MV эта команда события вызывается так (в других мейкерах окна выглядят немного по-другому, но общие принципы те же):


После этого откроется окно управления переменной:


В этом окне нужно:
  • выбрать номер переменной, в которую будет записано случайное число (у меня на скриншоте это номер 5; я назвал эту переменную «Число на кубике»),
  • выбрать «Случайно», чтобы в переменную записывалось случайное число, и указать минимальное и максимальное значения (у меня на примере это число от 1 до 6).

После этого в переменную запишется случайное число.

После этого переменную можно:
  • Показать игроку. Для этого нужно показать сообщение и в нём ввести команду \V[N], где вместо N будет номер переменной. В моём примере в переменную 5 будет записано число от 1 до 6, поэтому можно вывести сообщение «На кубике выпало \N[5]».
  • Проверить с помощью условного ветвления.
  • Использовать в других командах («Изменить золото», «Изменить HP» и так далее).

Сейчас давайте закрепим это на примере.



Практика: персонаж, который говорит случайную фразу
(Этот раздел сделан на русской версии RPG Maker MV 1.5. Если у вас другой редактор или другая версия, то окна будут немного отличаться, однако общие принципы те же. Эту практику можно повторить и на других мейкерах. Если что-то непонятно, не стесняйтесь задавать вопросы!)

Подготовительные действия. Откройте RPG Maker. Откройте свой проект. Перейдите на ту карту, в которой вы будете создавать персонажа.

Перейдите в режим событий. Нажмите на кнопку режима событий на панели инструментов (
), выберите пункт меню «Режим» > «События», или нажмите F6.

Примечание. Если стартовая точка, на которой находится игрок в начале игры, находится не этой карте, возможно, стоит переместить на эту карту. Так вам будет легче тестировать своё событие. Чтобы поменять стартовую точку, в режиме событий щёлкните по какой-то клетке правой кнопкой мыши и выберите пункт «Установить начальное положение» > «Игрок»; когда всё будет работать, переместите обратно.

Создайте новое событие в RPG Maker. Дважды щёлкните по любой клетке, не занятой событиями. Откроется окно редактирования нового события, вот такое:


Выберите графику события. Щёлкните по окну выбора изображения (на скриншоте выше это область, заполненная серо-белыми клетками под словом «Изображение»). Откроется окно выбора графики. В этом окне выберите слева файл, а потом справа щёлкните по графике одного персонажа в этом файле. Затем нажмите OK, чтобы сохранить выбранную графику. После этого в окне редактирования события в поле «Изображение» будет показываться выбранная графика.

Создайте команду события, которая будет записывать в переменную случайное значение. Дважды щёлкните по значку бубны (◆), которым отмечен конец команд, чтобы добавить на его место новую команду. Откроется окно выбора команд. В нём на первой странице найдите пункт «Внутренние данные», и в нём щёлкните по пункту «Переменная»:



Когда вы нажмёте на эту команду настройки переменной, появится окно, в котором можно настроить, в какую переменную и что записывать:


Выберите переменную, в которую запишется случайное число. Убедитесь, что выбран пункт «Один» (это неправильный перевод, надо «Одна», т.к. «Одна переменная» — мы меняем только одну переменную, а не несколько). Нажмите на выбор переменной справа от пункта один:


Откроется окно выбора переменной:


В этом окне выберите одну из переменных, которую вы не используете в другом месте. (Если вы выберете какую-то из использованных раньше переменных, то её старое значение будет стёрто и заменено на наше случайное число.) Чтобы не забыть, где используется переменная, дайте её какое-то имя: напишите в поле «Имя» что-то (например, «Случайная»):


На скриншоте я выбрал переменную №3, просто для примера. Но можно выбрать любую, главное — запомните, какую переменную вы выбрали. Нажмите «ОК», чтобы вернуться к прошлому окну.

Убедитесь, что в поле «Операция» выбрано значение «=». Этот знак тут используется в программистском смысле, а не в математическом: он значит, что в переменной значение после выполнения команды станет равным новому числу.

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


Если вы хотите, чтобы человек говорил две фразы, выберите значения от 1 до 2, чтобы 4 — от 1 до 4, и так далее.

Нажмите ОК, чтобы закончить создание команды события.

После этого в списке команд события появится команда «Переменная : #0003 = Случайно 1..3» (возможно, с другими числами):


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

Дважды щёлкните на последний знак бубны (◆), чтобы добавить новую команду события в конце. Откроется окно выбора команды. На странице 1 найдите пункт «Управление процессом» и в нём щёлкните по пункту «Ветвление условий...»:


Откроется окно настройки условного ветвления:


Мы сравниваем переменную, поэтому выберите тип условия «Переменная». Щёлкните по номеру переменной (первое поле справа от поля «Переменная») и выберите ту же саму переменную, что и выше (в моём примере это 3). Справа от неё выберите тип сравнения «=» (условие будет выполняться, только когда переменная равна 1). Под ней выберите, чему она должна быть равна: постоянной величине 1, поэтому выберите «Постоянная» и введите справа от неё 1. Должно получиться такое условие:


Нажмите «ОК», чтобы сохранить ветвление условий.

После этого у вас будет две пустых команды со знаком бубны (◆): один внутри условного ветвления (сюда записываются команды, которые выполнятся, если условие верно — то есть если случайная переменная равна 1), а в последнем будут команды, которые выполнятся всегда:


Дважды щёлкните по первому пустому знаку бубны (который между «Если...» и «Конец» на скриншоте), чтобы добавить команду вывода сообщения. Вывод будет выполняться только в том случае, если переменная равна 1. В списке команд на первой странице найдите пункт меню «Сообщение» и выберите пункт «Показать сообщение». Напишите какое-то сообщение и сохраните команду события. В результате команды должны выглядеть вот так:


Создайте ветвления условий «Случайная равна 2» и «Случайная равна 3» и сообщения в них. Просто повторите те действия, которые вы делали выше, но на этот раз сравнивайте с постоянными величинами 2 и 3. И сообщения введите другие. В результате должны получиться такие команды:


Проверьте, что у вас именно такая структура. Сами сообщения могут быть другими, но каждое сообщение должно быть внутри своего условного ветвления, и ни одно условное ветвление не должно быть вставлено внутрь другого.

Сохраните и проверьте. Нажмите «ОК», чтобы завершить создание нового события. Сохраните изменения карты, нажав Ctrl+S, и запустите игру для проверки, нажав Ctrl+R. Если Вы всё сделали правильно, то у вас должны появляться одно из трёх сообщений, причём каждый раз при разговоре с персонажем разное.


Если у Вас есть какие-то вопросы, не стесняйтесь их задавать! У всех свои сложности, и если вы чего-то не поняли — это нормально. Все мы когда-то были новичками. :)

А если у вас всё получилось — поздравляю! Вы научились делать случайные действия на Мейкере. Спасибо за внимание!


Во вложении размещены картинки из этого урока на тот случай, если в самом уроке они перестанут отображаться.
Вложения:
Последнее редактирование: 3 года 1 мес. назад от Dmy.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: AnnTenna, DK, Cabbit, KageDesu, VarVarKa, Noxmils, LiRo
Время создания страницы: 0.420 секунд