Примечание: статья в разработке.
Редиректы - это форма Brigadier для псевдонимов. Ниже показано, как Minecraft обрабатывает /msg с псевдонимами /tell и /w:
public static void register(CommandDispatcher<ServerCommandSource> dispatcher) { LiteralCommandNode node = registerMain(dispatcher); // Регистрирует основную команду dispatcher.register(literal("tell") .redirect(node)); // Псевдоним 1, перенаправление на главную команду dispatcher.register(literal("w") .redirect(node)); // Псевдоним 2, перенаправление на главную команду } public static LiteralCommandNode registerMain(CommandDispatcher<ServerCommandSource> dispatcher) { return dispatcher.register(literal("msg") .then(argument("targets", EntityArgumentType.players()) .then(argument("message", MessageArgumentType.message()) .executes(ctx -> { return execute(ctx.getSource(), getPlayers(ctx, "targets"), getMessage(ctx, "message")); })))); }
Редирект сообщает Brigadier'у продолжить синтаксический анализ команды на другом командном узле.