Jbank

JBANK— Bank System enconomy for Hytale

File Details

Jbank-1.1.0.jar

  • R
  • Mar 28, 2026
  • 2.71 MB
  • 16
  • Early Access

File Name

Jbank-1.1.0.jar

Supported Versions

  • Early Access

[1.1.0] — 2026-03-28

Added

  • Stock Market (Bolsa de Valores) — full player-facing stock exchange accessible via /bank stock
    • Market tab — live list of all active stocks with ticker, name, current price, dividend range and available shares. Clicking a stock opens the detail panel with price history (last 10 entries, scrollable), variation indicator, and the buy form
    • Buy form — quantity input with real-time bank balance display; purchase cost deducted from bank account; configurable buy fee applied; chat notification on success
    • Portfolio tab (Carteira) — shows all holdings with current value and P/L (profit/loss) per position. Clicking a position opens the sell form with per-share breakdown (sale value, fee, capital gains tax, net)
    • Sell form — quantity input; configurable sell fee and capital gains tax on profit; bank balance updated immediately; chat notification with net amount received
    • Price history — each stock maintains a rolling history of up to 10 price snapshots; color-coded green/red relative to next entry; timestamps in server timezone
    • Periodic price variation — prices fluctuate automatically at a configurable interval using random walk bounded by per-stock min/max; buy/sell pressure influences direction
    • Dividend payouts — each price tick triggers a randomized dividend for all holders, within per-stock min/max percentage range
    • Admin tab — create new stocks with full parameter control (ID, name, initial price, min/max, volatility, shares, dividend range); manage existing stocks (add shares, deactivate); visible only to jbank.admin
    • NPC Stock broker command/bank stock open <player> opens the stock GUI for a player server-side, designed for NPC broker setups (same pattern as /bank open)
    • Atomic writes — stock data and portfolio data are written atomically (write to .tmp → rename) to prevent corruption if the server is stopped mid-tick
  • Messages auto-merge — on startup, all three Messages/*.json files now follow the same merge strategy as config.json: new keys added by plugin updates are injected automatically without overwriting admin customizations

Changed

  • All stock market player-facing text (UI labels, error messages, chat notifications) is fully externalized to Messages/<lang>.json — no hardcoded strings remain in Java code
  • Messages/*.json now uses mergeConfigDefaults instead of ensureDefaultResource — existing servers upgrading to 1.1.0 will have the new stock keys added to their language files automatically on first startup