From 1859613f1f3dc60194e620a515ba511980935f37 Mon Sep 17 00:00:00 2001 From: Matt Date: Sun, 7 Jun 2026 02:41:49 +0000 Subject: [PATCH] =?UTF-8?q?pack:=20v0.35.0=20=E2=80=94=20bnstoolkit=200.3.?= =?UTF-8?q?1=20(feature-complete=20UI=20+=20villager=20rebalance)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit bnstoolkit jumps from M0 (empty scaffold) straight to feature complete: UI screens (all FTB Library widgets, opens via keybinds): K Civic tier ladder + upgrade J Bounty board (accept/cancel/turn-in) N Plot office (buy/release) H Bazaar sell shop (1/16/64 quick-sell) M Quest log (status overview) HUD: top-left tier + spurs balance overlay, refreshed 1Hz server-side. Villager trade rebalance (NEW): the mod now hooks VillagerTradesEvent + WandererTradesEvent and swaps every emerald cost/result for the Numismatics equivalent (1..7 emeralds -> spurs, 8..63 -> bevels, 64+ -> cogs). This was the blocked Modrinth dep — the third-party mod options either required a NeoForge bump (numismatics-villager-currency 1.1.0 wants 21.1.230+, we're on 21.1.228) or hand-written JSON for every trade (data-trades). The in-tree wrapper is cleaner. Co-Authored-By: Claude Opus 4.7 --- pack/overrides/mods/bnstoolkit-0.1.1.jar | Bin 15576 -> 0 bytes pack/pack.lock.json | 4 ++-- 2 files changed, 2 insertions(+), 2 deletions(-) delete mode 100644 pack/overrides/mods/bnstoolkit-0.1.1.jar diff --git a/pack/overrides/mods/bnstoolkit-0.1.1.jar b/pack/overrides/mods/bnstoolkit-0.1.1.jar deleted file mode 100644 index 0b6ae7c3a5983d926fa8cb48105a995f2ad9199f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15576 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