Описание начальной боевой системы для версии 1.4.4

3 августа 2004 года
Реализовано в версии 1.4.4.

Начало боя:

  1. Действие, относящееся к любому виду атаки, инициирует бой.
  2. В зависимости от отношения атакуемого либо требуется его согласие, либо нет.
  3. Агрессивные мобы атакуют автоматически.

Окончание боя:

  1. Смерть всех, кроме одной стороны (отдельного персонажа или группы союзников).
  2. Объявление о сдаче от одной стороны, и согласие на это от другой.
  3. Отсутствие атак более пяти раундов.

Течение боя:

  1. Бой пошаговый, все удары и другие действия производятся один раз в раунд.
  2. Под раундовым действием понимается либо физическая атака, либо использование специального навыка, либо заклинание, либо использование какого-либо предмета (команды есть/пить/одеть/снять, возможно и другие).
  3. Если во время ожидания раунда не было выбрано действие, то либо повторяется последняя выбранная физ.атака (пусть даже только что были использованы иные действия). Если же бой был инициирован не физ.атакой, то вообще никакого действия не произойдет.
  4. Любое выбранное действие перекрывает выбранное ранее в этот же раунд. Таким образом, выбрав какую-либо физ.атаку и следом сразу заклинание, можно приготовить эту физ.атаку на следующий раунд.
  5. Физ.атака может быть простой и нацеленной. Всего выделено 4 места для атаки: голова, тело, руки, и ноги. При нацеленной атаке повышается шанс попасть именно в эту часть. Кроме того, броня учитывается для каждой части отдельно, а так же, если на эту часть возможно надеть несколько вешей с броней, то уровень брони считается коэффицентной суммой. (например руки - наплечники, браслет, и перчатки - соответственно коэффиценты 0.5, 0.15, и 0.35 - итоговая броня равна [бр.напл.]*0.5+[бр.брасл.]*0.15+[бр.перч.]*0.35)

Длительность раунда предположительно 1 тик = 15 реальных секунд.


Основные параметры, необходимые для расчета боя:

Отношение

  • мирное (по умолчанию, персонаж вообще не может участвовать в битве)
  • обычное (для начала боя требуется согласие)
  • агрессивное (согласие не требуется, а если это моб, то атакует любого встречного с не мирным отношением)

Стиль

  • защита (атак нет, защита выше)
  • обычная (по умолчанию, параметры атаки/защиты не изменяются)
  • атака (атака выше, защита ниже)

Атака

Вероятность попадания удара. Зависит от ловкости, навыка владения оружием, и качества оружия.
Вероятность = навык*0.9*(1+мод.ловк/10)*(0.5+кач.оруж*0.75)
Максимум = 0.9

Урон

Наносимое повреждение при условии удачности удара. Зависит от типа оружия, его качества, и модификатора статса, соответствующего данному типу оружия.
Урон = нач.урон+(кач.оруж*8-4)+мод.статса

Крит.удар

Шанс нанесения критического удара и множитель урона при удаче. И то и другое зависит от типа оружия, навыков владения и крит.удара.
Шанс = нач.шанс+(нав.влад.*нав.крит.*0.45)
Множитель = нач.множитель+trunc(нав.крит.*2)

Уклонение

Вероятность уклонения от удара. Зависит от ловкости и навыка уклонения.
Вероятность = нав.укл.*0.4+мод.ловк.*0.04
Максимум = 0.6

Парирование

Вероятность парирования удара (только при наличии оружия). Зависит от ловкости, навыков владения оружием и парирования.
Вероятность = нав.пар.*(нав.влад.+0.5)*(1+мод.ловк./10)*0.5
Максимум = 0.5

Броня

Уменьшение наносимого повреждения на процент. Зависит от типа брони, её качества, и прочности материала.
Уровень брони = нач.броня*(кач.брони+0.5)*(прочн./номин.прочн.)+[природная броня]+[магическая броня]
Уменьшение урона = Power([уровень брони],0.7)/15
Максимум = 0.95

Все параметры могут быть увеличены или уменьшены эффектами относительно их расчетного значения.

В дальнейшем возможны любые дополнения.


Диапазоны и происхождение используемых параметров:

любой навык = от 0 до 1 (0%-100%), 0 означает отсутствие навыка
любой статс = от 0 до 50
мод.статса = от -5 до 20 = (статс-10)/2

качество оружия = от 0 до 1 = [качество изготовления]*[износ оружия]
качество изготовления = от 0 до 1 = навык оружейника, на момент изготовления
износ оружия = от 1 до 0 = изначально равно 1, падает от использования (качественное оружие изнашивается медленнее), при достижении 0 ломается
нач.урон = полностью зависит от типа оружия и имеет два значения - мин. и макс.

качество брони = от 0 до 1 = [качество изготовления]*[износ брони]
качество изготовления = от 0 до 1 = навык доспешника, на момент изготовления
износ брони = от 1 до 0 = изначально равно 1, падает от попадания по ней (качественная броня изнашивается медленнее), при достижении 0 ломается
нач.броня = полностью зависит от типа брони
прочность = прочность материала в условных единицах
номин.прочность = номинальная прочность материала для данного типа брони


Типы оружия/брони:

Свойства типа оружия:

  • идентификатор типа и его название
  • природное ли это оружие
  • список групп материалов, из которых можно изготовить данный тип
  • минимальный требуемый объем материала
  • коэффициент цены
  • номинальные минимальный и максимальный урон
  • номинальные шанс и множитель критического удара
  • статс, влияющий на оружие (обычно сила или ловкость)
  • тип атаки, который делает оружие
  • требуемый навык для изготовления этого типа оружия
  • требуемый навык для владения этим типом оружия и его уровень (два отд.поля)
  • требуемые статсы для владения этим типом оружия
  • список мест, куда нужно надеть или взять оружие (обычно = "в руку")
  • двуручное оружие или нет (только если "в руку")

(пока не учтена возможность стрелкового/метательного оружия)

Свойства типа брони:

  • идентификатор типа и его название
  • список групп материалов, из которых можно изготовить данный тип
  • минимальный требуемый объем материала
  • коэффициент цены
  • номинальный уровень брони
  • номинальная прочность для этого типа брони
  • модификатор уровня брони от трех типов физ.повреждений
  • штраф ловкости при ношении этой брони
  • требуемый навык для изготовления этого типа брони
  • требуемый навык для ношения брони и его уровень (два отд.поля, может отсутствовать)
  • требуемые статсы для ношения брони
  • список мест, куда нужно надеть броню (обычно = "на тело")
  • толщина брони (используется, только если "на тело")

Свойства типа атаки:

  • идентификатор типа и его название
  • список типов повреждений
  • шаблон сообщения об атаке данного типа

Свойства типа повреждений:

  • идентификатор типа и его название
  • идентификатор эффекта, увеличивающего повреждение этого типа (уязвимость)
  • идентификатор эффекта, уменьшающего повреждение этого типа (защита)
  • идентификатор эффекта, исключающего повреждение этого типа (иммунитет)

(эффекты могут быть не указаны)