Smarter Offer System
- Prevents duplicate offers during refresh (sampling without replacement).
- Current offers are persisted — the shop only changes when:
- The refresh timer expires
- An admin runs /asyrandomshop refresh
- shop.items-per-refresh: 0 auto-fills all available slots.
Improved Limited Mode
- Optional Limited section placed on the last GUI row (centered).
- Limited pool is separate from random offers (no cross-duplicates).
- Limited counters are persisted across restarts.
Persistent Shop State
- Saves:
- Current offers
- Refresh timer
- Dynamic market multipliers
- Limited stock counters
- Shop remains consistent after server restarts.
Cleaner & Flexible Pricing
- Unified pricing.* configuration.
- Supports static payouts and optional dynamic market drops.
- Smart percent parsing:
- "50" = 50%
- "0.50" / "0,50" = 50%
- "1" = 1%
Built-in Language System
- Includes ro.yml and en.yml.
- Switch via language: ro|en.
Safe Updates
- Automatic YAML sync for config and language files.
- Missing keys added, obsolete keys removed.
- Automatic backups created before changes.
- items.yml only copied if missing (no unnecessary warnings).
No duplicate offers
Restart-safe market
Cleaner configuration
Production-ready stability
This update renames the plugin from RandomShop to AsyRandomShop and includes bStats support.
If you are using (or previously used) the old version, please follow these steps before starting the server with the new build:
This ensures your existing plugin data/config is kept and loaded correctly under the new plugin name.
- Stop the server completely.
- Go to your plugins/ directory.
- Rename the old plugin data folder from RandomShop to AsyRandomShop.
- Replace the old jar with the new AsyRandomShop jar.
- Start the server again.
bStats is enabled by default in config.yml.
If you want to disable it, change:
bstats.enable: true -> bstats.enable: false
