How the Gacha Calculator Works
This calculator models gacha mechanics using a hybrid of Monte Carlo simulation and binary search to estimate probabilities and pull counts with high accuracy, including support for features like soft pity, hard pity, and rate-up guarantees — mechanics commonly seen in games like Genshin Impact and Honkai: Star Rail.
Key Concepts & Simulation Model
-
Monte Carlo Simulation
To account for complex probability shifts like pity and rate-up guarantees, we simulate thousands of virtual pull sequences to approximate real-world outcomes. This allows us to avoid relying on overly simplified formulas that break down under real-world gacha conditions. -
Binary Search
When calculating “pulls needed to reach X% chance,” we use a binary search to find the lowest number of pulls that meets the probability threshold, speeding up the process while maintaining accuracy. -
Soft Pity & Hard Pity
-
Soft pity increases the drop rate gradually starting at a certain pull count (e.g., 75).
-
Hard pity guarantees a 5★ item at a fixed ceiling (e.g., 90).
However, this does not guarantee the specific item the user is targeting. Our model reflects this by distinguishing between the chance of any 5★ appearing and the chance of pulling a particular desired item. At 90 pulls, the user is guaranteed a 5★, but the odds of that 5★ being the target still depend on rate-up mechanics and the size of the item pool. This distinction is critical in simulating realistic outcomes.
-
-
Rate-Up Guarantee Logic
The tool also supports modeling banners where:- The first 5★ has a 50% chance of being a featured character.
- If that fails, the next 5★ is guaranteed to be featured.
This is handled internally via state tracking per simulated pull sequence.
Limitations
- The calculator assumes independence between items (i.e., getting one 5★ does not reduce your chance of getting another in the same sequence).
- It does not currently model dual-rate-up banners or multi-tier drop pools (e.g., 5★ vs. 4★ splits), though these may be added in future iterations.
Simulation Parameters
- Default simulation size is 100,000 trials per calculation for a good balance between speed and precision.
- Output is accurate to within ~1% for most realistic parameter sets.