Welcome to the Hangar Open Beta. Please report any issue you encounter on GitHub!
Advanced instanced dungeon plugin for Paper 1.21+. In-game GUI editor, party system, and randomized gacha loot.
๐ New Features & Enhancements
๐ Automated Configuration Updater (Auto-Updater)
- Implemented a robust auto-updating mechanism within
ConfigUtils.java. - No more manual config resets! Eliminates the need for server admins to manually regenerate or copy-paste configurations during plugin version updates.
- Whenever a configuration file (
config.yml,messages.yml, or default dungeon templates) is loaded, the system silently compares the external file on the server with the pristine resource file located inside the plugin's.jar. - Automatically injects any newly added configuration keys or default values into your local files without overwriting your customized values.
- Added an optional strict mode parameter (
removeObsolete) capable of cleaning up and deleting outdated configuration keys. (Currently defaults tofalseto safely protect user-defined dynamic keys such as custom rewards and action entries). - Logs an
[Auto-Updater]message cleanly to the console whenever an injection occurs.
๐ข System & Action Notifications Integration
- Replaced hardcoded
game.sendMessage()calls insideSpawnWaveAction,ReachLocationAction, andSmartBreakWallActionwith the standardgame.sendActionMessage(...). - Dynamically linked all action broadcasts to their correct contextual categories (
init,progress,complete). - This ensures all notifications are now fully togglable directly from the
action-notificationsmodule insideconfig.yml.
๐ ๏ธ Bug Fixes & Stability
๐ก๏ธ DungeonGame Stability
- Added a safe null-check explicitly to the
sendActionMessagelogic. This gracefully handles any 3rd-party action instances that haven't fully registered a validactionType, preventing unwantedNullPointerExceptioncrashes.
โ๏ธ Editor & Map Config Structure Fixes
- Fixed
example_dungeon.ymltemplate structure: TheLOOT_CHESTitems configuration list was outdated and misleading (List instead of Map). Rewrote it to safely match the exactConfigurationSection(SLOT: "DATA") schema exported naturally by the in-game GUI Editor. - Fixed
config.yml: Changed theaction-defaults.loot_chest.itemssection from a broken array list[ ]to an empty map block{}to ensure correct parsing and avoid backend YAML casting errors.
Information
| Published on | April 12, 2026 |
|---|---|
| Downloads | 2 |
Platforms
Paper (1.21-26.1.2)
Dependencies
Paper