1 votes

Clicker Heroes Ruby chance ?

Quelle est la chance d'obtenir 1 Rubis d'un poisson ?

Est-ce une chance sur deux, ou la probabilité de ne pas obtenir un Rubis est-elle plus élevée ?

Je reçois des pièces uniques plus souvent que des rubis.
Ruby

Quelles sont exactement les chances de trouver des rubis dans un poisson ?

0 votes

Je ne peux trouver aucune source pour cela nulle part. Peut-être que vous devez faire un peu de science.

0 votes

@Svj0hn no...... bounty !! >:D

0 votes

J'ai essayé de le découvrir, mais il semble que le hasard ne soit pas linéaire. Dans les zones inférieures, je semble obtenir des rubis plus souvent que dans les zones supérieures. Mais ce n'est qu'une intuition. (ce n'est donc pas une réponse). Ce dont je suis sûr, c'est que la probabilité d'obtenir un rubis est toujours inférieure à 50 %.

4voto

David Tang Points 39

Jetons un coup d'œil au code source, voulez-vous ?

Le script responsable de (actuellement) le poisson et l'abeille est heroclickerlib.managers.HiddenObjectManager .

Dans ce script, nous trouvons une fonction private function onHiderClick(param1:MouseEvent) : void .
Cette fonction est responsable de l'événement on-click lorsque vous cliquez sur le poisson.

private function onHiderClick(param1:MouseEvent) : void
  {
     var _loc4_:* = 0;
     var _loc5_:* = NaN;
     var _loc6_:* = NaN;
     this.removeHider();
     if(Rnd.boolean(0.44))
     {
        _loc4_ = 1;
        if(Rnd.boolean(0.04 + this._userData.ancients.doubleRubyPercent / 100))
        {
           _loc4_ = 2;
        }
        this._userData.addRubies(_loc4_,"hidden_object",-1);
        _loc5_ = this._battleManager.display.mouseX;
        _loc6_ = this._battleManager.display.mouseY;
        this._battleManager.uiManager.battleUI.transientEffects.showGeneralMessage(_loc5_,_loc6_,_("+%s Ruby!",_loc4_));
     }
     var _loc2_:Monster = new Monster();
     _loc2_.id = 2;
     _loc2_.level = this._userData.highestFinishedZone + 1;
     var _loc3_:Number = this._userData.getMonsterReward(_loc2_) * 10;
     _loc2_.isBoss = true;
     this._battleManager.itemDropManager.goldSplash(_loc3_,_loc2_,ServerTimeKeeper.instance.timestamp);
     HeroClickerSoundManager.instance.playSoundEffectById(36);
     this._battleManager.uiManager.battleUI.transientEffects.showGeneralMessage(580,152,"Yay!!");
  }

Deux appels de fonction sont importants ici :

  1. if(Rnd.boolean(0.44)) cette méthode vérifie en interne si un nombre aléatoire (uniformément distribué) est inférieur à 0,44. Cela équivaut à une chance presque exacte de 44% d'obtenir un résultat positif. au moins un rubis.
  2. if(Rnd.boolean(0.04 + this._userData.ancients.doubleRubyPercent / 100)) : Cet appel assez long vérifie si un nombre aléatoire est inférieur à 0,04 + le pourcentage de rubis double supplémentaire de vos anciens. Cela signifie que dans 4% des cas où vous obtenez un rubis, vous en obtenez 2.
    Sans aucun ancien, la chance d'obtenir 2 rubis est d'environ 0,44*0,04=0,0176 => 1,76%.

La quantité moyenne de rubis que vous obtenez après avoir cliqué 1000 fois sur le poisson est la suivante : 444,4 => 44,44%

440 times at least one ruby
=>  440*4%  =     11 times 2 rubies = 22    +
=>  440*96% =  422,4 times 1 ruby   = 422,4

==> 444,4 rubies => ~444,4/1000 = 44,44% chance of getting one ruby on average

La quantité attendue de rubis par clic est donc de 0,4444.

J'ai utilisé JPEXS Décompilateur Flash gratuit pour accéder au code source.

1voto

user117521 Points 11

S'ajoutant à ce que @GiantTree a dit par ailleurs excellente réponse :

Le nombre de rubis attendu, E(R) d'un seul clic est :

E(R) = 1 * P(1) + 2 * P(2) , (1)

P(x) est la probabilité d'obtenir x rubis.

En utilisant les informations de @GiantTree comme source, nous voyons que le double rubis est roulé pour après le premier, c'est-à-dire :

P(1) = 0.44 - P(2) ,

ce qui signifie que le (1) peut être exprimé comme suit :

E(R) = 0.44 - P(2) + 2 * P(2) = 0.44 + P(2) . (2)

Maintenant, P(2) peut être calculé par :

P(2) = 0.44 * (0.04 + DRC) ,

DRC est votre double chance de rubis exprimée sous forme de fraction (ainsi, 15 % signifie DRC = 0.15 ).

Enfin, nous insérons cette expression dans (2) :

E(R) = 0.44 + 0.44(0.04 + DRC) = 0.44 * (1.04 + DRC) = 0.4576 + 0.44 * DRC .

Ou pour faire court :

E(R) = 0.4576 + 0.44 * DRC .

Cela signifie que la base valeur attendue est 0.4576 rubis par clic.

Puisque la valeur la plus élevée de la DRC -La majoration ancienne est de 15%, on obtient une valeur maximale (hors reliques) de :

Emax(R) = 0.4576 + 0.44 * 0.15 = 0.5236 ,

ce qui signifie que le rendement maximum attendu en rubis (encore une fois, sans les reliques) est de 0.5236 .

AlleGamers.com

AlleGamers est une communauté de gamers qui cherche à élargir la connaissance des jeux vidéo.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X