✨ ConquestDuels v2.0.0 — Async Regen, Crash Recovery, and Performance Overhaul
Biggest update yet! This version rewrites how arenas are loaded, regenerated, and saved — now fully async, crash-safe, and ready for massive scale.
━━━━━━━━━━━━━━━━━━━━━━━━━
Core Changes
•
Asynchronous Arena Regeneration
Arena regen and snapshot checks are now fully async, batched one arena every 0.5s, and start 10 seconds after boot.
→ No more TPS drops during startup or reloads.
•
Smart Snapshot Lifecycle
Snapshots are:
- Only captured if
enabled + regen-enabled
- Auto-expire from memory after 30 minutes
- Loaded from disk only if not already cached
•
Compressed Binary Snapshot Storage
Each arena uses its own compressed `.bin.gz` file — drastically reduces file size and speeds up read/write.
━━━━━━━━━━━━━━━━━━━━━━━━━
⚙️ Admin & Developer Enhancements
•
Arena File Refactor
Arenas now save in clean subfolders:
Code (Text):
/plugins/ConquestDuels/SavedArenaData/
└── ArenaName/
├── data.yml
└── snapshot
└── arenaSnapshot.bin.gz
•
/dueladmin reload is instant
No more re-checking snapshots or triggering slow regen during reload. It's now near-instant.
•
Crash Recovery & Protection
If the server shuts down mid-duel:
- Arena snapshot restores from disk
- Regen continues after boot
- No arena corruption or weird states
•
Safe mkdirs(), async I/O, and write validation
No more silent failures. All file operations are validated and fail-safe.
━━━━━━━━━━━━━━━━━━━━━━━━━
Migration & Compatibility
• Legacy arenas will auto-migrate to new folder format
• No config changes required
• Existing snapshots remain valid
• Fully compatible with 1.20.4+ and Java 17+
━━━━━━━━━━━━━━━━━━━━━━━━━
✅ Summary
Everything is faster, safer, and more scalable.
This update powers servers running
hundreds of arenas with no lag or crashes.
If you find this helpful or need support, drop a comment or join our Discord.
Enjoy v2.0.0!
– Zander & Joe