[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

    @hockiman95
    Can you post the content of your groups.yml then?
     
  3. Offline

    CSquared

    Aha, brilliant! Should have thought of that. Thanks a lot. ^_^
     
  4. Offline

    solace

    Still having an issue with the shop not giving/taking money from the shop owner.

    Bobs Wood
    5
    B 10:5 S
    WOOD

    Using PEX

    Icon5
     
  5. Offline

    Acrobot

    @solace
    Hmm...
    What economy plugin are you using?
    What is your ChestShop's config?
     
  6. Offline

    solace

    Iconomy 5
    Code:
    PREFERRED_ECONOMY_PLUGIN: "iConomy"
    #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: "Cyber Shop"
    #First line of your admin shop should look like this
    SHOP_CREATION_PRICE: 200
    #Amount of money player must pay to create a shop
    LOG_TO_FILE: true
    #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/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: false
    #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?
    MASK_CHESTS_AS_OTHER_BLOCKS: false
    #Do you want to mask shop chests as other blocks? HIGHLY EXPERIMENTAL, CAN LAG!
    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?
    WORLDGUARD_INTEGRATION: false
    #Do you want to only let people build inside plots?
    TAX_AMOUNT: 15
    #Percent of the price that should go to the server's account. (100 = 100 percent)
    SHOP_REFUND_PRICE: 0
    #How much money do you get back when destroying a sign?
     
  7. Offline

    Acrobot

    @solace
    Weird.
    Does your iConomy accout "Bobs Wood" exist?
    Can you do
    /money Bobs Wood
    ? (case-sensitive!)
     
  8. Offline

    spoonikle

    How would i go about selling an item such as charcoal?
     
  9. Offline

    winter4w

    I did set spawn protection to 0 but it still dont work
     
  10. Offline

    Epics

    Spawn-radius.
    It's in the base directory, Bukkit.yml
    Fixed my problem anyways.
     
  11. Offline

    solace

    Wait a minute - I think im just a big confused. The shop needs to have an account set up in Iconomy?

    Characters name is Sol

    Shop name is Sols Wood

    Is this the issue?
     
  12. Offline

    winter4w

    Ya i set it to 0 still not working
     
  13. Offline

    Ardawen

    O.k. I did a screenshot of /plugins because it is a lot.

    [​IMG]
     
  14. Offline

    Furball75

    why lockette and LWC?
     
  15. @spoonikle
    Take the item on your hand, type /iteminfo and write the id to your sign. Done. (ex: 35 is normal white wool. 35:3 is one of the colored wools)
    @solace
    If your character is called Sol then his name on the sign must be Sol. If you write Sols wood in the first line instead Sol it won't work. In this case you need an extra iConomy accout with name Sols wood if you want to get it to work.
     
    Acrobot likes this.
  16. Offline

    Ardawen

    ancient history, we switched from lockette to lwc once. And to deal with all of the people that have to change there protection..... well out server is way to big for that. Right now people can chose and that is fine, our chests auto lwc, but for door lockette can be fun (timer and opening iron door by hitting it) .

    All things put together even when we switched maps we cept it around we we are fine with it
     
  17. Offline

    solace

    @Everyone

    THAKS IM SILLY - didnt have my name on the damned sign... Works like a boss
     
  18. Offline

    Acrobot

    @winter4w
    Well, hmm...
    What does your sign look like?

    @Ardawen
    Yeah, that's the issue :/
    I assumed one protection plugin would be enough - and it isn't.
    Well, I'll change it then.
     
  19. Offline

    Ardawen

    The issue is also there when a chest is just lwced, and it only works by hitting the sign to open the chest and it also overrules chest opening rights in a area just saying before you try things that might not be it.

    At the time we just used more protections to see if it might have been lwc or something or that maybe just maybe lockette would have stopped it.

    Thanks anyways
     
  20. Offline

    Ardawen

    oh forgot to ask we could not find it is there a setting that does not let people open the chest by hitting the sign? Because when a chest is protected by person1 and person 2 makes a chestshop above it he can only open the chest by hitting the sign not by hitting the chest that is still locked for person 2.
     
  21. Offline

    Acrobot

    @Ardawen
    I really know what the issue is - I thought one protection plugin would be enough, but fixing that ASAP.
     
  22. Offline

    Acrobot

  23. Offline

    TheMadMan697

    I cant seem to sell pistions or sticky pistions to my admin shop (not tested with player shop)
    The problem only seems to be with pistions. When i click to sell it says "you dont have enough items to sell" no matter how many of the items i have.

    The exact text on my sign is as below
    Code:
    Admin Shop
         1
    B 180 : S 80
         33
    ChestShop 1.24
    CraftBukkit RB1337
     
  24. Offline

    Acrobot

    @TheMadMan697
    What shows up when you type /iteminfo while you're holding the piston?
    Also - how does your sign look like?
     
  25. S should be on the right side.
    Code:
    Admin Shop
    B 180 : 80 S
    33
    UPD: It's kinda easy to take a look on the video's in the 1st post and learn out of them. I'm not about you but about other who can't create a basic shop.
     
  26. Offline

    Acrobot

    @VADemon
    Nope. It actually doesn't matter.
    It is probably the wrong piston name - bukkit uses:
    STICKY_PISTON_BASE
    and
    PISTON_BASE
    (which can be lowercase and with spaces instead of underscores)
     
  27. Offline

    mike12345567

    Hi, i've been using this plugin for sometime now on my server, and have grown to like it. However some an issue has risen recently. For some reason anyone can create shops, even if they don't have permission. It is as simple as that, VIPs, Moderators and Admins have permission, but users can still place shops, even though they do not have permissions.
    I have chestshop 3.24, bukkit 1337, PermissionsEx 1.15 and everything is up to date. I use LWC to protect chests.
     
  28. Offline

    Acrobot

    @mike12345567
    If you use PEX or any other SuperPerms implementation, players can create shops by default.
    To turn this off, just give a negative permission
    (I believe in PEX it's '-' before the permission node, like -ChestShop.shop.create)
     
  29. Offline

    winter4w

    First line: Admin Shop
    Second Line: 1
    Third Line: 3 1
    Fourth Line: WOOD
     
  30. Offline

    CosmicVoyager

    "SERVER_ECONOMY_ACCOUNT: ""
    #Economy account's name you want Admin Shops to be assigned to"

    What is an economy account? How do I make one?


    "TAX_AMOUNT: 0
    #Percent of the price that should go to the server's account. (100 = 100 percent)"

    What is a server account? How do I make one?
     
  31. Offline

    Acrobot

    @CosmicVoyager
    Economy account is like player account - if you have iConomy, /money gives you money on economy account named like your name.
    So, for example, if you're admin:
    /money somethingRandom
    is the account state of economy account named "somethingRandom"

    To create new accounts, for example in iConomy, you do
    /money create nameOfTheAccount

    Then, you can do:
    /money set nameOfTheAccount howMuchMoney
    to set its money.
    Then, if you want all admin shops to use this account, just type its name inside the quotation marks.

    And server account is the SERVER_ECONOMY_ACCOUNT

    @winter4w
    It cannot be
    3 0
    on the 3rd line.
    If you want the shop to just sell, type
    3
    on the 3rd line. (3 is an example price)
    If you want the shop to just buy from people, type
    S 3
    (again, 3 is example price) on the 3rd line.

    If you want it to BOTH buy and sell, you do:
    priceThatPlayerBuys : priceThatPlayerSells

    (of course, you can do it reversed, but you need to put S near the priceThatPlayerSells, and B near priceThatPlayerBuys)
     

Share This Page