[ECON] ChestShop 3.7.18 (iConomyChestShop) - Chest&sign shop for economy plugins [1.8]

Discussion in 'Archived: Plugin Releases' started by Acrobot, Feb 12, 2011.

  1. Offline

    Acrobot

    An easy way to create shops - no protection plugin needed!
    You don't need to be on-line to earn money anymore!
    [​IMG]
    I've put a LOT of effort into making this plugin,
    you can donate if you appreciate my effort =)

    Requirements:
    - An economy plugin supported by Register or Vault, for example iConomy, BOSEconomy or Essentials Eco.
    Optional:
    - For additional economy plugin support - Vault
    - For Permissions: bPermissions, PEX, or any other permission plugin
    - For additional protection: LWC, Lockette, Deadbolt
    - For other item names (aliases): OddItem


    Setup:
    Copy the .jar file from the .zip you downloaded into /plugins folder.
    You can also copy the example files if you want to generate statistics page.

    Translations:
    You can change the plugin's language, here's a list of all user-made translations.
    If you want to update or submit a translation, feel free to PM me.
    Translations (open)

    Arabic - Attarhsase2
    Bulgarian - Muff1Ncho
    Czech - LordPgsa
    Chinese (Simplified) - tab415263
    Danish - Cannafix
    Dutch - speedlegs
    French- DragonSlayer875
    German - RasCas
    Hungarian - Anachen
    Indonesian - Yahya98
    Italian - Massimo1993
    Korean - Zwing87
    Norwegian - _AlexN_ and TheUnkownGamer
    Polish - Holls1
    Portugese (Brasil) - FelipeMarques14
    Russian - VADemon from http://minemania.ru/
    Slovak - LordPgsa
    Slovenian - jEErc
    Spanish - thxaaaa
    Swedish - Maxell
    Turkish - Developer
    Traditional Chinese - hellboyincs
    Vietnamese - etrubi1 from http://minevn.com/


    Permissions:
    How to create a ChestShop?
    - Place a chest, if you haven't already.
    - Place a sign 1 block near the chest (for example, above the chest)
    - On the sign, write:

    [​IMG]
    (Item name can actually be item ID or alias)
    First line will be filled in by the plugin automatically.
    Price is a combination of buy and sell price.
    You have to have B near buy price (people buy from you), and S near sell price (people sell to you).
    If you have both B and S, separate them with a colon - :
    For example:
    [​IMG]

    means that AcrobotPL wants to sell 64 diamonds for 10 currency, and buy them back from you for 5 currency.
    Also, if you put "free" instead of price, it is free to buy or sell :)

    - Now, when you finish editing the sign, if LWC is turned on in config, shop will be automatically created.
    Also, if your default protection is turned on in the config, people won't be able to break chest, sign or the block the sign is on.

    What is an Admin Shop?
    Admin shop is the shop that doesn't require a chest, because it has infinite stock.
    If you sell to it, the items will disappear, and if you buy from it, items will magically appear.
    To create one, you have to be Admin/OP. Just put "Admin Shop" (or anything specified in config file) on the first line of the sign.

    Restricting shops to some groups or regions
    You can either use permissions, or you can just put a sign ABOVE shop sign (you need to be in that group to create the sign) to restrict it to players with ChestShop.group.groupName permission
    The syntax is:
    [restricted]
    firstGroupName
    2ndGroupName
    3rdGroupName
    Only those groups will be able to use that shop

    To restrict a shop to some regions:
    - If you're using Towny, turn TOWNY_INTEGRATION on. Residents will be able to create shops in economy plots (either their or, if specified in config, any)
    - If you're using WorldGuard, you can use an experimental "chestshop" flag. Turn WORLDGUARD_INTEGRATION on and flag a region. (f.e. /region flag ChestShopRegion chestshop allow)

    Do you want to limit the maximum prices for items?
    Well, there's an app.... wait, not that : P
    You can use an experimental feature in ChestShop.
    In your config.yml, add lines like:
    max-buy-price-5: 14
    max-sell-price-5: 15

    That means that the maximum price for items BOUGHT by PLAYER is 14, and items SOLD by PLAYER using the shop is 15.

    You can also use a global setting, like this:
    max-sell-price: 200

    That means that the maximum price for items SOLD to PLAYER is 200 (if there is, for example, a max-sell-price-5 found, it will be used instead of the global sell price)

    USING SHOPS
    You could buy and sell by right and left clicking the sign for a long time.
    Now it's the only way to use the shops.
    It's SIMPLE!
    Just LEFT-CLICK to SELL to shop, and
    RIGHT-CLICK to BUY from shop.
    (This can be changed in the config file)

    DESTROYING SHOPS
    If you want to delete your old shop, simply SNEAK and destroy the sign.
    It's that easy =)

    STOCKING THE SHOPS
    You can either open the chest and stock it up, or click on your own sign - it will open chest's inventory (that way you can have chests not openable by other people for sure :D)

    ItemInfo command
    It's a simple command that shows item information.
    If you use it without any arguments, it shows you information about the item you're holding.
    If you specify item id or item name after the command, it will show you information about that item.

    Source code
    ChestShop is Open-Source =)
    You can find its code on https://github.com/Acrobot/ChestShop-3


    Thanks to:
    - kali876, ziomekYOYO and Herocraft server for testing the plugin and finding every little bug =)
    - Everyone who uses this plugin - really big thanks for this, I never thought it will be so popular
    - Everyone who provided translation - many people's lives will be easier now
    - @Nijikokun for Register
    - @LennardF1989 for awesome Persistence Reimplemented
    - @Temaska for fixing the plugin while I was on holidays
    - @VADemon for providing a great support for other users
    - @Euthyphro for his patience and really good bug spotting
    - vagrant326 for making a great price sheet
    - Epics for his great help
    :)
    If something's not working
    You can't change the sign color - that breaks the formatting.
    If that's not the issue, please give me this information, so I can help you faster.
    - CraftBukkit version (type /version in chat)
    - ChestShop version (type /csversion in chat)
    - Your economy plugin (iConomy? BOSEconomy? other one?)
    - Have you got any Permission plugin? Which one?

    [​IMG]
    Changelog (open)

    Changelog can be found on BukkitDev - http://dev.bukkit.org/server-mods/chestshop/files/
     
  2. Offline

    Acrobot

    @Beaverbeliever
    Not really :/
    I wish that Cuboid support was official in Bukkit, then I could do that and many more things.
    And for LWC, there is one :)
     
  3. Offline

    Magie

    Everytime when I start server I've this error in log

    Code:
    2011-07-31 00:51:15 [SEVERE] Could not load 'plugins/iConomyChestShop.jar' in folder 'plugins':
    javax.persistence.PersistenceException: Problem loading Database Driver [org.sqlite.Driver]: org.sqlite.Driver
        at com.avaje.ebeaninternal.server.lib.sql.DataSourcePool.initialise(DataSourcePool.java:234)
        at com.avaje.ebeaninternal.server.lib.sql.DataSourcePool.<init>(DataSourcePool.java:208)
        at com.avaje.ebeaninternal.server.lib.sql.DataSourceManager.getDataSource(DataSourceManager.java:210)
        at com.avaje.ebeaninternal.server.lib.sql.DataSourceGlobalManager.getDataSource(DataSourceGlobalManager.java:63)
        at com.avaje.ebeaninternal.server.core.DefaultServerFactory.getDataSourceFromConfig(DefaultServerFactory.java:427)
        at com.avaje.ebeaninternal.server.core.DefaultServerFactory.setDataSource(DefaultServerFactory.java:388)
        at com.avaje.ebeaninternal.server.core.DefaultServerFactory.createServer(DefaultServerFactory.java:168)
        at com.avaje.ebeaninternal.server.core.DefaultServerFactory.createServer(DefaultServerFactory.java:64)
        at com.avaje.ebean.EbeanServerFactory.create(EbeanServerFactory.java:78)
        at org.bukkit.plugin.java.JavaPlugin.initialize(JavaPlugin.java:176)
        at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:175)
        at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:207)
        at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:130)
        at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:128)
        at org.bukkit.craftbukkit.CraftServer.<init>(CraftServer.java:97)
        at net.minecraft.server.ServerConfigurationManager.<init>(ServerConfigurationManager.java:51)
        at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:132)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:335)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    Caused by: java.lang.ClassNotFoundException: org.sqlite.Driver
        at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:247)
        at com.avaje.ebeaninternal.api.ClassLoadContext.forName(ClassLoadContext.java:73)
        at com.avaje.ebeaninternal.api.ClassUtil.forName(ClassUtil.java:53)
        at com.avaje.ebeaninternal.server.lib.sql.DataSourcePool.initialise(DataSourcePool.java:232)
        ... 18 more
    I'm using LWC 3.0 Beta 11 but the error is showing with 2.75 too
     
  4. Offline

    Acrobot

    @Magie
    Something is wrong with your CraftBukkit o.0
    Please try deleting bukkit.yml, if that doesn't work, re-download CraftBukkit.jar
     
  5. Offline

    Beaverbeliever

    LWC has the ability to limit to WorldGuard regions, but not Towny towns (which would be fine if Town's weren't so dynamic in shape and size). It would be cool if there was some way to make the Town sizes into WorldGuard regions automatically, since WorldGuard is more widely accepted for integration, and use.
     
  6. Offline

    Acrobot

    @Beaverbeliever
    Oh, like that.
    Yeah, it is.
    It would be really nice if there was official region support -> that would mean no troubles with Towny/WorldGuard/any plugin :)
     
  7. Offline

    Beaverbeliever

    How hard would it be though to just add something to LWC to tell if the chest/door/furnace/dispenser/sign was in a Town or not? I messaged the creator, but he never replied back to me.
     
  8. Offline

    Acrobot

  9. Offline

    Scowen

    There is a very bad exploit with this plugin!

    You you punch the sign as if you want to sell the shop and then spam right click, you can access the chest. Can this be fixed asap please?
     
  10. Offline

    Acrobot

    @Scowen
    WOW?
    How, this is NOT POSSIBLE o.0
    The code for opening chest GUI is executed only if
    Code:
    if (playerName.equals(sign.getLine(0))) {
    
    Well... Could you provide me with more information, for example CB build, plugin version, could it be some other conflicting plugin?
     
  11. Hello me again,

    just posting another lwc bug. Everytime someone remakes a sign, i.e. changes the value of items in the shop, it seems to add another lwc protection to the same block rather than using the previously stated one or removing the one before and creating a brand new one.

    i hope that makes sense as its kinda hard to explain lol.

    Cheers Spidi
     
  12. Offline

    Acrobot

    @Spidi
    Hmm... Oh, ok.
    I thought it would remove the last protection, thanks for submitting this :)
     
  13. Offline

    Silicon

    hello acrobat, love your plugin and you are very good at supporting it, I was wondering if it was possible for you to get it to work with SimpleSignEdit when i right click with a sign it gives me an extra sign instead of editing, he has a fix posted on the page.
     
  14. Offline

    Acrobot

    @Silicon
    Hi :)
    It theoretically could be possible, but IMHO it's just "fixing" a bug in the plugin. As he said,
    I will try to fix it using MY method, if it doesn't work, I will try to contact the developer of that plugin and we'll think of something together :)

    EDIT: BTW, why don't you just use the shops without a sign in the hand?
     
  15. Offline

    darkcloud784

    I changed the database on my servers iConomy tracking and now I'm getting.

    Code:
    2011-08-01 02:47:20 [INFO] DataSourcePool [iConomyChestShop] grow; id[iConomyChestShop.4] busy[5] max[20]
    2011-08-01 02:47:23 [INFO] Can not test connection as heartbeatsql is not set
    2011-08-01 02:47:24 [INFO] Closing Connection[iConomyChestShop.4] psReuse[0] psCreate[1] psSize[0]
    2011-08-01 02:47:25 [INFO] DataSourcePool [iConomyChestShop] grow; id[iConomyChestShop.5] busy[6] max[20]
    2011-08-01 02:47:25 [INFO] DataSourcePool [iConomyChestShop] grow; id[iConomyChestShop.6] busy[7] max[20]
    2011-08-01 02:47:25 [INFO] DataSourcePool [iConomyChestShop] grow; id[iConomyChestShop.7] busy[8] max[20]
    2011-08-01 02:47:25 [SEVERE] javax.persistence.PersistenceException: Query threw SQLException:[SQLITE_BUSY]  The database file is locked (database is locked)
    Bind values:[null]
    Query was:
    select t0.id c0, t0.buy c1, t0.shop_owner c2, t0.shop_user c3, t0.item_id c4, t0.item_durability c5, t0.amount c6, t0.price c7, t0.sec c8
    from ics_transactions t0
    where t0.sec < ?
    
    2011-08-01 02:47:25 [SEVERE]     at com.avaje.ebeaninternal.server.query.CQuery.createPersistenceException(CQuery.java:849)
    2011-08-01 02:47:25 [SEVERE]     at com.avaje.ebeaninternal.server.query.CQuery.createPersistenceException(CQuery.java:829)
    2011-08-01 02:47:25 [SEVERE]     at com.avaje.ebeaninternal.server.query.CQueryEngine.findMany(CQueryEngine.java:238)
    2011-08-01 02:47:25 [SEVERE]     at com.avaje.ebeaninternal.server.query.DefaultOrmQueryEngine.findMany(DefaultOrmQueryEngine.java:104)
    2011-08-01 02:47:25 [SEVERE]     at com.avaje.ebeaninternal.server.core.OrmQueryRequest.findList(OrmQueryRequest.java:344)
    2011-08-01 02:47:25 [SEVERE]     at com.avaje.ebeaninternal.server.core.DefaultServer.findList(DefaultServer.java:1469)
    2011-08-01 02:47:25 [SEVERE]     at com.avaje.ebeaninternal.server.querydefn.DefaultOrmQuery.findList(DefaultOrmQuery.java:906)
    2011-08-01 02:47:25 [SEVERE]     at com.avaje.ebeaninternal.util.DefaultExpressionList.findList(DefaultExpressionList.java:201)
    2011-08-01 02:47:25 [SEVERE]     at com.Acrobot.iConomyChestShop.Logging.removeOld(Logging.java:76)
    2011-08-01 02:47:25 [SEVERE]     at com.Acrobot.iConomyChestShop.Logging.run(Logging.java:82)
    2011-08-01 02:47:25 [SEVERE]     at org.bukkit.craftbukkit.scheduler.CraftWorker.run(CraftWorker.java:34)
    2011-08-01 02:47:25 [SEVERE]     at java.lang.Thread.run(Thread.java:636)
    2011-08-01 02:47:25 [SEVERE] Caused by: java.sql.SQLException: [SQLITE_BUSY]  The database file is locked (database is locked)
    2011-08-01 02:47:25 [SEVERE]     at org.sqlite.DB.newSQLException(DB.java:383)
    2011-08-01 02:47:25 [SEVERE]     at org.sqlite.DB.newSQLException(DB.java:387)
    2011-08-01 02:47:25 [SEVERE]     at org.sqlite.DB.throwex(DB.java:374)
    2011-08-01 02:47:25 [SEVERE]     at org.sqlite.NativeDB.prepare(Native Method)
    2011-08-01 02:47:25 [SEVERE]     at org.sqlite.DB.prepare(DB.java:123)
    2011-08-01 02:47:25 [SEVERE]     at org.sqlite.PrepStmt.<init>(PrepStmt.java:42)
    2011-08-01 02:47:25 [SEVERE]     at org.sqlite.Conn.prepareStatement(Conn.java:404)
    2011-08-01 02:47:25 [SEVERE]     at org.sqlite.Conn.prepareStatement(Conn.java:399)
    2011-08-01 02:47:25 [SEVERE]     at org.sqlite.Conn.prepareStatement(Conn.java:383)
    2011-08-01 02:47:25 [SEVERE]     at com.avaje.ebeaninternal.server.lib.sql.PooledConnection.prepareStatement(PooledConnection.java:426)
    2011-08-01 02:47:25 [SEVERE]     at com.avaje.ebeaninternal.server.lib.sql.PooledConnection.prepareStatement(PooledConnection.java:396)
    2011-08-01 02:47:25 [SEVERE]     at com.avaje.ebeaninternal.server.query.CQuery.prepareBindExecuteQuery(CQuery.java:399)
    2011-08-01 02:47:25 [SEVERE]     at com.avaje.ebeaninternal.server.query.CQueryEngine.findMany(CQueryEngine.java:198)
    2011-08-01 02:47:25 [SEVERE]     ... 9 more
    It still seems to be logging in the SQL table and all the settings are correct for the database.

    Here are my iConomyChestShop Settings.
    Code:
    maxPrice: 500
    minPrice: 0
    #maxPrice - maximum buy/sell price
    #minPrice - minimum buy/sell price
    
    reverseButtons: false
    sell: true
    distance: 2
    position: 'ANY'
    protection: true
    
    #reverseButtons - If true, people buy with left click and sell with right click.
    #sell - Do you want to let people create/use shops, that buy things from players?
    #distance - Distance between the chest and the sign. (Warning, chests that aren't exactly that far WON'T work as shops)
    #position - Position of the chest, relative to the sign. ANY for anything in radius of 1 block, other: goo.gl/YItRO
    #protection - Do you want to use built-in shop protection?
    
    LWCprotection: true
    signLWCprotection: true
    
    #LWCprotection - Do you want to protect the chests with LWC?
    #signLWCprotection - Do you want to protection signs with LWC? (Warning, gives LWC message when using shop!)
    
    log: true
    logToFile: false
    logFilePath: "plugins/iConomyChestShop/iConomyChestShop.log"
    
    #log - Do you want to log transactions and shop creating?
    #logToFile - Do you want to save the log to file? (Warning, this lags a bit - I reccomend turning this off, as server.log will have these informations too.)
    #logFilePath - Path to log file.
    
    sneakMode: true
    allowUsedItemsToBeSold: true
    stackUnstackableItems: true
    
    #sneakMode - Do you want to let people to shop using left mouse button, and destroy the shop signs when sneaking?
    #allowUsedItemsToBeSold - Do you want to let people sell used tools to the shop? (Warning, the tools will be "fresh" if player sells them. NOT RECCOMENDED)
    #stackUnstackableItems - Do you want to stack all items in chest?
    
    useDB: true
    howLongToStoreInformationInDB: 900
    intervalBetweenTransactions: 100
    
    #useDB - Do you want to use bukkit's built-in database to log the transactions? (Must be turned on, if you want to generate price list)
    #howLongToStoreInformationInDB - How old the transation must be before being deleted? (In seconds)
    #intervalBetweenTransaction - How often can one person buy or sell to the shop? (In miliseconds: 1000ms = 1 sec)
    
    generateTransactionList: true
    intervalBetweenGeneratingTransactionList: 5
    showUnusedItemsInGeneratedList: true
    generatedTransactionListPath: "/var/www/html/shops/ChestShop.stats.html"
    #generateTransactionList - Do you want to generate average price, amount of bought, sold items page? (Currently in ALPHA state)
    #intervalBetweenGeneratingTransactionList - Interval between generating the list. (In seconds)
    #showUnusedItemsInGeneratedList - Do you want to show items, that were not bought/sold on the list?
    
    separatingLineAfterTransaction: true
    doNotRemoveSignIfNotCorrect: false
    serverAccountName: "Server"
    #separatingLineAfterTransaction - Do you want to show a line in the chat after transaction?
    #doNotRemoveSignIfNotCorrect - Do you want to keep the sign, if it's not correct?
    #serverAccountName - Account of the server to use with AdminShops, blank if you don't want to use one
    
    #Messages:
    showOutOfStock: true
    showMoneyAfterTransaction: true
    
    #showOutOfStock - Do you want to show "Out of stock" messages?
    #showMoneyAfterTransaction - Do you want to show your balance after transaction?
    
    # If you want to translate this file, do it yourself, or copy the "lang:" part from another translation.
    # Prefix will be dispayed at the beggining of every message.
    # You can use terms like <buyer>, <amount> or <item> in messages, however
    # only certain messagess offer this.
    #
    # <buyer> - nick of the person who bought from shop.
    # <seller> - nick of the person who sold to shop.
    # <owner> - nick of the person who own the shop.
    # <amount> - amount of item
    # <item> - name of item
    # <money> - amount of money with iConomy currency
    # <cost> - cost of the item
    #
    # You can always use hMod colors, like
    # &1, &f etc...
    # For example: This is my&6 golden text.
    
    #MAXIMUM OF 55 CHARACTERS WITH PREFIX!
    
    #Experimental: Try changing the prefix to '                          &a[Shop] &f                                             '
    #The text will be centered!
    lang:
        prefix: '&a[Shop] &f'
        Somebody_sold_items_to_your_shop: '<seller> sold <amount> <item> for <cost> to your shop!'
        Somebody_bought_items_from_your_shop: '<buyer> bought <amount> <item> for <cost>!'
        Your_shop_is_out_of_stock: 'Your <item> shop is out of stock!'
        You_cannot_use_your_own_shop: "You can't use your own shop!"
    
        You_bought_items: 'You bought <amount> <item> from <owner> for <cost>.'
    
        Your_inventory_is_full: 'Your inventory is full!'
        You_have_got_not_enough_money: "You don't have enough money!"
        Shop_is_out_of_stock: 'This shop is out of stock!'
    
        You_have_not_enough_items: 'You have not enough items to sell!'
        You_sold_items: "You sold <amount> <item> for <cost> to <owner>'s shop."
        Chest_is_full: 'This chest is full!'
    
        Seller_has_not_enough_money: "Seller has not enough money!"
        Seller_has_no_account: "Seller's account doesn't exist!"
        No_selling_to_this_shop: "Shop owner doesn't want you to sell here!"
        No_buying_from_this_shop: "Shop owner doesn't want you to buy here!"
    
        Your_balance: 'After transaction you have <money>.'
    
        Shop_is_created: 'Your shop has been successfully created!'
        Shop_cannot_be_created: "You have no chest set up!"
        Shop_was_LWC_protected: "Your shop was successfully protected with LWC."
    
        Mode_changed_to_sell: 'Mode set to selling!'
        Mode_changed_to_buy: 'Mode set to buying!'
    
        You_tried_to_steal: "Don't steal!"
        wait: "&4Wait!"
    
        iteminfo: "&aItem ID and names:"
        incorrectID: "Incorrect item ID!"
        Couldnt_fit_on_sign: "Couldn't fit something on the sign!"
        Negative_price: "Can't make shop with negative buy/sell price!"
        Incorrect_price: "This price is too high/low!"
        Incorrect_item_amount: "The item amount you specified is invalid!"

    Edit: I also forgot to mention I have been getting this error randomly as well.
    Code:
    2011-08-01 01:51:56 [SEVERE] Could not pass event SIGN_CHANGE to iConomyChestShop
    java.lang.NoSuchMethodError: com.griefcraft.sql.PhysDB.registerProtection(IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;III)V
        at com.Acrobot.iConomyChestShop.ProtectionManager.protectBlock(ProtectionManager.java:65)
        at com.Acrobot.iConomyChestShop.SignManager.onSignChange(SignManager.java:165)
        at org.bukkit.plugin.java.JavaPluginLoader$32.execute(JavaPluginLoader.java:462)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:332)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:969)
        at net.minecraft.server.Packet130UpdateSign.a(SourceFile:41)
        at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:85)
        at net.minecraft.server.NetworkListenThread.a(SourceFile:105)
        at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:451)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:361)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    2011-08-01 01:52:51 [SEVERE] Could not pass event SIGN_CHANGE to iConomyChestShop
    java.lang.NoSuchMethodError: com.griefcraft.sql.PhysDB.registerProtection(IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;III)V
        at com.Acrobot.iConomyChestShop.ProtectionManager.protectBlock(ProtectionManager.java:65)
        at com.Acrobot.iConomyChestShop.SignManager.onSignChange(SignManager.java:165)
        at org.bukkit.plugin.java.JavaPluginLoader$32.execute(JavaPluginLoader.java:462)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:332)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:969)
        at net.minecraft.server.Packet130UpdateSign.a(SourceFile:41)
        at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:85)
        at net.minecraft.server.NetworkListenThread.a(SourceFile:105)
        at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:451)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:361)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    2011-08-01 01:53:10 [SEVERE] Could not pass event SIGN_CHANGE to iConomyChestShop
    java.lang.NoSuchMethodError: com.griefcraft.sql.PhysDB.registerProtection(IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;III)V
        at com.Acrobot.iConomyChestShop.ProtectionManager.protectBlock(ProtectionManager.java:65)
        at com.Acrobot.iConomyChestShop.SignManager.onSignChange(SignManager.java:165)
        at org.bukkit.plugin.java.JavaPluginLoader$32.execute(JavaPluginLoader.java:462)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:332)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:969)
        at net.minecraft.server.Packet130UpdateSign.a(SourceFile:41)
        at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:85)
        at net.minecraft.server.NetworkListenThread.a(SourceFile:105)
        at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:451)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:361)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    2011-08-01 01:53:56 [SEVERE] Could not pass event SIGN_CHANGE to iConomyChestShop
    java.lang.NoSuchMethodError: com.griefcraft.sql.PhysDB.registerProtection(IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;III)V
        at com.Acrobot.iConomyChestShop.ProtectionManager.protectBlock(ProtectionManager.java:65)
        at com.Acrobot.iConomyChestShop.SignManager.onSignChange(SignManager.java:165)
        at org.bukkit.plugin.java.JavaPluginLoader$32.execute(JavaPluginLoader.java:462)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:332)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:969)
        at net.minecraft.server.Packet130UpdateSign.a(SourceFile:41)
        at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:85)
        at net.minecraft.server.NetworkListenThread.a(SourceFile:105)
        at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:451)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:361)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
     
  16. Offline

    Acrobot

    @darkcloud784
    Hmm... Seems like, well... SQLite is busy :p
    I'd recommend to delete plugins/iConomyChestShop/iConomyChestShop.db

    Also, you could try ChestShop BETA, which will fix your last bug. (Also, it's Easier, Better, Faster, Stronger :p)
     
  17. Offline

    darkcloud784

    I switch to ChestShop BETA and it is working great, but now ChestShop.stats.html isnt working. It rights the file but its blank. The header,footer,and row are all in the same folder as ChestShop.stats.html.
     
  18. Offline

    Acrobot

    @darkcloud784
    That's the problem, you need to have "HTML" folder in "ChestShop" folder, in which you should have:
    footer.html
    header.html
    row.html

    (You can find them in "Sample files" folder in the .zip)
     
  19. Offline

    whitemorn

    Morning I switched to Beta 11 to try to fix the [SEVERE] Could not pass event SIGN_CHANGE to iConomyChestShop errors but no luck. I deleted the previous iconomychestshop files and folder for a clean install.

    With the clean install I end up with 2 folders in plugins, chestshop (HTML folder and files, YMLs) and iconomychestshop (db file) every action in game would work but it would add messages that it was not installed properly and to copy everything from the zip (no errors in the log) even though I did. The only way I could stop the message was to copy and paste the config and local ymls into the iconomychestshop.

    Every action generates this error in the log but the shops are working.
    Code:
    2011-08-01 07:53:24 [SEVERE] Could not pass event SIGN_CHANGE to iConomyChestShop
    java.lang.NullPointerException
        at com.Acrobot.iConomyChestShop.Basic.goodCfg(Basic.java:57)
        at com.Acrobot.iConomyChestShop.Basic.checkConfig(Basic.java:151)
        at com.Acrobot.iConomyChestShop.SignManager.onSignChange(SignManager.java:42)
        at org.bukkit.plugin.java.JavaPluginLoader$32.execute(JavaPluginLoader.java:462)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:332)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:969)
        at net.minecraft.server.Packet130UpdateSign.a(SourceFile:41)
        at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:85)
        at net.minecraft.server.NetworkListenThread.a(SourceFile:105)
        at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:451)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:361)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    
     
  20. Offline

    Acrobot

    @whitemorn
    Ehhh... Did you delete the old iConomyChestShop.jar?
    The newest version is called "ChestShop" - since it supports many more Economy plugins =)
    Be sure to DELETE both:
    iConomyChestShop folder
    iConomyChestShop.jar

    And just copy ChestShop.jar into plugins folder :)
     
  21. Offline

    riuthamus

    We have not moved to the test build yet, did you add in the option to remove notices?
     
  22. Offline

    whitemorn

    Good lord, I could have sworn I removed the old one. I know better.. updating this way to early in the morning.
     
  23. Offline

    Acrobot

    @riuthamus
    Not really, but there's less of them. I am adding that option in the version I have on the PC :p
     
  24. Offline

    riuthamus

    Okay, well i cant wait for it!! :p
     
  25. Offline

    Acrobot

    @riuthamus
    Oh, I can give you the before-alpha version, if you want, because I'll be on a trip soon :p
     
  26. Offline

    Poeschl

    Does the statspage update after the time in the config-file? It seem it doesn't do that for me.
    The html-Templates are in the right dic and it generates a page with the head and foot, but it don't display any item in the table. My server contains 3 player-shops at the moment.

    Config:
    PREFERRED_ECONOMY_PLUGIN: ""
    #Preferred economy plugin (iConomy, BOSEconomy, Essentials). If you do not want to specify this, leave it blank.
    REVERSE_BUTTONS: false
    #If true, people will buy with left-click and sell with right-click.
    SERVER_ECONOMY_ACCOUNT: "town-MineCity"
    #Economy account's name you want Admin Shops to be assigned to
    ADMIN_SHOP_NAME: "MineCity Shop"
    #First line of your admin shop should look like this
    LOG_TO_FILE: false
    #If true, plugin will log transactions in its own file
    LOG_TO_CONSOLE: true
    #Do you want ChestShop's messages to show up in console?
    LOG_TO_DATABASE: false
    #If true, plugin will log transactions in EBean database
    GENERATE_STATISTICS_PAGE: true
    #If true, plugin will generate shop statistics webpage.
    STATISTICS_PAGE_PATH: "plugins/dynmap/web/shopstats.html"
    #Where should your generated website be saved?
    RECORD_TIME_TO_LIVE: 600
    #How long should transaction information be stored?
    STATISTICS_PAGE_GENERATION_INTERVAL: 60
    #How often should the website be generated?
    USE_BUILT_IN_PROTECTION: true
    #Do you want to use built-in protection against chest destruction?
    PROTECT_CHEST_WITH_LWC: true
    #Do you want to protect shop chests with LWC?
    PROTECT_SIGN_WITH_LWC: false
    #Do you want to protect shop signs with LWC?
    MASK_CHESTS_AS_OTHER_BLOCKS: false
    #Do you want to mask shop chests as other blocks? HIGHLY EXPERIMENTAL, CAN LAG!
    [/CODE]Hope you can help me :)
     
  27. Offline

    obnoxint

    Hello @Acrobot,
    i would love to have an optional VAT-Feature. Some friends of mine who are running a SMP-Server requested this feature. The idea is to draw off a certain percentage always when a shopowner buys or sells stuff and transfer the VAT to a seperate account.
    I thought about forking the project but i were unable to spend the time to keep it up-to-date.

    Thank you for looking into this.
    Bye.
     
  28. Offline

    Acrobot

    @obnoxint
    Hmm, ok, I'll add that :p

    @Poeschl
    Hmm...
    Well, you can try doing some transactions :)
     
  29. Offline

    riuthamus

    nah i can wait... just being silly! :p Thanks for all your hard work!
     
  30. Offline

    obnoxint

    Thank you very much. My friends will be so happy about this news.
     
    Neils likes this.
  31. Offline

    Neils

    Thats right
     

Share This Page