Существует ряд команд, которые являются жизненно важными для многих командных систем. В этом списке перечислены наиболее популярные и полезные команды, которые, скорее всего, будут использоваться в той или иной форме.
В этом руководстве вы узнаете следующее:
- Некоторые из наиболее популярных команд, которые следует использовать в начале работы.
Перед началом этого урока рекомендуется пройти следующее.
Прежде всего, это команда /help
.
/help <страница: int>
Выполнение команды /help
в чате само по себе выведет список всех команд, которые вы можете выполнить. Однако,
поскольку их очень много, они были разделены на несколько страниц, на которых за один раз показывается только одна
страница. Если указать номер страницы, то можно изменить, какая страница команд будет показана.
Если вы хотите узнать об использовании и синтаксисе команды, вы можете использовать команду /help
, за которой следует
имя команды. Это может быть полезно, если вы хотите получить общее представление о команде.
/help [command: CommandName]
Команда /gamerule
изменяет определенные аспекты геймплея и имеет опции, полезные для разработки. Существует большое
количество игровых правил, которые можно перечислить с помощью функции автозаполнения чата.
/gamerule <rule: BoolGameRule> [value: Boolean]
/gamerule <rule: IntGameRule> [значение: int].
Некоторые геймерулы принимают в качестве значения правила только true/false ("BoolGameRule"), в то время как другие принимают только целые числа ("IntGameRule"). Основные геймерулы, имеющие решающее значение для разработки, которые все являются булевыми, это "commandblockoutput", "sendcommandfeedback", и "commandblocksenabled", "dodaylightcycle" и " doweathercycle", перечисленные ниже.
Вы могли заметить, что все предыдущие примеры команд отправляли вывод в чат. Это может быть неприятно, особенно для команд, выполняющихся каждый тик. Геймерул "commandblockoutput", если установить его в false, отключит вывод данных в чат.
/gamerule commandblockoutput false
Отключение вывода командного блока не отключает всю обратную связь. Есть некоторые команды, например /xp, которые будут продолжать выдавать обратную связь даже при отключенном выводе командного блока. Геймеруле "sendcommandfeedback" отключит и эти сообщения, обеспечив полностью бесшумную систему команд.
/gamerule sendcommandfeedback false
Чтобы быстро включить или выключить командные блоки в мире, можно включить или выключить "commandblocksenabled". Это может быть особенно полезно, если повторяющийся командный блок постоянно телепортирует вас.
/gamerule commandblocksenabled false
Либо в целях разработки, либо по соображениям геймплея, вы можете запретить перемещение цикла дневного света. Это означает, что на какое бы время вы ни установили игру (например, с помощью команды /time), она останется в этом времени.
/gamerule dodaylightcycle false
Как и в случае с "dodaylightcycle", вы также можете захотеть управлять погодным циклом. Если вы планируете создать счастливую обстановку, надвигающаяся гроза может не дать наилучшего эффекта. Когда функция "doweathercycle" отключена, погода останется такой, какая она есть, в том числе и при настройке с помощью команды /weather.
/gamerule doweathercycle false
При разработке контента чаще всего вы будете играть в творческом режиме. Однако тестирование контента может потребовать
перехода в режим выживания или приключений. Команда /gamemode
позволяет изменить текущий режим игры.
/gamemode <gameMode: GameMode> [player: target]
/gamemode <gameMode: int> [игрок: цель].
У вас есть несколько вариантов режима игры: полное имя, один символ или числовое представление. Принятые значения: " выживание" ("s" или 0), "творческий" ("c" или 1) и "приключения" ("a" или 2). Существует также значение "по умолчанию" ("d"), которое устанавливает ваш игровой режим на любой режим игры по умолчанию в мире. Следующая команда установит ваш собственный игровой режим на творческий, когда вы запустите ее в чате.
/gamemode creative
Вы также можете изменить игровой режим конкретного игрока с помощью селекторов целей, что может быть полезно при управлении аспектами игрового процесса (например, невозможностью добывать что-либо в режиме приключения). Следующая команда изменяет игровой режим всех игроков с тегом "sometag" на режим приключений.
/gamemode adventure @a[tag=sometag]
Изменение игрового окружения может быть очень важным для создания нужной атмосферы. Изменение времени суток - один из способов сделать это.
/time set <сумма: int>
/time set <time: TimeSpec>
Вы можете указать целое число, которое представляет собой точное время суток, или "TimeSpec" может быть установлен в одно из следующих значений для более удобного выбора общего времени суток: “day”, “midnight”, “night”, “noon”, “sunrise”, и “sunset”. Например, чтобы быстро установить солнце прямо над игроком, можно использовать следующее:
/time set noon
Как и команда /time set, команда /weather
может быть использована для изменения окружающей среды. Если вы
хотите, чтобы наступил определенный тип погоды, используйте эту команду.
/weather <clear|rain|thunder> [duration: int].
Необязательная длительность - это количество игровых тиков, в течение которых будет длиться выбранная погода. 20 игровых тиков - это одна секунда, поэтому для каждой секунды, которую должна длиться погода, умножьте это число на двадцать. Следующая команда устанавливает грозу на 30 секунд, что составляет 600 тиков.
/weather thunder 600
Убедитесь, что gamerule "doweathercycle" равно false, если вы собираетесь использовать длительность. Если оно истинно, цикл погоды не будет происходить, что сделает длительность бесполезной.
Если у вас есть определенное место, в которое вы хотите, чтобы спаунились игроки, недавно появившиеся в мире, или
игроки, которые умерли, команда /setworldspawn
предоставляет такую возможность.
/setworldspawn [spawnPoint: x y z].
Обратите внимание, что игроки, которые умирают, установив спавн на кровати, все равно будут возрождаться на своей кровати.
Иногда вам может потребоваться обеспечить легкое средство перемещения или контролировать местонахождение игрока (или
даже неигрового объекта). Команда /tp
телепортирует игроков в определенные места или даже к другим сущностям.
Синтаксис команды /tp
поначалу может показаться пугающим, но обратите внимание на то, что многие из них ответвляются
от одних и тех же опций.
/tp <жертва: цель> <назначение: цель> [checkForBlocks: Boolean]
/tp <victim: target> <destination: x y z> [checkForBlocks: Boolean]
/tp <victim: target> <destination: x y z> [yRot: value] [xRot: value] [checkForBlocks: Boolean]
/tp <victim: target> <destination: x y z> facing <lookAtEntity: target> [checkForBlocks: Boolean]
/tp <жертва: цель> <место назначения: x y z> напротив <lookAtPosition: x y z> [checkForBlocks: Boolean].
В самом простом случае вы можете телепортировать игрока в определенное координатное место.
/tp @p 100 50 100
Или к другому игроку или объекту. Цель назначения должна разрешаться в одну сущность, поэтому необходимо использовать селектор цели, который может указывать только на одну сущность, или убедиться, что нет дубликатов предполагаемой цели ( например, используя команду /tag для определения целей).
/tp Стив Алекс
/tp @p @e[type=minecraft:armor_stand,c=1]
/tp @a @e[type=minecraft:creeper,tag=destination_1].
Общая опция "checkForBlocks" по умолчанию имеет значение false, но когда она установлена в true, это предотвратит телепортацию игрока, если место, куда он попадет, занято блоками.
Эта тройка команд управляет инвентарем игрока, хотя /replaceitem
может также изменять инвентарь неигровых существ и
блоков с инвентарем. Команда /give
может давать предметы, команда /clear
может удалять предметы, а
команда /replaceitem
может помещать предметы в определенные слоты инвентаря.
Эти команды изменяют физические блоки в мире. Команда /setblock
может установить один блок, а команда /fill
может
установить несколько одинаковых блоков. Команда /clone
, с другой стороны, возьмет копию блоков из одной области и
вставит ее в другую.
Добавление и удаление эффектов состояния осуществляется с помощью команды /effect
. Все эффекты состояния цели также
могут быть сняты.
Команда /summon
используется для порождения нового существа в мире, от коров до овец и ваших собственных
пользовательских существ.
Команды /say
, /tell
и /title
не являются идеальными при представлении информации, поскольку они не могут быть
переведены. Команды /tellraw
и /titleraw
могут быть переведены с помощью ввода JSON для сообщения.
Команда /tellraw
также более понятна по смыслу, поскольку сообщение не сопровождается заявлением “whisper”.
/tellraw @a {"rawtext":[{"translate": "commands.testfor.success", "with":["PlayerName"]}]}
/tellraw @a {"rawtext":[{"text": "Hello World"}]}
Команда /scoreboard
- это мощный метод отслеживания числовых значений по каждому объекту, а также выполнения
математических операций с командами. Первым шагом является создание цели и, при желании, ее отображение на боковой
панели.
/scoreboard objectives add objectiveA dummy
/scoreboard objectives setdisplay sidebar objectiveA
Самым простым действием будет награждение игрока очком, если он выполнит какое-либо задание.
/scoreboard players add @p objectiveA 1
После этого можно использовать селекторы целей для выбора игроков, набравших определенное количество очков.
@a[scores={objectiveA=10..}]
Подобно /scoreboard
, команда /tag
позволяет вам отслеживать строковые значения по каждому объекту. Теги
используются, когда числовые значения не нужны, например, в ситуациях "правда/ложь". Например, вы можете пометить
сущности как босса, а затем нацелить эти же сущности на основе этой метки.
/tag @e[type=sheep] add boss
/tag @e[type=minecart] add boss
/say Bosses: @e[tag=boss]
Эти команды проверяют существование сущности, блока и копии блочной структуры. Хотя эти команды могут быть полезны наряду с условными командными блоками, они менее полезны в функциях, поскольку в функциях нет эквивалентной условной настройки.
Команды /testfor
и /testforblock
можно вообще пропустить в пользу /execute
, которая поддерживает выполнение
команды на основе существования сущности и выполнение команды на основе существования блока.
Основной функцией команды /execute
является изменение исполнителя и места выполнения вложенной команды. Однако ее
синтаксис позволяет выполнять некоторые условные команды, которые в противном случае отсутствовали бы в функциях.
/execute <origin: target> <position: x y z> <command: command>
/execute <origin: target> <position: x y z> detect <detectPos: x y z> <block: Block> <data: int> <command: command>
Например, чтобы определить наличие определенного блока под игроком и в результате выполнить команду, можно использовать
аргумент "detect" вместо вложенной команды /testforblock
.
/execute @a ~ ~ ~ detect ~ ~-1 ~ grass 0 say Игрок стоит на траве.
После изучения команд и селекторов целей, блоков команд и множества полезных команд пришло время собрать их вместе и создать небольшой проект в виде системы Complete the Monument.