Combat System
Материал из Wiki
Версия от 22:01, 24 января 2024; Wikibot (обсуждение | вклад)
Расчет урона оружия
dam = {<weapon.dam.min> <weapon.dam.max>} //базовый урон оружия случайное число от мин до макс (до удара) dam = ((<dam> * <weapon.repair>) / <weapon.max_repair>) //понижение урона от повреждения оружия dam = (<dam> * (<tactics> + 500)) / 1000) //бонус от тактики (помним что все навыки считаются как 100.0 или 1000) dam = (<dam> + ((<dam> * <str>) / 500)) //бонус от силы dam = (<dam> + ((<dam> * <anatomy>) / 5000)) //бонус от анатомии dam = ((<dam> * (100 + (<skill> / 10))) / 200) //бонус от боевого навыка //расчет бонуса от магии или цвета оружия (см.таблицу цветов) if <weapon.damage_plus> dam = (<dam> + <weapon.damage_plus>) elseif (<weapon.magic>) dam = (<dam> + ((((<weapon.magic> / 70) + 1) * 5) / 2)) endif if (<weapon.дистанционное>) && (<distance> <= 1) && НЕТ great_elven_archer //бонус от кольца при стрельбе вплотную dam = <dam> * 2/3 endif
- Часть формул может быть скрыта или представлена не в том виде, в котором она существует на данный момент. Это сделано ввиду существующих коллизий. Их список возможно будет представлен позже.
Таблица цветов
weapon/armor magic plus: of Ruin +5 of Might +10 of Force +15 of Power +20 of Vanquishing +25
weapon/armor damage plus: Hot/Rose +0 Agapite +5 Flame/Gold +5 Orion +5 Verite +5 Dwarf + 10 Shadow +10 Valorite +15 Holy/Silver +15 Crystal +15 Infernal/Magma +20 Obsidian +25 Mythic +25
Titan Leather +5 Daemon Leather +10 Red Leather +5 Blue Leather +20 Green Leather +20 Yellow Leather +20 Gray Leather +15 Gold Leather +20 Silver Leather +20 Crystal Leather +20 Black Leather +20
dragon_increase: armor.magic = ((<str> + 15) * 10) titan_increase: armor.magic = ((<str> + 15) * 10) chrome_increase: armor.magic = ((<str> + 15) * 10) platinum_increase: armor.magic = ((<str> + 15) * 10) i_dragon_claw: weapon.magic = ((<swordsmanship> * 2) / 3) i_titan_fist: weapon.magic = ((<macefighting> * 2) / 3) i_chrome_lance: weapon.magic = ((<fencing> * 2) / 3) i_platinum_broadsword: weapon.magic = ((<swordsmanship> * 2) / 3)
Расчет защиты
//выбор слоя для защиты armor_base = //базовая защита в зависимости от типа доспехов dfns = (<armor_base> * LAYER_[]_AC_K) / 1000 //коэффициент защиты конкретного слоя dfns = (<dfns> * <armor.more1l>) / <armor.more1h> //понижение защиты от повреждения доспеха //расчет бонуса от магии или цвета доспеха (см.таблицу цветов) if <armor.armor_plus> dfns = <dfns> + <armor.armor_plus> elseif (<armor.attr> & attr_magic) dfns = <dfns> + (<armor.magic> / 70) endif //Бонус защиты от магических и алхимических эффектов spell_effect = 1 potion_effect = 1 dfns = <dfns> + <p_layer_i.armor_bonus> //повышение защиты от бонуса слоев, непосредственно не участвующих в защите (квестовые предметы)
Расчет парирования
shield_size = //коэффициент размера щита if (rand(75) < <shield_size>) //удача на абсорбацию урона щитом, если успех, то рассчитывает далее. //расчет бонуса от магии или цвета щита (см.таблицу цветов) if <shield.shield_plus> absorbed = <absorbed> + <shield.shield_plus> + 9 elseif (<shield.attr> & attr_magic) absorbed = <absorbed > + (<shield.magic> / 70) + 9> endif absorbed = (<shield_size> * <absorbed>) / 100 absorbed = (<absorbed > * (100 + (<parrying> / 10))) / 200 absorbed = <absorbed> * <shield.repair> / <shield.max_repair> //понижение поглощения в зависимости от повреждения щита