1

Взаимное влияние бонусов в целом и на НГ+ в частности

Небольшое введение. Существует множество игр, где при расчете каких-то характеристик приходится учитывать одновременное влияния 2-х и более бонусов. Часто это встречается в играх жанра RPG и MMORPG, где персонажи одновременно увешаны магическими шмотками, забафаны союзниками и дебафнуты противниками. Однако каждый из этих бонусов может быть выражен по-разному: например, надетые «Трусы божественной силы» дают +3 к силе, а благословение «Сила мужика» – +10%. Когда таких бонусов накапливается штук 15-20, то чтобы учесть их взаимное влияние возникает необходимость установить однозначный порядок для действий при вычислениях.

Тут можно пойти двумя путями:

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

1) Х + А1 + А2 + ... = Ха;

2) Ха × (100 + М1 + М2 + ...)/100 = Хб.

Или если объединить

(Х + А1 + А2 + ...) × (100 + М1 + М2 + ...)/100 = Хб

или

(Х + А1 + А2 + ...) × (1 + М1/100 + М2/100 + ...) = Хб,

где Х – базовое значение характеристики;

А1, А2, ... – аддбонусы;

Ха – значение характеристики с учетом аддбонусов;

М1, М2, ... – мультибонусы (в %);

Хб – значение характеристики с учетом всех бонусов.

Такой способ наиболее прост и нагляден, для вычислений он не требует информации о происхождении бонусов (+3% силы от носимого топора ничем не будут отличаться от +3% силы от заклинания) и любые значения А и М можно свободно менять местами друг с другом без влияния на результат.

2. Если же необходимо подчеркнуть разную значимость бонусов помимо собственно их количественного значения (например, бонусы экипировки менее значимы, чем эффекты зелий), то устанавливаются жесткие уровни при расчетах: например, сначала учитываются бонусы навыков, затем (с их учетом) – бонусы экипировки, далее (с учетом первых и вторых) – бонусы заклинаний и т. д. Причем, если характеристика возрастающая, то каждый следующий уровень будет рассчитываться от большей величины и, соответственно, будет сильнее влиять на итоговое значение (и наоборот, когда нужно снижать параметр, ситуация обратная). Общий же принцип остается прежним.

(Х + А1 + А2 + ...) × (1 + М1/100 + М2/100 + ...) = Х1 (навыки);

(Х1 + А11 + А12 + ...) × (1 + М11/100 + М12/100 + ...) = Х2 (навыки + экипировка);

(Х2 + А21 + А22 + ...) × (1 + М21/100 + М22/100 + ...) = Х3 (навыки + экипировка + заклинания).

И т. д. в зависимости от того сколько уровней бонусов требуется использовать. После объединения конструкция получается весьма громоздкая (а, поменять местами, например, М1 и М11 теперь мы не можем потому, что изменим и результат):

(((Х + А1 + А2 + ...) × (1 + М1/100 + М2/100 + ...) + А11 + А12 + ...) × (1 + М11/100 + М12/100 + ...) + А21 + А22 + ...) × (1 + М21/100 + М22/100 + ...) = Х3.

Обычно на практике удобно разделить влияние постоянных (навыки, экипировка) и временных (еда, зелья, заклинания) эффектов и больше 2-3 уровней в вычислениях вводить смысла не имеет, достаточно изменять сами значения бонусов.

А теперь посмотрим как это реализовано в Консулах. И для начала перечислим какие источники бонусов в игре можно выделить:

  1. Здания (в т. ч. переменный бонус Импульсного уловителя)
  2. Исследования
  3. Предметы из палаты консула
  4. Ачивки
  5. VIP-режим
  6. Крампус-баф на скорость строительства зданий/исследований

Тут встречаются как аддбонусы, так и мультибонусы, которые как увеличивают полезные статы, так и сокращают не нужные. Особенно интересны изменения, вносимые с переходом на НГ+ (относим их действие к ачивкам).

1. Добыча ресурсов.

В целом мы видим 2-й вариант расчетов с 3-мя уровнями (каждый множитель – новый уровень), однако, вне зависимости от источника, все аддбонусы тут собраны на 1-м уровне:

(Х + Апк + Аа) × (1 + Ми/100) = Х1;

Х1 × (1 + Мнг/100) = Х2;

Х2 × (1 + Мvip/100) = Хб.

Или если объединить

(Х + Апк + Аа) × (1 + Ми/100) × (1 + Мнг/100) × (1 + Мvip/100) = Хб,

где Х – базовое значение жилого комплекса, шахты или статуи;

Апк – бонусы платы консула (до 3-х штук);

Аа – бонусы от ачивок;

Ми – бонус от исследований;

Мнг – бонус от перехода на НГ+ (здесь отрицательный);

Мvip – бонус от VIP-режима;

Хб – значение характеристики с учетом всех бонусов.

Добычу ГГК рассматривать не будем, потому как там только аддбонусы (от перемены мест которых сумма не меняется).

2. Скорость строительства зданий/исследований.

Здесь и далее аддбонусы в основном отсутствуют, поэтому формулы упрощаются, для строительства:

Х × (1 + Ми/100) × (1 + Мк/100) × (1 + Мзчк/100) × (1 + Мvip/100) = Хб;

для исследований:

Х × (1 + Ми/100) × (1 + Мк/100) × (1 + Мvip/100) = Хб.

Мк – бонус «Благословление обычного/бронзового/серебряного/золотого крампуса»;

Мзчк – бонус «Заводы черного континента» (только для зданий).

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

3. Стоимость строительства зданий/исследований.

Теперь уже отсутствует влияние Мvip, а не Мнг, для зданий и исследований формула одинаковая (только Мз дают разные здания):

Х × (1 + (Мз + Мпк)/100) × (1 + Мнг/100) = Хб.

Мз – бонус от зданий;

Мпк – бонус от палаты консула (хлев, табурет, пугало).

Отметим, что здесь Мз и Мпк на одном уровне.

4. Скорость производства флота/обороны/армии.

Общим будет являться наличие главного производящего здания на первом уровне, еще 2-х зданий/исследований (открывающих доступ к производству конкретного типа) ниже, ачивок и VIP-режима в конце. Рассмотрим флот, т. к. там схема может достигать аж 6-ти (!) уровней:

Х × (1 + Мз1/100) × (1 + Мз2/100) × (1 + Ми/100) × (1 + Ма/100) × (1 + Мнг/100) × (1 + Мvip/100) = Хб.

Встречается и вариант с двумя исследованиями:

Х × (1 + Мз/100) × (1 + Ми1/100) × (1 + Ми2/100) × (1 + Ма/100) × (1 + Мнг/100) × (1 + Мvip/100) = Хб.

5. Стоимость производства флота/обороны/армии.

В целом аналогично зданиям/исследованиям: до 4-х бонусов, Мнг отдельным уровнем внизу.

Х × (1 + (Мз + Ми + Мпк)/100) × (1 + Мнг/100) = Хб.

6. Характеристики флота/обороны/армии.

Для флота (атака и защита):

Х × (1 + (Ми + Ма)/100) × (1 + Мнг/100) × (1 + Мvip/100) = Хб.

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

Для армии, атака:

Х × (1 + Мз/100) × (1 + (Мнг + Ма1 + Ма2)/100) = Хб;

защита:

Х × (1 + Ми/100) × (1 + (Мнг + Ма1 + Ма2)/100) = Хб.

Как видно ачивки для флота стоят на 1-м уровне, а для армии – на 2-м вместе с Мнг (т. е. влияют сильнее). Для обороны пока есть только по 1 виду бонусов для атаки и защиты.

7. Ремонт флота:

Х × (1 + Мз/100) × (1 + Мнг/100) = Хб.

Только бонусы от Инженерного комплекса (для расчета людей вместо него работает Центр развлечений) и НГ+, но тут есть косяк с двойным штрафом от Мнг (см. скриншот).

 

В общем, видно, что имеется упорядоченная структура, однако есть и непонятные (на мой взгляд) отступления от общего порядка. Все аддбонусы собраны на 1-м уровне при любых расчетах (вполне допустимо и удобно). Все (почти) мультибонусы зданий, исследований и предметов из палаты консула (если есть) также собраны на 1-м уровне и равнозначны. Если так было задумано, то тут я ничего против не имею. Странности начинаются у бонусов ачивок (к которым также относится и НГ+). Считаю, что все проявления мультибонусов ачивок должны находиться на одном и том же 2-м уровне (у статов флота они на 1-м, НГ+ стоит всегда отдельно от прочих бонусов на 2-4 уровнях, нормально сделано только у статов армии) у всех характеристик, где они присутствуют. На 3-м уровне нужно поместить все временные эффекты такие как крампус-баф, VIP-ка, «Заводы черного континента» (потому как не понятно к чему это отнести, либо же на 2-й уровень к ачивкам) и если еще что-то такое со временем появится.

 

Отдельного стоит рассмотреть скорости производства юнитов. Я могу понять, почему там сделано так, что каждый бонус идет отдельным уровнем: да, если от яблока отрезать половинку, потом – половинку от половинки, половинку от половинки половинки и т. д., то что-то все равно останется (а, например, вычисляя эту убывающую величину через 1 уровень, действием многих бонусов есть вероятность загнать ее в 0 и минус). Но такая схема не согласуется со всеми остальными, а уровни в ней равнозначны. И эта причина надуманная: вклад 1-го уровня бонусов (а если точнее 1-го производящего здания) велик, а остальных на его фоне незначителен и 2-3 уровня тут достаточно. Посмотрим на скорости строительства: ну там мы же обходимся как-то 3-мя уровнями и ничего (там 1 исследование, которое в сумме дает, по сути, столько же, как три бонуса зданий/исследований у юнитов, ну, представим себе, что было б там вместо него 3 исследования/здания). Если нормально подобрать динамику прироста верфей, заводов, казарм (а также базовые значения у юнитов, которые бы несколько сократились относительно теперешних трудно воспринимаемых – Пожинатель за 3 с хреном месяца – ведь эти числа сами по себе не используются, а только служат множителями для итоговых величин) и т. д., то можно выйти на те же показатели. И здания/исследования в рамках одного уровня также будут влиять одинаково, внося основные изменения.

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