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.
@sahil04
Whenever you see 'COMPILE ERROR' it means it's running into something /you/ wrote that it doesn't understand. In this case, it's an 'Unended string literal' error, which means you left a quote open. This can happen if you have an apostrophe in a string that you don't escape, like this;
'This won't compile correctly.' <== CH thinks that 'This won' is the string, and then finds another single quote that doesn't have a "mate." The remedy to this is to "escape" apostrophes within strings with a backslash, like this:
'This won\'t be a problem!'
I'd recommend using Notepad\+\+ if you're on windows, with the CommandHelper syntax highlighting (easy google search to find both), as it makes this kind of error visually obvious.
opoq
hello,
I am running commandhelper 3.3.1
and i get this error whenever i try to reload my config.
please help
my config : http://pastebin.com/tuZePAv
15.02 21:38:02 [Server] INFO :plugins/CommandHelper/config.txt:68
15.02 21:38:02 [Server] INFO COMPILE ERROR: Unended string literal. You started the last single quote on line 65
15.02 21:38:02 [Server] INFO /plugins/CommandHelper/config.txt:68
15.02 21:38:02 [Server] INFO :plugins/CommandHelper/config.txt:68
15.02 21:38:02 [Server] SEVERE [CommandHelper][ERROR][COMPILER] COMPILE ERROR: Unended string literal. You started the last single quote on line 65
15.02 21:38:02 [Server] INFO [CommandHelper]: MethodScript files processed
15.02 21:38:02 [Server] INFO CommandHelper: Welcome to this server, which is running CommandHelper!
15.02 21:38:02 [Server] INFO CommandHelper/CommandHelper 1360-81f96c7 enabled
15.02 21:38:02 [Server] INFO Enabling CommandHelper v1360-81f96c7
15.02 21:38:02 [Server] INFO Disabling CommandHelper v1360-81f96c7
@Zei33
Are there errors in the console when starting the server? Otherwise you can use the second-newest snapshot what is working fine for me.
(I have not been able to get the reason for the error, it just said "null", that's not very helpful)
Latest dev build isn't working, any ideas?
Error is here: http://pastebin.com/0mMBsrkq
It's very important that I get commandhelper working with my server again as it's rather imperative! (amishsmp.net :P)
Thanks for any help :)
@trkah
I can tell you didn't give the wiki even a cursory glance, because making aliases is featured quite prominently.
"Want to setup simple aliases? Try the Beginner's Guide"
^ From the link I pasted in my last comment, which is also at the top of this page.
@opoq
what I need to know is how to make aliases! it doesnt show you in the wiki! it also messed up my /help command and I had to delete it from config to work again
@trkah
You should start by reading the plugin description a few inches above where you started your caps-bomb. The link to the wiki is especially helpful. If you still have questions after thoroughly reading the wiki, we'd be happy to answer specific questions in #CommandHelper on irc.esper.net
opoq
WHAT THE FUCK IS THIS PLUGIN DO? EVERY TIME I TYPE /HELP IT SAYS "DO YOU NEED HALP?" AND I CANT MAKE ANY ALIASES PLEASE HELP sorry for caps
@Wolf2323
You'd use set_timeout, set_interval, or queue_push/queue_delay... whichever you prefer. Assuming you're on one of the latest builds, here's one option. (Note: I fixed a number of issues in your script.)
at the moment my skript look like this
-> ' , color('blue') , 'RESTART')) runas(console, /stop) <<<my problem: i need a dealy between each command
Is it just me or has CH become very picky about file names in recent builds?
I used to be able to tack the build number or RB onto the end of the craftbukkit jar, but now I just get errors from CH.
E.g. this works: craftbukkit-1.4.7-R1.0.jar
but this doesn't: craftbukkit-1.4.7-R1.0-[#2624-RB].jar
I get lots of errors along the lines of
After a bit more testing, it looks like it's just the #. Not a big deal, but it is still a valid character in a file name.
@mcredstonepro
It would look something like this:
/report $player $ = run('/helpop [HelpOp] [USER]'.player().' REPORTED: '.$player.' for '.$)
@Nickbbeezy
Yes, you can. Depending on how you are detecting whether or not a player is allowed to run a command, it would just be a matter of using die() to kill the command. You can even selectively override commands, without having to actually create a different command for them, for instance:
/warp $ = if(player() == 'Nickbbeezy', die('command does not exist'), run('/warp '.$)
Basically, we are "rerunning" the command for everybody (except you :p). When we use the run() function, it bypasses CH, so that will run the "real" warp command instead. Otherwise, you can change that as you see fit, and use the other functions, like pgroup() has_permission(), etc to refine it to do exactly what you want.
When creating aliases with this, does it allow you to disallow players to use the commands that are being changed?
For instance if I had "/goto" set as an alias for "/warp", when players tried to type "/warp" it'd give them a "command does not exist" error?
How can I add to this script to make it display additional text in the HelpOp message?
I would like it to display like this:
Please help with this! Thanks :D
@Teddinator
Making plugins in HTML will not be possible but CommandHelper brings it own simple 'language' to create plugins. Take at a look at the wiki or it's Beginner's Guide. It you are already more advanced, take a look at the API or for the newest features and if you are running a dev build check out the Staged API
Hi, could someone give me a link that is a guide to make plugins in html with this? Thanks Tedd
@monkeywarrior20
Yes, all you need to do, (assuming you have a permissions plugin such as PermissionsEx), is:
EDIT: I realized that the wiki put it better than I did so here you go:
To create permissions for an alias, add a label in front of it:
<label>:/command = ...
There are two types of labels:
Permission Labels
Put only letters, numbers and underscores in the label to assign the permission commandhelper.alias.<label> to the entire alias.
Example: tasty:/eat cake = ... would cause people with commandhelper.alias.tasty to be given permission to use /eat cake
Group Labels
Start your label with a tilde "" to turn it into a group label.
Add the group names separated by forward slashes "/" to give them permission.
Add a hyphen "-" in front of a group name to remove permissions instead.
Groups take priority from left to right.
Example: mods/-admin/default:/eat cake = ... would give permission to mods and the default group, but remove permissions from the admins (causing restricted functions to always fail). A user in both the admin and default group would lose permissions due to how priority works.
Star Label
As an alternative to assigning all groups to an alias, or giving all groups a permission, then tagging the alias with that label, you can use the star label, which opens the alias up to all users. It essentially disables permission checking entirely for that one alias.
This is useful in combination with the has_permission() function, in the case where you need super fine grained control of the permissions for this alias. You can open up the alias to everyone, then more carefully select the behavior from within the alias, based on the results of has_permission()
Hope this helped
@monkeywarrior20
Because nobody is replying to you: to be honest, I don't know. But you can make public aliases using the config.txt file
Is it possible to make your aliases usable by other players?
@wraithguard01 It would be a little bit complicated. For now I just disabled CommandHelper. On win XP it just create new folder. On Win7 it crashed (can't find config files). Hope it will be fixed... Thanks for tip anyway.