Issue information

Issue ID
#332
Status
Working as Intended
Severity
None
Started
Hercules Elf Bot
Oct 29, 2007 14:06
Last Post
Hercules Elf Bot
Oct 29, 2007 14:06
Confirmation
N/A

Hercules Elf Bot - Oct 29, 2007 14:06

Originally posted by [b]RealRain[/b]
http://www.eathena.ws/board/index.php?autocom=bugtracker&showbug=332

Hi.
//First of all sorry for my english, it's not my native language. (IMG:style_emoticons/default/smile.gif)

I don't know is it really a bug, so i call it question.
And the question is about an item bonus called "bGetZenyNum".
How it should work with item "1238,Zeny_Knife"?
As i know, that bonus was fixed, but zeny knife's effect has changed too.
Here is the svn sources at about 14:30 29.10.2007:

------------------------------------------------------------------------------
http://svn.eathena.ws/svn/ea/branches/stable/db/item_db.txt:
------------------------------------------------------------------------------
...
1238,Zeny_Knife,Zeny Knife,4,,10,1200,64,,1,0,0x028F5EEE,7,2,2,3,70,1,1,{ bonus2 bGetZenyNum,100,40; },{},{}
...
------------------------------------------------------------------------------

------------------------------------------------------------------------------
http://svn.eathena.ws/svn/ea/branches/stab.../item_bonus.txt
------------------------------------------------------------------------------
...
bonus2 bGetZenyNum,n,x;
When killing a monster, there is a x% chance of gaining 1~n zeny (only the highest among all is applied). If n < 0, the max zeny to gain is -n*monster level.
...
------------------------------------------------------------------------------

------------------------------------------------------------------------------
http://svn.eathena.ws/svn/ea/branches/stable/src/map/mob.c:
------------------------------------------------------------------------------
...
// process script-granted zeny bonus (get_zeny_num) [Skotlex]
if(sd->get_zeny_num && rand()%100 < sd->get_zeny_rate)
{
i = sd->get_zeny_num > 0?sd->get_zeny_num:-md->level*sd->get_zeny_num;
if (!i) i = 1;
pc_getzeny(sd, 1+rand()%i);
}
...
------------------------------------------------------------------------------

As i understand, that means that zeny knife sould give 100zeny on 40% chance
when killing a mob. Without multipling zeny number and mob level. Fixed 100 zeny
value. And if it was "bonus2 bGetZenyNum,-100,40;" at item_db.txt it should give
much more (IMG:style_emoticons/default/smile.gif) and that value would be more fair. Zeny knife is rather rare item.

May be it's a bug, and item_db.txt just has wrong zeny knife record?
Thanks for the answer.

This post has been edited by RealRain: Oct 29 2007, 07:10 AM