QuickShop Hikari is a Shop plugin that allows players to create Chest Shops to easily sell and buy items, without the
need for any commands.
In fact, all commands in QuickShop are not even needed for normal gameplay.
This version of QuickShop (Ghost-chu/QuickShop-Hikari) is a fork from PotatoCraft-Studio's version which itself is a fork from the Reremake of the original QuickShop.
QuickShop Hikari is maintained by Ghost-Chu and has the goal to modernize the core content of QuickShop and adapt it to the latest versions of Minecraft.
Discussions
Bug Tracker
Discord
- Easy to use
- Toggleable Display Item on top of the chest.
- NBT Data, Enchantment, Tool Damage, Potion, and Mob Egg support.
- Unlimited chest support.
- Blacklist support & bypass permissions.
- Shops that buy and sell items at the same time (Using double chests).
- Customizable permission checks.
- UUID support.
- Better shop protection.
- i18n support for displayed Item names.
- i18n support for displayed Enchantment names.
- A cool item preview.
- World/region protection plugins support.
- ProtocolLib based Virtual Display Item support.
- Powerful API.
- Optimized performance.
- MiniMessage syntax support.
- H2 (local) or MySQL (remote) datasource support.
- Supports custom inventory! Use the InventoryWrapper API.
- Optimized for Paper, but also runs on Spigot (Though slower and with a more "hacky" approach).
- Advanced Transaction System. Undo any Inventory/Economy operation with a shop when it failed to prevent duplications and exploits.
- Per-shop permission management.
- Shop benefits between shop owner and other players!
- And much much more!
Obtain the latest version from ci.codemc.io
You can download optional modules here for compatibility with other plugins.
- Stops clearlagg from deleting the Display Item on any Shop.
- Prevents NCP's anti-cheat checks from triggering when creating a shop.
- Allow the usage of a Player's Ender Chest as Shop inventory by using
/quickshop echest
.
- Removes Shops that got deleted during a WorldEdit operation, to reduce "Ghost Shops".
- Flag-based shop control.
If you're a developer, you can contribute to the QuickShop source code! Just make a fork, install the Lombok plugin (if
not done automatically), make your changes and create a pull request when you're done!
Please try to follow Google's Java Code Style and do not increase the Plugin version. Thank you!
You're allowed to create your fork to share. No permission is needed.
Though it would be nice if you could pull-request your changes into this repository when they are good ones.
To compile and debug QuickShop, please do the following steps:
- Make sure you're using Java 17 or 18. You can get the latest Java versions from the Adoptium project.
- Compile the main project without a signature by using
mvn install -Pgithub
with the GitHub Profile selected. - Put the compiled jar into your Test-server's
plugins
folder, start the server and begin debugging!
To compile the QuickShop and debug it by yourself, please follow these steps:
- Make sure you're using Java17+ JDK in your PATH.
- Compile main-project without signature by using profile:
mvn install -Pgithub
with github profile selected. - Start your server and go on.
QuickShop-Hikari collects certain statistic through bStats.
You may opt-out by setting disabled-metrics
to true
in the config.yml.
QuickShop-Hikari offers an API for you to use features such as retrieving active shops of a player.
<repositories>
<repository>
<id>codemc</id>
<url>https://repo.codemc.io/repository/maven-public/</url>
</repository>
</repositories>
<dependencies>
<!-- QuickShop Main Module -->
<dependency>
<groupId>com.ghostchu</groupId>
<artifactId>quickshop-bukkit</artifactId>
<version>VERSION HERE</version>
<scope>provided</scope>
<classifier>shaded</classifier>
</dependency>
</dependencies>
repositories {
maven { url = "https://repo.codemc.io/repository/maven-public/" }
}
dependencies {
compileOnly "com.ghostchu:quickshop-bukkit:VERSION HERE"
}
public class MyPlugin extends JavaPlugin {
@Override
public void onEnable() {
QuickShopAPI api = QuickShopAPI.getInstance();
QuickShop instance = QuickShopAPI.getPluginInstance();
QuickShop anotherWayToGetInstance = QuickShop.getInstance();
}
}