Jump to content
  • Advertisement
ggenije

Random Drop Rate problem

Recommended Posts

Posted (edited)

Imagine there is an enemy which has (e. g.)5% dropping rate of "weapon segment".(if ( random%20==0 )GetWeaponSegm())

That weapon is necessary for completing the game.You need exactly 5 these segments so basically you'll need to kill 100 enemies.

But let's say some user don't have that much luck, and then he needs it to kill 500 enemies.(This is possible if there are a large number of users)

This will ruin user experience because it's adjusted to kill 100 enemies for best UX.

Is it worth it to adjust this problem just to be sure everyone has same chances?

 

 

Edited by ggenije

Share this post


Link to post
Share on other sites
Advertisement
17 minutes ago, ggenije said:

Imagine there is an enemy which has (e. g.)5% dropping rate of "weapon segment".(if ( random%20==0 )GetWeaponSegm())

That weapon is necessary for completing the game.You need exactly 5 these segments so basically you'll need to kill 100 enemies.

But let's say some user don't have that much luck, and then he needs it to kill 500 enemies.(This is possible if there are a large number of users)

This will ruin user experience because it's adjusted to kill 100 enemies for best UX.

Is it worth it to adjust this problem just to be sure everyone has same chances?

 

 

Use something like a deck of cards instead of dice, to ensure that in the first 100 enemies, 5 of them have drops.

Share this post


Link to post
Share on other sites
41 minutes ago, JTippetts said:

Use something like a deck of cards instead of dice, to ensure that in the first 100 enemies, 5 of them have drops.

This is a good idea. An alternative is to have a steadily increasing chance of finding a weapon item that resets each time instead of a flat 5%. You may want it to even start at less than 0 so that the player always needs to defeat a few enemies between drops.

Share this post


Link to post
Share on other sites
26 minutes ago, Irusan, son of Arusan said:

This is a good idea. An alternative is to have a steadily increasing chance of finding a weapon item that resets each time instead of a flat 5%. You may want it to even start at less than 0 so that the player always needs to defeat a few enemies between drops.

I like the idea of a fail counter.  Each time the player fails at acquiring the item, a counter is increased which is added to the static 5%.  This counter is then reset after each successful acquisition. 

I am not sure if I like the idea of starting the initial climb from a fail modifier of less than zero, but testing should prove which method will work the best.  It just depends on how quickly you want your players to gain the weapon fragments.

Share this post


Link to post
Share on other sites

You can take a look at the Dota 2 version of random distribution. In Dota it's used for things such as critical strikes. The chance starts lower than what is written and then increases until a strike happens (there are concrete numbers on the page). 

One interesting side effect of such calculation is that you are able to anticipate critical strikes: if you attack NPC mobs many times in a row without getting a critical strike, you know that the chance for your next attack is greater than usual, so it's a good moment to attack another player. This is actually used by Dota 2 players. For loot drops it's probably not useful, but it's an interesting side effect anyway.

Share this post


Link to post
Share on other sites

Why aren't you giving the whole weapon as a reward for some fixed and mandatory quest or checkpoint that requires beating about 100 enemies (e.g. an escort mission along the enemy-infested road from A to B, where you know exactly what encounters will take place and the player can only fight more with voluntary detours) instead of randomly in "segments"? If it's part of the main plot, it has little in common with uncertain treasure drops.

If you want semi-random drops anyway, you can go beyond the "deck of cards" by counting enemies and dropping a weapon segment for a randomly selected enemy in each of 5 well separated ranges, in addition to more random treasures.
For example the pieces could be found at kill counts of

  • 5 to 10 (assuming 1 or 2 monsters per fight, we would skip the first few fights when the player is already busy becoming familiar with combat, but still establish a pattern early)
  • 25 to 30
  • 45 to 50
  • 65 to 70
  • 85 to 90 (to avoid the last few encounters)

Share this post


Link to post
Share on other sites

You can also link the drop chance to number of kills (similar to increasing % but may suit your quest design better and offer a larger control):

0-30 kills : 0 % (dont want some players to almost feel the quest wasnt a quest at all
30-50 kills: 5 %(you can be lucky)
50-100 kills: 20 % (most players get bored if the quest drags on too much
100 kills: 100 % (enough is enough, is rng-jesus has punished the player this much, just give them the damn drop)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!