HiddenCommandSigns
This plugin utilizes and adds to SimpleCommandSigns by storing a hidden commands database. Because we wish to keep SimpleCommandSigns simple and lightweight, we kept these extra features separate.
Features:
- You no longer need to have the command(s) being executed on the sign itself.
- You can have multiple commands run in sequence.
- You can list the permission(s) you wish the player to have when running the command and they will be granted temporarily during command execution.
- You can set permissions nodes allowing players to view the true commands behind the sign.
- The true commands are linked to the text on the sign rather than the sign block. This means there will be no issues with sign block removal and modification. Hiddencommandsigns with the same sign text will run the same commands.
- You can make the hiddencommandsigns look exactly like a normal commandsign.
- If you understand the formatting, you can manually edit the human-readable database file. (Not recommended though)
How to create a HiddenCommandSign:
- Create a SimpleCommandSign as you normally would. The text on the lines that usually holds the command can be anything arbitrary now.
- Use: /hcs create "<command>" (Note: If your command contains quotation marks, replace them with "\''" - that is: forward slash, single quote, single quote)
- If the people running the sign need additional permissions to run the command, use: /hcs addperm "<permission>"
- Right click the sign and the command(s) you specified will be run!
Commands:
- /hcs create "<command>" ["othercommands"] - Creates a hiddencommandsign with the command(s) given within parenthesis. (Example: /hcs create "/cp points" "/day")
- /hcs detect - Tells you if the next block you hit is a hiddencommandsign and its author.
- /hcs obtainreal - Tells you the real command that will run when you right-click the sign.
- /hcs addperm "<permission>" ["otherpermissions"] - Adds the specified permissions to the sign. They will be given to the player right before they run the command, and removed immediately after. (Example: /hcs addperm "CommandPoints.give")
- /hcs quickcreate - If the text on a simplecommandsign already has a hidden command sequence linked to it. This allows you to turn it into a hiddencommandsign with the original commands.
Permissions:
- hcs.create: Can create a hidden command sign.
- hcs.detect: Can detect and get the creator of hidden command signs.
- hcs.obtainreal: Can get the real command behind the sign.
- hcs.addperm: Can add permissions to a sign.
- hcs.addperm.any: Can add any permissions to a sign, including those which they do not own.
Note: If you do not use Legacy Permissions as your permissions handler, remove any Permissions compatibility bridge (such as the one from Essentials) if you want to be able to use "/hcs addperm".
As one of the other people said, I think there's a bug with addperms.
Just continues saying "You do not have access to that command."
Possible solution* when using PermissionsEx: pex user <user> add <permission> pex user <user> remove <permission>
But as user cannot run OP commands. =\
Perhaps adding commands said on behalf of server would be adequate for many commands.
@judam
See any exceptions in the console?
It was working great last night, now all the signs say "Unknown. command" Creating a new one will work until the server restarts.
@foreverlastd
We've found out that any permissions elevation fir Essentials commands do not work. We haven't checked their code, but we have a feeling they must be using some unconventional methods for checking permissions.
I think I'm having a problem having permissions elevate. I'm attempting to have a repair sign. This is what I've typed in.
/hcs create "/repair hand" "/eco take %p $100"
/hcs addperm "essentials.repair" "essentials.eco"
If you attempt to use the sign it says "You do not have access to that command".
Any idea where something is going wrong?
@Genesissx
Yup, the commands work just like in SimpleCommandSigns. Replace the user's name with: %p
Can i somehow use the name of the user who left clicks it? Because i would like to make a hidden command:
/pex user %the user who presses it% add group
Is it possible?
@smimatt7
This means you are in creative mode.
@Master_Zangetsu
That should be implemented on the plugin handling the command.
For example: CPE using CommandPoints
hi, i cant get this to work for me D: I can make a simple command sign fine, but when I use: /hcs c <any command I type> it then says to LEFT click the sign i want to convert but, upon doing so, it just breaks the sign
and chance of implementing a cost for their use?
@b1r6m4n
From 2 other occurrences, we've found out that Essentials is unable to detect that the proper permissions were given to the player. I have not looked at their code to see what they are doing unconventionally.
@AgentSnazz
This means that you typed: /hcs addperm "bukkit.command.op: true"
You should have used: /hcs addperm "bukkit.command.op"
The "true" part is unnecessary.
I'm trying to set up an HCS, created by in-game commands, but here's the code in the .ini:
player AgentSnazz has the following permissions:
and yet I get this when clicking the sign:
Am I missing a permission? Have the wrong permission?
@Devil_Boy
Somewhere you posted an untested fix of this; yesterday I tested and here is what happened in my scenario. I removed my Permissions bridge as it was not needed anyways. I am using PEX. Hopefully this can help you some:
I made a sign that did "xp %p 100" and "eco take %p 100". I added perms "bukkit.command.xp" and "essentials.eco". I had a member right-click, and he DID receive 100 experience just fine, but Essentials still did not realize permission, and money was not taken. I tried this with several other Essentials commands and they did the same, but bukkit commands seem to work! BTW with me as admin with * perms, everything worked just fine :).
Thank you for this wonderful plugins BTW!!
@rampragej
In the support ticket, we've confirmed the compatibility layer was getting in the way of HCS. It's been fixed, and a new release will come up soon.
@rampragej
If you have a Permissions.jar in your plugin directory. Try removing it, then running the server. I wish to know how PEX runs without the compatibility layer.
@Devil_Boy
Thank u very much! Sorry for the inattention.
@rampragej
If you can get into irc://irc.mibbit.com/pinoygamers within the next hour. You could test the version without Legacy support. Otherwise, I'll have to hold off on its release...
Still nope. I get no big error thing in the log, and for what it might be worth I used Permissions 2.0 rather than 2.1 since the link was messed up for 2.1, but the same error still occurred. I suggest cutting the Legacy support, it's dangerously outdated anyway (It got discontinued and its replacement got discontinued and the replacement for that is inactive.)