- Added /kslang command with language selection UI (9 languages)
- Language changes apply across all KyuubiSoft mods instantly
- All admin panel texts (NPC editor, waypoint recorder, mod menu) are now fully translatable
- Fixed language not applying in some UI pages
Changed — Shop UI Redesign (BarterPage Card-Layout)
- Complete shop page redesign using card-based grid layout inspired by Hytale's native BarterPage
- 3x3 card grid with LeftCenterWrap flow layout instead of fixed horizontal list rows
- Cards feature prominent 64x64 ItemSlot with native quality/rarity backgrounds
- Currency icon displayed per card alongside price
Fixed
- Quest Admin Thread Crash: ksquestadmin complete called completeQuest() on ForkJoinPool thread — item granting via
ItemUtils.grantItem() requires WorldThread for Store access. Now wrapped in world.execute()
i18n
- New key: shop.remaining (en-US: "remaining", de-DE: "verbleibend")
- Localization version 26 → 27
Added
- SmartConfigManager — New utility class that automatically merges missing default fields into existing configs on load. Existing values are never
overwritten. Supports deep-merge for nested objects.
Added — Shop Sell System
- Players can sell items at NPC shops (BUY/SELL tabs)
- buyEnabled=false for sell-only shops
- Configurable sell prices: sellPrice per item or sellPricePercent as fallback
- Whitelist/blacklist for sellable items
- Daily sell limit: maxSells per item
- Confirmation dialog with quantity selector and total price
- Custom sell currency support (sellCurrencyId)
- Dedicated buyer NPCs: sellShopId on CitizenData
- Command purchases: Shop items can execute commands instead of giving items (command, commandRunAsServer)
Changed — Shop Admin Panel
- Completely reworked: inline editing instead of popups
- Buy/Sell toggles, sell config inline, item table with SELL column
Fixed
- NPC Role Crash: Moved loadCitizenRoles() from setup() to start() — assets were not yet available during setup
- NPC Role Spam: "NPC Role not found" warning now logged only once per role
- i18n Version: Localization version correctly bumped (17 → 25) — new keys are now deployed
- Sell Confirm Overlay Crash: Element was outside @PageOverlay
- Shop Command / prefix: CommandSystem expects commands without leading /
i18n
- 30+ new keys for Shop Sell UI, Admin Panel, Command Purchases (en-US + de-DE)
