Начисление(уменьшение) Кармы после смерти персонажа.

WmzBot

Поклонник кармы
Участник
Старожил I степени
Сообщения
570
Розыгрыши
0
Решения
2
Репутация
68
Реакции
185
Баллы
775
Добрый вечерок, уважаемые, вангант крив, но надо делать :) до 78 уровня за смерть снимается очень большое кол-во кармы, на 77 ровне порядка 15ти тысяч, это много, после 78, следовательно с изменением расчета таблицы опыта после 78 уровня / на 64, карма снимается нормально( я бы сказал самое то -500 примерно) . хотелось бы уточнить у вас, в какой серверной функции происходит изменение счетчика кармы при смерти персонажа?
double_CPCParamDB::GetKarmaIncreaseAmount хукнув эту функцию, смог изменить итог убывания кармы, только при убийстве моба(при получении опыта)
при смерти не могу никак найти.
 

Это в скриптах можно настраивать - pc_karma_increase_table_begin в PC_parameter.txt
 
  • Мне нравится
Реакции: kick
Вообще-то вы все перепутали :)
До 78 лвл карма смывается нормально, а вот на 78 и выше снимается меньше чем должно (в 64 раза кажись).
Ибо там зависимость от потерянной экспы
newKarma = Karma - ( expDrop / PcParamKarmaByLvLVal / 15 )
вангант топ за свои деньги :)
 
Вообще-то вы все перепутали :)
До 78 лвл карма смывается нормально, а вот на 78 и выше снимается меньше чем должно (в 64 раза кажись).
Ибо там зависимость от потерянной экспы
newKarma = Karma - ( expDrop / PcParamKarmaByLvLVal / 15 )

вангант топ за свои деньги :)
К сожалению я только начал над ним работать, и купить его сейчас, давно уже негде.
 
Это был сарказм :)
Ну а если серьезно, то забеслатно ничего годного(с исходниками) не найти кроме ваганта и емки(gf/hf).
 
за формулу спасибо. теперь работает, если например для 75 уровня ставлю 38.%%%%%%%%%, по вашей формуле (expdrop = 5022248/38/15) получается как раз то, что снимают при смерти, порядка 9 тысяч кармы. Спасибо Papa79 и Xeonc!! по тестам я понял, что на начисление кармы это не влияет, и на изменение при получении экспы тоже. спасибо еще раз!
 
Там еще есть баг.
Если умереть на 78 уровне с 00.00%, то снимаются сущие копейки опыта, и персонаж становится 77 99.90% . Кармы соответсвенно снимается тоже мизер.
 
Там еще есть баг.
Если умереть на 78 уровне с 00.00%, то снимаются сущие копейки опыта, и персонаж становится 77 99.90% . Кармы соответсвенно снимается тоже мизер.
Да да, а на 7 уровне если ты пк и умер, вообще наоборот 50% дают плюсом к опыту. Exp overflow, излечил условием if level >=9 тогда производить exp=n4percent
 
По хорошему там надо сделать условный блок для отрицательной экспы, где все проверки на переполнение, сравнение с таблицей опыта и тд.
 
По хорошему там надо сделать условный блок для отрицательной экспы, где все проверки на переполнение, сравнение с таблицей опыта и тд.
Ну это не долго, так как таблица опыта уже есть в levelup.cpp проверку организовать не долго.
 
Назад
Сверху Снизу