Your command does not seem to be correct.
/fill ~-317.700 ~7.000000 ~-82.700 ~-274.300 ~30.00000 ~-30.374 air
the ~
symbol means at player's command block's coordinates. For example, if you want to set a block 1 block above, then you would do:
/setblock ~ ~1 ~ stone
That would set the co-ords to be same as command blocks, but Y + 1 (notice the ~1
).
Your command also has decimal coordinates. Blocks always have full coordinates (there can never be a block moved half-way. If this was possible, you could see blocks clipping into each other).
I actually tried using decimal points with setblock
, but if I have Y as 50.9
, then the block places at 50
/fill -316 7 -82 -274 30 -30 air
This is roughly how your command should be. Note: I rounded the numbers, so it might not be accurate.
You can use the F3 menu for measuring co-ordinates. However, I recommend using the Looking at coordinate which will measure the block you are looking at quite literally.
A compound tag surrounds its data in curly brackets, while a list tag surrounds its data in square brackets. All tags except for those directly within a list must have a name.
The ench
tag is a list, yet you have declared it as a compound because it's opened using curly brackets:
ench:{[],[],[]}
And within those curly brackets you have unnamed lists, which breaks syntax. The ench
tag is instead a list of compounds:
ench:[{},{},{}]
You have also declared the id
and lvl
tags as strings by using quotation marks, when they are supposed to be numerical (specifically a short; a number between -32,768 and 32,767).
The game will not auto-correct any tag-types within item data, so by declaring it as an integer (number between -2,147,483,648 and 2,147,483,647) it will remain an integer and not the standard short. The game will still recognize that it's a numerical value even in that case. To declare a short, you append a numerical value with an "s". To declare an integer, you simply use a numerical value.
The Lore
list must be placed within the display
compound.
Fixed command, using the correct tag-types for enchantments:
/give x_xstolasx_x diamond_sword 1 0 {display:{Name:"Hellbringer",Lore:["Guilty."]},ench:[{id:20s,lvl:2s},{id:16s,lvl:10s},{id:19s,lvl:2s}]}
Alternative, using integers to show that the game will accept it:
/give x_xstolasx_x diamond_sword 1 0 {display:{Name:"Hellbringer",Lore:["Guilty."]},ench:[{id:20,lvl:2},{id:16,lvl:10},{id:19,lvl:2}]}
It is recommended to declare correct tag-types for the sake of consistency, since enchantments applied through normal means will be shorts.
Best Answer
Your command works for me, but it does not do what you intend it to do.
Make sure that it is in a repeating command block and that the command block is actually loaded, it may have to be powered by redstone depending on how you set it up. Please give some more details about your problem if this does not help.
Altering the command does make it work the way you explained, as long as you are in a single player world and the potion actually gets far enough.
It may not always work as intended if you have multiple players in your world at the same time, in that case I would suggest a two commands solution like this:
I set time to 10, it works quite well for me, but you may want it to fly for longer, or shorter
This solution is time based, so it is not affected by how many players are online. I am not sure if it works with lag though. You will not be able to throw the potion into another dimension through a portal, because this command uses the portal cooldown to keep track of time.
Neither of these solutions do anything if the splash potion breaks before the effect takes place (if the potion is not far enough away from you in the first case, or if it breaks too early in the second case)
Note: This part (
~2 ~2 ~2 ~-2 ~-2 ~-2
) specifies a 5x5x5 volume and not 4x4x4Note 2: The potions will set everything close to it to ice, so it may potentially break barriers, bedrock, or any decoration that you may have. You can change that by putting
replace air
after the fill command. Doing this will prevent it from setting grass to ice though and it will not work under water anymore, so it may not always work in those situations.Note 3: Throwing the potion directly at your target may break it, before it "explodes", making it uneffective