Kotomine
08.08.2020, 22:09
Все знают, что такое королевская битва (battle royale, батлрояль), но на случай, если кто не знает, я объясню. Это жанр, который сталкивает множество игроков на одной большой локации. Игроки десантируются в выбранное место, далее ищут на карте различную экипировку: оружие, снаряжение, различные вспомогательные предметы, чтобы использовать всё это против остальных игроков. Цель: уничтожить всех остальных. По краям локации с течением времени возникает опасная зона, которую стоит избегать. Задача увеличивающейся опасной зоны состоит в том, чтобы сгонять оставшихся игроков к центру карты. Таким образом, батлрояль это довольно интересный и динамичный игровой жанр.
Когда речь идет о реализации каких-либо удачных решений из других игр в RF Online, надо помнить о колоссальном количестве ограничений, возникающих ввиду того, что исходный код движка написан корейцами, и доступ к нему возможно имеют некоторые локализаторы, купившие права на распространение игры, в число которых PvPWaR, к сожалению, не входит. Поэтому даже самые простые идеи вроде Арены не получается реализовать без кучи дополнительных модулей, взламывающих игру. Однако, возможность реализовать ивент в жанре королевской битвы есть уже сейчас. Я попробую описать концепцию, не уходя далеко в дебри технических подробностей.
Итак, при описании концепции я буду руководствоваться следующими принципами:
1. Батлрояль должен быть реализуем при существующем на x100 наборе инструментов и модулей;
2. Возможно некоторое ограниченное количество неавтоматизированных действий, компенсируемых монетизацией;
3. Ивент описывается с условием, что он проводится на сервере x100, однако некоторое количество операций можно выкинуть, если проводить мероприятие на отдельном сервере, что упростит подготовку.
Основа
Наиболее подходящей локацией из имеющихся на сервере является Лавовые Поля.
Ивент можно реализовать для 50-100 игроков (для простоты будем считать, что игроков 50)
Реализовать сужение безопасной зоны невозможно, разве что спавнить турели по краям локации. Но это очень нагрузит сервер, да и люди не должны быть застаны врасплох неожиданной установкой турели неподалеку. Лучше всего заменить эту механику на мотивирование игроков к постепенному продвижению в центральную часть локации.
[Пример реализации мотивирования игроков]
Условно разделим ЛП на три части: внешний радиус, внутренний радиус (ближе к центру) и центральная башня. На башне в конце ивента заспавнится обелиск, добив который игрок получит по квесту предмет, подтверждающий его право на главное вознаграждение. Для того, чтобы воспользоваться телепортами на башню (которых, к слову, будет три, со стороны каждой расы, а не 1 как сейчас) нужно будет раздобыть предмет за квест у НПСов во внутреннем радиусе. А чтобы взять квест у этого НПС, нужно выбить конверт во внешнем радиусе.
Выбор места десантирования можно реализовать следующим образом:
1) Персонажи появляются не сразу в локации действия ивента, а в специальной зоне ожидания. Например, на одной из ледяных платформ в территории запечаток. Только одна из 4 летающих платформ занята, любую другую можно использовать для целей мероприятия. Либо создать в лавовых полях изолированную местность. Главное, чтобы это была мирная зона, куда попадают все игроки перед мероприятием.
2) Перед самым стартом ивента игроки телепортируются в другое лобби (телепортация сотни персонажей возможна посредством lua скриптов, похожее уже осуществлялось на ивенте "Голодные Игры"). В этом лобби уже есть НПС, у которого можно купить телепорт. Количество телепортов у НПС равно количеству игроков, либо превышает его. Все телепорты ведут в разные точки на карте Лавовых Полей. Каждый телепорт можно купить только один раз. Если кто-то купил его до этого, телепорт уже нельзя купить. Здесь используется механика, которую многие упускают из виду: ограничение количества предметов у НПСа. Это встречается только в двух местах на 2.2.3: у билетера (100 билетов) и у Героя (3 ядерные ракеты). Ограничив количество телепортов до 1, мы получим возможность отправить каждого игрока в свою точку на карте.
Примечание: желательно заранее переделать мини-карту Лавовых полей, сделать больше делений по секторам, а каждый телепорт подписать названием сектора, в который отправится игрок (например, G-24). Если еще иконки будут отличаться у каждого телепорта, то вообще шикарно. Возможно, лучше всего сделать несколько НПСов и поставить их очень близко друг к другу, чтобы а) игроки покупали каждый раз разные телепорты, б) игроки не знали, у каких нпсов покупают телепорты их противники.
Персонажи
Так как игроки по умолчанию должны быть либо голыми, либо одинаково экипированными, да еще и обладать одинаковыми шансами на успех, то лучше всего использовать специальные ивентовые аккаунты с заранее подготовленными персонажами.
Если реализация ивента идет на действующем сервере x100, то эти персонажи не должны иметь никакой возможности получить от них предметы или помощь. Отключается почта на время проведения мероприятия, ни о каких системных телепортах в краговые шахты не может идти речи. Персонажи имеют привязанную к лобби точку возрождения.
Чтобы различие в расах и классах не играло никакой роли, создается специальная профессия у специалистов каждой расы. Эту профессию нельзя взять игровым путем, но через админку легко раздать ее всем ивентовым персонажам, подготовленным заранее. Особенности данной профессии следующие:
1) HP/FP/SP одинаковые.
2) Умения одинаковые: ГА скиллы (бб и дб).
3) Имеется доступ к ББ и ДБ Эксперту и Элите.
Для уравнивания всех особенностей, магия у кор/беллато изымается полностью, т.к. магия Ученика остается, а акретам выдается генератор на -0,5 бега (т. к. у них по дефолту выше бег на 0,5).
В данном игровом режиме для простоты баланса я убрал магов, МАУ, ланчей, минеров, турельщиков, вызывателей и прочие отклонения от нормы. Мы получили самых простых персонажей, которые свободно могут орудовать ББ и ДБ оружием. Остальное нас не интересует.
Также игрокам предварительно выдан ВР (чтобы не нужен был ПК для убийства игроков своей расы) и назначен уровень 40, в том числе и в качестве максимального (выше 40 прыгнуть не получится). Это подстраховка на случай, если им удастся заполучить какие-то предметы извне: они их просто не наденут по уровню.
Экипировка и предметы
Изначально все персы голые, и чтобы что-то достать, нужно убивать монстров. Чем ближе к центру, тем лучше экипировка и сложнее мобы (на внешнем радиусе мобы совсем слабые, чтобы даже голые персонажи руками их завалили). Чтобы игроки, успевшие раздобыть экипировку, не нагибали голых персонажей мгновенно, баланс всех вещей в этом режиме должен находиться примерно на первых 15 уровнях стандартной RF Online.
Нужно учитывать, что для ДБ оружия нужны соответствующие патроны, а еще не каждый захочет играть с тем комплектом вещей, которые ему посчастливилось выбить с мобов. Для этого по локации будут утыканы НПСы, у которых будет различный ассортимент вещей. Чтобы купить вещи, нужно продать ненужные вещи, которые вы налутали с мобов. Все очень просто. Некоторые особо ценные предметы можно продавать за пвп-очки, которые также набиваются на этой изолированной локации.
В принципе, большой фантазии не нужно, чтобы напридумывать предметы, имеющие особую ценность в этом игровом режиме. Ведь обычные НПСы недоступны для игроков изнутри. К таким предметам относятся:
Обыкновенные банки HP/FP/SP;
Допинги с различными свойствами (некоторые допинги должны иметь измененные параметры, например допинг на невидимость имеет смысл вводить с сильно уменьшенной длительностью);
Радары (довольно ценный предмет для данного режима, но не стоит делать его слишком редким, пусть игроки сталкиваются друг с другом);
Гравициклы (весьма ценный предмет, должен быть очень редким);
Руны (стандартный набор: вампиризма, быстроты, защиты);
Телепорты в другие сектора (довольно ценные предметы, должны быть редкими, особенно если речь о секторах внутреннего радиуса);
Боеприпасы (должны выпадать часто, ведь никому не захочется бегать с незаряженной винтовкой);
Капсулы возрождения.
Модификаторы с таликами и т-камнями можно ввести, но это усложнит итак нагруженный местами батлрояль.
Я хочу описать реализацию наиболее простого варианта.
Примечательно то, что данный режим позволяет разгуляться в различных особенностях экипировки, поскольку он не привязывает вас к какому-то классу, и все вещи даются грубо говоря рандомно.
Автоматизация
Сначала создаются монстры, НПС и предметы, подготавливается локация для ивента, создаются ивентовые аккаунты с ивентовыми персонажами. Персонажи заводятся в лобби, устанавливают точку возрождения, получают невидимый класс, убирается все лишнее (включая квесты).
Затем создаются луа-скрипты для телепортации этих персонажей в другое лобби, в котором содержатся телепорты в различные сектора. Отдельно создается луа-скрипт для спавна монстров. Монстры должны появляться каждый раз в различных местах (как это реализовано в еженедельном ивенте, например, но с бОльшим количеством координат). Этот же скрипт спавнит в конце ивента (скажем, спустя 20 минут) центральную башню или обелиск, который и является основной целью игроков.
Из неавтоматизированных действий, которые осложняют проведение этого ивента каждые выходные, можно отметить подготовку аккаунтов и персонажей, что решается выделением сервера под ивент, в котором любые персонажи будут создаваться с заданными параметрами. Чтобы выдать персонажу на старте любой уровень, например 40, нужно сделать начальный уровень 39 в скриптах и выдать ему капсулу +100% опыта. Выпив капсулу, игрок перескочит с 1 на 40 уровень в миг. Только никому не говорите, эта информация украдена из сверхсекретных архивов в Северной Корее.
Монетизация
Никогда не любил рассматривать этот момент, потому что сам неохотно играю в "платное". Тем не менее, реализовать такой ивент стоит денег и времени, потому должна быть какая-то польза не только игрокам, но и администрации.
Есть несколько вариантов.
1. После некоторого количества тестов и удачных запусков, превратить ивент в азартную игру: каждый платит за участие 20... 30.... 50 рублей, а победитель получает 50% от собранной суммы. Например, 100 участников по 50 рублей, уже 5000. Получить 2500 за полчаса будет приятно любому игроку. Вариант не очень, но он вот есть.
2. Раздавать какое-то количество билетов на участие через лотерею. 20 мест вполне можно разыграть, почему нет? Хотя вариант не очень, ведь лотереи не проводятся с целью что-то продать. Это можно рассматривать как приятное дополнение к бонусам лотереи, но не как способ заработать на ивенте.
3. Участвуют только премиум игроки. Опять же, это бонус к премам, и возможно некоторые возьмут его специально для ивента, но премиум должен быть актуален и без данного мероприятия. Так что вариант тоже хиленький.
4. Добровольное пожертвование на проведение ивента. Чтобы провести такой ивент, нужно собрать определенную сумму, скажем 5000 рублей. Как только эта сумма набирается через пожертвования, ивент проводится. И так каждый раз. Тем, кто делал пожертвования, можно давать незначительное преимущество на ивенте: генератор сделки (скидка 10% у НПС), например.
5. Прямой донат: шоп вкладывается в преимущество на самом ивенте (допинги, радары, руны, и т.п.).
Возможно, есть еще какие-то пути, но их рассматривать я не буду. Итак тема большая получилась.
Когда речь идет о реализации каких-либо удачных решений из других игр в RF Online, надо помнить о колоссальном количестве ограничений, возникающих ввиду того, что исходный код движка написан корейцами, и доступ к нему возможно имеют некоторые локализаторы, купившие права на распространение игры, в число которых PvPWaR, к сожалению, не входит. Поэтому даже самые простые идеи вроде Арены не получается реализовать без кучи дополнительных модулей, взламывающих игру. Однако, возможность реализовать ивент в жанре королевской битвы есть уже сейчас. Я попробую описать концепцию, не уходя далеко в дебри технических подробностей.
Итак, при описании концепции я буду руководствоваться следующими принципами:
1. Батлрояль должен быть реализуем при существующем на x100 наборе инструментов и модулей;
2. Возможно некоторое ограниченное количество неавтоматизированных действий, компенсируемых монетизацией;
3. Ивент описывается с условием, что он проводится на сервере x100, однако некоторое количество операций можно выкинуть, если проводить мероприятие на отдельном сервере, что упростит подготовку.
Основа
Наиболее подходящей локацией из имеющихся на сервере является Лавовые Поля.
Ивент можно реализовать для 50-100 игроков (для простоты будем считать, что игроков 50)
Реализовать сужение безопасной зоны невозможно, разве что спавнить турели по краям локации. Но это очень нагрузит сервер, да и люди не должны быть застаны врасплох неожиданной установкой турели неподалеку. Лучше всего заменить эту механику на мотивирование игроков к постепенному продвижению в центральную часть локации.
[Пример реализации мотивирования игроков]
Условно разделим ЛП на три части: внешний радиус, внутренний радиус (ближе к центру) и центральная башня. На башне в конце ивента заспавнится обелиск, добив который игрок получит по квесту предмет, подтверждающий его право на главное вознаграждение. Для того, чтобы воспользоваться телепортами на башню (которых, к слову, будет три, со стороны каждой расы, а не 1 как сейчас) нужно будет раздобыть предмет за квест у НПСов во внутреннем радиусе. А чтобы взять квест у этого НПС, нужно выбить конверт во внешнем радиусе.
Выбор места десантирования можно реализовать следующим образом:
1) Персонажи появляются не сразу в локации действия ивента, а в специальной зоне ожидания. Например, на одной из ледяных платформ в территории запечаток. Только одна из 4 летающих платформ занята, любую другую можно использовать для целей мероприятия. Либо создать в лавовых полях изолированную местность. Главное, чтобы это была мирная зона, куда попадают все игроки перед мероприятием.
2) Перед самым стартом ивента игроки телепортируются в другое лобби (телепортация сотни персонажей возможна посредством lua скриптов, похожее уже осуществлялось на ивенте "Голодные Игры"). В этом лобби уже есть НПС, у которого можно купить телепорт. Количество телепортов у НПС равно количеству игроков, либо превышает его. Все телепорты ведут в разные точки на карте Лавовых Полей. Каждый телепорт можно купить только один раз. Если кто-то купил его до этого, телепорт уже нельзя купить. Здесь используется механика, которую многие упускают из виду: ограничение количества предметов у НПСа. Это встречается только в двух местах на 2.2.3: у билетера (100 билетов) и у Героя (3 ядерные ракеты). Ограничив количество телепортов до 1, мы получим возможность отправить каждого игрока в свою точку на карте.
Примечание: желательно заранее переделать мини-карту Лавовых полей, сделать больше делений по секторам, а каждый телепорт подписать названием сектора, в который отправится игрок (например, G-24). Если еще иконки будут отличаться у каждого телепорта, то вообще шикарно. Возможно, лучше всего сделать несколько НПСов и поставить их очень близко друг к другу, чтобы а) игроки покупали каждый раз разные телепорты, б) игроки не знали, у каких нпсов покупают телепорты их противники.
Персонажи
Так как игроки по умолчанию должны быть либо голыми, либо одинаково экипированными, да еще и обладать одинаковыми шансами на успех, то лучше всего использовать специальные ивентовые аккаунты с заранее подготовленными персонажами.
Если реализация ивента идет на действующем сервере x100, то эти персонажи не должны иметь никакой возможности получить от них предметы или помощь. Отключается почта на время проведения мероприятия, ни о каких системных телепортах в краговые шахты не может идти речи. Персонажи имеют привязанную к лобби точку возрождения.
Чтобы различие в расах и классах не играло никакой роли, создается специальная профессия у специалистов каждой расы. Эту профессию нельзя взять игровым путем, но через админку легко раздать ее всем ивентовым персонажам, подготовленным заранее. Особенности данной профессии следующие:
1) HP/FP/SP одинаковые.
2) Умения одинаковые: ГА скиллы (бб и дб).
3) Имеется доступ к ББ и ДБ Эксперту и Элите.
Для уравнивания всех особенностей, магия у кор/беллато изымается полностью, т.к. магия Ученика остается, а акретам выдается генератор на -0,5 бега (т. к. у них по дефолту выше бег на 0,5).
В данном игровом режиме для простоты баланса я убрал магов, МАУ, ланчей, минеров, турельщиков, вызывателей и прочие отклонения от нормы. Мы получили самых простых персонажей, которые свободно могут орудовать ББ и ДБ оружием. Остальное нас не интересует.
Также игрокам предварительно выдан ВР (чтобы не нужен был ПК для убийства игроков своей расы) и назначен уровень 40, в том числе и в качестве максимального (выше 40 прыгнуть не получится). Это подстраховка на случай, если им удастся заполучить какие-то предметы извне: они их просто не наденут по уровню.
Экипировка и предметы
Изначально все персы голые, и чтобы что-то достать, нужно убивать монстров. Чем ближе к центру, тем лучше экипировка и сложнее мобы (на внешнем радиусе мобы совсем слабые, чтобы даже голые персонажи руками их завалили). Чтобы игроки, успевшие раздобыть экипировку, не нагибали голых персонажей мгновенно, баланс всех вещей в этом режиме должен находиться примерно на первых 15 уровнях стандартной RF Online.
Нужно учитывать, что для ДБ оружия нужны соответствующие патроны, а еще не каждый захочет играть с тем комплектом вещей, которые ему посчастливилось выбить с мобов. Для этого по локации будут утыканы НПСы, у которых будет различный ассортимент вещей. Чтобы купить вещи, нужно продать ненужные вещи, которые вы налутали с мобов. Все очень просто. Некоторые особо ценные предметы можно продавать за пвп-очки, которые также набиваются на этой изолированной локации.
В принципе, большой фантазии не нужно, чтобы напридумывать предметы, имеющие особую ценность в этом игровом режиме. Ведь обычные НПСы недоступны для игроков изнутри. К таким предметам относятся:
Обыкновенные банки HP/FP/SP;
Допинги с различными свойствами (некоторые допинги должны иметь измененные параметры, например допинг на невидимость имеет смысл вводить с сильно уменьшенной длительностью);
Радары (довольно ценный предмет для данного режима, но не стоит делать его слишком редким, пусть игроки сталкиваются друг с другом);
Гравициклы (весьма ценный предмет, должен быть очень редким);
Руны (стандартный набор: вампиризма, быстроты, защиты);
Телепорты в другие сектора (довольно ценные предметы, должны быть редкими, особенно если речь о секторах внутреннего радиуса);
Боеприпасы (должны выпадать часто, ведь никому не захочется бегать с незаряженной винтовкой);
Капсулы возрождения.
Модификаторы с таликами и т-камнями можно ввести, но это усложнит итак нагруженный местами батлрояль.
Я хочу описать реализацию наиболее простого варианта.
Примечательно то, что данный режим позволяет разгуляться в различных особенностях экипировки, поскольку он не привязывает вас к какому-то классу, и все вещи даются грубо говоря рандомно.
Автоматизация
Сначала создаются монстры, НПС и предметы, подготавливается локация для ивента, создаются ивентовые аккаунты с ивентовыми персонажами. Персонажи заводятся в лобби, устанавливают точку возрождения, получают невидимый класс, убирается все лишнее (включая квесты).
Затем создаются луа-скрипты для телепортации этих персонажей в другое лобби, в котором содержатся телепорты в различные сектора. Отдельно создается луа-скрипт для спавна монстров. Монстры должны появляться каждый раз в различных местах (как это реализовано в еженедельном ивенте, например, но с бОльшим количеством координат). Этот же скрипт спавнит в конце ивента (скажем, спустя 20 минут) центральную башню или обелиск, который и является основной целью игроков.
Из неавтоматизированных действий, которые осложняют проведение этого ивента каждые выходные, можно отметить подготовку аккаунтов и персонажей, что решается выделением сервера под ивент, в котором любые персонажи будут создаваться с заданными параметрами. Чтобы выдать персонажу на старте любой уровень, например 40, нужно сделать начальный уровень 39 в скриптах и выдать ему капсулу +100% опыта. Выпив капсулу, игрок перескочит с 1 на 40 уровень в миг. Только никому не говорите, эта информация украдена из сверхсекретных архивов в Северной Корее.
Монетизация
Никогда не любил рассматривать этот момент, потому что сам неохотно играю в "платное". Тем не менее, реализовать такой ивент стоит денег и времени, потому должна быть какая-то польза не только игрокам, но и администрации.
Есть несколько вариантов.
1. После некоторого количества тестов и удачных запусков, превратить ивент в азартную игру: каждый платит за участие 20... 30.... 50 рублей, а победитель получает 50% от собранной суммы. Например, 100 участников по 50 рублей, уже 5000. Получить 2500 за полчаса будет приятно любому игроку. Вариант не очень, но он вот есть.
2. Раздавать какое-то количество билетов на участие через лотерею. 20 мест вполне можно разыграть, почему нет? Хотя вариант не очень, ведь лотереи не проводятся с целью что-то продать. Это можно рассматривать как приятное дополнение к бонусам лотереи, но не как способ заработать на ивенте.
3. Участвуют только премиум игроки. Опять же, это бонус к премам, и возможно некоторые возьмут его специально для ивента, но премиум должен быть актуален и без данного мероприятия. Так что вариант тоже хиленький.
4. Добровольное пожертвование на проведение ивента. Чтобы провести такой ивент, нужно собрать определенную сумму, скажем 5000 рублей. Как только эта сумма набирается через пожертвования, ивент проводится. И так каждый раз. Тем, кто делал пожертвования, можно давать незначительное преимущество на ивенте: генератор сделки (скидка 10% у НПС), например.
5. Прямой донат: шоп вкладывается в преимущество на самом ивенте (допинги, радары, руны, и т.п.).
Возможно, есть еще какие-то пути, но их рассматривать я не буду. Итак тема большая получилась.