How does a portal determine which hero you get?

So we’ve been having a discussion in the alliance on this and can’t seem to hammer out the details. Part of me doubts SGG has ever released any information on this but it’s worth an ask to your theories as well.

82 heroes in this current S4 portal.

This means that on a d100 roll, there are 18 missing spots, so each hero doesn’t get its own roll. This also doesn’t factor into the % chance each summoning range is, so cross that off.

My summation has lead me to believe that it’s a d1000 roll and each category of hero is designated a number - a 19.6% chance at an S1 3* means if you roll a 1-196 on that d1000 that you get an S1 3*, with which there is a secondary roll to see which hero you actually get out of the available pool.

And after each summon, there is another d1000 roll to see if you get the hero of the month. 1-13 you get them, 14-1000 you don’t.

Does anyone else have any ideas or knowledge about the process?

1 Like

I have never seen the details, but I imagine your first roll is the number of stars / event or non-event. Second it determines a random hero that meets this criteria.

Not all heroes have the same summoning odds. As you mention, 82 heroes in the pool, but if you try pulling, you will receive many more 3* than 5*…

It’s probably just choosing a random number between 0 and 1 instead of a dice roll.

For example, the HOTM chance is a separate number for each summon.
0-0.013 → HOTM
0.013 - 1.00 → no HOTM

A normal summon is likely two rolls to determine

  1. star level and event/S1
  2. Which hero in that pool
1 Like

I don’t have coding experience but I think you’re in the right direction. If I were to do random numbers in Excel I’d

1 use the random number function which generates a number with many decimals
2 I would do like you say and have it set to treat a specific range equal to a certain hero or hero category
3 if I wanted extra oddities, I’d also have a different random range for each pull so that say 0.12345 would likely get you two different outcomes on consecutive pulls.

My guess would be to how you described:

  • Initial determination which category you’re getting of the listed percentages
  • Then secondary determination which hero within a category you get.
  • Finally third determination if HotM is successful.

So using Underwild as the example:

  • Initial Determination if: Featured Underwild 5*, Non-Featured Underwild 5*, Underwild 4*, Underwild 3*, Season 1 5*, Season 1 4* or Season 1 3*

  • Secondary determination within category (say you get Underwild 4*) will determine if: Mack, Rokkamush, Tettukah, Griffin or Zlia Lei)

  • Third determination if you get HotM


I’m just a player and I doubt we will ever be able to mount anything more than guesses… SGG are rather secretive and non-comital about how their RNG and the like works…

1 Like

Thanks for the thread Kalis, obviously I know nothing (about the numbers) and Would love to find out more on it.

In the quick read that I’ve been doing on gacha I’ve got the feeling that the game may very well use a Box Gacha method rather than complete Gacha.

Box Gacha makes sense to me. The programming creates a “box” from the current available heroes and you summon from the box. A box would not need to contain all heroes just a selection which would refill with new ( not necessarily different) heroes after you’ve emptied it. By having personal prefilled boxes to pull from allows the programming to maintain the advertised odds.

I know this isn’t exactly on topic but it is it’s neighbor :wink:

P.S I hope you liked getting my first like on the forum.

P.P.S after reading that back, you’ve got some crackpots in your alliance :rofl:


Takes one to know one :stuck_out_tongue:

Computers can not roll dice. Computers generate pseudo-random decimal numbers between 0 and 1.

Multiplying by a intervall number (like 1000 you mentioned or 6 for a standard 6 sided die) you can get any range you want. Rounding to nearest integer you get the “roll” of a sided die you want 6, 10, 12, 20, 1000 …
That is how it has always been since the start of computers.

SG won’t tell us their secret how they to get from a random number to the actual hero card.

Only the Hotm part is clear - after each summon they need to test if you get an additional bonus draw … or not.

And that happens because all numbers in modern calculators are represented as a significand and exponent couple (in base 2) which is basically a modification of scientific notation.
Hence generating a number equals to generating its significand, by definition a number between 0 (included) and 1 (excluded).

It hasn’t always been like that thou.
Long ago computers couldn’t handle - or weren’t particularly good at - floating point and random was achieved through a combination of prime numbers and iterative modulo operation using numbers that worked particularly (meaning decently and certainly not by today standards) well for the task, the most common of which was 2³² (if I still remember it right).


Well, this could actually explain why some people have a feeling (including me), as if some heros are “tied” to their accounts… For example, I pulled a s3 5* hero 15 times, but 12 spots are filled with 4 unique heros: 4 Fenrirs, 3 Sifs, 3 Norns, 2 Heimdalls.
If the pulls were really totally random within those probability brackets (now it’s 0,6% for a non-featured), I believe it’s not that likely to have this distribution - why these 4 heros much more often than all other? What if my “boxes” are indeed refilled with certain heros, and not with some others? A terrifying thought. :exploding_head:

Great topic.

“RNG” blesses me with reds: BK, Elizabeth, Vanda, CMarjana, double Santa, Asterius… Suffice to say that competition for rings is quite heavy.
At the same time I’m blue poor : Glendas and Krampus.

What’s up with that :rofl: i won’t be surprised if i pull puss is boots during next event.

Tell that to Simutronics, the creators of Gemstone IV and Dragon Realms, two text based MUDs I was playing 20+ years ago. Everything was based on a d100 roll for the most part.

Unless of course you’re getting all Isaac Asimov on me, in which case I need to go back to my bookshelf.

What @Bruton said was intriguing. Imagine the horror of being stuck in the box?! Makes 30× pulls all the more dangerous… or lucrative, depending on who’s in your box of course. My first pulls in the S4 portal was a 30× and I got two Thorne’s :thinking:

1 Like

MUDs worked like that because they were, in most cases, transpositions of D&D.
So many rolls were d20s and d100s because they were functional to the game.
Being more or less all derivate from DIKUmud, thou, the heart generating random numbers worked as described by @Vikingblood80 .
It was just the basic UNIX rand() function that I - and fellow colleagues - have had to fix a bazillion of times because it was extremely poor if called very often (typically save throws and multiple attacks at once).
I remember once a player was left with no equip because rand had returned the same number 20 times (a fail).

1 Like

Only one theory explains why I would get three Renfields in a10 pack pull. If there are truly all heroes being chosen randomly, that would not happen as consistently as it does.

1 Like