JavaScript is disabled. For a better experience, please enable JavaScript in your browser before proceeding.
You are using an out of date browser. It may not display this or other websites correctly.
You should upgrade or use an
alternative browser .
Your Red vs Blue and Parkour stats now show in the hub's game menu.
✨ New
The Recent Updates holograms and /updates now show the latest updates from updates.mcfoxcraft.com instead of the old forum changelog, and Parkour and OneBlock announce new updates in chat.
The Recent Updates boards in the hub and Parkour lobby now show every line of the latest update instead of one cut-off line.
perf: world-config lookup by reference, session read before computeIfAbsent
feat(api): cosmetic work visuals for automation working a field crop (api 1.7.0)
⚖️ Tweak
perf(fieldcrops): raise SHARD_COUNT 64 -> 256, scale the reshard wait
🐛 Fix
fix(skilltree): convert PyroFarming Skill Archives and free stale archive slots (#815)
thread
🐛 Fix
fix(shop): stop paying the price on the item for sell ids nothing defines (#816)
Persist seasonal event armings and hunt state across restarts (#587)
Bingo: an expired round counts as the round a back-to-back winner sits out
thread
Biomes & pools: port the live biome rename, opt-in legacy aliases, dead gates and Nether-only fish out of the draws (#615, #631)
Bingo: safer defaults, join notice + deadline, back-to-back disclosure, Bedrock where-to-catch, /fish bingo status (#597, #621, #622, #623, #625)
Baits & HUD: combo/bait/booster placeholders, removebait confirm, Bedrock shop lore, bait mapping doc (#619, #673, #683, #684)
Augments & rod skins: Bedrock recipe pages, cauldron ownership + Bedrock tap, salvage sink, re-skin owned rods (#594, #611, #612, #657, #659, #661)
Tournaments: own-standing placeholders, Bedrock %center%, reachable RANDOM_CATCH targets, quiet empty rounds, offline winners, /ft help (#624, #626, #656, #658, #660, #679)
Catch pipeline: bait-use switch, crouched reel, hot-path copies, combo switch, tsunami lore, Star Fall spawn, biome-at-hook (#596, #613, #614, #616, #617, #618, #620)
Deliveries: contained reward, join reminder, hand-in detail, fish-bag hand-in, Bedrock transit, removedelivery numbers, opt-in knobs (#600, #602, #633, #634, #635, #636, #637, #638, #639, #675, #685)
Economy: bulk sell/gut, sale preview, Fish of the Day visibility, scales net, locale-safe tokens (#602, #632, #640, #641, #642, #643)
Reload & config: pre-flighted reload, full validate coverage, health diagnostics, operator docs (#601, #644, #645, #646, #647, #648, #650, #652, #654)
Shellstice: refuse the orb spend while the event is not running (#589)
Fish of the Day: pick only fish everyone can catch (#585)
Totems: break room check, claim probe, ghost anchors, admin tooling, Bedrock detail, deposit order (#595, #603, #604, #605, #606, #607, #608, #609, #610, #655)
#428 follow-ups (#425 group): adventureLinkage flags only ClickEvent.Action switches, totalCap wording, idle-lines lore
Perf quick wins: snapshot-free editor holder lookups (#374), boss bar name dirty-check (#376)
Round-end rewards: capture-end on round end, raw username tokens, offline SCORE rewards, end-reward to the member on the point, CaptureEnd pairing (#362, #363, #364, #371, #372)
Contest modes and zone feedback: payload owner release, no zombie reinforcements, %progress_owner%/%state%, in-zone action bars (#365, #366, #389, #380)
Team rewards, AFK/flying/vehicle eligibility, SCORE team handover (#383, #397, #398)
Teams, leaderboards & DB: BentoBox island keys + display names, warm win caches/boards, DB auto-reconnect & write retry, pool defaults, placeholder docs
Config & schedules: refuse saves over hand edits, reload validation, schedule list/preview/fire, weighted/shuffled/pre-drawn draws, restart awareness (#367 #368 #373 #399 #400 #401 #396)
Broadcast scope + player controls: broadcast-distances, /koth toggle, sound category, leading-edge swap-settle, player /koth status + join notice + /koth warp (#377 #378 #381 #384 #385)
thread
Player info: /koth next, objectives and reward previews, typable list names, labelled clocks, idle holograms (#379 #382 #386 #390 #391 #392)
🐛 Fix
Bedrock & editor fixes: Floodgate-aware Bedrock detection, Bedrock-safe palette, CONFIRM/completion/givestarter fixes, legacy-chat prompt capture (#387, #388, #402, #369)
Build on the 26.2 API (JDK 25 toolchain), current JDBC libraries + JDK HttpClient webhooks, git version stamp (#406 #407 #408)
Bedrock /koth form menu (Floodgate/Cumulus, optional) + clear the Bedrock cache at join (#386, #418, #420)
Rewards follow-ups: pending-rewards file safety, own-token offline holds, [now]/[once] reward markers, honest fallback warnings (#420)
Player surface follow-ups: combat tag, warp and join notice, toggle, setwarp flag, %warp_hint%, next/list, objectives, placeholder text (#420)
#420 follow-ups: zone modes, BentoBox team keys, win cache races, database notes
🐛 Fix
#420 follow-ups: editor controls for idle lines and the rewards display, shadowJar/linkage build fixes, webhook text limits
Scheduler follow-ups (#420): console schedule editing, draw memory across restarts, resume interrupted rounds, #415/#417 review notes
#428 rewards follow-ups: pending-rewards header tokens, markers in front of TOP:, no empty reward lines, honest rewrite warning, copy seam
#428 follow-ups for #424: migration retry wording, foxkoth_meta probe, overlap-slot claims, doc corrections
🚫 Removed
#428 scheduler follow-ups: draw-memory persistence, resume countdown, schedule verbs, resume/disable wording
Player surface follow-ups from the #423 review: /koth toggle order, rewards-display warning and top-level scalars, %warp_hint% threading, docs (#428)
🚫 Removed
Bedrock forms follow-ups: pin the adapter's callers, text fallbacks, quiet disable race, pinned Floodgate API (#428)
feat: /lootin purge for data files whose container is gone
🐛 Fix
fix: make container storage durable and race-free
🐛 Fix
fix: loot generation fills, reads and clears the same slots
🐛 Fix
fix: protect loot containers from break dupes, hoppers and merges
🐛 Fix
fix: track elytra frames on every load and keep the packet thread off Bukkit
🐛 Fix
fix: config fallbacks, /lootin info and test, and dead code cleanup
🐛 Fix
fix: storage follow-ups: unreadable files, shutdown writes and Folia races
🐛 Fix
fix: one open event before any change, and a capture that survives hoppers
🐛 Fix
fix: keep golems out, and settle breaks only once they happen
🐛 Fix
fix: optional PacketEvents, and elytra tracking that survives reloads
🐛 Fix
fix: Spigot 1.20.3+, Folia GUI saves at disable, and dead code
🐛 Fix
fix: copies get their own data, and destroyed data is kept for restores
perf(chunkloader): copy the destination grid only for the furnace and crafter gates
feat(fishing): require water near a fishing minion and tell the owner when it has none (#465)
feat(farmer): keep swinging at FoxFarming crops between work ticks
🐛 Fix
fix(menu): no "connect chest" button on chunk loaders (#468)
🐛 Fix
fix(packet): only send a team REMOVE to a client that holds the team (#469)
🐛 Fix
fix(collector,slayer): work the square the range flames show, not a sphere (#470)
Address the wave dungeon review leftovers (#3)
✨ New
Add co-op wave dungeon mode to arenas
🚫 Removed
Elysium notes: /withdraw elysium via FoxFarmingAPI, shipped disabled (#95)
Protect vouchers from vanilla mechanics and accidental block redeems; cheaper interact path (#74 #75 #82 #93)
🐛 Fix
Fix /voucher give lookup and feedback; run Tebex voucher commands only after payment; correct /xpbottle %amount% (#76 #77 #78 #81)
Report config.yml gaps instead of rewriting it; accept flat sound entries; migrate lang.yml defaults; upgrade runbook (#80 #79)
Single-transaction redeem, batched note/bottle mints, indexes, recipient/source columns (#83 #84)
/withdraw and /xpbottle: amount shorthand, all/max, informative bare commands, aliases, /vouchers help (#86 #87 #88 #94)
Specific error messages with refs, the live lang keys, redeem messages, richer requirements (#90 #91 #96)
Bedrock: confirm form names the voucher; forms for bare /withdraw and /xpbottle; redeem tip (#92)
Configurable cash note / XP bottle templates; custom-model-data, item-model, glint and flags (#90 #98 #86 #93)
Admin tools (/voucher inspect, lookup, revoke, restore, history, stats, validate), load-time config validation, /vouchers check (#97 #99 #84 #93)
Queue overflow instead of dropping it; /vouchers claim; join notices; deliver to the live session (#89)
Sneak to bulk-redeem; /withdraw merge and /xpbottle merge; confirm-menu-default and per-voucher bulk: false (#85)
feat(search): find warps by what their QuickShop shops sell (#214)
🐛 Fix
fix(search): keep CHAT-mode search answers out of legacy chat plugins (#177)
🐛 Fix
fix(stats): durable explored credits, empty-until-loaded placeholder, lock-index unloaded-world throw (#179 #180 #181)
perf: load warp destinations asynchronously; never sync-load neighbours for safety checks (#184, #187)
🐛 Fix
fix: main/sub swap side effects — ratings/categories in memory, owner-level bump cooldown, ban and whitelist (#194 #195 #196)
perf: exact lookup first in the physics handler; gate the lock guards by locked-sign reach (#185, #186)
Owner lookup: no Mojang calls, Bedrock/nickname/prefix matching, suggestions, /pw aliases
🐛 Fix
fix(featured): carry paid slots through moves, no charges for locked warps, feed the queue, honour free prices
🐛 Fix
fix: leaderboard sort race, cooldowns across relog, vanished visitors, self-favourites (#182 #197 #198 #199)
perf: menu item template churn and placeholder/PAPI cache leftovers (#188, #189)
feat: mark, sink and explain locked warps; skip them in random (#209)
🐛 Fix
fix(ux): literal commands in click messages, reasons in dead-end errors, help/label consistency (#204 #210 #211)
chore(logs): one-line boot hints, /wwarp admin purge-inactive, configurable Hikari lifetimes (#217)
✨ New
Warp creation UX: lenient [welcome], create/delete how-to, keep warp on header edit, visible descriptions, unsafe-warp notices
Bedrock forms (Floodgate), My warp hub, confirm before paid actions (#200 #201 #202 #203)
Menu: configurable favourite clicks, page indicator, fuller grid (#208, #215)
feat(search): Paper dialog search prompt for Java players (#201 Java half)
feat(bedrock): commands form for /pwarp help, settings form for /pwarp toggle (#211)
🐛 Fix
fix(label): typed label kept by buttons and single-reader clicks, broadcasts on the default label; no hard-coded labels in messages (#241)
🐛 Fix
fix(purge-inactive): report every row at shutdown, no stack trace on a stop, accurate boot summary (#239)
🐛 Fix
fix(teleport): re-check bans and locks after the async destination load (#240)
🐛 Fix
fix(featured): refund flags need admin.featured; no dead-end featured offers; release stranded slots with a refund (#237 #238 #244)
🐛 Fix
fix: owner lock follows the main role; management and creation UX leftovers (#236 #243)
🐛 Fix
fix(bedrock): forms follow-ups — parity, confirm price pinning, refusal notices, status consolidation (#242)
🐛 Fix
fix(search): item search follow-ups — exact names above sellers, trusted names, coverage, freshness, /pwarp shop fallback (#245)
🐛 Fix
fix(menu): fill menu placeholders in one pass so player-typed values stay literal (#254)
Merge upstream 12.0 and keep the public API for FoxKingdoms
🐛 Fix
fix: claim-command UX - overdrawn shrink, abandon prompts, resize detail, paged /claimslist (#459, #460, #465, #466, #468, #470, #477, #494, #495, #496)
🐛 Fix
test: fix two intermittent test failures (IgnoreLoaderThread mock race, weakly-held mock worlds)
🐛 Fix
fix: claim protection vs copper golems, raids, bone-mealed trees, brushing and arrow buttons (#458, #473, #474, #475, #476)
🐛 Fix
fix: grant-only trust inherits and honours public; stick and denial-hint fixes (#461, #462, #481, #482, #492)
🐛 Fix
fix: save the name directory, index giant claims per cell, trim hot-path costs (#455, #464, #478, #479, #484, #485, #486, #487, #488)
🐛 Fix
fix: marketplace offer integrity, plot-sale keep-out, post-settlement transfer event and /giveclaim (#454, #463, #472, #483)
🐛 Fix
fix: trust names, keywords, all-claims confirm and trust-menu follow-ups (#456, #457, #467, #469, #471, #480, #489, #490, #491, #493)
🐛 Fix
fix(users): run player-record continuations on the player's thread
🐛 Fix
fix(chat): bump MineDown to 1.7.6 so messages parse on Adventure 5
🐛 Fix
fix(members): resolve targets from the team roster; rank-check kicks
🐛 Fix
fix(gui): confirm destructive GUI actions and ask for the team name
🐛 Fix
fix(teleport): GUI + cross-server home/warp routing, warmup cooldown
🐛 Fix
fix(sync): harden broker messaging and pin connection-bound settings
🐛 Fix
fix(hooks): correct PAPI values and LP team-name; index team names
🐛 Fix
fix(invites): invite lifecycle, /team accept, join fees, owner limits
🐛 Fix
fix(economy): create fee gate, shutdown-safe payouts, money format, bank
feat(naming): word filter, normalised name checks, rename fee+cooldown
🐛 Fix
fix(teams): guard disband, drop stale chat toggles, check /tc mutes
🐛 Fix
fix(team-list): page lazily, add search, stop the head lookup 429 storm
🐛 Fix
fix(combat): block potion friendly fire, add ally accept, fix teamview
🐛 Fix
fix(messages): MineDown-escape player text, literal names, &#RRGGBB
🐛 Fix
fix(storage): flush only changed teams, queue kill deltas, guard replays
feat(commands): generated /team help, forgiving input, no @Values dumps
🐛 Fix
fix(echest): replay chest saves, close revoked views, tidy backups
🐛 Fix
feat(admin): inactive-team cleanup; fix /ta team, API checks, last_login
✨ New
feat(teams): add join requests, /team who, stats, roles, chat toggle
feat(gui): Floodgate forms for Bedrock players in the team menus
🐛 Fix
fix(storage): report failed deletes, retry loads, evict missing rows
🐛 Fix
fix(messages): correct default texts and misleading command replies
🐛 Fix
fix(teams): save setting changes by CAS, tell members, add API events
Perf/26.3 rtp search
Landing safety: judge feet/head by collision, not "is air" (#89)
Never overwrite an unparseable config.yml; back up before updates (#123)
FoxKingdoms hook reads the in-memory claim registry; drop Towny (#94, #95)
Round 4 (1/7): LF line endings, one Java 21 jar for all servers, commit-stamped version, tests + CI (#120 #121 #122)
Round 4 (2/7): portals fire on the block entered, portal use permission, safe Portals.yml, portals in unloaded worlds (#98 #101 #102 #103)
Round 4 (3/7): one teleport pipeline for every entry point; economy, /wild <player>, outcome stats (#78 #79 #80 #81 #82 #83 #99 #107 #110 #112 #114 #119 #126 #127 #128)
🚫 Removed
Round 4 (4/7): config and lifecycle safety: unknown-key warnings, no-region warning, safe config updates, debug interceptor, disable cleanup (#115 #117 #118, parts of #125 #133)
Round 4 (5/7): messages: lang file migration, complete translations, MiniMessage/hex, player help, Bedrock form info, sign/icon checks (#104 #105 #106 #108 #109 #111 #113 #116)
Round 4 (6/7): claim hooks: area queries, one guarded filter per hook, FactionsUUID 4, uncovered-plugin warning (#96 #97 #100)
Round 4 (7/7): location generation and biome index: packed index, world border, landing biome, world lifecycle, ceilings, validation (#84 #85 #86 #87 #88 #90 #91 #92 #93 #125 #133)
Follow-ups (1/6): portals: list malformed entries, riders trigger portals, reload keeps unsaved portals (#145 #149)
Follow-ups (2/6): teleport pipeline: dead or leaving targets, refusal hints, teleport errors, clearer /wild replies (#148 #149)
Follow-ups (3/6): messages: prefix colour carries over, blanked lines send nothing, lang migration edge cases (#148 #149)
Follow-ups (4/6): claim hooks: Residence 5.0.2.1+ per-chunk lookup, FabledKingdoms empty lands, KingdomsX verified, "try again later" when checks go unanswered (#144 #149)
✨ New
Follow-ups (5/6): lifecycle: one safe file writer (fsync, own temp file, permissions, dangling links), interceptor restore, clean refusal of a same-instance re-enable (#148 #149)
Follow-ups (6/6): biome index: /wtp reindex, coarse index for huge regions, configurable border margin, moving border, hyphenated datapack biomes (#141 #142 #143 #148 #149)
blocks_placed: count hand placements only, not /pwe wand builds
thread
🐛 Fix
fix(importer): accept AuctionHouse's "Vault/Vault[/$]" currency shape
Close listing custody gaps: owed bin failures, displaced-bid refunds on lost ACKs, /fa return stamp CAS, split ordering, seize of settled auctions
Fail closed without an economy, pin the escrow model across restarts, and tell unescrowed bidders
Outage latch on player paths, fast /ah during outages, login-delivery release, stored-first names
Request settle probe and batching, sell give-back guards, receipt timestamps, durable owed notices
Detection alerts, player-text escaping and stale prose (C7)
🚫 Removed
Lifecycle: drain accepted hops at disable, finish in-flight work, boot retry, PAPI isolation, JDBC tripwire
Staff commands: admin-log parity, own /fa clear node, reconcile guard, API events
GUI click safety: arm commit prompts, guard repainted bids, ordered preference writes, reuse the parent screen, one reload per menu
Bedrock dead-ends: winning rows, owner-screen Back, bin rows, accept prompt stakes, Edit price re-prompt, typeable broadcast codes
GUI polish and pricing: readable item names, Time Left, Edit price route, typed amounts, Sell button (C10)
🐛 Fix
Request UX: cap requests at one stack, say the fill takes the main hand, name the item in /ah request, and close a stale-player fulfil dupe
Search and browse: space/plural-tolerant search with did-you-mean, real paging past 180 rows, bid-aware price sorts, live browse title, filtered-empty card
Bedrock forms UX: dropdown settings, typed sell price, controls-first browse, button icons
Player commands: 10k/1.5m prices, typo and search fallbacks, shorter help, /ah worth, quieter listing announcements
Drop each in-memory test database when its test closes it
Request withdrawals: /ah cancel all no longer blames staff for a player's own withdrawal, one economy read for the held notice, and /fa clear clears a requests-only player behind its veto and admin-log row
Typed-price prompts: re-check the picker's node when a typed amount lands, hand Bedrock forms escaped markup instead of flattened text, and re-send an unparseable price with the text kept and a way back (part of #690)
Item names and search: /ah worth reads names as /ah request does, search matches the game's item names, refuse ambiguous and unfillable request names, blank request prompt cancels
⚖️ Tweak
Browse paging under prompts: a Next or filter change that lands while a prompt covers the browse comes back on the right page, the listing-announcement setting puts back by press, one line per outage refusal, quieter catches, and Bedrock empty-state icons (part of #690)
Operator records: name every stranded-sale owe's id, settle unconfirmed sales by their own transaction, point /fa return and /fa owed at the give-once records, name a throwing split-seller provider, audit /fa owed pay on the drain
Escaping and staff display: escape every bracket and backslash, escape /fa frozen reasons, name /fa alertlist subjects, detail on price-limit and prune vetoes, admin-log details as written, and own hops for the sold post's name and the outbid notice
✨ New
Claim outage lines: a Claim All whose claims or stamps fail on storage says so once, in a line true for a partial batch, and a claim that just said storage failed no longer adds menu-unavailable under it
🚫 Removed
Operator lines at disable and on unconfirmed debts: the drain's pre-run list is a record that grants nothing, a claimed item's restore goes through /fa return --force, and an unconfirmed debt names its id for /fa owed pay
Wand placements are not hand placements: WandBlockPlaceEvent + no Jobs income (#40)
thread
Pin compiler + surefire plugins so the build works on Maven 3.6
⬆️ Improvement
Recognise wands upgraded to netherite in a smithing table
Refuse blocks whose item places a different block (filled cauldrons)
Keep /pwe on the survival side of FoxCreative
Bingo: keep bait-locked fish off the card (#583)
thread
feat: teleport particle effects matching the Essentials fork
Allow island members to automate shared field crops
🐛 Fix
fix(fieldcrops): account the automated replant's seed against the loot (#810)
Let farmer minions harvest shared island crops
feat(farmer): work FoxFarming crops one at a time, several swings each
🐛 Fix
fix /fly permissions being weird (#276 regression)
Keep database connections working after the plugin jar is renamed
✨ New
Give every sale attempt and sell create its own id, so the ambiguous-commit probes prove this attempt and nothing else
Close the remaining money-channel gaps: cancel and boost probes, proceeds through Payout, a durable recovery record, and the split price cap
🚫 Removed
Run migrations outside the pool's 30s socketTimeout, gate /fa return on the delivered stamp behind --force, retire the redundant material index, and close six more storage/ops-periphery findings
✨ New
Bedrock form parity: stop taps spending or stranding, guard the unstable seams, and add the typed inputs and affordances the client was missing
Thread market context into every pricing screen, close the browse family's dead ends and empty states, and bound the auto-refresh repaint
Land the money-channel completions on main (cancel/boost probes, proceeds via Payout, atomic recovery record, split cap)
🐛 Fix
Fix remaining refund, claim recovery, bundle and menu issues
🐛 Fix
fix(refill): skip the bag refill when the block place was cancelled
🐛 Fix
fix(listeners): offhand double-fire amount check, non-player close cast, orphan craft rows
🐛 Fix
fix(filter): entry-demands matching closes the blacklist rename/enchant bypass; precompute entry shapes
🐛 Fix
fix(nesting): close the drag, bundle-carrier and hopper-push bypasses of putBackpacksIntoShulkers
🐛 Fix
fix(perms): gate sneak-click wear on FancyBags.wear; declare explicit permission defaults
🐛 Fix
fix(commands): merge give-from-uuid into restore's hardened path
perf: iterate getTrackedBy() in the worn visibility pass; cache the slots-limit filler pane
feat(commands): one table drives gates, tab-complete, /fb help and the declared nodes
feat(messages): configurable strings, action-bar refusals, configurable sounds
🐛 Fix
fix(db): retry the pool build with backoff, defer storage init, rate-limit unavailable warnings
chore: cleanup grab-bag from the 2026-08-30 review
✨ New
Add six original field crops with complete resource-pack models
Address September 18 farming review: orders, rewards, safety and menus
Catch-path hardening: contained spawns, isolated crab commands, hot-path caches (#536, #537, #543, #545, #548, #550, #562)
Tournaments: persist wins/records on the spot, range-check SpecificTimes (#538, #541)
Totems: halve the particle pulse, off-main registry render, no-op save skip (#547, #549)
Bingo: capped catcher resolution, pre-matched map palette, Bedrock flash knob, teleport guard (#552, #553, #558, #565)
Validation & persistence knobs: uncatchable-gate tripwire, Bedrock cue override, autosave sweep (#542, #557, #563, #567, #568, #572)
Command & health surfaces: suppressed-grant guard, single-parse validate, Floodgate stats, Bedrock events, Discord health (#540, #544, #551, #555, #556, #561, #571)
🐛 Fix
Deliveries & menus: crash-skew shrink, catch-path cost, arrival ping, Bedrock detail, interaction polish (#539, #546, #554, #559, #560, #564, #566, #569, #570)
🐛 Fix
Fix remaining seller, container, and task issues
Restore CI dependencies and run all regression suites
🐛 Fix
Fix minion data safety, simulation parity and hot paths
Complete Java and Bedrock menu safety, accessibility and localization
Feat/notify foxkingdoms converter link
🐛 Fix
fix(lumberjack): replant saplings on every #minecraft:dirt block, not just grass/dirt/podzol
✨ New
feat(nms): add Paper 26.3 (ALPHA) support
🐛 Fix
fix: resolve the permission-group bonus while queueing a save, not on the storage writer (#299)
🐛 Fix
fix: stop the flat-file → database migration losing data four ways (#302, #303)
🐛 Fix
fix: never compute %griefprevention_*% placeholders off the main thread (#301)
🐛 Fix
fix: a sold subdivision belongs to its buyer on every path (#382, #408, #410, #341)
🐛 Fix
fix: keep claim-block balances honest when storage is slow, failed or absent (#385, #326, #343, #325)
perf: take blocking reads and unbounded work off the main-thread hot paths (#403, #404, #409, #414, #415, #421, #422)
🐛 Fix
fix: Bedrock trust forms obey the same gates as the chest GUIs (#306-#310, #312, #313, #315, #316, #318)
🐛 Fix
fix: close the 26.x and residual protection gaps in the block, entity and interact handlers (#411, #412, #413, #417, #419, #423, #425, #433)
🐛 Fix
fix: admin deletes, confirmations, starter-claim expiry and the command surface (#358, #383, #384, #386–#396)
🐛 Fix
fix: make the claim marketplace price-safe, self-cleaning and legible on both platforms (#340, #342, #344–#353, #406)
🐛 Fix
fix: storage integrity — quarantine dead player files, atomic config writes, DB parent links and the small write-path leaks (#327–#338, #431)
🐛 Fix
fix: player-facing messages — terminology, missing detail lines, persisted /claimnotify and explicit admin transfer (#354–#356, #360, #361, #363, #367, #369, #371, #377, #381)
feat: a Bedrock form for the permission editor, tiered trust prompt, sorted trustees and the menu residuals (#311, #314, #317, #319, #320, #322–#324, #366, #380)
🐛 Fix
fix: help index, journey hints and a quieter, correct border notifier (#357, #359, #362, #368, #370, #372, #375, #376, #378, #424, #438)
perf: hot-path leftovers, chat residuals, the cloud PvP half and two small write-path lows (#321, #339, #414, #416, #418, #422, #426, #427, #432, #439, #443, #446)
🐛 Fix
fix: threading residuals — break the Fox/PlayerData lock cycle, guard every async→main hop, publish claim lists atomically (#398–#402, #407, #428–#430, #445)
🐛 Fix
fix: preserve overdrawn claims and remove join-time balance stalls
feat(api): atomic withdrawElysium (api 1.5.0)
feat(skilltree): opt-in reset fee kept back from the respec refund
feat(growstations): Elysium-bought upgrade points, WATER/GROWTH by default
🐛 Fix
Round 3 (1/3): correctness fixes & housekeeping (#55 #56 #57 #58 #61 #62 #72)
Round 3 (2/3): biome index v2, registry biomes, index-aware /wild, landing safety, search budget (#51 #59 #60 #65 #66 #71)
Round 3 (3/3): permissions model, action-bar feedback, i18n, Bedrock forms, GUI polish, click hotpath (#63 #64 #67 #68 #69 #70)
Round 3 (3/3) recovery: re-land #75 on 4.0
🐛 Fix
Resolve /msg and /ignore targets by nickname or Bedrock name; log conversation-mode messages
🐛 Fix
fix(hoe): don't open the farm menu on a sneak-click of farmland (AE planter enchants)
feat(shop): /farm sellall — sell every sellable stack without opening the menu
feat(skilltree): fill the empty CROPS branch with field-crop skills
feat(prestige): uncapped, escalating Elysium sink
feat(leaderboard): pay out the weekly board when its window rolls
feat(orders): permanent achievement ladder off lifetime orders completed
feat(orders): weekly order tier drawn from the same pool
feat(products): processing tier — goods crafted from produce
🐛 Fix
fix(growstations): growth speed bonus also drives regrowth; rate-aware countdowns (#779)
test: MockBukkit harness — pin harvest crediting by behaviour, not bytecode shape
Close a seasonal event's window live instead of at the next restart
Make a teleported minion's home follow it; report container stalls promptly
Stop casting magma cubes to Slime when dropping partial-stack loot
Sync upstream mcMMO-Dev/mcMMO 2.3.001
🐛 Fix
fix: take storage I/O off the DataStore monitor and make claim persistence crash-safe
🐛 Fix
fix: claim permission semantics, chest protection & hot-path allocations
🐛 Fix
fix: sell-sign economy correctness, cap enforcement and listing UX
🐛 Fix
fix: trust GUI crash, manager gate, TrustChangedEvent, pagination + menu UX
🐛 Fix
fix: border-only, world-safe, all-boundary claim particle outline
🐛 Fix
fix: one-time repair of trust migrated by an earlier build (#128)
🐛 Fix
fix: don't advance the schema version until the conversion's writes land (#135)
🐛 Fix
fix: couple Container and Access in the trust GUI (#134)
🐛 Fix
fix: keep trust permissions individually togglable; make Container/Access legible (#134)
🐛 Fix
fix: persistence & database integrity (#143, #144, #155–#159, #167, #168, #181, #182)
🐛 Fix
fix: claim protection & permission semantics (#140–#142, #145, #148–#152, #165, #174, #179, #199, #201)
🐛 Fix
fix: sell-sign economy correctness and sale UX (#146, #169, #172, #173, #180, #183, #186, #187, #192, #196, #197)
🐛 Fix
fix: trust GUI rules, command feedback and onboarding (#161, #162, #170, #171, #184, #185, #188, #189, #193, #194)
🐛 Fix
fix: chat, spam, config robustness and plugin.yml hygiene (#153, #154, #175, #176, #178, #190, #191, #195, #200)
🐛 Fix
fix: read neighbours' keep-out lists off the DataStore monitor (#160)
🐛 Fix
fix: knockback rules, permission hot path and duplicate denials (#147, #163, #164, #166, #177, #198)
build: move to the 26.2 API and JDK 25, and take the upstream commits that go with it (#212, #215, #224, #227, #229, #230, #231)
🐛 Fix
fix: hand addons snapshots, and make the legacy trust API round-trip (#211, #223)
🐛 Fix
fix: claim & marketplace integrity (#213, #214, #216-#222)
perf: get blocking player-file reads off the main thread (#234, #235, #240-#242, #244-#246)
perf: lock-free player data, gated metadata probes and a marketplace index (#237-#239, #243, #247)
perf: dedupe, budget and cheapen the boundary particle outline (#236, #252)
🐛 Fix
fix: make the trust menus readable and usable on Bedrock (#248, #250, #251, #255, #256, #262, #272, #276)
🐛 Fix
fix: make the claim marketplace learnable and legible (#249, #253, #254, #257, #268, #275, #283)
🐛 Fix
fix: tell players what is happening (#263-#267, #269-#271, #273, #274, #277-#282, #284, #285)
feat: ship a PlaceholderAPI expansion (#226)
feat: Bedrock-native forms for the screens a chest GUI cannot serve (#258-#261)
docs: write down the API contract this release changes (#228, #232, #233)
🐛 Fix
fix: surface the PvPManager combat-feature overlap (#225)
🐛 Fix
fix(gearsignature): unsign crafted results without wiping their components
thread
Price a spawner by its mob, and a stacked one by the spawner (#545)
Tell FoxAuctions what a spawner item is, and how many
Compute total XP in a long: /xpbottle was unusable at the vanilla XP ceiling
thread
Let a player opt their own text out of emoji substitution
feat(migrate): convert PyroFarming-era items in inventories into FoxFarming ones in place
🐛 Fix
fix(database): skip comment-only chunks when replaying the schema files
🐛 Fix
fix(baltop): time-slice the balance leaderboard refresh instead of freezing the server