Сообщений: 1,058
Тем: 129
Зарегистрирован: May 2009
Репутация:
11,626
Добрового времени стуок.
Задумался о том, откуда берутся значения скажем для параметра STR например.
Где это прописывается (сколько атаки даёт STR)?
P.S. смотрел Formulas.java, нашёл там:
code
static class FuncPAtkMod extends Func
{
static final FuncPAtkMod _fpa_instance = new FuncPAtkMod();
static Func getInstance()
{
return _fpa_instance;
}
private FuncPAtkMod()
{
super(Stats.POWER_ATTACK, 0x30, null);
}
@Override
public void calc(Env env)
{
if (env.player instanceof L2PetInstance)
{
if (env.player.getActiveWeaponInstance() != null)
env.value *= BaseStats.STR.calcBonus(env.player);
}
else
env.value *= BaseStats.STR.calcBonus(env.player) * env.player.getLevelMod();
}
}
Оно ли это?
Спасибо.
Сообщений: 376
Тем: 12
Зарегистрирован: Jul 2012
Репутация:
1,000
p.atk
short[] str_bonus = (-70,-69,-68,-66,-65,-64,-63,-61,-60,-58,-57,-55,-54,-52,-50,-49,-47,-45,-43,-41,-39,-37,-34,-32,-29,-27,-24,-22,-19,-16,-13,-10,-6,-3,1,4,8,12,16,20,24,29,33,38,43,48,54,59,65,71,77,83,90,97,104,111,119,127,135,143,152,161,171,180,191,201,212,223,235,247,259,272,286,299,314,329,344,360,377,394,412,430,449,469,489,511,533,555,579,603,629,655,682,710,739,770,801,833,867);
STR Modifier = (str_bonus[STR] + 100)/100
P.Atk. = (Weapon P.Atk. * Level Modifier * STR Modifier * Mastery Modifier * Armor Bonus * M.Def. Bonus * Buffs Type 1)
P.Atk += Weapon Mastery + Buffs Type 2 + Weapon Bonus
Сообщений: 1,485
Тем: 12
Зарегистрирован: Mar 2010
Репутация:
2,994
finfan Написал:Оно ли это? Да оно, в BaseStats оно грузит из ДП модификаторы из файла.
Сообщений: 1,058
Тем: 129
Зарегистрирован: May 2009
Репутация:
11,626
Visor Написал:Да оно, в BaseStats оно грузит из ДП модификаторы из файла.
У меня имеется файл в дп statBonus.
Внутри него содержутся все параметры DEX/CON и т.д.
Выглядит он вот-так:
Код: <?xml version="1.0" encoding="UTF-8"?>
<list xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="statBonus.xsd">
<STR>
<!-- 1.036^(STR-34.845) -->
<stat value="0" bonus="0.29" /> <!-- Not Needed -->
<stat value="1" bonus="0.3" />
<stat value="2" bonus="0.31" />
Я так понимаю, что value - это кол-во STR в данном случае.
А вот что такое bonus... я лишь догадываюсь...
Сообщений: 1,053
Тем: 33
Зарегистрирован: Sep 2011
Репутация:
12,172
по логике это множитель, PAtk*bonus
Сообщений: 1,058
Тем: 129
Зарегистрирован: May 2009
Репутация:
11,626
L2CCCP Написал:по логике это множитель, PAtk*bonus
Беда, в том, что меняя бонус, никаких изменений нет...
Стоит мне только изменить *= на += и мгновенно изменения появляются, правда в печальную сторону, ибо P.Atk за 1 ед STR прибавлятся 0 с лишним, и только за 5 едениц STR дается 1 п атаки.
|