CommandHelper
CommandHelper lets you and users alias commands so that you don't get carpal tunnel, and it also allows you to script your own plugins without Java knowledge.
- Let you or users bind aliases for multiple commands
- Using an easy to use language MethodScript, script your own plugins
- Completely replace whatever you are using for /homes /warps /mail etc. with CommandHelper
- Create new features, handle new problems, without having to learn Java
- Easy to use language to pick up, with great documentation
Want an easy to use in-game map editor? Try WorldEdit. Want to protect areas? Try WorldGuard.
For the latest version: This page is not updated. For the latest builds, get them from the Downloads page.
Getting Started
Installation |
---|
Bukkit is currently required.
- Download CommandHelper and put the .jar into plugins/.
- Run your server once to generate the configuration files.
- Read the wiki (see below) to find out how to use CommandHelper.
Documentation |
---|
What are the permissions? How do you make your own scripts?
All the documentation can be found at https://methodscript.com/docs
Learning More |
---|
- Project leader: LadyCailin is the current project leader
- Lead developers: LadyCailin
- Project started: In November 2010 (Bukkit was started January 2011)
The original project leader and lead developer was sk89q.
Development builds of this project can be acquired at the provided continuous integration server. These builds have not been approved by the BukkitDev staff. Use them at your own risk.
THE COMMENTS ON THIS PAGE ARE NOT REGULARLY MONITORED. For faster support, please join us on IRC or Discord.
@UbuntuFreak
So, i dont really get the php part :P could you maybe put some example code up or something? also is this waht u mean by the pgive_item?
/pgive_item player() 302 2 \
@UbuntuFreak
Yeah, currently they have essentials.warp.market, and I'm using /market = /warp market. My only problem is, I would have to give users 10-15 other warp permissions, and with 7 donor groups and 7 donor-mod groups... Well, to make a long story short, my permissions file is a monster :P
That's why I wanted an override PER-PERMISSION. So, it would temporarily give them 'permission.node' when running '/alias'.
Example: It would give them essentials.warp.bank when using /bank
@np98765
Try this:
to enable the /market command for users with the "commandhelper.alias.market" permission. This does not disable /warp merket for people without this permission!
If you want anyone to be able to use the /market command, simply set "/market = /warp market".
When you use functions like runas or any other restricted function, you habe to give the "commandhelper.func.use.FunctionNameHere" permission.
In your case this would be (not needed anymore) "commandhelper.func.use.runas". Be careful giving this permission, but this function bypasses the permissions system.
If you also want to disable /warp market for people without the "commandhelper.alias.market" permission, try finding a warp plugin with permissions or use the set_ploc function.
Hope I helped you ;)
@redbingo
This is a very nice idea! But there are a few things needing to be fixed. (1) Use pgive_item so it isn't broadcasted to everyone when somebody is typing /kit (2) The if-query has an other syntax. You used the PHP-like "if (confition) {} else {}" but as far as I know it is "if (condition, that_happens_when_true, that_nammens_when_false)"
@domingo15
You can use a FalseBook IC for that. Make sure you run "runalias /yourCommandYouMadeInCommandHelper". Also, you only have two lines what causes a limit of 30 characters for your command.
I'm trying to make a code that if someone does /kit donor they will get certain stuff and have a cooldown time of 2 days. will this work. its in my config.txt file, is it supposed to be in there?
/kit donor = /give player() 302 2 \ /give player() 303 2 \ /give player() 304 2 \ /give player() 305 2 \ /give player() 256 1\ /give player() 257 1\ /give player() 258 1\ /give player() 350 10\ /give player() 366 10\ if(_cooldown(import('kitdonorcooldown', player()), 172800)){ export('kitdonorcooldown', player(), time()) } else { msg('You have to wait at least 48 hours between using this command.') }
is there a script for a command to bind with a block like button or pressure plate?
I gave:
And it told me I don't have permission. I then tried different combinations, with no difference.
I then tried:
/market = runas(op,/warp Market)
But it told me "You do not have permission to use the runas function. :: InsufficientPermissionException:plugins/CommandHelper/config.txt:20"
Any help please? :(
@wraithguard01
So *:/market = /warp market
Would that GIVE the player *, or does that mean that all permissions group can use it? Thanks
@np98765
If you want everybody to be able to use it, try this:
*:/market = ...
The label on the command is the command's permission, and * means "everybody can use it".
@domingo15
Yes, there is. You can use export/import to save a value, and you can use time() to get the current unix timestamp (in ms). I'm starting a "cookbook" page on the wiki that lists small, self contained examples, and I put a Command Cooldown in there, so check it out: http://wiki.sk89q.com/wiki/CommandHelper/Cookbook Since it is part of the language, you should be able to do more customization of exactly what you want, unlike other plugins, and as you can see, it's not a whole lot of work.
@domingo15
"Would this work? a cool down of 10 minutes? or this is all wrong :o /kit gold = /give player() 284 1 \ /give player() 285 1 \ /give player() 286 1 assign(@cooldown, 600)"
No because you're setting a variable named @cooldown, but you aren't actually doing anything with it. That, and once the command finished, @cooldown wouldn't exist anymore. Want you want to do is export @cooldown, then when it's run again import it and check the value against the current time before giving the items..... but then you run into the problem that all players are sharing the same cooldown timer. :P Instead of just @cooldown, try something alone the lines of @someplayercooldown where someplayer is the name of the player. Needless to say you have a number of problems here.
actually, i was hoping more of someone will give me an advance example so i could figure out how to do it :) but yeah that plugin has good stuff in it.
EDIT: Would this work? a cool down of 10 minutes? or this is all wrong :o
/kit gold = /give player() 284 1 \ /give player() 285 1 \ /give player() 286 1
assign(@cooldown, 600)
@domingo15
I personally don't know much at all, but I don't think it's possible (unless it's one of the advanced features).
Personally, I'd highly recommend boosCoolDowns, an awesome plugin... Check it out, if you need cool downs/warm ups/prices on any commands.
Hope this helps!
Is there a way to add cool down on certain alias commands? If so, could you guys give me a example.
Thanks
Hmmm... I can't find any help on the wiki...
I gave users:
/market = runas(op,/warp Market)
When they try, I get:
IT'S BECAUSE COMMANDHELPER IS FRIGGIN AMAZING!!! Wraith ur the bomb dude. Thank you soooo much for maintaining and updating this plugin. sk89q thanks for writing it!
Thanks Cecell
Proud users of CommandHelper at: mc.hordecraft.us:25565
@computerkidt
There are probably more likely to be full replacements for essentials protect, but there's no full replacement for commandhelper, nor is there likely to ever be. CH does use log4j though, so I'll take a look at this, it is reasonable that there are some conflicts here. Can you file a bug at http://redmine.sk89q.com/projects/commandhelper/ please and thank you.
Adding this plugin break EssentialsProtect please fix it so i can use CommandHelper
http://forums.bukkit.org/threads/server-log4j-errors.71640/
Or does anyone know of a full replacement for either plugin cause I really need to have features from both of them.
@devoureroflint
Thank you very much. :D
@pur3pros
Try putting in an alias and adding commandhelper.alias.world And the command for that to work with the new node would be: world:/world = /tp 100,10,100
@np98765
/bank = runas(~op,/warp bank)