Event System
Events occur when stepping on a ”?” tile (Unknown tile) on the map. However, ”?” tiles don’t always result in events — other room types may appear based on a probability table.
Room Type Resolution for ? Tiles
Section titled “Room Type Resolution for ? Tiles”| Room Type | Base Probability | Notes |
|---|---|---|
| Normal Combat | 10% | |
| Elite Combat | -1% (disabled) | Does not normally occur |
| Treasure | 2% | |
| Shop | 3% | |
| Event | ~85% | All remaining probability |
Event probability is calculated as 1.0 - (sum of all positive non-event probabilities). Initially: 1.0 - (0.10 + 0.02 + 0.03) = 0.85 (85%).
Probability Accumulation
Section titled “Probability Accumulation”Probabilities shift each time you step on a ? tile:
- A random roll is made using the current probability table
- Selected room type: Probability resets to its base value
- Unselected room types: Base value is added to their current probability
If a room type is not selected for multiple consecutive ? tiles, its probability gradually increases.
Example: Normal Combat (base 10%) not selected for 3 consecutive tiles:
| Count | Combat Probability |
|---|---|
| Initial | 10% |
| After 1 miss | 20% |
| After 2 misses | 30% |
| After 3 misses | 40% |
Resets to 10% when selected.
First Run Special Handling
Section titled “First Run Special Handling”On a player’s first run, special tutorial-like handling applies:
| ? Tile Visit | Result |
|---|---|
| 1st | Event (forced) |
| 2nd | Event (forced) |
| 3rd | Normal Combat (forced) |
| 4th+ | Normal probability table |
Relic & Modifier Effects
Section titled “Relic & Modifier Effects”Relics
Section titled “Relics”| Relic | Effect |
|---|---|
| Juzu Bracelet | Normal Combat cannot occur from ? tiles |
| Golden Compass | All ? tiles in the acquired Act become fixed Events |
| Planisphere | Heal 5 HP when entering a ? tile (no effect on probabilities) |
Modifiers
Section titled “Modifiers”| Modifier | Effect |
|---|---|
| DeadlyEvents | Sets Elite Combat base probability to 10%. Treasure accumulation rate doubled. Juzu Bracelet removed from relic pool |
Number of ? Tiles on Map
Section titled “Number of ? Tiles on Map”The number of ? tiles is randomly determined during Act generation.
| Act | Number of ? Tiles |
|---|---|
| Act 1 (Overgrowth / Underdocks) | Gaussian: mean 12, std 1, range 10–14 |
| Act 2 (Hive) | Gaussian: mean 12, std 1, range 10–14, minus 1 (result: 9–13) |
| Act 3 (Glory) | Gaussian: mean 12, std 1, range 10–14, minus 1 (result: 9–13) |
Event Selection Logic
Section titled “Event Selection Logic”Event Pool Composition
Section titled “Event Pool Composition”Each Act’s event pool combines:
- Act-specific events: Events unique to that Act
- Shared events: 18 events common to all Acts
These are shuffled at Act generation and served in order.
Selection Flow
Section titled “Selection Flow”1. Take the first event from the shuffled list2. Check IsAllowed() (does it meet occurrence conditions?)3. Check if already visited (seen during this run?)4. If conditions not met → move to next event in list5. If all events exhausted → loop from beginning (duplicates allowed)IsAllowed() Conditions
Section titled “IsAllowed() Conditions”Each event can define its own occurrence conditions. Condition types:
| Condition Type | Example |
|---|---|
| Act restriction | Only occurs in specific Acts |
| Gold requirement | Must have a certain amount of gold |
| HP requirement | Must have certain HP, or have taken damage |
| Deck condition | Specific cards or enchantment targets in deck |
| Relic condition | Specific relics owned/not owned |
| Pet condition | No event pet owned |
| Floor condition | Certain number of floors passed |
| Potion condition | Potions in inventory |
In multiplayer, all players must meet the conditions.
Multiplayer Shared (IsShared)
Section titled “Multiplayer Shared (IsShared)”Each event has a “Multiplayer Shared” flag (code property: IsShared) that controls whether all players experience the event simultaneously in multiplayer. This is a separate concept from shared events (events included in every Act’s pool).
| Flag | Behavior |
|---|---|
| Yes | All players share the same event screen in multiplayer, and choices are decided by vote. The RNG seed is shared across players |
| No (default) | Each player experiences the event independently. RNG seeds differ per player |
Note: Ascension and Events
Section titled “Note: Ascension and Events”Ascension level progression does not directly change event choices or reward values.
However, indirect effects exist:
- DeadlyEvents modifier: Elite Combat can occur from ? tiles
- Map generation changes (fewer Rest Sites, etc.) may alter the relative importance of ? tiles