[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

    DoomAngelBlade

    Problem: Sign is locked with magical spell when using.
    Details: The sign That was created can not be used, because it is locked with magical spell when using, even if it was created for Shop.
    Example:
    Im putting a chest, with A Planks in it.
    Putting a Sign Upper a chest
    Typing:
    <empty>
    1
    1
    5
    Result:
    DoomAngelBlade
    1
    B 1
    Planks

    After A Right click i have a message:
    Sign is locked with magical spell.
    I can not Buy From Shop Using Signs.
     
  3. Offline

    Acrobot

    DoomAngelBlade
    The "the block is locked with magical spell" is not blocking the sign interaction. Are you in creative mode? If so, try changing the gamemode to survival or change the setting in the config.

    Also, try updating to 3.37 again.
     
  4. Offline

    DoomAngelBlade

    Strange Things:
    After Creating A sign i have Next Words in my chat:
    Null Null.


    Config:
    PREFERRED_ECONOMY_PLUGIN: "iConomy"
    #WHEN NOT USING VAULT. 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.
    ALLOW_LEFT_CLICK_DESTROYING: true
    #If true, if you left-click your own shop sign you won't open chest's inventory, but instead you will start destroying the sign.
    STACK_UNSTACKABLES: false
    #If true, ALL things (including food, etc.) will stack up to 64
    SERVER_ECONOMY_ACCOUNT: ""
    #Economy account's name you want Admin Shops to be assigned to
    ADMIN_SHOP_NAME: "Admin Shop"
    #First line of your admin shop should look like this
    SHOP_CREATION_PRICE: 0
    #Amount of money player must pay to create a shop
    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: false
    #If true, plugin will generate shop statistics webpage.
    STATISTICS_PAGE_PATH: "plugins/ChestShop/website.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: false
    #Do you want to protect shop chests with LWC?
    PROTECT_SIGN_WITH_LWC: false
    #Do you want to protect shop signs with LWC?
    IGNORE_CREATIVE_MODE: true
    #Do you want to allow using shops to people in creative mode?
    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?
    TOWNY_INTEGRATION: false
    #Do you want to only let people build inside shop plots?
    TOWNY_SHOPS_FOR_OWNERS_ONLY: true
    #If true, only plot owners are able to build inside a shop plot. If false, every town's resident is able to build there.
    WORLDGUARD_INTEGRATION: false
    #Do you want to only let people build inside plots?
    TAX_AMOUNT: 0
    #Percent of the price that should go to the server's account. (100 = 100 percent)
    SERVER_TAX_AMOUNT: 0
    #Percent of the price that should go to the server's account when buying from an Admin Shop
    SHOP_REFUND_PRICE: 0
    #How much money do you get back when destroying a sign?
    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?
    SHOP_INTERACTION_INTERVAL: 100
    #(In 1/1000th of a second) How often can a player use a shop sign?
    HEROES_EXP: 100
    #How much Heroes exp should people get for creating a ChestShop?
    BLOCK_UPDATE: false
    #EXPERIMENTAL: Should every ChestShop transaction result in a block update?
    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)


    Update To 3.37 Not worked.
     
  5. Offline

    Acrobot

    DoomAngelBlade
    Well, are you in creative mode? Because if so, that blocks it:

    Code:
    IGNORE_CREATIVE_MODE: true
    
    Also, the Null Null isn't from the ChestShop.

    By the way, did you try right/left clicking someone's else's shop?
    Oh, one thing more - which CraftBukkit /version are you using? (Don't say the latest, paste the /version output)
     
  6. Offline

    cortez1098

    and the Iconomy?
     
  7. Offline

    Acrobot

  8. Offline

    xduckxx

    hey for some reason i updated and now i can only sell to the admin shop.. it wont let me buy from it....
     
  9. Offline

    Defiant_Blob

    On my server, it allows all players to create shops, even when completely removing ChestShop.shop.create from all permission groups. Any ideas?
     
  10. Offline

    aciid

    Using newest cb and cs.

    Console is from multicraft which doesn't use color
    Code:
    07.03 03:42:38 [Server] INFO ?emasman22?f sold fence for ?7$44 ?7(44 items at $1 each)
    07.03 03:42:38 [Server] INFO ?emasman22?f sold cobblestone for ?7$196 ?7(196 items at $1 each)
    07.03 03:42:38 [Server] INFO ?emasman22?f sold dirt for ?7$31 ?7(31 items at $1 each)
    07.03 03:42:38 [Server] INFO ?emasman22?f sold cactus for ?7$12 ?7(12 items at $1 each)
    07.03 03:42:38 [Server] INFO ?emasman22?f sold obsidian for ?7$20 ?7(4 items at $5 each)
    07.03 03:42:38 [Server] INFO ?emasman22?f sold sand for ?7$6 ?7(6 items at $1 each)
    Whats the ? chars for
     
  11. Offline

    SteveTheRed

    A question and a suggestion:

    Question: is there any permission I can set to allow my players to sell to shops inside the protected spawn area? I'd really like to have both the spawn area protected and the shops inside it to work.

    Suggestion: would it be possible to suggest names for what shops sell if you use item codes? Sometimes when I use item codes the generated name on the fourth line is less than helpful (I don't want any Ink Sack:4 - I want Lapis Lazuli!). Maybe if we could put an item code in parentheses, so "Lapis Lazuli (351:4)" to get the right item code but a sensible description? Or if it drew the names from the translations so they at least have the same description as when you mouse over them in inventory?

    Love your work :)
     
  12. Offline

    TNTUP

    Wow thats the plugin I wanted so far! I previously used NarrowTux's Showcase plugin, You can only buy! no sell feature! and I'm waiting for the 1.2.3 update also! I see this plugin is ready for 1.2.3! I said: wow! I downloaded it now! :D Thanks ya!
     
  13. Offline

    Dominic

    Quick question,
    I have a shop area that players trade out on a regular basis...players purchase a region (Using SimpleRegionMarket) and then can add as many shops as they want in a small space for a limited time. When the players time is up they don't always remove their signs...Is there a way to remove shop signs that are in your owned region?
     
  14. Offline

    archer06011

    23:31:30 [SEVERE] Could not pass event PlayerInteractEvent to ChestShop
    org.bukkit.event.EventException
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.ja
    va:303)
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav
    a:62)
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j
    ava:441)
    at org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerInteractEven
    t(CraftEventFactory.java:168)
    at net.minecraft.server.ItemInWorldManager.interact(ItemInWorldManager.j
    ava:283)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:634)
    at net.minecraft.server.Packet15Place.handle(SourceFile:39)
    at net.minecraft.server.NetworkManager.b(NetworkManager.java:229)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:112)
    at net.minecraft.server.NetworkListenThread.a(NetworkListenThread.java:7
    8)
    at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:549)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:447)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:490)
    Caused by: java.lang.NullPointerException
    at com.iCo6.system.Queried.useMiniDB(Queried.java:92)
    at com.iCo6.system.Queried.hasAccount(Queried.java:237)
    at com.iCo6.system.Accounts.get(Accounts.java:14)
    at com.nijikokun.register.payment.forChestShop.methods.iCo6.getAccount(i
    Co6.java:69)
    at com.Acrobot.ChestShop.Economy.Register.hasEnough(Register.java:23)
    at com.Acrobot.ChestShop.Economy.Economy.hasEnough(Economy.java:48)
    at com.Acrobot.ChestShop.Shop.Shop.buy(Shop.java:57)
    at com.Acrobot.ChestShop.Shop.ShopManagement.buy(ShopManagement.java:24)

    at com.Acrobot.ChestShop.Listeners.playerInteract.onPlayerInteract(playe
    rInteract.java:79)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.ja
    va:301)
    ... 12 more
    >Whats this?!?!!? I can't buy or sell from any shops :C
     
  15. Offline

    PTluzitano

    Guys can u help me please?
    I have a small server for me and work friends have some good time togheter.. i want to use this pluggin but when i create a shop and try use the Sign i have this error on log:

    08:36 AM [SEVERE] Could not pass event org.bukkit.event.player.PlayerInteractEvent to ChestShop

    When bukkit load i have this:

    08:33 AM [SEVERE] Error occurred while enabling ChestShop v3.37 (Is it up to date?): org.bukkit.plugin.PluginDescriptionFile.getSoftDepend()Ljava/util/List;

    I have the followiing pluggins:

    Plugins: qQuests, SpawnControl, SlowHealth, iConomy, Pail, CraftBukkitUpToDate, BOSEconomy, SimpleChestLock, BattleNight, Lockette, SimpleHome, mPasswordProtector, MyMessages, MultiCurrency, PailPlus, dynmap, Register, ChestShop, Catacombs

    I do not use permissions.

    Can someone help me :/
     
  16. Offline

    KakusCraft

    why permissions wont work ? now everybody can create shops...
     
  17. Offline

    DoomAngelBlade

    Version git-Bukkit-1.1-R4-b1938jnks (MC:1.1) (Implementing API version 1.1-R4)
     
  18. Offline

    Acrobot

    xduckxx
    Do you get any error?
    Can you post anything that would help me reproduce it?

    Defiant_Blob
    KakusCraft
    That's, unfortunately, an issue within PEX. (You can find more info here: https://github.com/PEXPlugins/PermissionsEx/issues/300)

    I have split the ChestShop.shop.create node into 2 sub-nodes:
    ChestShop.shop.create.sell
    ChestShop.shop.create.buy

    There are 2 solutions:
    - either go into ChestShop.jar, open plugin.yml and configure the default permissions for your needs, or
    - deny access using negative permissions to both new permissions, ChestShop.shop.create.buy and ChestShop.shop.create.sell

    aciid
    Hmm... I don't know, it prints fine in the server console. It is a bug in MultiCraft's console.

    SteveTheRed
    Not possible, simply because I can't control the spawn protection. You might want to use another plugin, like WorldGuard, and WG_INTEGRATION turned on in the config. Then just do /region yourRegionName flag chestshop allow

    As for the names - you can already customize them to your needs. Just use OddItem plugin :)

    Dominic
    No, unfortunately the shops don't get saved anywhere. This is an advantage, but also a disadvantage sometimes.

    PTluzitano
    Update your CraftBukkit to at least CB 1.1 C6

    archer06011
    That's iConomy's issue with saving the cash.
     
  19. Offline

    lenis0012

    best plugin ever!
    keep it up2date

    nice work!
     
  20. Offline

    Acrobot

  21. Offline

    lenis0012

    maybe you should add random tressure! on the id place: random to get something cool or bad (any of the items in the chest) is that able?
     
  22. Offline

    archer06011

  23. Offline

    Acrobot

    archer06011
    I have no clue, that's iConomy problem - I honestly didn't experience it.

    lenis0012
    Haha, sounds awesome, but not possible at the moment.
     
  24. Offline

    Kurtis_

    Hey, I've used this plugin ever since my server started. Personally, I think it's the best shop plugin :)
    And I was wondering if something was possible to add. You could turn it on/off in the config I guess. I want it where my shops have chests hooked to them, but the chests will regenerate items as time progresses. For example, dirt could regenerate one piece every 5 seconds, and diamonds would regenerate every 5 minutes. What would be even better is if you could make a "RegenShop", that's like an Admin shop, but has an inventory. Kind of like the signs in Essentials.
    If this is possible let me know. I also have a plugin request for that, so you'd be able to find more info there.

    EDIT: Is that a texture pack in the image? Or is it just edited? :p
     
  25. Offline

    Acrobot

    Kurtis_
    Hey :)
    Thank you for your input! I am always happy when I read something like that :)

    This feature will be possible to add in ChestShop 4, but not before - when I was coding CS3, unfortunately I wasn't good in Java.
    At the moment I guess you could use something like:
    http://dev.bukkit.org/server-mods/restockit/

    And the image is a screenshot using some MC HD texture pack + a bit of retouch :)
    (It was shot looong ago)
     
  26. Offline

    Kurtis_

    Ahhh! I won't spam this thread, but I feel like it... I've been talking to my friends about this for weeks, saying "I would love it if there were something like that" and "Wouldn't it be awesome if there was something that did that"... Thank you soooo much!! [diamond][diamond][diamond] for you :p

    Just wondering; do you play Minecraft? Like on servers and stuff
     
  27. Offline

    Marc-D

    do you have a price guild we can use to no how much to charge per item ? or do you no a site that does ???????? hopping to make my server public tomorrow and i need to get this bit done tonight :(

    all help welcome
    if some one can help can you please pm me directly so i get the info striaght away with tha sites i can go to thanks
     
  28. Offline

    Kurtis_

    Hey, it's best to calculate your own prices, based on what type of server you have.
    Here's some base prices (I use them):
    Show Spoiler

    Dirt, cobble, sand, gravel, and anything else related = 1 Dollar
    Stone, stone bricks, grass, glass, etc. = 1.50 Dollars
    Logs = 2 Dollars
    Wooden Planks = 50 Cents (1 log = 4 planks)
    Coal = 2 Dollars
    Iron ore = 3 Dollars
    Iron ingots = 4 Dollars
    Gold ore = 20 Dollars
    Gold ingots = 24 Dollars
    Lapis lazuli is 2.50 Dollars per piece
    Diamonds = 300 - 500 Dollars (Diamonds seem to be hard to calculate)
    Monster items = 2 - 4 Dollars
    Meats = 1 - 2 Dollars
    Show Spoiler
    Try to keep your animal meats 2 Dollars or under, otherwise people can make animal farms and get LOADS of cash if it's higher. But if you want that to be allowed, raise the prices :p

    Show Spoiler
    Personally, I think that gunpowder should cost 5 each. Then people cannot obtain excessive amounts of TNT to grief with:mad: However, if TNT is disabled, make it whatever you want :p

    Hope that helps get you started. :)
     
  29. Offline

    DoomAngelBlade

    Acrobot.
    I'm not in creative mode.
    I can't buy from other people's Signs....
    Please Help.
     
  30. Offline

    Acrobot

    DoomAngelBlade
    Can you answer other questions?
    Do you get any errors?
    What does the sign look like?
    Do you get any message in the chat?

    Marc-D
    Sorry, I've got no idea, but maybe other people can help you. Remember that everything depends on your "base price".

    Kurtis_
    Nope, not really. I was playing MC since Alpha (1,5 year now) and I got bored of it now. I code plugins only for people - if I were doing this for money, this wouldn't work. I like making people happy :)
     
  31. Offline

    xduckxx

    Acrobot
    no errors or anything, thats why im so puzzled. the sign was set up as:

    Admin
    2
    B 2:1 S
    Arrow

    there were also a couple more that didnt work, but other items such as diamond armour and a few others worked fine.
     

Share This Page