Сообщений: 1,058
Тем: 129
Зарегистрирован: May 2009
Репутация:
11,626
l2jfrozen
Interlude
Добрый вечер дамы и господа.
Возник вопрос.
В конфигах существует: Config.ALT_PERFECT_SHLD_BLOCK
Выставив цифру = 100, каждая атака ближнего боя будет блокироватсья щитом со 100% вероятность и дмг будет = 0.
Но стата такого нет.
Мне хотелось бы добавить данную какашульку.
Начал с формула.джава
source
Код: if(shld)
{
double perfectBlock = attacker.calcStat(Stats.PERFECT_BLOCK, 0, null, null);
if(100 - perfectBlock < Rnd.get(100))
{
damage = 1;
target.sendPacket(new SystemMessage(SystemMessageId.YOUR_EXCELLENT_SHIELD_DEFENSE_WAS_A_SUCCESS));
}
}
if (damage > 0 && damage < 1)
damage = 1;
else if (damage < 0)
damage = 0;
И пошёл потом в статс.джава, добавил:
PERFECT_BLOCK("perfectBlock"),
в .xml, нашел скилл паладина Aegis Stance, добавил ему в щит данную функцию, дабы првоерить ее на работоспособность.
<add order="0x40" stat="perfectBlock" val="100"/>
Зашёл в игру, юзнул функцию и не получилось ничего Т_Т, мобы как бьют так и бьют, урон не блокируется...
Собственно сам вопрос, где еще необходимо копать кроме формул?
Спасибо.
Сообщений: 92
Тем: 3
Зарегистрирован: Jul 2011
Репутация:
194
Удалено.
Не так прочитал)
Единственно что, посмотрите для разнообразия, значение perfectBlock. Не уверен, конечно, но может быть так, что вам возвращают единицу или что то к ней близкое в калкСтате
Если бы в Java работал GC, большинство программ удаляли бы сами себя при первом же запуске
Сообщений: 1,058
Тем: 129
Зарегистрирован: May 2009
Репутация:
11,626
Gubble Написал:Удалено.
Не так прочитал)
Единственно что, посмотрите для разнообразия, значение perfectBlock. Не уверен, конечно, но может быть так, что вам возвращают единицу или что то к ней близкое в калкСтате
Еще один вопрос.
PERFECT_BLOCK активируется в момент, когда срабатывает блокировка щитом.
Все работает как надо.
Но где найти параметр sDef (Простой шанс блокировки щитом), точнее его максимальный val?
Сообщений: 92
Тем: 3
Зарегистрирован: Jul 2011
Репутация:
194
не знаю, как это во фрозене, а в теоне это
PS. а что у вас в perfectBlock то в итоге было?
Если бы в Java работал GC, большинство программ удаляли бы сами себя при первом же запуске
Сообщений: 1,058
Тем: 129
Зарегистрирован: May 2009
Репутация:
11,626
Gubble Написал:не знаю, как это во фрозене, а в теоне это
[code=java]Stats.SHIELD_RATE[/code]
PS. а что у вас в perfectBlock то в итоге было?
Сейчас разберусь кое с чем, и отпешусь что было
х_Х у меня есть два стата: SHIELD_RATE и SHIELD_DEFENCE...
1-ый - понятно, шанс блокировки атаки щитом, а вот 2-ой... что он делает?! ;D
Сообщений: 92
Тем: 3
Зарегистрирован: Jul 2011
Репутация:
194
SHIELD_RATE - это шанс блокировки
SHIELD_DEFENCE - это прямое понижение физ. дамага в зависимости от стата.
в общем случае -
Код: double defence = target.getPDef(attacker);
defence += (int) (target.calcStat(Stats.SHIELD_DEFENCE, 0, null, null));
damage = 70 * damage / defence;
Естественно, это всё еще может быть обвязано конфигами и прочим трешем. Но для понимания и так сойдёт.
Также, не менее естественно то, что у вас этих кусков кода либо нет вообще, либо то, что они могут сиииииильно отличаться
Если бы в Java работал GC, большинство программ удаляли бы сами себя при первом же запуске
Сообщений: 1,058
Тем: 129
Зарегистрирован: May 2009
Репутация:
11,626
Gubble Написал:SHIELD_RATE - это шанс блокировки
SHIELD_DEFENCE - это прямое понижение физ. дамага в зависимости от стата.
в общем случае -
Код: double defence = target.getPDef(attacker);
defence += (int) (target.calcStat(Stats.SHIELD_DEFENCE, 0, null, null));
damage = 70 * damage / defence;
Естественно, это всё еще может быть обвязано конфигами и прочим трешем. Но для понимания и так сойдёт.
Также, не менее естественно то, что у вас этих кусков кода либо нет вообще, либо то, что они могут сиииииильно отличаться
Вы правы, их нет вообще. Я разочаровываюсь во фрозенах. Надо переходить а аЦис
Сообщений: 92
Тем: 3
Зарегистрирован: Jul 2011
Репутация:
194
Лично я во фрозенах разочаровался, когда глянул на их код и заплакал кровью
У товарищей Demon и Ashe уже, думаю, более продвинутая версия ациса. Хотя и им еще пилить и пилить
Если бы в Java работал GC, большинство программ удаляли бы сами себя при первом же запуске
Сообщений: 1,058
Тем: 129
Зарегистрирован: May 2009
Репутация:
11,626
Gubble Написал:Лично я во фрозенах разочаровался, когда глянул на их код и заплакал кровью
У товарищей Demon и Ashe уже, думаю, более продвинутая версия ациса. Хотя и им еще пилить и пилить
Обидно то, что мне придётся очень много вкусностей переносить...
Либо сидеть, открыть исходы RT/Acis и продолжать заниматься порнухой копируя/переделывая код под фрозенов.
Сообщений: 92
Тем: 3
Зарегистрирован: Jul 2011
Репутация:
194
А что мешает сгенерировать разностный патч (хотя, лучше набор патчей, для каждого большого пакета- свой патчик, так перетаскивать потом будет проще) на основе вашего текущего проекта и оригинального фрозена? А потом этот патч уже запилить в ацис? Конечно, не всё будет идеально, но очень многое притащится без особых проблем.
Если бы в Java работал GC, большинство программ удаляли бы сами себя при первом же запуске
|