1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.
  2. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

[PHP] UUID

Тема в разделе "Оффтопик", создана пользователем Danil005, 13 янв 2015.

  1. ql_Nik_lp

    ql_Nik_lp Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    q-nik-p
    Имя в Minecraft:
    ql_Nik_lp
  2. alexandrage

    alexandrage Старожил Пользователь

    Баллы:
    173
    Тем чо он в рашке нахрен невперся. 2 типа серверов -> пиратка - свой лаунчер.
     
  3. Vladlen_198

    Vladlen_198 Старожил Пользователь

    Баллы:
    108
    Skype:
    ultrashock98
    Имя в Minecraft:
    UltraShock
    Fe economy
     
  4. WeekThor

    WeekThor Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    _WeekThor_
    Юуу, какая старая тема)) Но всё же, может кому-то нужно (никому, я знаю):
    PHP:
    <?
        
    /**
         * Generates a offline-mode player UUID.
         *
         * @param $username string
         * @return string
         */
        
    function constructOfflinePlayerUuid($username) {
            
    //extracted from the java code:
            //new GameProfile(UUID.nameUUIDFromBytes(("OfflinePlayer:" + name).getBytes(Charsets.UTF_8)), name));
            
    $data hex2bin(md5("OfflinePlayer:" $username));
            
    //set the version to 3 -> Name based md5 hash
            
    $data[6] = chr(ord($data[6]) & 0x0f 0x30);
            
    //IETF variant
            
    $data[8] = chr(ord($data[8]) & 0x3f 0x80);
            return 
    createJavaUuid(bin2hex($data));
        }
        
        function 
    createJavaUuid($striped) {
            
    //example: 069a79f4-44e9-4726-a5be-fca90e38aaf5
            
    $components = array(
                
    substr($striped08),
                
    substr($striped84),
                
    substr($striped124),
                
    substr($striped164),
                
    substr($striped20),
            );
            return 
    implode('-'$components);
        }
    echo 
    constructOfflinePlayerUuid('тутник');
     
  5. WeekThor

    WeekThor Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    _WeekThor_
    ссылка немножечко не работает, да и кода там много.. G:
     
  6. alexandrage

    alexandrage Старожил Пользователь

    Баллы:
    173
    Много не много, но совпадает точно с жабовским. Проверен годами. А твой еще хз.
     
  7. WeekThor

    WeekThor Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    _WeekThor_
    ну как минимум твой и мой код отличаются размером. Оба на ник _WeekThor_ генерируют одно и тоже)
     
  8. alexandrage

    alexandrage Старожил Пользователь

    Баллы:
    173
    Ну потестишь скажешь как оно. Как то я уже заменял на некий короткий вариант и все сломалось.
     
  9. WeekThor

    WeekThor Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    _WeekThor_
    я оба кода закинул себе. Заметь, что оба они генерируют одинаково. Разница лишь в объёме.
    http://fantastic-game.ru/uuid/test.php?nick=ник
     
  10. alexandrage

    alexandrage Старожил Пользователь

    Баллы:
    173
    Ну если оно норм генерит, я заменю на такой варик со временем.
     

Поделиться этой страницей