I tried this command:

/give @p potion{display:{Name:'{"text":"Mystical Potion"}'},CustomPotionEffects:[{Id:8,Amplifier:2b,Duration:300,ShowParticles:0b},{Id:14,Amplifier:1b,Duration:200,ShowParticles:0b},{Id:28,Amplifier:1b,Duration:300,ShowParticles:0b}]} 1

This potion should give the player invisibility, jump boost and slow falling, but when I use that command I'll get a uncraftable potion with no effects. This command worked in 1.20.1, but as they updated the version to 1.20.2 recently, this command doesn't seem to work anymore. Aswell as my other commands that include custom potion effects.

So because it worked in the last version and doesn't get an error in this version, I was wondering if they maybe changed the syntax of this command, like instead of using square brackets you have to use normal brackets or something like that?

1 Answer 1


Per Minecraft Wiki

player.dat format

  • In NBT format for item type potion, lingering_potion, splash_potion, and tipped_arrow:
    • Renamed CustomPotionEffects to custom_potion_effects.

Hence, you need to change CustomPotionEffects to custom_potion_effects in your query, producing:

/give @p potion{display:{Name:'{"text":"Mystical Potion"}'},custom_potion_effects:[{Id:8,Amplifier:2b,Duration:300,ShowParticles:0b},{Id:14,Amplifier:1b,Duration:200,ShowParticles:0b},{Id:28,Amplifier:1b,Duration:300,ShowParticles:0b}]} 1
  • Thank you, I also noticed that the instances aren't written in CamelCase anymore and you have to replace the numeric values with the name of the potion effect. Like this: wrong: Id:8 ; right: id:jump_boost. Sep 22 at 18:55

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .