You can easily make mistakes when composing data tags in Minecraft. Further, these mistakes can be difficult to locate. Here are some techniques you can use whenever your commands don’t work, in order to discover and fix the problem.
If a command just doesn’t work, you can try a few things that apply in many cases:
Remove some tags. Use cut-and-paste (Ctrl-X and Ctrl-V) to temporarily remove some of the tags you’re using. If the problem goes away, there’s a bug in the tags you removed. If the problem doesn’t go away, there’s a bug in the tags you didn’t remove, or a problem with the command in general. You can apply this strategy to narrow down the tags that are causing errors.
Check the type of values passed to your data tags. Some tags require strings of text, and others require numbers within a certain range, and so on. Make sure you’re using your tags properly.
Watch out for extra brackets, curly brackets, quotation marks, and colons. Especially if you use a tag that takes strings as input, make sure that there are no characters that might be misinterpreted. For example, the colon in the string Effect: +2 Health may confuse the compiler unless you enclose the entire string in quotation marks, indicating that it’s a string and not a misused tag.
If these tactics don’t work, you may have to look at the specific error message displayed in the command block’s Previous Output text box. If you click on this error message and scroll to the beginning by pressing the Home key, you can see why exactly the command block is having a problem with your input.