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

Какие изменения будут в Bukkit API после выхода Minecraft 1.13

Тема в разделе "Оффтопик", создана пользователем fromgate, 6 дек 2017.

  1. Автор темы
    fromgate

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

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    md_5 написал о своем видении изменений в Bukkit API, связанных с грядущими изменениями, которые последуют после выхода Minecraft 1.13 (вольный пересказ его статьи приведён здесь).

    В двух словах, он обращает внимание на то, что spigot полностью избавится от поддержки цифровых значений id предметов/блоков. Методы связанные с MaterialData будут помечены как устаревшие. А для работы с блоками будет реализовано новое API.

    В общем, похоже, куча плагинов в spigot 1.13 работать не будет (если их не обновят ;)).
     
  2. AtomicScience

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

    Баллы:
    76
    Имя в Minecraft:
    AtomicScience
    А разве не уже?
     
  3. alexandrage

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

    Баллы:
    173
    Самый резон перекатить на sponge api.
     
  4. Автор темы
    fromgate

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

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    Сейчас то, что касается цифровых данных - устарело. Это вообще уберут. А вот то, что касается класса MaterialData (точнее производных от него типа Bed, Dye, Wool и т.д.) — это сейчас актуально, но пометят как устаревшее.

    Хотя на мой взгляд - уже убрали бы. Всё равно большинство плагинов принимают именно цифровые значения data, а не MaterialData. Т.е. они всё равно потребуют переделки.


    Похоже на то :)
     
  5. Типа админ:D

    Типа админ:D Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Qamulex
    ...и как теперь циферку преобразовывать в предмет?
     
  6. Автор темы
    fromgate

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

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    Либо ручками, либо не пользоваться циферками.
     
  7. alexandrage

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

    Баллы:
    173
    Лучше чем раньше. Теперь будет long value без data(byte)
     
  8. Типа админ:D

    Типа админ:D Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Qamulex
    Так в конфиге везде циферки, или я чего-то не понимаю?
     
  9. Konstantin773

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

    Баллы:
    153
    Skype:
    Konstantin77313
    Имя в Minecraft:
    K773
    Вот только как это скажется на размерах чанк-пакетов?
    Раньше было 4096 баит ID'шников + 2048 баит метадаты на каждую секцию (y=16*i). Т.е. максимум 98304 баита, а зачастую менее 43008 баит (сервер не отправляет секции, если в них нет блоков). Forge же повышал планку в два раза для ID'шников (4096 баит -> 8192 баита) и в четыре раза для метадаты (2048 -> 8192)
     
    Последнее редактирование: 13 дек 2017
  10. alexandrage

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

    Баллы:
    173
    А хер его знает как оно на сетевом уровне там будет.
     
  11. Konstantin773

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

    Баллы:
    153
    Skype:
    Konstantin77313
    Имя в Minecraft:
    K773
    Скорее всего, станет 16кб при Integer-пространстве или 32кб при Long. Надеюсь, Mojang не настолько извращенцы, чтобы строковые идентификаторы слать.
     
  12. alexandrage

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

    Баллы:
    173
    Да не, там уже и раньше были какие то оптимизации.
     
  13. Автор темы
    fromgate

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

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    Тут интересная вещь.
    В чанке (точнее одной из секций чанка) хранится палитра используемых блоков.
    Т.е. теоретически максимальное число такой палитры: 16*16*16 = 4096 записей.
    Каждая такая запись — это блок, включая какие-то параметры (ну вроде активен редстоун или не горит), для сундуков, как я понимаю — надо будет проверить, полностью инвентарь)

    Такого массива нет, но появился массив на 256 long int. Насколько я понимаю длина этого массива не фиксирована. Т.е. может быть и больший размер. В нём будет кодироваться номер блока из палитры.
    Получается, что текстовые идентификаторы посылаться будут, но не для каждого блока, а именно в составе палитры.
    В этом есть плюс — форджам не нужно будет ничего придумывать и добавлять. Просто добавляется новый блок в палитру и всё.

    [​IMG]
     
    Последнее редактирование: 30 янв 2018
  14. BlazeMC

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

    Баллы:
    76
    Что сказать,будем ждать обновления WorldEdit и глобальных плагинов которые работают с MaterialData.
     

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