Ascension Protocol
Plugins

AscensionGates

Gates, dungeons, bosses, loot, spawning

Browsing and entering a gate

/gate lists every active gate, enterable ones first, then by tier, then by distance, and pages when there are more than fit one screen. A card shows the gate's state and how long it has left, how far away it is, the entry fee, and — when the rank is too low — exactly which rank is needed.

Clicking a gate opens its detail screen rather than entering it. That screen shows which themed dungeons the tier can roll, the boss and its scaling and phase thresholds, the modifiers that can roll on entry, the timers, the clear and speed-clear rewards, the entry fee, your rank, your party, and whether a run is already in progress and resumable.

Entry fees are charged per member — the party leader does not pay for the group. The dungeon instance is reserved before anyone is charged, and a fee is refunded if the run cannot start.

Entry is a single button that either goes through or names the one reason it will not: re-entry cooldown, rank, a gate that is not open, or party-leader-only entry. Confirming is a second click, so the fee is never charged by a stray click on a list.

The dungeon family and the modifier are rolled when the instance generates, so the detail screen lists the candidates for that tier rather than promising a particular one.

Features

  • Rank-tier gates with charge → open → collapse lifecycle
  • Private dungeon instances per player or party
  • Themed dungeon families — per-theme mob pools, bosses, and block palettes (ant tunnels, golem mines, void citadels, monarch rifts, …)
  • Boss encounters, loot tables, mana crystals (themed bosses use Shadow wild-model-engine-id; optional bosses.*.model-engine-id for vanilla fallback)
  • Red gates — high-risk sealed dungeons (no exit until the boss dies) with boosted rewards and an extra boss-loot roll
  • World events — scheduled boss gates with pre-announcements, a reward multiplier, and a first-guild-to-clear bonus
  • Dungeon modifiers — randomized per-instance affixes that change combat, with boss stats scaling to online party size and a matching loot multiplier
  • Exit gates — every dungeon has an exit portal on the back wall of the entry room (opposite the corridor, so it does not block walking deeper). It uses the same dungeon-portal ItemDisplay as overworld entrances (proximity leave — no solid END_GATEWAY frame). Defeating the boss spawns a second exit on the far wall of the boss arena and starts the extraction countdown (instances.post-boss-countdown-seconds, default 30s). Leaving via /spawn / /home tells you in chat; /back into a closed/orphan instance is blocked.
  • Dungeon weapon effects — loot items with weapon-effect (ice slow, bleed, cleave, …)
  • Dungeon breaks when gates expire uncleared
  • Gate parties — shared squad instances
  • Wild auto-spawn near online players
  • Optional spawn zones and spawn points (admin)
  • Exclusion zones where gates never spawn

Red gates

On spawn, each gate rolls red-gates.chance-percent for its tier. A red gate is visually distinct (&c[RED GATE]), seals the entry — the exit portal isn't placed and leave commands are blocked until the boss dies — and applies red-gates.reward-multiplier plus a guaranteed extra boss-table roll. Safety valves (hard timeout, /gate admin break, and login crash-recovery) evict players safely; death releases you normally. Spawns can be broadcast. See Gates configuration.

World events

world-events defines scheduled boss gates (fixed weekly time or a repeating interval) that open in a spawn zone with pre-announcements, a reward multiplier, and a bonus for the first guild to clear. Next-fire times are persisted so a restart between announcement and spawn doesn't double-spawn. See Gates configuration.

Dungeon modifiers & party scaling

Instances can roll modifiers — affixes that affect combat and rewards. Boss stats scale with the number of online party members entering (solo hunters keep the base fight), and the loot multiplier grants bonus boss-table rolls (which stack with the red-gate extra roll). See Gates configuration.

Key files

FilePurpose
config.ymlSpawning, animation, HUD, entry, parties
gates.ymlTier timings, bosses, loot, instances
spawns.ymlZones, points, exclusion cuboids
placed-gates.ymlPersistent manual gates

Instance cleanup

A finished dungeon's region is millions of blocks. It used to be cleared in a single server task, which stalled the server for the length of the close — twice over if two dungeons closed in the same tick. It is now cleared a slice at a time, instances.cleanup.blocks-per-tick (default 20,000) per tick. Lower it if closes are visibly heavy; raise it only if cleanup is falling behind.

Reaching the boss

Guard rooms seal the boss chamber until they are cleared, but the seal is never allowed to trap you:

  • Standing at the seal for 10 seconds breaks it, whatever the guards are doing. This is the case where the gauntlet has failed you — guards alive but unreachable — and it should not end the run.
  • The seal breaks on its own after 180 seconds regardless.
  • Breaking the seal also clears a block of headroom above it (instances.boss-door.extra-headroom), so the doorway is walkable rather than a crouch-through gap.

A boss always exists. Shortly after spawn the plugin re-checks that a living boss is present and replaces it if it is not — covering a themed ModelEngine entity that suffocates on a bad hitbox, a spawn refused by another plugin, or an entity removed by a cleanup pass. It retries up to three times and then logs loudly, because a dungeon with no boss cannot be completed.

Mob counts

instances.mobs.max-total (default 60) caps wild mobs per dungeon, applied after every multiplier — tier, family, room type and the Swarm/Elite modifiers. Those multiply together, so a swarm-modified dense layout could previously compound into an unplayable room count. Set 0 to disable the cap.

Gate spawn protection

The boss arena holds the boss and nothing else — ordinary dungeon mobs are not spawned there (instances.mobs.boss-room-mobs). The boss's own phase minions still appear as part of the fight.

Gates honour two WorldGuard flags:

  • the custom ascension-gate-spawn flag (/rg flag <region> ascension-gate-spawn deny), and
  • WorldGuard's own mob-spawning flag — a region with mob-spawning deny now keeps gates out too. A gate drops monsters into the world, so it is a mob spawn by any reasonable reading, and this is the flag most admins actually set on a spawn region.

Set spawning.worldguard.respect-mob-spawning-flag: false to require the custom flag explicitly.

Portal size

Dungeon exit portals were noticeably smaller than the overworld gates they mirror and easy to miss. Both were enlarged, and entry.walk-through-radius was raised to match the bigger aperture — a larger gate that still needs you to stand in its exact centre feels broken.

On this page