Перейти к содержанию
Авторизация  
Admin

Как узнать UUID игрока в майнкрафт?

Рекомендуемые сообщения

Итак, что такое этот UUID и с чем его едят? :)
небольшой ликбез

 

UUID - это универсальный уникальный идентификатор игрока.
Представляет из себя достаточно длинный набор чисел в шестнадцатиричном представлении, применяемые в программировании для однозначной идентификации чего-либо.
В Minecraft'е UUID используют для идентификации учетных записей игроков, которые связаны с аккаунтом Mojang.
Например, у Ночта UUID вот такой: "069a79f4-44e9-4726-a5be-fca90e38aaf5".

 

Узнать ник игрока можно так:

https://api.mojang.com/users/profiles/minecraft/Ник

На что стоит обратить внимание:

 - теперь профили игроков (файлы на сервере) называются не ником игрока, а его UUID, но суть их от этого не изменилась (их также можно переименовывать);
 - основные трудности будут первое время только с плагинами, стандартные внутриигровые инструменты (баны по нику, вайт-лист) оптимизированы для автоматического перехода на UUID;
 - пока остаётся открытым вопрос с использованием ников в командных блоках и при добавлении в команды;

 + миграция на аккаунт Mojang необходима, если Вы хотите сменить свое имя;
 + имя должно быть уникально, Вы не сможете выбрать имя, которое уже занято;
 + если Вы сменили имя, то Ваше имя будет доступно для "захвата", это не традиционные "локальные" имена, это глобальная система имён...

Итак, оставшиеся вопросы:

 - как правильно работать с командными блоками при указании ника игрока и как будет вести себя игра, обрабатывая такие условия (возможно, придётся полностью переходить на работу с переменными)?
 - как будут обрабатываться команды, в которых находятся игроки, если игрок меняет имя (ответ: новый ник = не в команде)?

 + если имена можно будет "терять и захватывать", то как это будет отрабатываться на забаненных и снова в тех же командах и командных блоках?? :)

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вспомнил про "захват"... Вроде бы как в командах (некоторых?) можно вместо ника указывать UUID игрока... Но требует исследования, к чему я пока не готов.

 

И теперь вопрос: знает ли кто способы получения UUID без обращения к сторонним сайтам?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вот, есть какой-то Mojang API и примеры там же - подойдёт?

Вроде бы, это то же самое, от чего надо уйти

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вообще, мне это надо было из-за того, что местный хостинг не позволял http_get и file_get_contents. Но оно и к лучшему - я узнал, как можно узнать uuid сразу нескольких игроков (вот тут).

 

И теперь делаю это таким макаром:

$url = 'https://api.mojang.com/profiles/minecraft';
$data = json_encode($online);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
curl_setopt($curl, CURLOPT_HTTPHEADER, array(                                                                          
    'Content-Type: application/json',                                                                                
    'Content-Length: ' . strlen($data))
);
$raw = curl_exec($curl);
curl_close($curl);

$data - это массив ников игроков. А в ответе мы получаем, согласно документации, JSON, который можно через json_decode преобразовать в объект или массив и дальше делать что угодно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×