Why not just use random(1,100) instead of random(100)? and i think what you're saying "50-100 of 100 is 50% drop rate", 50-100=50? it means is 1 out of 50 chances to get a drop, not 50% drop, random(1,2) would mean 50% chances. but using random(1,100) would be nice, if you're doing a game with different difficulties, you could reduce the numbers between the random method to make it easier to get a drop.