There seems to be a logic flaw in your probability/drop code
[quote:1cxzta8o]Set DropRandom to round(random(Hurtable.DropProbability,100))
This is setting DropRandom to a number between DropProbability and 100
With DropProbability = 98, DropRandom will be 98, 99 or 100
With DropProbability = 50, DropRandom will be 50, 51, 52, ... , 98, 99 or 100
That is DropRandom >= DropProbability
You are then checking:
[quote:1cxzta8o]DropRandom <= DropProbability
but it will never be less, and only sometimes equal.
Basically, at 98 you have a 1 in 3 chance of a drop and at 50 you have a 1 in 51 chance of a drop.
Try this instead:
[quote:1cxzta8o]Set DropRandom to round(random(0,100))
DropRandom <= DropProbability
DropRandom will be a number from 0 to 100 and DropProbability should then work like the percentage chance you seem to have intended and if DropProbability is greater than or equal to DropRandom it will drop an item.