Data Components are powerful, but the current brackets + JSON syntax creates long, cluttered command strings that are prone to typos. I propose Modular Components—a streamlined syntax using angle brackets
<> and strict parameter blocks =[] to eliminate nested curly brackets and string escaping.Syntax Comparison
-
Current:
/give @p minecraft:breeze_rod[minecraft:max_stack_size=99,minecraft:death_protection={},minecraft:enchantment_glint_override=true,minecraft:custom_name=[{"text":"Life Saver","italic":false,"color":"green"}]] 99 - Wanted:
/give @p minecraft:breeze_rod<minecraft:Max_Stacking=[99],minecraft:Life_Saver=[True],minecraft:Enchanting_Glint=[True],minecraft:Name=[<Text=[Life Saver],Italics=[False],TextColor=[Green]>]> 99
While rewriting the core parser takes tons of time, the benefits to Minecraft are worth the investment:
-
Linear Tokenization: Strict delimiters (
<,>,[,]) allow Brigadier to tokenize parameters predictably, instead of halting mid-string to hand off to JSON text parsers. - Faster Validation: The engine can validate arguments faster during packet transfer because it can expect structural boundaries rather than checking for unclosed quotes.
- Cleaner ASTs: Simplifying the internal command tree reduces overhead when complex, data-heavy commands are run rapidly by functions or command blocks.
This shift lowers the barrier to entry for all and gives a cleaner foundation to scale future item properties without compounding syntax clutter.
Please sign in to leave a comment.
0 Comments