Skip to main content

Bank

kyuubisoft

A persistent per-player bank system for Hytale servers using the native Container API for drag-and-drop item storage, with NPC integration, item restrictions, transaction history, and multi-language support.


Features

Native Drag & Drop

  • Built on Hytale's Container API (SimpleItemContainer, ContainerWindow, PageManager.setPageWithWindows)
  • Native drag-and-drop, shift-click, and stack-split behavior — no custom UI workarounds
  • Feels like a natural game inventory, not a plugin page

Multi-Page Storage

  • Multiple bank pages per player with configurable slot counts
  • Pages unlockable via progression, currency, or admin command
  • Smooth page navigation within the bank UI

NPC Integration

  • Open the bank by interacting with designated bank NPCs
  • NPC dialog integration with configurable greeting messages
  • Works with the KyuubiSoft Citizens system

Item Restrictions

  • Blacklist mode — Block specific items from being stored
  • Whitelist mode — Only allow specific items
  • Configurable per bank page or globally
  • Restrictions enforced server-side via DelegateItemContainer slot validation

Transaction History

  • All deposits and withdrawals logged to SQLite database
  • Queryable transaction history per player
  • Timestamps and item details recorded for admin auditing

Auto-Save

  • Automatic periodic saves to prevent data loss
  • Save on player disconnect and server shutdown
  • Dirty-flag system to minimize unnecessary writes

Admin Commands

  • View and manage any player's bank contents
  • Grant or revoke bank pages
  • Reload configuration without server restart

Localization

  • 9 languages supported out of the box
  • Per-player language selection via /kslang
  • All UI labels, notifications, and NPC dialogs fully localized

Commands

CommandDescription
/ksbankOpen your bank (if not at an NPC)
/ksbankadminAdmin management commands

Requirements

  • Hytale Server with plugin support
  • Works standalone or with KyuubiSoft Core for enhanced features (shared economy, NPC system, localization)

Configuration

  • config.json — Bank settings (page sizes, auto-save interval, restriction mode)
  • restrictions.json — Item blacklist/whitelist definitions
  • lang/ — Localization files for all 9 supported languages
  • Transaction data stored in transactions.db (SQLite)