Issue information

Issue ID
#6962
Status
Invalid
Severity
None
Started
Hercules Elf Bot
Dec 1, 2012 13:44
Last Post
Hercules Elf Bot
Dec 1, 2012 18:29
Confirmation
N/A

Hercules Elf Bot - Dec 1, 2012 13:44

Originally posted by [b]Peopleperson49[/b]
I designed my MOTD to match the exp of the monster it kills, but when I looked at the exp it gave was 20x less than the exp they gained normally from killing the mob. My server rates are 20x. After testing a lot of different mobs (modified and non-modified) I discovered that many do the same thing. If you look below you will see that the normal exp for goats at 1x is 3357/2015 base/job exp and at 20x rates it should give 67140/40300 base/job exp. In the screen shot though it is then taking those rates already calculated at 20x and increasing them by 20x again to 1342800/806000 base/job exp. I have verified my conf settings and tryied to figure out what causing it with no success. My character got 14.9% exp from the normal exp which is about 400x rate, but no exp from the MOTD. I know that it has to do with my MOTD script, but I think its stacking the exp gained from the MOTD with the normal exp somehow. I do not believe this to be a script error either. I am using version 16930, but it did not do this before when I was using 16265.

I use custom mob_db2 files for this one.
[CODE]
1372,GOAT,Goat,Goat,80,11077,1,3357,2015,1,457,608,95,43,61,40,48,40,65,31,10,12,1,2,63,0x1089,165,1380,1080,336,0,0,0,0,0,0,0,7106,4559,7107,2500,713,5000,507,500,510,1000,508,2500,511,5500,0,0,0,0,4150,1
[/CODE]

[CODE]
OnNPCKillEvent:
if(killedrid!=$MobType) { end; }
dispbottom "MOTD Experience Gained Base:"+getmonsterinfo(killedrid,3)+" Job:"+getmonsterinfo(killedrid,4)+"";
getexp getmonsterinfo(killedrid,3),getmonsterinfo(killedrid,4);
end;
[/CODE]

[attachment=4709:screenRagnarokUnderground017.jpg]

This post has been edited by Peopleperson49 on Dec 1, 2012 14:22

Hercules Elf Bot - Dec 1, 2012 17:58

Originally posted by [b]Euphy[/b]
Both getmonsterinfo() and getexp() take server rates into account, giving you the square of the value you want. strmobinfo() is the command you're looking for (uses base rates).

Hercules Elf Bot - Dec 1, 2012 18:29

Originally posted by [b]Peopleperson49[/b]
Thanks for the reply. The issue is fixed by changing it from getexp to set BaseExp,BaseExp+... Anyways it was taking the base exp value which already has 20x applied. Then multiplying it by the quest exp rate of 20x.

Peopleperson49