ChestShop (iConomyChestShop)

ChestShop (iConomyChestShop)

6M Downloads

Could not pass event BlockDestroyEvent

andris155 opened this issue ยท 1 comments

commented

Plugin Version

ChestShop v3.12-SNAPSHOT (build 282)

Plugin Config

Config
TURN_OFF_UPDATES: true
#Do you want to turn off the automatic updates of ChestShop?

SHOP_INTERACTION_INTERVAL: 250
#(In 1/1000th of a second) How often can a player use the shop sign?
IGNORE_CREATIVE_MODE: true
#Do you want to allow using shops to people in creative mode?
REVERSE_BUTTONS: false
#If true, people will buy with left-click and sell with right-click.
SHIFT_SELLS_IN_STACKS: false
#If true, people will be able to buy/sell in 64 stacks while holding the crouch button.
SHIFT_ALLOWS: "SELL"
#What can you do by clicking shift with SHIFT_SELLS_IN_STACKS turned on? (ALL/BUY/SELL)
ALLOW_SIGN_CHEST_OPEN: false
#Can shop's chest be opened by owner with right-clicking a shop's sign?
ALLOW_LEFT_CLICK_DESTROYING: true
#If true, when you left-click your own shop sign you won't open chest's inventory, but instead you will start destroying the sign.

REMOVE_EMPTY_SHOPS: false
#If true, if the shop is empty, the sign is destroyed and put into the chest, so the shop isn't usable anymore.
REMOVE_EMPTY_CHESTS: false
#If true, if the REMOVE_EMPTY_SHOPS option is turned on, the chest is also destroyed.

ADMIN_SHOP_NAME: "Old"
#First line of your Admin Shop's sign should look like this:
SERVER_ECONOMY_ACCOUNT: ""
#The economy account which Admin Shops should use and to which all taxes will go
BANK_MEMBERS_ALLOWED: false
#Whether bank account members (if available) can create shops on its behalf
TAX_AMOUNT: 0
#Percent of the price that should go to the server's account. (100 = 100 percent)
BANK_TAX_AMOUNT: 0
#Percent of the price that should go to the server's account when buying from a bank.
SERVER_TAX_AMOUNT: 0
#Percent of the price that should go to the server's account when buying from an Admin Shop.
SHOP_CREATION_PRICE: 0.0
#Amount of money player must pay to create a shop
SHOP_REFUND_PRICE: 0.0
#How much money do you get back when destroying a sign?

BLOCK_SHOPS_WITH_SELL_PRICE_HIGHER_THAN_BUY_PRICE: true
#Should we block shops that sell things for more than they buy? (This prevents newbies from creating shops that would be exploited)

ALLOW_MULTIPLE_SHOPS_AT_ONE_BLOCK: false
#Do you want to allow other players to build a shop on a block where there's one already?
ALLOW_PARTIAL_TRANSACTIONS: true
#Can shops be used even when the seller doesn't have enough items? (The price will be scaled adequatly to the item amount)
ALLOW_AUTO_ITEM_FILL: true
#Can '?' be put in place of item name in order for the sign to be auto-filled?

SHOW_MESSAGE_OUT_OF_STOCK: true
#Do you want to show "Out of stock" messages?
SHOW_TRANSACTION_INFORMATION_CLIENT: true
#Do you want to show "You bought/sold... " messages?
SHOW_TRANSACTION_INFORMATION_OWNER: true
#Do you want to show "Somebody bought/sold... " messages?

LOG_TO_FILE: true
#If true, plugin will log transactions in its own file
LOG_TO_CONSOLE: false
#Do you want ChestShop's messages to show up in console?
LOG_TO_DATABASE: false
#If true, plugin will log transactions in EBean database
RECORD_TIME_TO_LIVE: 600
#How long should transaction information be stored in the database (in seconds, -1 means forever)?

STACK_TO_64: false
#Do you want to stack all items up to 64 item stacks?
USE_BUILT_IN_PROTECTION: true
#Do you want to use built-in protection against chest destruction?
STICK_SIGNS_TO_CHESTS: false
#Do you want to have shop signs "stick" to chests?
TURN_OFF_DEFAULT_PROTECTION_WHEN_PROTECTED_EXTERNALLY: false
#EXPERIMENTAL: Do you want to turn off the default protection when another plugin is protecting the block? (Will leave the chest visually open - CraftBukkit bug!)
TURN_OFF_SIGN_PROTECTION: false
#Do you want to turn off the default sign protection? Warning! Other players will be able to destroy other people's shops!
TURN_OFF_HOPPER_PROTECTION: true
#Do you want to disable the hopper protection, which prevents the hoppers from taking items out of chests?
PROTECT_CHEST_WITH_LWC: false
#Do you want to protect shop chests with LWC?
PROTECT_SIGN_WITH_LWC: false
#Do you want to protect shop signs with LWC?
REMOVE_LWC_PROTECTION_AUTOMATICALLY: false
#Should the chest's LWC protection be removed once the shop sign is destroyed? 

GENERATE_STATISTICS_PAGE: false
#If true, plugin will generate shop statistics webpage.
STATISTICS_PAGE_PATH: "plugins/ChestShop/website.html"
#Where should your generated website be saved?
STATISTICS_PAGE_GENERATION_INTERVAL: 60
#How often should the website be generated?

WORLDGUARD_INTEGRATION: false
#Do you want to only let people build inside regions?
WORLDGUARD_USE_FLAG: false
#Do you want to only let poeple build inside region flagged by doing /region regionName flag chestshop allow?
WORLDGUARD_USE_PROTECTION: false
#Do you want ChestShop to respect WorldGuard's chest protection?

HEROES_EXP: 100.0
#How much Heroes exp should people get for creating a ChestShop?


AUTHME_HOOK: false
#Do you want to deny shop access to unlogged users?
AUTHME_ALLOW_UNREGISTERED: false
#Do you want to allow shop access to unregistered users? (Example: registration is optional)


CACHE_SIZE: 1000
#How large should the internal uuid and name caches be?
SHOW_MESSAGE_FULL_SHOP: true
#Do you want to show "Full shop" messages?

CSTOGGLE_TOGGLES_OUT_OF_STOCK: false
#Can players hide the "Out of stock" messages with /cstoggle?
CSTOGGLE_TOGGLES_FULL_SHOP: false
#Can players hide the "Full shop" messages with /cstoggle?


SHOWITEM_MESSAGE: true
#Add icons and make item names hoverable in transaction messages when ShowItem is installed?

#A list of worlds in which to remove empty shops with the previous config. Case sensitive. An empty list means all worlds.
REMOVE_EMPTY_WORLDS: 
- "world1"
- "world2"

#How many decimal places are allowed at a maximum for prices?
PRICE_PRECISION: 2


#What containers are allowed to hold a shop? (Only blocks with inventories work!)
SHOP_CONTAINERS: 
- "CHEST"
- "TRAPPED_CHEST"
#Do you want to allow using shops to people who have access to it due to their permissions? (owners are always ignored)
IGNORE_ACCESS_PERMS: true

#Should all shop removals be logged to the console?
LOG_ALL_SHOP_REMOVALS: true

#How many seconds do you want to wait before showing notifications for the same shop to the owner again?
NOTIFICATION_MESSAGE_COOLDOWN: 10


#Enable this if you use BungeeCord and want players to receive shop notifications on other servers
BUNGEECORD_MESSAGES: false

#Of which type should the container protection be? Possible type: public, private, donate and on some LWC versions display
LWC_CHEST_PROTECTION_TYPE: "PRIVATE"
#Of which type should the sign protection be? Possible type: public, private, donate and on some LWC versions display
LWC_SIGN_PROTECTION_TYPE: "PRIVATE"

#Do you want to only let people build inside GriefPrevention claims?
GRIEFPREVENTION_INTEGRATION: false

#Do you want to only let people build inside RedProtect regions?
REDPROTECT_INTEGRATION: false


#Maximum amount of items that can be bought/sold at a shop. Default 3456 is a double chest of 64 stacks.
MAX_SHOP_AMOUNT: 3456

# Should the plugin log some messages that are useful for debugging?
DEBUG: false

# The uuid of the economy account for the Admin Shop. Useful for fake accounts as normally only accounts of players work
SERVER_ECONOMY_ACCOUNT_UUID: 00000000-0000-0000-0000-000000000000

# Should LWC limits block shop creations?
LWC_LIMITS_BLOCK_CREATION: true

# If true, people will be able to sell/buy everything available of the same type.
SHIFT_SELLS_EVERYTHING: true

# Do you want to turn off the automatic notifications for new development builds?
TURN_OFF_DEV_UPDATE_NOTIFIER: false
# Do you want to include some values of this config in the metrics? (This will not leak sensitive data but help in the development process)
INCLUDE_SETTINGS_IN_METRICS: true
# Only allow users to buy/sell that have access to the sign's protection? (E.g. LWC protection)
CHECK_ACCESS_FOR_SHOP_USE: false


# The default language when the client's language can't be found.
DEFAULT_LANGUAGE: "en"
# Should the plugin try to use a language file that matches the client's locale setting?
USE_CLIENT_LOCALE: true


# Add stock counter to quantity line?
USE_STOCK_COUNTER: false

# This makes sure that the UUIDs of player shop accounts match the server's online-mode setting. Disabling this might lead to issues with offline players and is therefore unsupported!
ENSURE_CORRECT_PLAYERID: true

# Make all admin shops be unlimited even if they have a shop container at the sign
FORCE_UNLIMITED_ADMIN_SHOP: false

# This regexp validates the name of the player. If the name doesn't match, the player will neither be able to create a valid shop sign, nor buy/sell from a shop. Note to Bedrock players: If you have Floodgate on your server, you should set this regexp to ^\\*?\\w+$ and ENSURE_CORRECT_PLAYERID to false
VALID_PLAYERNAME_REGEXP: "^\\w+$"

Server Version

This server is running Tuinity version git-Tuinity-"9bdcb9b" (MC: 1.16.5) (Implementing API version 1.16.5-R0.1-SNAPSHOT)

Server Log

Log
[15:34:30] [Server thread/ERROR]: Could not pass event BlockDestroyEvent to ChestShop v3.12-SNAPSHOT (build 282)
java.lang.StringIndexOutOfBoundsException: begin 0, end -1, length 2
	at java.lang.String.checkBoundsBeginEnd(Unknown Source) ~[?:?]
	at java.lang.String.substring(Unknown Source) ~[?:?]
	at com.Acrobot.ChestShop.Signs.ChestShopSign.isValidPreparedSign(ChestShopSign.java:165) ~[?:?]
	at com.Acrobot.ChestShop.Signs.ChestShopSign.isValid(ChestShopSign.java:67) ~[?:?]
	at com.Acrobot.ChestShop.Signs.ChestShopSign.isValid(ChestShopSign.java:62) ~[?:?]
	at com.Acrobot.ChestShop.Listeners.Block.Break.SignBreak.handlePhysicsBreak(SignBreak.java:62) ~[?:?]
	at com.Acrobot.ChestShop.Listeners.Block.Break.Attached.PaperBlockDestroy.onSign(PaperBlockDestroy.java:14) ~[?:?]
	at com.destroystokyo.paper.event.executor.StaticMethodHandleEventExecutor.execute(StaticMethodHandleEventExecutor.java:38) ~[patched_1.16.5.jar:git-Tuinity-"9bdcb9b"]
	at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:80) ~[patched_1.16.5.jar:git-Tuinity-"9bdcb9b"]
	at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[patched_1.16.5.jar:git-Tuinity-"9bdcb9b"]
	at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:607) ~[patched_1.16.5.jar:git-Tuinity-"9bdcb9b"]
	at org.bukkit.event.Event.callEvent(Event.java:45) ~[patched_1.16.5.jar:git-Tuinity-"9bdcb9b"]
	at net.minecraft.server.v1_16_R3.World.a(World.java:669) ~[patched_1.16.5.jar:git-Tuinity-"9bdcb9b"]
	at net.minecraft.server.v1_16_R3.Block.a(Block.java:170) ~[patched_1.16.5.jar:git-Tuinity-"9bdcb9b"]
	at net.minecraft.server.v1_16_R3.BlockBase$BlockData.a(BlockBase.java:651) ~[patched_1.16.5.jar:git-Tuinity-"9bdcb9b"]
	at net.minecraft.server.v1_16_R3.World.notifyAndUpdatePhysics(World.java:636) ~[patched_1.16.5.jar:git-Tuinity-"9bdcb9b"]
	at net.minecraft.server.v1_16_R3.World.a(World.java:581) ~[patched_1.16.5.jar:git-Tuinity-"9bdcb9b"]
	at net.minecraft.server.v1_16_R3.World.a(World.java:686) ~[patched_1.16.5.jar:git-Tuinity-"9bdcb9b"]
	at net.minecraft.server.v1_16_R3.Block.a(Block.java:170) ~[patched_1.16.5.jar:git-Tuinity-"9bdcb9b"]
	at net.minecraft.server.v1_16_R3.BlockBase$BlockData.a(BlockBase.java:651) ~[patched_1.16.5.jar:git-Tuinity-"9bdcb9b"]
	at net.minecraft.server.v1_16_R3.World.notifyAndUpdatePhysics(World.java:636) ~[patched_1.16.5.jar:git-Tuinity-"9bdcb9b"]
	at net.minecraft.server.v1_16_R3.World.a(World.java:581) ~[patched_1.16.5.jar:git-Tuinity-"9bdcb9b"]
	at net.minecraft.server.v1_16_R3.World.setTypeAndData(World.java:489) ~[patched_1.16.5.jar:git-Tuinity-"9bdcb9b"]
	at net.minecraft.server.v1_16_R3.World.a(World.java:652) ~[patched_1.16.5.jar:git-Tuinity-"9bdcb9b"]
	at net.minecraft.server.v1_16_R3.PlayerInteractManager.breakBlock(PlayerInteractManager.java:434) ~[patched_1.16.5.jar:git-Tuinity-"9bdcb9b"]
	at net.minecraft.server.v1_16_R3.PlayerInteractManager.a(PlayerInteractManager.java:344) ~[patched_1.16.5.jar:git-Tuinity-"9bdcb9b"]
	at net.minecraft.server.v1_16_R3.PlayerInteractManager.a(PlayerInteractManager.java:304) ~[patched_1.16.5.jar:git-Tuinity-"9bdcb9b"]
	at net.minecraft.server.v1_16_R3.PlayerConnection.a(PlayerConnection.java:1704) ~[patched_1.16.5.jar:git-Tuinity-"9bdcb9b"]
	at net.minecraft.server.v1_16_R3.PacketPlayInBlockDig.a(SourceFile:40) ~[patched_1.16.5.jar:git-Tuinity-"9bdcb9b"]
	at net.minecraft.server.v1_16_R3.PacketPlayInBlockDig.a(SourceFile:10) ~[patched_1.16.5.jar:git-Tuinity-"9bdcb9b"]
	at net.minecraft.server.v1_16_R3.PlayerConnectionUtils.lambda$ensureMainThread$1(PlayerConnectionUtils.java:55) ~[patched_1.16.5.jar:git-Tuinity-"9bdcb9b"]
	at net.minecraft.server.v1_16_R3.TickTask.run(SourceFile:18) ~[patched_1.16.5.jar:git-Tuinity-"9bdcb9b"]
	at net.minecraft.server.v1_16_R3.IAsyncTaskHandler.executeTask(IAsyncTaskHandler.java:136) ~[patched_1.16.5.jar:git-Tuinity-"9bdcb9b"]
	at net.minecraft.server.v1_16_R3.IAsyncTaskHandlerReentrant.executeTask(SourceFile:23) ~[patched_1.16.5.jar:git-Tuinity-"9bdcb9b"]
	at net.minecraft.server.v1_16_R3.IAsyncTaskHandler.executeNext(IAsyncTaskHandler.java:109) ~[patched_1.16.5.jar:git-Tuinity-"9bdcb9b"]
	at net.minecraft.server.v1_16_R3.MinecraftServer.bb(MinecraftServer.java:1311) ~[patched_1.16.5.jar:git-Tuinity-"9bdcb9b"]
	at net.minecraft.server.v1_16_R3.MinecraftServer.executeNext(MinecraftServer.java:1304) ~[patched_1.16.5.jar:git-Tuinity-"9bdcb9b"]
	at net.minecraft.server.v1_16_R3.IAsyncTaskHandler.awaitTasks(IAsyncTaskHandler.java:119) ~[patched_1.16.5.jar:git-Tuinity-"9bdcb9b"]
	at net.minecraft.server.v1_16_R3.MinecraftServer.sleepForTick(MinecraftServer.java:1280) ~[patched_1.16.5.jar:git-Tuinity-"9bdcb9b"]
	at net.minecraft.server.v1_16_R3.MinecraftServer.w(MinecraftServer.java:1124) ~[patched_1.16.5.jar:git-Tuinity-"9bdcb9b"]
	at net.minecraft.server.v1_16_R3.MinecraftServer.lambda$a$0(MinecraftServer.java:290) ~[patched_1.16.5.jar:git-Tuinity-"9bdcb9b"]
	at java.lang.Thread.run(Unknown Source) [?:?]

What other plugins are you running?

Plugins (91): Admin-Chat, antiRedstoneClock, ArmorStandEditor, AutoMessage, BentoBox, BetterGUI, BungeeHelpop, BuntetesLogolo, ChatControlRed, ChatReaction, ChestShop, ChestSort, Citizens, CompatNoCheatPlus, ConditionalCommands, CoreProtect, CraftBook, CratesPlus, CrazyAuctions, CrazyAuctionsLog, CreativeNbtControl, CustomCrafting, DyedBackpacks, EcoPower, EnderContainers, EntityDetection, Essentials, EssentialsChat, EssentialsProtect, EssentialsSpawn, EventekGUI, EventRendszer, ExtraGear, ExtraTools, F3NPerm, FarmLimiter, FastAsyncWorldEdit (WorldEdit), FluffyMachines, HeadDatabase, HolographicDisplays, HonapStaffja, Jatekido, Kezdes, LiteXpansion, LockettePro, Lottery, LuckPerms, mcMMO, MineMarket-Universal, MobFarmManager, Multiverse-Core, Multiverse-NetherPortals, MyCommand, MyPet, NoCheatPlus, OpenInv, PlaceholderAPI, PlugMan, PocketGames, PomaBot, PomaDrops, PomaExpansion, PotionArmors, ProtocolLib, RedstoneClockDetector, RemoveUnbreaking, RestrictedCreative, SFCalc, ShopGUIPlus, Shopkeepers, SkinsRestorer, sleep-most, Slimefun, SlimefunFix, SlimefunLuckyBlocks, StaffChat, SzulinapiKalapok, TAB, TokenManager, TokenShopEditor, TokenStaff, TreasureChest, Vault, Votifier, VotingPlugin, WDLCompanion, WolfyUtilities, WorldBorder, WorldGuard, WorldGuardExtraFlags, WorldGuardPomaFlags

What is happening?

The ChestShop writes this error on console sometimes.

What did you expect to happen?

The ChestShop no writes this error on console sometimes.

Additional context

commented

You are running an outdated build of ChestShop, please update to the latest development build and see if the issue persists.

Edit: Also if it does then please provide some info about the shop in question.

Edit2: Ok, apparently nothing there changed.