Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Eu estou fazendo um jogo onde estou fazendo um sistema de roleta onde dropar itens random quero saber se tem algum jeito de eu controlar a porcentagem de cada item ? Obrigado ! Aqui
Random r = new Random();
for (int i = 0; i < 1; i++) { int itemr = (r.nextInt(28) +1); User.dropItem(itemr); }
O que eu faria no seu caso é determinar um intervalo dos números que podem ser exibidos.
Considere que sua roleta tenha 5 números, sendo o 5 o mais improvável, o 4 e o 3 os mais fáceis e o 2 e o 1 os normais.
Então, você poderia colocar um intervalo de 100 números, por exemplo.
Se o número estivesse no intervalo de 25 a 60, seria o drop normal.
Se o número estivesse no intervalo de 95 a 100, seria o drop difícil.
E se o número estivesse em nenhum desses intervalos seria o drop fácil.
Então ficaria: difícil: 5% de chance.
Normal: 35% de chance.
Fácil: 60% de chance.
Sei que não é a melhor solução, pois pode haver alguma falha. Mas acho que seria funcional (não testei essa ideia), pois não conheço uma maneira de controlar qual número tem mais chance de ser exibido. Então, se todos os números têm a mesma chance de serem exibidos através do random, colocando um intervalo pequeno e determinando que apenas aqueles números sejam dos drops raros, diminui essa chance de drop.
Espero ter ajudado :D