Jump to content
  • 0

[Drop System] Item Selection


newrostman

Question

Hello, guys.

It might be a stupid question but I didn't find antyhing useful in the web. I have one unclear point about l2 drop system.
As I undestand there are categories. Each category has chance to be selected randomly. And each category has one or more items within. But only one item could drop from the category. And that's what confuses me. For example, category has 4 items: item1 with 5% chance, item2 with 10% chance, item 3 with 25% chance and item4, item5 both with 30%.
And the random number is 15. Which item should be selected and how??? For me it looks logically if every item with chance > random chance should be selected but as I unsdenstood correcly this is not the case: only one item from category goes to the ground. But what kind of calculations can handle that? :poker face: 

 

Link to comment
Share on other sites

4 answers to this question

Recommended Posts

  • 0

Content within group is 100% and chance is cumulative.

 

double totalChance = 0;

final double random = (Rnd.nextDouble() * 100);

for (Item item : getItemOfGroup())

{

totalChance += item.getChance();

if (totalChance > random)

{

drop(item);

break;

}

}

Edited by Sdw
Link to comment
Share on other sites

  • 0

Content within group is 100% and chance is cumulative.

 

double totalChance = 0;

final double random = (Rnd.nextDouble() * 100);

for (Item item : getItemOfGroup())

{

totalChance += item.getChance();

if (totalChance > random)

{

drop(item);

}

}

Oh I see. At the first glance it looked weird for me but now I see how the items with the same chance could be dropped  ^-^ 

Thank you)

Link to comment
Share on other sites

  • 0

Forgot to break the loop !

Yes, I noticed it but it's still clear how to selecte the item (even if in the code above it'll drop multiple of them) ).

Edited by newrostman
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.


×
×
  • Create New...