Unofficial site, not affiliated with modrinth.com.What is this?
Плагины/TrialChamberPro
Все версииTrialChamberPro 1.5.6

TrialChamberPro 1.5.6

Release4 дн. назад

Список изменений

1.5.6 - 2026-06-10

Fixed

  • CRITICAL: chamber reset could wipe terrain far beyond what the snapshot covers. When an auto-discovered chamber's bounds grew after its snapshot was captured (discovery region merges), the reset's clear-added-blocks pass cleared the entire current AABB while the snapshot could only restore the old, smaller region — deleting every block in the newly annexed volume (terrain, builds, neighbouring structures). The clear region is now clamped to the intersection of the chamber bounds and the snapshot's actual coverage, with a console warning pointing at /tcp snapshot create when a mismatch is detected. A snapshot can no longer destroy ground it cannot put back.
    • If one of your chambers was already affected: run /tcp delete <chamber> — this removes the broken registration and its stale snapshot in one step (discovery will cleanly re-register the chamber afterwards if enabled). Terrain that a pre-1.5.6 reset already deleted cannot be recovered by the plugin; restore that area from a world backup (or let it regenerate if it was untouched wilderness).
  • Discovery auto-snapshot never linked the snapshot in the database. discovery.auto-snapshot: true captured the .dat file but skipped the snapshot_file DB update (the step /tcp generate performs), so auto-discovered chambers reported "No snapshot found" at reset time and skipped restoration — or worse, kept a stale link. Both the registration and merge paths now link the file and log loudly if the DB write fails.
  • Stale snapshot after a discovery merge. Merging a newly discovered region into an existing chamber now re-captures the snapshot whenever the chamber already had one (previously only when discovery.auto-snapshot was on), because a pre-merge snapshot no longer covers the grown bounds and is dangerous to restore. If the re-capture fails, the console warns that the existing snapshot is stale.
  • Glow marker was killable, collidable, and farmable. The invisible glow Shulker had no invulnerability or collision flags: players could target it (health-indicator mods showed "Shulker 30❤" when looking at a glowing spawner), kill it (removing the glow mid-wave and rolling vanilla shulker loot — farmable shulker shells at every glowing spawner), and arrows aimed near the spawner collided with it. The marker is now invulnerable + non-collidable at both spawn sites (wave-attached and chamber-remaining standalone).
  • First wave completion in a large chamber could freeze the server. ChamberClearedEvent's spawner census (and the chamber-remaining glow's location scan) iterated every block in the chamber AABB on the region thread — up to 1.5M getBlockAt calls plus sync chunk loads on a merged discovery chamber. Both now share a chunk tile-entity scan (Chunk#getTileEntities, the same pattern ChamberDiscoveryListener uses): O(chunks × tile-entities) instead of O(volume).
  • Stale spawner counts made ChamberClearedEvent fire early or never. The per-chamber spawner count/location caches were only cleared at shutdown, but the spawner set changes on discovery merges (bounds grow), /tcp scan, and spawner block breaks. New SpawnerWaveManager.invalidateChamberSpawnerCaches(chamberId) is now called from ChamberManager.updateBounds, scanChamber, and the spawner BlockBreakEvent handler — premium-module tier-ups (TCP-MythicTrials) depend on this signal being correct.
  • Breaking a standalone-glowed spawner orphaned its glow. In chamber-remaining mode, breaking a non-active glowing spawner left its glow entity floating until the next chamber reset (cancelWaveAt only cleans the wave-attached glow). The block-break handler now also removes the standalone glow.
  • Pending spectator offers leaked when a dead player disconnected. PlayerDeathListener.pendingOffers was only cleared on respawn; a player who quit on the death screen and never rejoined left their entry (and its Location → world reference) in memory permanently. Now also cleared on PlayerQuitEvent.
  • tcp.admin.create was never declared in plugin.yml. The permission gating /tcp delete and /tcp setexit was checked in code but missing from the permission tree — so it wasn't a child of tcp.admin.*, and staff granted the wildcard couldn't delete chambers or set exits (ops were unaffected). Now declared with default: op and included in tcp.admin.*.

Метаданные

Канал релиза

Release

Номер версии

1.5.6

Загрузчики

Folia
Paper
Purpur

Версии игры

1.21–1.21.11

Загрузок

3

Дата публикации

4 дн. назад

Загрузил

ID версии

Главная