Inactive [MISC] SupplySign - Infinite Item Distribution w/ Signs(chest/dispenser also supported)

Discussion in 'Inactive/Unsupported Plugins' started by redsgreens, Mar 10, 2011.

  1. Offline


    SupplySign is now on! Go there for the latest versions, a dedicated support forum, and ticket tracking system:

    SupplySign - Infinite Items Distribution via Signs (now with dispenser support!)

    Use this plugin to distribute items and blocks to your players by creating [Supply] signs that load a chest interface when right-clicked. These signs can also be placed on chests.


    The Basics:
    • Place a sign
    • Set the first line to [Supply]
    • On each of the remaining lines, put the name(or item id) of the contents of the supply sign
    • Right-click the sign to open the chest.
    Chest Sign: To place a sign on a chest, make sure it is not within one block of another chest. Place your supply sign on the ground next to the chest and it will attach itself to the chest after you are done editing the sign. Right-clicking the sign or the chest will display the contents of the sign. If you want, you can put two signs on a large chest.

    Dispensers: Attach a sign to a dispenser in the same way you would attach one to a sign. The inventory of the dispenser will always be full of whatever is on the sign. If you use a kit, or if you put multiple items on the sign, only the first will be used. Remember that dispensers require redstone to activate, so it might be a good idea to wire up the dispenser and test it before attaching the sign. If the dispenser doesn't work without a SupplySign on it, then I can't help you (I'm no redstone expert).

    Using Kits: To use a kit, set the first line to [Supply] as usual, then put "kit:" followed by the kit name on the second line, ie. "kit:wool".
    Default Kits: wool, dye, woodtools, woodplus, irontools, ironplus, diamondtool, diamondplus, goldtools, goldplus, desert, makecake, chainmail

    • Ops and players with the "supplysign.create" permission will be able to place supply signs.
    • Ops and players with the "supplysign.access" permission will be able to access them.
    • Ops and players with the "supplysign.destroy" permission can destroy existing supply signs.
    • Ops and players with the "supplysign.reload" permission can trigger a reload of items/kits data.
    • Players with "supplysign.access.kitname" can access the kit called "kitname".
    If you don't use permissions: Only Ops will be able to place SupplySigns. There is a config file option that will allow non-op players to access signs, but not place them.

    Data Files: After the plugin has been loaded for the first time, a "supplysign" data folder will be created in the bukkit plugins folder with two files in it: items.csv and kits.yml. You can customize these files to add new kits or modify item names. Use "/supplysign reload" to load your changes without restarting the server. NOTE: When editing these files, make sure the format doesn't change. On Windows, use something like Wordpad. There has been a report that OpenOffice can change the files in a way that breaks the plugin.

    Config File: Used to configure the ShowErrorsInClient, FixSignOnSignGlitch, and AllowNonOpAccess options. Check out the (automatically created) config.yml file for more info.

    This is an example of a SupplySign with a kit.

    And here is what you see when you right-click the sign in the previous screenshot.

    This is what a chest with a sign on it looks like.

    An arrow being fired from an infinite arrow dispenser. Watch out!

    This video gives an example of how to attach a SupplySign to a dispenser.​

    This plugin was originally based on the [Free] sign code from Essentials by Zenexer. Without his hard work there would be no SupplySign plugin. Thanks!
    Also thanks to vitaminmoo for testing this plugin and developing the kits.yml format.

    Old Changelog (open)

    Version 1.7.1 (08/09/2011)
    • Removed support for air blocks in signs (they break the game)
    • Corrected spelling of some items in items-base.csv
    • Replaced calls to deprecated Bukkit methods
    Version 1.7.0 (07/05/2011)
    • Added pistons and shears support
    • Access to SupplySigns on chests can now be protected by Lockette, WorldGuard, etc (allows finer grained access than previously possible)
    Version 1.6.3 (06/26/2011)
    • Added workaround for conflict with plugins that alter sign text color
    Version 1.6.2 (06/22/2011)
    • Fixed small bug related to custom items with a stack size less than the maximum for that item
    Version 1.6.1
    • The kit/item names are now case insensitive (suggested by Maxis010)
    Version 1.6
    • Replaced "items.csv" file with "items-base.csv" and "items-custom.csv" files to better handle new items added to Minecraft.
    • Added AllowNonOpAccess config file option (requested by Xiangliang2)
    Version 1.5
    • SupplySigns on dispensers now supported! (CB766 or higher required)
    Version 1.4
    • Fixed bug that prevented numeric item codes in kits.yml file (discovered by piousminion)
    • Added permission support for "supplysign.access.kitname" so you can restrict which kits a user/group can access (suggested by RaCooN)
    Version 1.3
    • Fixed bug where empty kits.yml file would break basic functionality.
    • Added support for large chests.
    Version 1.2
    • Fixed awful bug (discovered by Harushimo) that caused all signs in game to show an inventory. Oops.
    Version 1.1
    • Added new "supplysign.destroy" permission that can keep unauthorized players from destroying signs.
    • Updated to support Bukkit build 602. Servers running Bukkit 531/556 should still use version 1.0.
    Version 1.0
    • Added configurable option to hide client side error messages.
    • Fixed glitch where signs can be placed on other signs (can be disabled).
    • Config file support added.
    Version 0.9
    • Added support for signs on chests.
    Version 0.8
    • Added some diagnostic messages describing the number of items and kits loaded.
    • Fixed a typo in the items.csv file breaking birchwood and redwood. If you haven't customized your items.csv file, then just delete it and it will be recreated with the error corrected.
    Version 0.7
    • Initial release to the world.

    If you have problems: Check the diagnostic messages from SupplySign on the server console. You should see something like this when the plugin starts up, or when you use /supplysign reload :

    08:01:07 [INFO] SupplySign loaded 1092 items from items.csv.​
    08:01:07 [INFO] SupplySign loaded 16 kits from kits.yml.​

    If you see something like this:

    07:55:53 [INFO] SupplySign error: while parsing a flow sequence; expected ',' or ']', but got StreamEnd​
    07:55:53 [INFO] SupplySign loaded 1092 items from items.csv.​
    07:55:53 [INFO] SupplySign loaded 0 kits from kits.yml.​

    Then there is a typo in your kits.yml file and zero kits were loaded because of it. Unfortunately Yaml is a bit touchy about typos.

    If you can't figure out what's happening, post a capture of the SupplySign console output and attach your items.csv and kits.yml files to a your post so I can try and reproduce the problem. A screenshot of your sign could be useful as well.
  2. Offline


    I added my own kit as follows and reloaded the config:
    plants: [6:0, 6:1, 6:2, 17:0, 17:1, 17:2, 18, 81, 338, 37, 38, 39, 40, 86, 295]

    When I try to access the chest the game tells me:
    Error: Unknown kit name: plants

    Do the kits have to contain a specific number of items?
    Do the kits get reloaded on a config reload?
    Does it matter that you don't have the different sappling types in the config? :p

    I'm using your plugin to open up a freebuild map tomorrow instead of granting access to /give.
    Let me know what I can do to get this working. thanks. :)

    EDIT: Crap, it's not liking the ":" in the list for subtypes. idk what to do. :eek:
  3. Offline


    Attached is an updated version of the items.csv file that has the new saplings and rails from MC1.5(take the ".txt" extension off after you download it). After overwriting the existing items.csv with this file in the plugin directory, use this for your kit:

    plants: [6, 6.1, 6.2, 17, 17.1, 17.2, 18, 81, 338, 37, 38, 39, 40, 86, 295]

    Then issue the "/supplysign reload" command and you should be set.

    Attached Files:

  4. Offline


    Awesome, you are a lifesaver. :)

    Hate to double post, but I got an error:
    18:23:44 [INFO] SupplySign exception: java.lang.Integer cannot be cast to java.lang.String
    I don't think it likes me using numbers instead of names. :(

    I can work around it if you don't want to change it, but my preference would be not to have to.
    Just FYI.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: May 11, 2016
  5. Offline


    That looks like the YAML parser choking on the numbers. You might try putting quotes around each entry in the list. If that does the trick then I'll fix it for 1.4. If it doesn't fix it, attach your kits.yml file and I'll take a look.
  6. Offline


    Putting " around the number worked like a charm. BTW: 357 = cookie, but not on your updated list. :p
    I added it, just fyi. :)
  7. Offline


    Thank you for the feedback, it's quite helpful. :) I added the cookie to the first post, and I'll add a fix to the quoting issue for the next release.
  8. Offline


    Really good plug-in, currently using it and it works like a charm! I got one suggestion: make some kits unavailable to certain groups with permissions. E.g. a guest is able to pick the ''starterkit'' but not the ''irontools'' kit. You could use commands like supplysign.access.startkit to only allow access to starterkits! Just a suggestion which could really be helpfull ;)
  9. Offline


    This is a really good idea! Version 1.4 is out, which implements exactly this. Thanks!

    It also fixes the bug with numeric item codes in the kits.yml file.
    RaCooN likes this.
  10. Offline


    Before I upgrade to 1.4 can you confirm/deny something for me
    supplysign.access will allow people to access ALL signs (items and kits)
    Or will this require my to specify supplysign.access and supplysign.access.*
    I haven't used a plugin with dynamic permissions before...
  11. Offline


    @redsgreens you mispelt netherrack in your default items.csv
  12. Offline


    Giving a user/group "supplysign.access" will allow them access to all SupplySigns.
  13. Offline


    I have done that. Gave it to default. Gave it to the group each member is in. And gave it to each individual member and it doesn't work. :/
  14. Offline


    Attach your permissions config file to a PM and I'd be happy to take a look.
  15. Offline


    Version 1.5 is out now, with dispenser support! The latest Bukkit build finally added the event I needed. Keep in mind that version 1.5 will not work with anything less than CB766.

    Also, send me your ideas for uses of infinite dispensers. Other than infinite arrow traps and egg guns I can't think of much, even though a bunch of people have requested it.
  16. Offline


    Something that just sprang to mind is SupplySigns + Minecart Mania
    MM alone will ignore SupplySign but now we can use a detector (MM) to trigger the dispenser (SS) and release an item that the cart can collect and pass on

    Long winded I know but it's an idea
  17. Offline


    Hi i want to make my own kit in the kit folder what do i need to do so everything works. For example if i want to make a kit with gold,diamond,and iron ??? please help Thanks
  18. Offline


    If you look at the kits.yml file the format should be quite obvious. To get you started, put this line at the end of the kits.yml file:
    treasure: [diamond, goldbar, ironbar]
    That will create a kit named "treasure".
  19. Offline


    Thank You Very Much
  20. Offline

    sexy vampire

    you are missing cookies in your item data base ! hate to figure out your format to add them my self
  21. Offline


    Actually, they've been in there since version 1.4. However, the items.csv file on disk doesn't get updated automatically, in case you have customized it yourself. If you haven't customized it, then you should delete the file from the SupplySign directory and run "/supplysign reload". The file will be recreated with all the MC1.5 items in it.
  22. Offline

    sexy vampire

    im useing 1.4 and thay wonrnt in there silly :p thay form 1.4.1 mincraft with wolfs
  23. Offline


    If you upgraded SupplySign from 1.3 to 1.4(or 1.5) then you need to delete the items.csv file and run "/supplysign reload". That will make the new items show up.
  24. Offline


    dispensers aren't automatically refilled. I'm on 740 version 1.5 would that be the difference?
  25. Offline


    Yes, build 766 or later is required for dispenser support.
  26. Permissions bug. works only for admin please help me!
  27. Offline


    Post your permissions file and your server log else we can't help you
  28. Offline


    Okay, I think I installed everything as it should be...
    but if I type [supply] // kit:irontools (the default kit), it doesn't even show the contents...
    can you suggest the error or have I to organize some files?

    EDIT: I'm not sure about my permissions, I'll let you know if I don't need your help anymore :)
  29. Offline


    I take it when you put // you ment that as a new line
  30. in the permissions i added 'supplysign.access' and 'supplysign.access.kitname' look:

    default: true
    prefix: ''
    suffix: ''
    build: true
    - Default
    - ''
    - 'lockette.create.*'
    - 'HomeX.*'
    - 'supplysign.access'
    - 'supplysign.access.kitname'
  31. Offline


    First of all, "supplysign.access.kitname" should be removed. It's redundant because you've already given players "supplysign.access", and I'm guessing you haven't added a kit named "kitname".

    Second, the formatting of your file looks wrong. You should have a bunch of spaces at the beginning of most of those lines. Here's what that section should look like(the spaces at the beginning of the lines are significant(don't get me started on YAML)):
            default: true
                prefix: ''
                suffix: ''
                build: true
                - 'supplysign.access'
                - 'lockette.create.*'
                - 'HomeX.*'
    Also, notice that I removed the value you have under "inheritance". The default section can't inherit from itself.

Share This Page