QuickShop-Hikari - Start your in-game business today ;) 3.0.2.0

A shop plugin that allows players to easily sell/buy any items from a chest without any commands.

  1. Ghost_chu
    Native Minecraft Version:
    1.19
    Tested Minecraft Versions:
    • 1.18
    • 1.19
    Source Code:
    https://github.com/Ghost-chu/QuickShop-Hikari
    Contributors:
    PotatoCraft Studio, Netherfoam, Timtower, KaiNoMood (KaiKikuchi), jho5245, cakoyo, Ectabro, portlek, log4b0at, Andre601, deadman96385, Vlvxingze, DoctaEnkoda, Mgazul, TiaraRinne, sandtechnology, Starmism, Chris6ix, Rean Schwarzer, mart-r, raphtaliapt, Tim269, creatorfromhell, LoneDev6, judgetread, confuxeon, ibmibmibm, yannicklamprecht, PyvesB, PaulBGD, ORelio, JoschuaSchneider, Starmium, harry0198, Draesia, Nlkomaru, Warriorrrr, Steven-OS; https://github.com/Ghost-chu/QuickShop-Hikari/graphs/contributors
    Languages Supported:
    Catalan, Chinese Simplified, Chinese Traditional, Czech, Dutch, Finnish, French, German, Polish, Portuguese(Brazilian), Russian Norwegian, Hungarian, Italian, Japanese, Korean, Spanish, Swedish, Turkish, Vietnamese; Didn't find your locale or want translate or improve the translations? Check here: https://crowdin.com/project/quickshop-reremake
    QuickShop-Hikari
    [​IMG] [​IMG] [​IMG] [​IMG] [​IMG] [​IMG]
    [​IMG] [​IMG]

    [​IMG]
    [ Start your in-game business today ;) ]​

    Why another fork

    I used to be part of the QuickShop-Reremake development team. But since the development pace of QuickShop-Reremake is too conservative, I decided to start a new fork separately.

    Features
    • Easy to use, simply click and type price to create the shops.
    • NBT Data, Enchantment, Tool Damage, Potion, and Mob Egg supports.
    • Dynamically switch the display language according to the client language, internationalization friendly.
    • Unlimited store support.
    • Blacklist support & bypass permissions.
    • Shops that buy and sell items in a double-chest.
    • UUID support (of course)
    • A cool item preview both in chat and GUI.
    • Chat Control Panel to change the settings of your shop. Just click to modify everything.
    • World/region protection plugins support, and lots of compatibility modules can be downloaded.
    • ProtocolLib based Virtual DisplayItem (better for performance) support.
    • Multi-Currency supports, use different currency in shops that from GemsEconomy, TheNewEconomy or any economy that support Reserve. We also support Vault(default) of course!
    • Tax and ongoing fee support!
    • Hide commands from help if the player had no permission.
    • Sign header color and clear description on the info sign for different shops status.
    • MiniMessage support, create fancy messages as you want.
    • H2 (local) or MySQL (remote) support.
    • Advanced transaction mechanism, rollback any Inventory/Economy operation when it failed to execute to prevent player dupes.
    • InventoryWrapper API offers custom inventory ability for developers.
    • Advanced Event Bus to allow user block protection check event transfer to a specific plugin.
    • Fast cache layer, handle more than 1k+ shops without any lag! (Require ProtocolLib installed)
    • Per-shop permission management.
    • Much much more! Cannot put them all in there!
    How to Install
    QuickShop requires Minecraft 1.18+ to be run. Any versions below 1.18 were unsupported.

    • Install Vault and an economy plugin supported by Vault.
      If you using Multi-Currency, an option in config.yml that allows you to switch to GemsEconomy/TNE or Reserve!
    • Install optional ProtocolLib which can greatly improve QuickShop performance.
    • If you're a Spigot user, Hikari will use NMS to set important stuffs, make sure your Hikari version support your Spigot version.
      • Or use Paper or it's fork so we can smooth cross-version.
    • Download QuickShop jar and put it in your plugins folder.
    • Download other compatibility modules or add-ons if you need them.
      • Only install compatibility modules that you need, they're not open box to use, you need configure them.
      • Most cases, Hikari can handle region protections by itself, you don't need them.
    • Turn on the server and here we go!
    Commands
    Note: Most features can be accessed by control panel or interaction with the shop, in most cases, you don't need those commands.
    • /qs unlimited
      Makes your Shop buy/sell Items in unlimited quantity or limited
    • /qs setowner <player>
      Change the Shop Owner.
    • /qs buy
      Change the shop to buying items.
    • /qs sell
      Change the shop to selling items.
    • /qs price <price>
      Change the buy/sell price of the item.
    • /qs clean
      Removes any loaded shop that doesn't have any items in stock.
    • /qs find <item>
      Find the nearest shop that sells items that start with the provided text. E.g. /qs find dia will find the nearest shop that buys/sells diamonds.
    • /qs fetchmessage
      Fetch shop message manually from the database.
    • /qs info
      Show QuickShop information.
    • /qs debug
      Enable/Disable Debug Mode.
    • /qs create <price> [item]
      Command to create the shop with the item in hand or specified.
    • /qs currency <currency name>
      Command to specified the currency the shop using.
      The Economy plugin must support the Multi-Currency feature and be supported by QuickShop. We support GemsEconomy and TNE now.
    • /qs supercreate
      Create a shop while bypassing any protection checks.
    • /qs paste
      Collects useful information and pastes it on Pastebin.
    • /qs staff
      Manage staff in your shop.
      • /qs staff add <player>
        Add a player as staff to your shop.
      • /qs staff del <player>
        Remove a player as staff from your shop.
      • /qs staff clear
        Remove all staff members from your shop.
      • /qs staff list
        Show all current staff members of your shop.
    • /qs cleanghost
      Remove all broken shops.
    • /qs export
      Export all shop data to a TXT file.
      This command is CONSOLE ONLY!
    • /qs recovery
      Recover all shops from a TXT file or Paste.
      This command is CONSOLE ONLY and may remove/override any existing shop on your Server! Make a backup first and try it with a clean database!
    • /qs size
      Change the bulk size.
      Requires the "allow-stacks" option in the config to be enabled for the command to work.
    • /qs purge
      Purge the old shops, for more information please check the purge option in config.yml
      Requires the "purge" option in the config to be enabled for the command to work.
    • /qs alwayscounting
      Making a shop always counting shop even is unlimited, which makes a real admin shop is possible.
    • /qs transfer
      Transfer ALL shops from one player to another.
    • /qs item
      Change the item of the shop.
      Requires the "allow-stacks" option in the config to be enabled for the command to work.
    • /qs removeworld
      Remove all shops in a specific world.
    • /qs name
      Naming or un-naming a shop with a specific name.
    • /qs permission
    • Tweaking the per-shop permissions, or add/remove player into/from specific groups.
    • /qs database
    • View and manage QuickShop-Hikari status.
    Aliases:
    • /shop
    • /qshop
    • /qsshop
    • /quickshop
    • /chestshop
    • /cshop
    (customize the aliases in config.yml ;)

    Permissions
    If you're a lazy owner, simply give the player "quickshop.player" permission node which contains all needs to let the player create and use quick shops.

    But if you're a pro owner, there is also a detailed list to allow control of everything:

    Player Permissions:
    • quickshop.use
      Required for any QuickShop Actions.
    • quickshop.create.sell
      Required to make a shop (Sell-Mode)
    • quickshop.create.buy
      Required to make a shop (Buy-Mode) or to switch from Sell to Buy-Mode.
    • quickshop.create.stacks
      Required to allow selling items in stacks.
    • quickshop.create.changeitem
      Allows a player to change a shop's item.
    • quickshop.create.changeamount
      Allows a player to change the item amount per buy/sell.
    • quickshop.create.changeprice
      Allows a player to change the buy/sell price of their shops.
    • quickshop.create.double
      Allows a player to create a double chest shop.
    • quickshop.create.cmd
      Required to have access to the /qs create command.
      This command may bypass certain protections of not-supported protection plugins!
    • quickshop.transfer
      Required to transfer all owned shops to another player.
    • quickshop.find
      Required to use /qs find <item>
    • quickshop.fetchmessage
      Required to use /qs fetchmessage
    • quickshop.staff
      Required to use /qs staff and all its subcommands.
    • quickshop.preview
      Required to use the GUI Item Preview.
    • quickshop.currency
      Required to use the /qs currency <currency>
    • quickshop.shopnaming
    • Required to use the /qs name <name>
    • quickshop.permission
    • Required to use the /qs permission
    Admin Permissions:
    • quickshop.unlimited
      Required to use /qs unlimited
    • quickshop.alwayscounting
      Required to use /qs alwayscounting
    • quickshop.setowner
      Required to use /qs setowner
    • quickshop.other.destroy
      Allows the player to remove/destroy the shops of others.
    • quickshop.other.open
      Allows the player to open chests of other shops and take/put items from/into it.
    • quickshop.other.price
      Allows the player to change the price of someone's shop.
    • quickshop.transfer.other
      Required to transfer ALL shops of someone to another player.
    • quickshop.refill
      Allows the player to refill their shops using a command, essentially making the shop having unlimited items.
    • quickshop.empty
      Allows the player to clear the shop's inventory.
    • quickshop.clean
      Allows the purging/removal of any Shops that have no items in stock.
    • quickshop.bypass.<ItemID>
      Required to sell blacklisted items (E.g. bedrock).
    • quickshop.price.restriction.bypass.<RuleName>
      Required to bypass a specific price limit rule.
    • quickshop.alerts
      Required to receive notifications about possible cheating, plugin warnings and updates.
    • quickshop.info
      Required to use /qs info
    • quickshop.debug
      Required to use /qs debug
    • quickshop.paste
      Required to use /qs paste
    • quickshop.purge
      Required to use /qs purge
    • quickshop.create.admin
      Required to bypass any protection-checks while creating a shop using /qs supercreate
    • quickshop.tax
      Permission to bypass the tax fee.
    • quickshop.tax.bypassunlimited
      Permission to bypass the tax fee but only in the unlimited shop.
    • quickshop.cleanghost
      Permission to remove any broken shop using /qs cleanghost
    • quickshop.export
      Permission to use /qs export
      This permission is pointless since the command is console only.
    • quickshop.recovery
      Permission to use /qs recovery
      This permission is pointless since the command is console only.
    • quickshop.removeworld
      Permission to remove all shops in a world using /qs removeworld
    • quickshop.other.changeitem
      Allows the player to change the item of someone's shop.
    • quickshop.other.changeamount
      Allows the player to change the bulk amount of someone's shop.
    • quickshop.other.shopnaming
      Allows the player to change the name of someone's shop.
    • quickshop.bypass.namefee
      Allows the player to bypass the fee of shop naming.
    • quickshop.database
      Permission to use /qs database

    How to create a shop
    To create a shop, place down a chest and left-click it with the number of items you want to sell.
    For example: If I want to sell 16 diamonds will I need to hold 16 diamonds in my hand and left-click the chest with it. (Need allow-stacks: true and permission).

    [​IMG]

    You will then be prompted to type in the chat, how much you would like to sell this item for.

    Note: You may encounter issues with the chat system if you're on a BungeeCord network that utilizes a global chat plugin like BungeeChat. In such a case will you need to use commands to create a shop!

    After you completed those steps should an item be displayed on top (Can be toggled off in the configuration) and a sign with info be placed on the side of the chest.
    A Shop may not be created if there is no space around the chest to place down a sign.

    How to buy/sell Items
    To buy or sell an Item from/to a Shop will you need to left-click the sign.
    You will then be prompted to write the amount you want to buy/sell in chat.

    Whether a shop sells or buys items depends on the displayed info on the sign.

    [​IMG]

    Advanced Features

    Item Preview GUI
    Preview the item you will purchase before actual purchase to avoid scam!
    [​IMG]

    Shop Control Panel
    Shop Control Panel allows tweaks to your shop with one click, no command needs!

    [​IMG]

    Shop Staff
    Shop owner can able to managing shop staff by using the command `/qs staff <add/del/list> <player>`, which allow shop staff to access your shop to manage the stock.

    Ender Chest Inventory Linkage
    Install OpenInv and openinv compatibility module and you will be able to use `/qs echest` to link your quick shop to your ender chest inventory! So all your echest shops can share with your ender chest inventory!

    Rules-Based Price Limiter
    Create rules to limit shops' prices with specific materials!

    Translation OTA & Override system
    Unlike other plugins, QuickShop uses CrowdinOTA technology to update our translation over the air. You can always enjoy the latest translations. All translations will keep updated with the cloud.
    If you need to customize the translation, you can follow our guide to use the override customize system!

    Shop Purger
    Purge shops that owner no longer active or banned!
    Our compatibility modules also offer purge player shops while it leave teams/islands/lands.

    Interaction Controller & Direct Trade
    Custom the click behavior through interaction.yml!
    You can sell or buy 1 or all things directly by sneaking clicking (or any behavior you configured).

    Item Stacking
    Enable the allow-stack option in config.yml, then you can create a stacking shop by holding more than one item in hand. So players must buy items that are multiples of their holding.
    [​IMG]

    Per shop permission management
    Have you ever considered putting another player in full charge of your shop?
    Or just ban a player to avoid him purchase your shop?
    You can do this now with per shop permission management.
    QQ图片20220515162521.jpg

    Compatibility Modules
    QuickShop-Hikari officially provides some plugins compatibility modules to make them work more closely with QuickShop, here is a list that we currently support:
    • AdvancedRegionMarket (Remove shops when region reset)
    • BentoBox (Remove shops while the member was kicked out of the team)
    • Clearlag (Prevent clear the QuickShop displays if you hadn't installed ProtocolLib)
    • GriefPrevention (Remove shops on untrusted, unclaimed,
      expired, resized, etc.)
    • Lands (Remove shops while member leaves)
    • NoCheatPlus (anti-cheat compatibility)
    • OpenInv (Offers a command `/qs echest` to link with your EnderChest)
    • PlotSquared (Remove shops when a player is untrusted)
    • Towny (Remove shops while resident left or plot clear/destroyed)
    • WorldEdit (Remove shops while blocks removed by WorldEdit)
    • WorldGuard (Register flags to control creates and trades in allowed regions, you usually don't need this)
    • SuperiorSkyblock (Remove shops when a player kicked, un co-op, island reset etc.)
    Enhanced Addons

    ShopSearch by Ronsane
    Adds a /finditem command in game for searching through all the shops on the server.
    [Download]

    Some traditional reremake addons have been migrated to Hikari!
    See QuickShop-Suite.

    Known Incompatible Plugins
    Some plugins may not work together with QuickShop and there is little we can do on our side to fix this.
    • Pretty much any BungeeCord Chat plugin.
      Those override the default per-server chat and it's impossible to fix this without any bungee-spigot bridge plugins.
      You can use /qs amount <amount> to set the price instead.
      * If you're using a chat plugin with Spigot plugin supports, It should work with it.
    • Plugins handling BlockBreakEvents
      If you are a server administrator (with quickshop.alert privileges), you will receive an admin-only message instructing you how to configure the filter.
      Or you can directly disable the protection-checks, but it will allow players to create shops everywhere!
    • ChatControl Pro/Red
      You can use /qs amount <amount> to set the price instead.
    Help us translate QuickShop!
    You can help us to translate QuickShop into as many languages as possible!
    [​IMG]

    You can find the currently worked on translations over at Crowdin:
    https://crowdin.com/project/quickshop-reremake
    Can't find your language?
    Open an issue on Issue Tracker!

    FAQ

    Q: Can I create a shop that sells AND buys items?
    A: No. Each shop can only sell or buy but not both at once. You can however use a double-chest to have two shops. One buying and one selling the item.

    Q: Can I use item currency like diamonds?
    A: No. We won't add it. But you can choose some economy plugins that allows you to use item currency.

    Q: The plugin doesn't respond when creating a shop. Is it broken?
    A: Some plugins may cancel the Shop-creation. Most commonly is this the case with protection plugins. You can disable the shop.protection-checking in the config to bypass this.

    Q: How can I create a Shop selling stacks?
    A: To create such a shop, follow these steps:
    1. Set "allow-stacks" to true in the config.yml and reload the plugin.
    2. Give the player (Yourself) the permission quickshop.create.stacks
    3. Hold the number of items to buy/sell and create the shop as normal.
    Q: Can I create a shop that bypasses the default vanilla stack-size?
    A: Yes. Enable the custom-item-stacksize option in the config.yml and reload the plugin. Afterward can you use /qs stack <size>

    Q: My shop was broken/denied by XXX non-protection plugin. Why?
    A: QuickShop creates a fake BlockBreakEvent to check if you can build in that area. Some plugins may interfere with this event by canceling it. Try Use protection listener filter to fix it.

    Q: How can I migrate from H2 to MySQL, MariaDB (or vice-versa)?
    A: Hikari fork hadn't supported this feature yet, we're implying it!

    Q: The plugin is giving a NoDefClassFound/NoMethodFound error in the console, why?
    A: This may be caused either by odd plugins that QuickShop does (not) support or by having a damaged/corrupted jar of QuickShop. Try to update the plugin and also test it with ONLY QuickShop installed. If the issue persists, report it to us on GitHub!

    Q: The text only shows as weird JSON.
    A: Update your cross-version plugin.

    Q: How can I change or delete some messages?
    A: Edit the messages in your message.json file. To remove a message, just change its content to an empty String ("").
    To change names of items, enchantments, etc. edit the respective i18n.yml file.

    Q: Can you add support for plugin X?
    A: Maybe. Please open an issue on our GitHub for this.

    Migrate from QuickShop-Reremake
    QuickShop-Hikari is different from Reremake and data are not compatible with each other.
    Hikari offers a converter allows you to convert the data from Reremake to Hikari.

    BACKUP BEFORE OPERATING MIGRATE!
    • Stop your server.
    • Delete already exists folder plugins/QuickShop-Hikari
    • Rename QuickShop-Reremake data folder plugins/QuickShop to plugins/QuickShop-Hikari, don't touch any other things!
    • Start your server, our converter will convert things once you confirmed.
    Conversion is irreversible, please take care of the backup.

    Bug Reports
    Github Issue Tracker

    Supports
    Discord Server

    User Documentation
    We don't have documentation yet, it looks like if you have questions you can only ask on our Discord channel ;)

    Developer API
    Maven repository & QuickShopAPI
    Code Fragment -> Shop Lookup
    Code Fragment -> Register QuickShop Command
    Code Fragment -> InventoryWrapper API (Hook shop inventory to another block, entity, and plugin virtual inventory)
    Overview -> API Package
    Code Fragment -> Customize display item implement with ServiceInjector (TODO)

    Javadoc can be download use Maven or checked there.

    Can I repost/reprint this plugin to xxx like mcbbs etc?
    We allow you to repost this plugin for free or non-free in other places as long as you follow two basic rules:
    • Keep the link to the original resource (This one) and the source code link.
    • Don't remove the author's name or claim that are the original authors.

    Why are there so many [GIF]?
    Because I failed to embed it, SpigotMC returning Not Found for no reason...

    Images

    1. banner (1).jpg
    2. QQ图片20220515162521.jpg

Recent Reviews

  1. YA_Dung2019vn
    YA_Dung2019vn
    5/5,
    Version: 3.0.2.0
    -------------------------------
    Very good plugin quickshop :>
    -------------------------------
  2. Antrox
    Antrox
    5/5,
    Version: 3.0.0.5
    Active dev working to fix problems, thank you
    ---------------------------------------------------------------
  3. Carl0Jonshon
    Carl0Jonshon
    5/5,
    Version: 3.0.0.2
    thanks !
  4. grocerys
    grocerys
    5/5,
    Version: 2.0.1.1
    Hi! Great plugin, thanks very much for your work. I have a small problem with it, but I can't verify my phone number to discuss it on your discord. In short, custom unicode characters (ItemsAdder) dont work on your signs, however they work fine in QuickShop reremake. https://imgur.com/a/nWsw3Jq
    1. Ghost_chu
      Author's Response
      I have disabled phone number requirement now, join the Discord server to get support <3
  5. RuffNeck
    RuffNeck
    5/5,
    Version: 2.0.0.2
    Your plugin is amazing, you focused on privacy and working offline! Congratulations on your initiative, this is something I really appreciate!

    QuickShop is very good, for all the functions it brings, but yours has a much greater affection, I hope this becomes the QuickShop of reference for the entire community!
    Anything I can do to help servers adopt your plugin I will!
  6. QWYLkrX
    QWYLkrX
    5/5,
    Version: 1.1.3.6
    Thank you for continuing to update, which is of great help to me
    hope you will keep updating
  7. shuiqing2046
    shuiqing2046
    5/5,
    Version: 1.0.2.5
    ====================================
    Thank you for your long-term maintenance
    ====================================
    1. Ghost_chu