Skip to content

ScriptingCommands

commands.register('beds', ['bedalert'], function (args) {
    chat.print('args: ' + args.join(' '));
});
commands.unregister('beds');

A script command runs as /bitchos beds …, not as a top-level /beds. bitchos commands are recognised by reading the outgoing chat line, so a top-level command would mean every script taking a word out of the global namespace, shadowing a Hypixel command by accident and swallowing it silently for as long as the script is loaded.

args is a real JavaScript array of the words after the command name.

Names

  • Built-in /bitchos subcommands always win; registering one of those names is refused with a message, as is a name another script already owns.
  • Names are matched case-insensitively and stored lower-cased, so commands.register('Beds', …) and /bitchos beds are the same command.
  • The refused names are exactly the subcommands the host dispatches on: everything /bitchos help lists, plus scripts, key, licence and license. Names that merely start with one of those, such as keys or keybinds, are yours to take.

No tab completion

bitchos commands never reach Minecraft's command system, so nothing would ever ask for completions. There is no completer argument because an argument that accepted a callback nobody would call is exactly the kind of thing this API refuses to ship.