Inactive [MECH] CommandSigns v1.2.0 - Issue commands using signs[1317]

Discussion in 'Inactive/Unsupported Plugins' started by HansAnderson, Aug 26, 2011.

  1. Offline

    HansAnderson

    CommandSigns:
    Version: v1.2.0

    This plugin is a complete rewrite of CommandSigns based off the original by Edward Hand. With CommandSigns, you can add invisible text or commands to signs. When the sign is right clicked, the command runs and/or the player gets a message.

    The /* feature of this plugin will not work properly with PermissionsExtended (PEX).
    There is a small issue where PEX doesn't utilize the permissions.yml from the root server folder.
    It has been tested with PermissionsBukkit and bPermissions.

    Features:
    • Run commands from signs
    • Signs can have any other text on them, the commands are linked to the sign behind the scenes
    • Uses a new permissions node so that players can use commands they wouldn't normally have access to!
    How to use:
    1. Place a sign, add any writing you want
    2. Add lines to your clipboard with /commandsigns line<number> <text>
    3. Right click a sign to make it a CommandSign
    Commands:
    Code:
    /commandsigns line<number> <text>
      - Add a line with one command (see Command Formatting). Number may be 0-9
    
    /commandsigns read
      - Read a CommandSign (the command lines associated with it)
      - Note: You need permission to create a sign in order to read
    
    /commandsigns copy
      - Copy a CommandSign to clipboard (the command lines associated with it)
      - Note: You need permission to create a sign in order to read
    
    /commandsigns clear
      - Clear your CommandSigns clipboard
    
    /commandsigns remove
      - Remove a CommandSign
    Command Formatting:
    In the place of <text> for a line, you may write a single command or sign formatting (such as @group). There are 10 total lines for separate commands or sign formatting. See Examples.
    Code:
    /command
      -  Runs a command from the player who clicked the sign
    /*command
      - Runs command with elevated permissions from the 'CommandSigns.permissions' node
      - Doesn't work for OP commands like /stop
      - (For WorldEdit //wand, use /*/wand)
    @group
      - Limits the sign use to only that group
      - **Check the permissions section below for usage!**
    \message
      - Print the message to the player's chat
    <NAME>
      - Replaced in the command by the player's name
    <X>/<Y>/<Z>
      - Replaced in the command by the player's x, y, or z coordinates
    Examples:
    examples (open)
    Code:
    /commandsigns line0 \say Hello server! <NAME> just logged on.
      - "Hello server! <playername> just logged on."
    
    /commandsigns line0 \You just clicked
    \commandsigns line1 \a sign!
      - "You just clicked
          a sign!"
      - (Message sent to the  player who clicked)
    
    /commandsigns line0 /*warp point1
      - Warps the player to point1
      - (If the /* nodes are set up correctly)
    
    /commandsigns line0 @mods
    /commandsigns line1 /*warp point1
      - Warps the player to point1 only if they have the 'CommandSigns.group.mods' permission node
      - (If the /* nodes are set up correctly)

    Permissions:
    permission nodes (open)
    Code:
    'CommandSigns.*'
      - All permissions
    
    'CommandSigns.create.*'
      - All create permissions
    
    'CommandSigns.create.regular'
      - Create signs without /* commands
    
    'CommandSigns.create.super
      - Create signs with /* commands
    
    'CommandSigns.remove'
      - Remove CommandSigns
    
    'CommandSigns.use.*'
      - Use all signs
    
    'CommandSigns.use.regular'
      - Use signs without /* commands
    
    'CommandSigns.use.super'
      - Use signs with /* commands
    
    'CommandSigns.group.<group>'
      - Replace<group> with the group name from @group
      - Allows use of signs with the matching group name
    
    'CommandSigns.group.*'
    - Allows use of all @group signs

    In your permissions.yml (in main server folder) create parent node 'CommandSigns.permissions' and attach children nodes from plugins you want to give permissions for when using the /* prefix.
    permissions.yml example (open)
    Code:
    CommandSigns.permissions:
        children:
            warp.go: true
    Now using /*warp <somewhere> on a sign will allow a player who doesn't normally have access to the /warp command to use the sign.

    Download CommandSigns
    Source

    Changelog:
    Version 1.2.0
    • Only one command per line now (commands can have many more syntax options)
    • Added ability to copy a CommandSign text to 'clipboard'
    • Fixed 'CommandSigns.group.*' permission node
    Version 1.1.0
    • Now supports all superperms permissions plugins!
    Version 1.0.1
    • Fixed a missing permissions node from the plugin.yml
    Version 1.0.0
    • Initial release

    I wanted the functionality of the old plugin, but the /* feature was broken. After becoming frustrated trying to figure out and update Fluff's version, I went back to the original and completely rewrote it. This is really my first plugin and Java experience.

    If this is not an acceptable submission, that is fine. I wrote it for my server and don't have time to go nuts adding features we don't need. However, I saw many people also wanted the /* feature, so I shared my work.

    I'm open to changing the name to something different, or withdrawing the submission. My main goal was to make this available to anyone who wants to use it.

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

    Rellac

    Wonderful. I especially like that I don't need ugly commands on the sign or a plugin to hide them.

    But there seems to be an issue with your permissions. I can't seem to create a sign with a CommandSigns.* permissions. Or even as OP.
     
  3. Offline

    S4h4rk

    This is really awesome! Thank you.

    Any chance of limited use signs (signs that can only be used n times) and iConomy support in the future? I'm still trying to find a way to get WorldGuard region purchase to work without the support of RegionMarket (which is close sourced and abandoned as best I can tell) or the WorldGuard team which refuse to accept iConomy support patches.

    S4h4rk
     
  4. Offline

    HansAnderson

    @Rellac
    Do you have PermissionsBukkit? I used the full nodes when testing, but I'll check out the * nodes. OP isn't a default feature right now because I think that permissions is for plugins and OP should only be for the original bukkit commands.

    @S4h4rk
    Thank! I am seriously considering trying to figure out how to add some economy support, because that's a fairly popular feature. As for the limited uses... that will require a larger change to the code. Not terrible though, so I will try to add it if I have some time.
     
  5. Offline

    Phant0mX

    Thanks a ton for this!
     
  6. Offline

    desht

    Good to see this is being maintained but a couple of questions:
    1. Does this still support the API that v0.9 had? This is of particular interest to me given that ScrollingMenuSign uses the CommandSigns v0.9 API.
    2. I see no link to source or documentation for this new release. Will any be forthcoming?
    Also if this is a complete rewrite and not in any way based on the original source code, I really think renaming it would be a better course of action, even if it's to something like CommandSignsNG. It doesn't appear to be 100% compatible with v0.9 right now (e.g. economy, /@ support missing) so calling it CommandSigns is likely to confuse existing users expecting the same functionality.
     
  7. Offline

    HansAnderson

    @desht
    Thank you, I will probably rename it to avoid any possible confusion. Although, if I add economy support, it will be very similar. There is little use for the /@ option the way I set it up.
    The API is very different because I completely rewrote the plugin. I just looked at ScrollingMenuSign, and they are not very compatible at this point. However, I would be interested in getting that link working again if you would like to work with me. I'll see about getting a GitHub account and posting the source.
    One issue is that this plugin will not support anything other than PermissionsBukkit at this point in time because I use the permissions.yml file to aid with the /* commands.
     
  8. Offline

    GrayMorning

    Sorry, I kind of new to Permissions so this is a lame question. What do you mean by:

    "In your permissions.yml (in main server folder) create parent node 'CommandSigns.permissions' and attach children nodes from plugins you want to give permissions for when using the /* prefix." ?

    I know which file you are talking about, but could you provide an example?
     
  9. Offline

    misutaanime

    so, I use permissions 3.1.5 anyway you could tell me how to get that working?

    do you meane adding CommandSigns.permissions.list

    to be able to add /list a command?

    I have allof this in my permissions setup and I cant seem to get it working, it keeps saying I dont have permission

    - CommandSigns.*
    - CommandSigns.use.*
    - CommandSigns.create.*
    - CommandSigns.remove
     
  10. Offline

    Rellac

    Odamn.

    Really need to update... :oops:
     
  11. Offline

    HansAnderson

    @GrayMorning
    Here is an example of permissions.yml:
    example (open)

    Code:
    CommandSigns.permissions:
        children:
            warp.go: true
    
    If a user doesn't normally have permission to use /warp (this is an example if you had a warp plugin), then you can put this in your permissions.yml.
    Then if you create a CommandSign with /*warp <somewhere> then the user will be able to use the command when they click the sign.


    @misutaanime
    From above, Please note: This plugin only works with PermissionsBukkit
    Please refer to this link from the creator of the Permissions plugin:
    http://forums.bukkit.org/threads/public-announcement-for-permissions.33651/
     
  12. Offline

    MG127

    where is the download link?
     
    Mike24558 likes this.
  13. Offline

    StefanP

    Man I really need this We just moved to bPerms and all our command signs broke, and its kind of an essential part of our server
    Any way you can send me a pre-release?
     
  14. Offline

    HansAnderson

    @MG127
    I updated the first post to include 'spoilers' for ease of looking... and forgot to add back the download link! Thanks for the heads up.

    @StefanP
    As of now, this plugin only supports PermissionsBukkit... It requires use of the permissions.yml in the root server directory.
     
  15. Offline

    StefanP

    PermissionsBukkit makes use of Bukkits SuperPerms, so does bPermissions.
    Therefore it works ;) Tested it ;)

    Any way you can make this work like Annonate in combination with CommandSigns did?
    Like when you made a pressure plate and added a [command] /command annonate to the pressure plate and then enabled the commandsign with /commandsign enable and if you would stand on it it would make the command be executed?

    EDIT:
    Does work with bPermissions with the exception of the CommandSigns.use
    My admin group which has the CommandSigns.* Can make signs and all but cant use them in any way. So I installed PermissionsBukkit only to handle CommandSigns.use.* for every group. Now it works fine, no conflict.
     
  16. Offline

    MG127

    what about using &color-&cod&es?
    my normal chat supports colors, my signs are colored, but not the chat that comes from the signs

    and support for aliases would be nice
     
  17. Offline

    HansAnderson

    @MG127
    I didn't even think of that, will look into it now. Aliases? Do you mean something like /cs instead of /commandsigns?

    EDIT: I just made a sign with /commandsigns line0 \&4hi
    It prints out hi in red, so I'm not sure what you mean.
     
  18. Offline

    MG127

    well .... maybe it depends on what chatplugin you use, i use mchat since defaultCommands doesn't have prefixes
    and when i typesomething like this i get "\&4hi" as the chatresult

    aliases ... yea a shorter /commandsingns would be good, maybe not cs, most plugins reduce their commands to 2 chars but "/coms" or something like this would be nice. what i realy meant was to support others plugins aliases.
    i'm also using commandhelper to combine some commands and make them easy to write.
     
  19. Offline

    nala3

    wow you know it would help if the signs actually..idk worked. I dont have any problems with the old one but your version refuses to work.
     
  20. Offline

    Malaras

    Hello, I couldnt get the old version to work with my server No body could use the signs and i added the .use perm /shrug. Gona try this one, see if i can get it to work.

    As others have posted id like to see Support for
    GroupManager
    Econ/ iconomy

    Thanks,
     
  21. Offline

    HansAnderson

    @nala3
    Please tell me you read the plugin instructions first? I assure you, it works.

    @Malaras
    I hope you have more success. But if you couldn't get the old one to work at all, I don't see much hope. Learning how to use permissions is an essential part of running a Bukkit server. There are many tutorials for anyone having troubles.
    There will not be support for GroupManager. Economy is a feature I would like to add, though.
     
  22. Offline

    nala3

    Ohh I have read the instructions. And I can set signs and all that is good. But they signs themselves don't function after they are made :)
     
  23. Offline

    Malaras

    I could use more of a tutorial for this cant get it to work, I'm pretty sure i got perms in correctly. But when i go to make a sign nothing happens and the first command u got to type /commandssign line0 takes up the whole top line :( ..then i put command in after 1st and it stays black and does nothing.

    Any Help please ??
     
  24. Offline

    DeanDip

    Just making sure, but you're using craftbukkit build 1060 right?
     
  25. Offline

    Malaras

    Woot got it to work.. But other people cant use them like a mod of mine, I got mine to work by editing user for myself but how about the other players, I'm sure as heck not gonna go through every user to enable it Lol.

    craftbukkit latest.
    I have groups set up but dont seem to be working.

    Code:
    CommandSigns.use.*: true
    
    I have that in default which is Guests for me.
    and every other group inherits

    Ty for any help.

    Oh i got old one to work some, but just couldnt get it where other users could use it. Worked fine for me tho.
    Permision denied message.

    Got it all workin now. Good at figureing this stuff out.:)

    And thanks for picking this plugin up to update it.

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

    Lolmewn

    For the no '*' problem, maybe let it inherit from Admins?
     
  27. So if i'm understanding your code correctly, the reason its permsBukkit only is for the @group functionality?
     
  28. Offline

    nala3

    yeah. its ok for now though. I'll probably figure it out later >.> For now I just need to get my new server set up i only got the OS installed yesterday XD
     
  29. Offline

    HansAnderson

    @nala3
    Are you using signs with [command] at the top? If so, that isn't how they are made for this plugin. If you used to use CommandSigns and Annotate, that's the effect I was going for. So you use the /commandsigns line0 command in order to add a line (specifically the first line) to the 'CommandSign'. The text is never put onto the actual sign, it's "invisible" so that you can write whatever you want to on the sign.

    @Malaras
    Good! I'm glad that you were able to get it working :)

    @Lolmewn
    I'm not sure if I understand what you mean. Were you making a suggestion to someone's post or to me?

    @tehbeard
    I do use the PermissionsBukkit group functionality, yes. But the primary reason is for the 'CommandSigns.permissions' node in permissions.yml. I believe that I read that PermissionsBukkit is the only permissions plugin that uses that file at this point in time, but if not please correct me. The reason that this node is so nice is that there no longer has to be a 'fake' player (complicated code, and not based fully on CraftBukkit API). Instead, when a player tries to run a /* command from a sign (and has permissions to use signs with /* commands), that player temporarily receives the 'CommandSigns.permissions' node, and thus all the children that are assigned to that node.
     
  30. Offline

    Lolmewn

    Was making suggestion to anyone. So also to you ;)
     

Share This Page