Tags
Creators
Details
All versions
1.6.0
Release
Genius Shop v1.6.03 weeks ago 1,252
Compatibility
Minecraft: Java Edition
26.2
26.1.x
1.21.x
Platforms
Bukkit
Paper
Purpur
Spigot
Changes
Genius Shop v1.6.0 - Economy Safety, Advanced Pricing & Web Editor Overhaul
Added
- Per-item price mode toggles (
buy-price-per-item,sell-price-per-item) to dictate if prices apply to single items or configured amounts. - Price formula rules (
buy-price-formula,sell-price-formula) featuring a safe server-side evaluator supporting math operators and functions (min, max, abs, round, floor, ceil, pow). - Economy safety guards including max transaction limits, optional unit-price caps, anti-spike protections, per-action cooldowns, and a large-purchase double-confirm flow.
- Strict server-side invalid-value checks (NaN, Infinity, negatives) and unit floor/ceiling enforcement against configured bounds.
- Explicit fail-safe handling for withdraw/deposit failures, generating player-facing error messages.
- Inventory capacity checks prior to charging; delivery failures after withdrawal now trigger a refund attempt.
- Audit logging and optional in-game admin alerts for economy and guard failures, capturing shop key, item, player, and total.
/shop validate-pricesdry-run validation command to scan all loaded shop items for risky or invalid configurations.- Scheduled campaigns feature (
campaigns.yml) with item-level window keys and live multipliers applied to buy/sell prices across all GUIs and API lookups. - Server-side item conditions to enforce
min-player-level,max-player-level,required-gamemode,allowed-worlds, anddenied-worlds. - Item variants using
variant-keyanditem-keyfor stable stock/limit identities, along with an optional grouped variant selector menu. - Comprehensive export tools in the web editor (JSON/YAML) for individual items, shops, full projects, and menus.
- Item import support for JSON/YAML files with auto ID assignment.
- Clone actions in the web editor to copy items to another shop or bulk clone to multiple shops.
- Live item preview in the web editor with a parity mode toggle to accurately render in-game lore tokens and formatting.
- Economy safety controls panel in the web editor GUI settings to configure strict, balanced, or off presets.
- Stock Analytics Dashboard (
STOCKtab) in the web editor to view tracked items, out-of-stock, low-stock, and fill percentages. - Direct SQLite data management (
DATAtab) in the web editor for viewing and editing player limits, global counts, and stock reset timers. - Dedicated database API endpoints (
GET,POST,DELETE) for web editor integration. - Debug error file logging integrated with debug mode, outputting to
debug/error.log. - Server-side audit logging (
activity-log.json) and rollback functionality for web editor file actions. - Compiled shop catalogs and structured validation to report duplicate slots, invalid rules, and missing configuration paths.
- Bulk Sell GUI (
menus/bulk-sell-menu.yml) for selling multiple deposited items through the/shop sellcommand. - Dedicated stock reset rules for diverse intervals (minute, hourly, daily, weekly, monthly, yearly, one-time) with persisted last-run tracking.
- Custom commands system (
commands.yml) and web editor tab for configuring command names, aliases, usage, permissions, and actions. /shop exportitem [file-name]command to export the held item as editor-importable JSON, preserving serialized item-stack data.- Specific permissions for new features (
geniusshop.validateprices,geniusshop.exportitem,geniusshop.login.ip.bypass). - Native HTTPS support via
api.ssl.*configuration for the web editor and API. /shop confirmlogin <token>command for IP confirmation during editor login.- Optional Floodgate detection to shorten inventory titles for Bedrock Edition players.
GeniusShopAPIandGeniusShopAPIProviderfor public integrations, alongside new shop-open and transaction events.- Serialized
item-stacksupport for exact item delivery, sell matching, and player-head texture retention. - Expanded bundled language files, localized menu titles, buttons, and diagnostic output.
- MIT license, updated copyright information, and expanded documentation in the README and wiki.
variants_demo.ymlexample file and an expandedweekend_market.ymldemonstrating bundle pricing and campaign usage.
Changed
- Buy and sell total calculations now strictly respect each item's configured pricing mode.
- Bulk sell total calculations now respect the configured sell pricing mode.
- Shop item lore price lines now dynamically show totals for the configured item amount.
- Buy and sell menu lore now resolves stock placeholders (
%global-limit%,%player-limit%,%limit%,%stock-reset-timer%) within custom item lore. - Transaction guard pricing checks now treat formula-driven item pricing as dynamic guard input.
- Anti-spike multipliers now evaluate against the configured base price before dynamic pricing, formulas, or campaigns are applied.
- Web editor completely redesigned around the Minecraft inventory preview, featuring responsive layouts and a collapsible sidebar.
- Replaced fragile YAML parsing in the web editor with structured, comment-preserving editing.
- Web editor file import format is now automatically detected from the file name and content.
- Player and global counters are now cached with batched SQLite writes and periodic flushing to optimize database performance.
- Shop refresh handling and variant stock identities were improved to maintain consistency across dynamic price and limit menus.
- Shop navigation buttons can now be configured with custom materials.
- Web-triggered plugin and custom-command reloads now execute on the main server thread.
- SmartSpawner delivery now utilizes its native creation API instead of legacy workarounds, supporting both
SmartSpawnerandSmartSpawnersplugin names. - Missing language defaults are now automatically merged, even if an existing language file matches the current version.
Removed
- Dropped item overflow behavior during purchases; the plugin now blocks the transaction if inventory capacity is insufficient.
- Redundant and unused legacy runtime and editor code.
Fixed
- Fixed menu inventory holders incorrectly returning null.
- Fixed enchantment metadata being applied without prior validation.
- Fixed SmartSpawner plugin lookup behavior and compatibility.
- Fixed web editor UI issues including unclickable footer buttons, duplicate search borders, stock text overflow, invalid meta tags, missing image descriptions, and conflicting CSS overrides.
- Fixed placeholder replacement executing before lore coloring.
- Fixed default merging logic for nested configuration sections.
- Fixed quoted language
onkeys to prevent unintended YAML boolean interpretation. - Fixed validation of inventory slots on later pages of compiled shop catalogs.
- Fixed guarded nullable player addresses during login and active session checks.
Optional dependencies
Any compatible version
Any compatible version
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:7Dl7ZUCO:uLk6KC4V"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:7Dl7ZUCO:uLk6KC4V"
}

