Клиентские игры

Майнкрафт. Как сделать чтобы командный блок мог кикнуть игрока? Пробовал писать /kick @p не помогает..

Строю карту и мне нужно чтобы в конце карты при нажатии кнопки игрока выкидывало из мира. КАК ЭТО СДЕЛАТЬ???
Для карты — никак. Вот прям физически никак.
У игры существует 4 уровня разрешений для команд:
  1. Прав вообще нет, доступны только некоторые команды вроде /msg или /me.
  2. Появляется разрешение обходить систему защиты спауна (параметр "spawn protection" на серверах)
  3. Базовый уровень, позволяющий использовать большинство команд.
  4. Именно начиная с этого уровня становятся доступны административные команды, такие как /ban или /kick.
  5. Полный доступ — им обладает консоль сервера или игрок в одиночном мире. Доступны все существующие команды и управление состоянием сервера.
Проблема в том, что командные блоки по умолчанию имеют уровень 2. А доступ к команде /kick открывается только с 3 уровня разрешений. И изменить для командного блока это никак нельзя без модификации игры.
Да, есть способ с изменением уровня разрешений для функций в датапаках, и уже через команду в датапаке игрока можно будет кикнуть из мира, но для этого самому игроку придётся настроить сервер и в server.properties вручную разрешить это делать.

Зато командами можно перегрузить клиент игрока настолько сильно, что игра зависнет и крашнется. Да, это немного не то, но это хотя бы возможно.
Например, можно сделать так:
 /particle minecraft:item minecraft:command_block{freeze_client:1} ~ ~ ~ 0 0 0 1 999999999 force  
Это единоразовая команда. Но если у игрока модифицированный клиент, то в нём может быть отключена конкретная частица (или вообще все), и это не сработает.
Есть способ с бесконечным цикличным выводом пустых (или не очень) сообщений в чат, это тоже убивает клиент. Но и это можно обойти, просто отключив чат в настройках даже без модификации игры.
Александр Максименко
Александр Максименко
35 388
Лучший ответ
Александр Максименко Сволочная мыловская разметка... Кто читает — делайте поправку на то, что отсчёт начинается с 0, а не с 1.