Skip to content

SF_MagicExpansion 1.1.14

Choose a tag to compare

@github-actions github-actions released this 15 Oct 11:11

MagicExpansion 1.1.14 — Working Black Market item offers

This is a targeted functional repair for Invalid or unreadable Black Market item when the cycle matches but a player's generated offers cannot be saved. Release availability is determined by the official GitHub release, not by a branch artifact.

Functional change

Black Market rewards and payment templates are normalized through the complete public Bukkit item serializer before ledger serialization. A SlimefunItemStack template or nested subclass delegate must not be persisted as an unrecognized YAML item class. Material-only/ID-only reconstruction is not used: complete item data, quantities, custom metadata and existing Slimefun identity remain attached.

The four-hour rotation, ten personal offers, random reward/cost pools, reveal behavior and one purchase per slot are unchanged. Receipt persistence still precedes reward delivery. Invalid files, conflicting writes, missing cycle safeguards and all existing purchase-history checks remain active. No receipt deletion, reroll, forced unlock, data schema change or unrelated addon change is included.

Validation scope

PR #20 contains the exact-error baseline reproduction, native tests of every real reward/payment pool entry, generated offers, normal/free purchases, insufficient payments, duplicate purchases, a refused-receipt refund and clean restarts. The player-flow probe runs the actual shop handlers with native inventories; only the player identity/menu handoff is simulated, not a network-connected Minecraft client. All test plugins live outside the distributed JAR.

Source unit tests, API compilation, native Paper 1.21.11/26.2/26.3 tests and published-core full-45-addon Paper/Purpur validation must pass at the versioned candidate before promotion. Refer to the release/PR evidence for the actual final SHA-256 checksums and run results. These checks do not certify every historical player file, third-party event interaction, full-inventory scenario or abrupt power-loss interleaving.

Installation

Stop the server normally and back up worlds, Slimefun data and the entire plugins/magicexpansion/ folder. Replace the older MagicExpansion JAR with the single SF_MagicExpansion1.1.14.jar; keep black_market/cycle.yml, every player receipt and all configs intact. Start normally, not with /reload. The clean restart discards the previous runtime-only player lock and loads the preserved records using the fixed item path.

Check /magicexpansion blackmarket status and open the Black Market. A valid cycle can report AVAILABLE/MATCH while a separate unreadable player ledger remains blocked. A genuinely malformed historic record still needs investigation; do not delete it to suppress the warning. This release does not automatically reconcile the older externally changed cycle-file incident.

Final release verification

All checks completed at the versioned source: 150 tests / 15 suites / 44 Black Market tests, zero failures/errors/skips; 253 native offer cases passed with zero blocked synthetic manager users. The exact JAR was tested with all 45 addons against the published Slimefun 4.1.74 core on Paper 1.21.11 build 132, Paper 26.2 build 134, Paper 26.3 build 190 and experimental Purpur 26.3 build 2646. Each target completed 210 reveals and trades, rejected insufficient payments and 210 immediate duplicate purchases, then rejected 210 more duplicate purchases in a separate JVM after restart. Each also passed the deliberately refused-receipt refund/isolation check. All ordinary console logs passed the strict error/watchdog audit. These are actual native shop handlers/inventories with synthetic player identities, not network-client or power-loss tests.

This publication promotes the exact previously tested artifact; it does not rebuild it. Only one existing production class and version/POM metadata differ from 1.1.13. No test plugins or separate stable-read PR #19 are included. No production server was changed.

Source: 1876e699b4557ab144bc36c4d8b6682aeb93e17d
JAR SHA-256: e3552fc5d54dc282194428d593d08c939f71172182075667ac87d10571b192dd
Verified r138 addon ZIP SHA-256: 3a5473e2dd994558045fa1c8854f6a2547b87a93fa294fb721f14b305a937468
PR and independent artifact audit: #20
Source/API CI: https://github.com/wickidcow/SF_MagicExpansion/actions/runs/38675709884
Published-core full-stack gate: https://github.com/wickidcow/SF_MagicExpansion/actions/runs/38675710068