Minecraft Snapshot 17w45a
Minecraft snapshot 17w45a, the third snapshot for Minecraft 1.13, has been released.
Find all servers to this version here : https://minecraft-mp.com/version/17w45a/
Find all servers to this version here : https://minecraft-mp.com/version/17w45a/
Additions
- Commands
- A command UI when typing commands in the chat.
- Different components of commands will be displayed in different colors.
- Errors will be displayed in red without having to run the command.
- An
nbtargument in target selectors. - A new command parsing library called Brigadier.
Changes
Mobs
- Horse
- The model has been changed to be more consistent with other mobs.
Commands
- General
- Commands and functions are much faster and more efficient.
- Most commands are now more case-sensitive. Lowercase is preferable wherever possible.
- For example, this is no longer allowed:
/scoreboard ObJeCtIvEs ...
- For example, this is no longer allowed:
- The output signal of a command block used to be its "success count", but now is its "result".
- Specific Commands
/advancement
- Removed
/advancement testin favor of entity selectors.
/clear
- The syntax of
/clearhas changed./clear [<target>] [<item>] [<data>] [<count>] [<nbt>]will become/clear [<target>] [<item>] [<count>]- See the item argument type for more details.
[<data>]has been removed in preparation for the flattening, item data will no longer be a thing and item damage values will be moved into NBT.
/clone
- The syntax of
/clonehas been changed./clone <x1 y1 z1> <x2 y2 z2> <xt yt zt> filtered [force|move|normal] [<block>] [<data>]will become/clone <x1 y1 z1> <x2 y2 z2> <xt yt zt> filtered [<block>] [force|move|normal]/clone <x1 y1 z1> <x2 y2 z2> <xt yt zt> [replace|masked] [force|move|normal] [<block>] [<data>]will become/clone <x1 y1 z1> <x2 y2 z2> <xt yt zt> [replace|masked] [force|move|normal]
/defaultgamemodeand/gamemode
- Now only accepts string IDs, not shorthand or numeric.
/gamemode 2will become/gamemode adventure/defaultgamemode spis now/defaultgamemode spectator
/difficulty
/difficulty [<value>]now only accepts string IDs, not shorthand or numeric./difficulty 2is now/difficulty normal/difficulty pis now/difficulty peaceful
- You can now query for the current difficulty by using
/difficultywithout any arguments.
/effect
- The syntax of
/effecthas been split off, to avoid ambiguity./effect <entity> <effect>is now/effect give <entity> <effect>/effect <entity> clearis now/effect clear <entity> [<effect>]
- Giving an effect will now fail if it didn't actually do anything.
- Some mobs are immune (for example an ender dragon).
- Stronger existing effects prevent new weaker ones.
/enchant
- Removed in favor of
/modifyitem.
/execute
- The syntax of
/executehas been split off.- Modifier sub-commands can change how the command is ran:
/execute as <entity> <chained command>executes acommandusing the entity<entity>(but doesn't change position)./execute at <entity> <chained command>executes acommandusing the position of<entity>(but doesn't change entity)./execute offset <x y z> <chained command>executes a command using the position of<x y z>./execute align <axes> <chained command>executes a command after aligning the current position to the block grid (rounding down),<axes>is any combination ofxyandz(for example:x,xz,zyxandyz).x=-1.8,y=2.3,z=5.9usingxwill becomex=-2,y=2.3,z=5.9x=2.4,y=-1.1,z=3.8usingyxzwill becomex=2,y=-2,z=3
- Conditional sub-commands can let you prevent the command from running at all:
/execute (if|unless) block <x y z> <block> <chained command>executes acommandif (or unless)<x y z>matches<block>./execute (if|unless) blocks <begin> <end> <destination> (all|masked) <chained command>executes acommandif (or unless) the region between<start>and<end>matches<destination>./execute (if|unless) entity <entity> <chained command>executes acommandif (or unless)<entity>exists (returns 1 or more entities)./execute (if|unless) score <target> <targetObjective> (<|<=|=|>=|>) <source> <sourceObjective> <chained command>executes a command if (or unless)<target>'s score relates to<source>'s score based on the chosen criterium.
- As replacement for
/stats, a new sub-commandstorelets you store the result of a command somewhere:/execute store (result|success) <name> <objective> <chained command>resultis the result of a command, which replaces these old stats:AffectedBlocks,AffectedEntities,AffectedItems,QueryResult.successis how many times the command was successful. This is usually0or1, but if the command split up (for exampleas @a) then it may be more than1. This replacesSuccessCount.- The value is stored into the scoreboard under
<name>and<objective>. - The
objectivemust exist, but unlike with/statsyou don't need to set an initial value for<name>. - The value will be stored when the full command has finished executing.
- If a command isn't successful (
successis0),resultwill always be set to0. - It will be made clear what the expected result of each command is.
- You can chain all sub-commands together.
- After every sub-command you need to write another sub-command.
- When you're done with chaining sub-commands,
runlets you write the actual command to be executed./is no longer allowed before the command.
/execute as somebody at somebody run say hi
- Example of old commands:
/execute @e ~ ~ ~ detect ~ ~ ~ stone 0 say Stone!is now/execute as @e at @s if block ~ ~ ~ stone run say Stone!/execute @e ~ ~ ~ detect ~ ~ ~ grass 0 summon pigis now/execute at @e if block ~ ~ ~ grass run summon pig/execute @e ~ ~ ~ say Hello!is now/execute as @e run say Hello!
- Modifier sub-commands can change how the command is ran:
/experience
/xpis now an alias for/experience.- Split up into 3 different subcommands:
/experience add <players> <amount> [points|levels]- Adds
<amount>of either points or levels to the target<players>(defaults to points). - Adding points can cause players to level up, as usual.
- Negative numbers are supported, to subtract points instead.
- Subtracting points can cause players to level down.
- Adds
/experience set <players> <amount> [points|levels]- Sets
<amount>of either points or levels on the target<players>(defaults to points). - You cannot set more points than their current level allows.
- When changing levels, the points will stay at the same percentage as the previous level.
- Sets
/experience query <player> (points|levels)- Returns either the number of points or levels on the given
<player>.
- Returns either the number of points or levels on the given
/fill
- The syntax of
/fillhas been changed./fill <x y z> <xt yt zt> <block> <data> replace [<replaceBlock>] [<replaceData>]is now/fill <x y z> <xt yt zt> <block> replace [<filter>]/fill <x y z> <xt yt zt> <block> [<data>] [destroy|hollow|keep|outline|replace] [<nbt>]is now/fill <x y z> <xt yt zt> <block> [destroy|hollow|keep|outline|replace]
/function
/functionno longer accepts[if|unless] <entity>arguments.- This has been moved into
/execute. /function foo if @eis now/execute if entity @e run function foo
- This has been moved into
/gamerule
/gameruleno longer accepts unknown rules ("custom gamerules").- You can use functions or scoreboards as replacements, with no loss of functionality.
- Existing custom gamerules will just not be accessible. Only built-in rules will be available.
- Values to
/gameruleare now type checked (giving a string if it wants an int is a very obvious error).
/give
- The syntax of
/givehas changed./give <players> <item> [<count>] [<data>] [<nbt>]is now/give <players> <item> [<count>]- See the item argument type for more details.
[<data>]has been removed in preparation for the flattening, item data will no longer be a thing and item damage values will be moved into NBT.
/locate
- The y-coordinate is now returned as
64instead of?. - The
resultof the command, used by/execute store, will be the absolute distance to the structure.
/particle
- The
<params>argument has been removed, instead the parameters for particles likeblockcrackcan be specified right after the<name>argument using the new block argument./particle blockcrack stone [variant=smooth_granite] ~ ~ ~ 0 0 0 0 1
/playsound
- Now Tab ↹ auto-completes custom sound events.
/replaceitem
- The syntax of
/replaceitemhas changed./replaceitem block <pos> <slot> <item> [<count>] [<data>] [<nbt>]is now/replaceitem block <pos> <slot> <item> [<count>]/replaceitem entity <target> <slot> <item> [<count>] [<data>] [<nbt>]is now/replaceitem entity <target> <slot> <item> [<count>]- See the item argument type for more details.
[<data>]has been removed in preparation for the flattening, item data will no longer be a thing and item damage values will be moved into NBT.
- The
slotargument no longer requiresslot..- For example,
slot.hotbar.1now ishotbar.1
- For example,
/scoreboard
/scoreboardhad[<dataTag>]removed from its commands in favor of thenbtargument in entity selectors./scoreboard players tagand/scoreboard teamsremoved. Replaced by/tagand/teamrespectively./scoreboard players testremoved in favor of/execute (if|unless) scoreand entity selectors.
/setblock
- The syntax of
/setblockhas changed./setblock <pos> <block> [<data>] [<mode>] [<nbt>]is now/setblock <pos> <block> [<mode>]- See the block argument type for more details.
/stats
- Removed. Now part of
/execute. - The new
/executeone isn't a direct replacement, the behavior has changed:- It's now per-command, instead of per-entity or per-block.
- There's only
resultandsuccess, which covers all the old stat types.
/stopsound
*can now be used instead ofsourceto stop all sounds with a certain name, across all sources.
/tag
- Replaces
/scoreboard players tag. - Keeps the same syntax.
/tag <players> add <tag>to add<tag>to<players>./tag <players> remove <tag>to remove<tag>from<players>./tag <players> listto list all tags onplayers.
/team
- Replaces
/scoreboard teams. - Keeps the same syntax.
/team add <team> [<displayname>]/team empty <team>/team join <team> [<members>]/team leave [<members>]/team list [<team>]/team option <team> <option> <value>
/testfor,/testforblockand/testforblocks
- Removed. Now part of
/execute.
/toggledownfall
- Removed. It was always used to stop the rain, then make you frustrated in a minute when it's raining again.
- Use
/weather.
/tpand/teleport
/tpis now an alias of/teleport(much like/w,/msgand/tell).- Coordinates are now relative to the executor, as with all other commands.
- The syntax of
/tpremains, but with the behavior of/teleport.
/trigger
/trigger <objective>is a new syntax as a shortcut for/trigger <objective> add 1.
/weather
- If you don't specify a time, it now defaults to 5 minutes (previously random).
- Argument Types
- Target selectors
- More error handling has been introduced.
- Things like
limit=0,level=-10,gamemode=purpleare not allowed.
- Things like
- There's no longer a "min" and "max" separate values, we instead support ranges.
level=10is level 10level=10..12is level 10, 11 or 12level=5..is anything level 5 or abovelevel=..15is anything level 15 or below
- The arcane shorthand names have been renamed.
m->gamemodelorlm->levelrorrm->distancerxorrxm->x_rotationryorrym->y_rotationc->limit
x,y,z,distance,x_rotation,y_rotationare now doubles and allow values like12.34xandzare no longer center-corrected.- This means
x=0no longer equates tox=0.5.
- This means
gamemode(previouslym) no longer allows numerical or shorthand IDs.limit(wasc) No longer allows negative values.- Use
sort=furthestinstead.
- Use
- The
nameargument now supports spaces (as long as it's quoted). - Multiple of the same argument in target selectors is now possible.
tag=foo,tag=bar,tag=!bazmatches someone withfoo,barand notbaz.type=!cow,type=!chickenmatches something that isn't a cow and isn't a chicken.type=cow,type=chickenisn't allowed, because something cannot both be a cow and chicken.
- You can specify the sorting.
sort=nearestis the old default, sorting by distance (default for@p)sort=furthestis the reverse of that (previously you'd usec=-5for this)sort=randomfor random sorting (default for@r)sort=arbitraryis a new option to not sort the result (default for@e,@a)
- Specifying scores now looks like
scores={foo=1,bar=1..5} - You can test for advancements with
advancements={foo=true,bar=false,custom:something={criterion=true}}truefor "they completed the advancement",falsefor "they have not completed the advancement"- Alternatively, pass a block of specific criteria to test for (again,
true/false)
- Blocks
- Wherever a
<block>, optionally[<data>]and optionally[<nbt>]was required, it's now a single<block>argument that looks like this:stoneminecraft:redstone_wire[power=15,north=up,south=side]minecraft:jukebox{RecordItem:{...}}minecraft:furnace[facing=north]{BurnTime:200}
- ID is required (though just as before, if namespace isn't set it defaults to
minecraft:). - States are inside
[], comma-separated and must be properties/values supported by the blocks. They are optional.minecraft:stone[doesntexist=purpleberry]is a syntax error, becausestonedoesn't havedoesntexist.minecraft:redstone_wire[power=tuesday]is a syntax error, becauseredstone_wire'spoweris a number between 0 and 15.
- NBT tag is inside {}, and works just like you'd expect. It's optional.
- In the context of "conditions"/testing for blocks, only the states you provided will be tested.
- If you test
redstone_wire[power=15], it only checks power but ignores other states such asnorth.
- If you test
- In the context of setting blocks, any states you provided will be set but anything missed out will default depending on the block.
- If you set
redstone_wire[power=15], it will setpowerto 15 butnorthwill be a default value (in this case, set tonone).
- If you set
- There is no such thing as block data value in 1.13. It's either a different block, or a state.
- Items
- Wherever an
<item>, optionally[<data>]and optionally[<nbt>]was required, it's now a single<item>argument that looks like this:stoneminecraft:stick{display:{Name:"Stick of Untruths"}}
- ID is required (though just as before, if namespace isn't set it defaults to
minecraft:). - NBT tag is inside {}, and works just like you'd expect. It's optional.
- Any other information is either a separate item or a property in nbt.
Fixes
- 17 issues fixed
- From the 1.13 development versions
- MC-121281 – Scrollbar in the creative and server menu isn't working with mouse
- MC-121283 – Underwater and in lava overlay is missing
- MC-121284 – Resource pack and world folder buttons don't work
- MC-121288 – Cinematic Camera doesn't work properly
- MC-121302 – "Direct connect" button enabled/disabled at wrong times
- MC-121314 – Video settings slider text "FS Resolution" doesn't fit
- MC-121328 – GUI scales incorrectly
- MC-121329 – Pressing "chat" key no longer selects search in creative inventory/recipe book
- MC-121334 – [1-9] in creative inventory search tab sends additional keypress to search bar
- MC-121396 – WASD keys in a weird order
- MC-121418 – Crash when trying to paste non-string clipboard content
- MC-121419 – Click and hover events are offset in chat
- MC-121421 – Pressing enter in the name or seed field on the create world dialog no longer creates the world
- MC-121433 – Non english letters are lowercase in controls setting, while English are upper.
- MC-121456 – Chunks disappearing after switching windows in fullscreen mode
- MC-121468 – Statistics can no longer be ordered by clicking icons
- From the previous development version
- MC-121517 – Fullscreen button will not make game fullscreen
Posted on November 8th, 2017 06:04 PM EST