QSH-OnePrice
简体中文 | English
QSH-OnePrice is a QuickShop-Hikari add-on that introduces a ONEPRICE selling shop. Every item in the container shares one unit price, so a shop can offer mixed stock without creating a separate shop for each item type.
Customers browse the real container inventory. Their first extraction records a confirmation; repeating the same extraction before it expires completes the purchase through QuickShop's economy, tax, event, and inventory flow.
Features
- Sell different items from one container at a single per-item price.
- Create a shop directly or convert an existing QuickShop selling shop.
- Support left-click, right-click, and Shift + left-click purchases.
- Protect customer purchases with configurable two-step confirmation.
- Prevent customer deposits and, by default, hopper access.
- Provide a read-only full-container preview and a dedicated chat panel.
- Rotate the display item through the distinct items in stock.
- Show total item or occupied-slot stock on the shop sign.
- Include
en-US,zh-CN, andzh-TWtranslations.
Compatibility
QSH-OnePrice uses 1.21.4 as its compatibility baseline and allows newer versions wherever the upstream APIs remain compatible.
| Component | Version range | Status |
|---|---|---|
| Minecraft | 1.21.4 or newer | 1.21.4 is fully tested; newer releases are supported on a best-effort basis. |
| Server | Paper 1.21.4 or newer | Primary target. Paper-compatible derivatives such as Purpur are best effort. |
| Java | 21 or newer | Java 21 is tested; use the Java version required by the server on newer releases. |
| QuickShop-Hikari | 6.3.0.0 or newer | 6.3.0.0 is fully tested; newer releases are accepted with a compatibility warning. |
| Economy | Any working setup supported by QuickShop-Hikari | Required by QuickShop-Hikari. |
Versions below Minecraft 1.21.4 or QuickShop-Hikari 6.3.0.0 are rejected during startup with an explicit error. Newer Minecraft or QuickShop versions start in best-effort mode. If an upstream update removes or changes an API used by this plugin, the enable error reports the installed Minecraft and QuickShop versions and identifies the binary incompatibility.
Spigot is not part of the test matrix, although it may work when the installed QuickShop build supports it. Folia is not supported because this release uses the standard Bukkit scheduler and thread model. The full integration suite currently runs on Paper 1.21.4, Java 21, and QuickShop-Hikari 6.3.0.0.
Installation
- Install QuickShop-Hikari and its required economy integration, then verify that QuickShop starts successfully.
- Stop the server.
- Copy the QSH-OnePrice JAR into the server's
plugins/directory. - Start the server and confirm that the log contains
Registered QuickShop shop type ONEPRICE. - Review
plugins/QSH-OnePrice/config.yml, especiallyshop-type-id, before creating the first ONEPRICE shop.
Do not install the integration-tests JAR from build/libs/; it is a test harness, not a production plugin.
Usage
| Command | Description | Permission |
|---|---|---|
/qs oneprice <price> |
Create an ONEPRICE shop from the container you are looking at. | qshoneprice.command.create |
/qs oneprice |
Convert the QuickShop selling shop you are looking at. | qshoneprice.command.convert |
/oneprice reload |
Reload configuration and translations. | qshoneprice.reload |
/qs oneprice reload |
Reload through the QuickShop command tree. | qshoneprice.reload |
To buy, open the shop container and take an item with left-click, right-click, or Shift + left-click. With confirmation enabled, repeat the same action on the same slot before the timeout expires. The shop owner and administrators with inventory-bypass permission can maintain stock directly.
ONEPRICE shops are always finite selling shops. Buying mode, unlimited mode, and external QuickShop purchase commands are intentionally blocked to preserve transaction consistency.
Configuration and permissions
The complete option reference, validation rules, reload behavior, localization instructions, and permission table are available in:
shop-type-id is persisted in QuickShop's database. Choose a non-conflicting value before creating shops and never change it afterward.
Build and test
# Linux/macOS
./gradlew clean build --no-daemon
./gradlew integrationTest --no-daemon --no-configuration-cache
# Windows
gradlew.bat clean build --no-daemon
gradlew.bat integrationTest --no-daemon --no-configuration-cache
The plugin JAR is written to build/libs/QSH-OnePrice-1.0.0.jar. The integration test starts a real Paper 1.21.4 + QuickShop-Hikari server and downloads test dependencies on its first run.
Additional documentation
License
QSH-OnePrice is free and open-source software licensed under the GNU Affero General Public License v3.0 or later (AGPL-3.0-or-later). This copyleft license is compatible with the AGPL licensing path published by QuickShop-Hikari and keeps modified versions available to the community, including the source-availability requirements for modified software used over a network.
QuickShop-Hikari, Paper, VaultAPI, and the other build or test dependencies are separate projects under their own licenses and terms. They are not bundled in the production plugin JAR. See third-party notices for details.

