Jump to content
LastLife

Подготовка к переходу на 1.13

Recommended Posts

Так, еще пара фиксов:

  • Поле 'type' селекторов теперь обновляется как надо
  • Поправил ошибку с апгрейдом 'scoreboard players test'
  • Поправил обработку 'execute ... detect ...'
  • Добавил апгрейд селекторов в `tellraw`
  • Пофиксил апгрейд команды 'function ... if/unless ...'
  • Пофиксил апгрейд команды 'effect', если длительность равна нулю - меняю на 'effect clear'
  • Добавил апгрейд команды 'spawnpoint'
  • Diamond 1

Share this post


Link to post
Share on other sites

@RedTeapot вроде вижу ещё косяк. Команда в кб:
data merge entity @e[tag=FallingFrame,type=falling_block] {Time:1}
У команды data в селекторах обязательно указание одной сущности, т.е. нужен ещё limit=1

Share this post


Link to post
Share on other sites
Достижения

И еще пара фиксов:

  • В data merge теперь добавляется limit=1 в селектор
  • Поправил апгрейд scoreboard teams. Теперь меняет на /team ...
  • Добавил впихивание NBT внутрь селектора для scoreboard players ...
  • Добавил апгрейд команды spawnpoint (селектор там надо апгрейдить)

На этом, вроде, очевидные косяки закончились. Остаются неочевидные. Наверное, попробую вылить карту на тестовый сервер

  • Diamond 1

Share this post


Link to post
Share on other sites

gc gotoguild @p[x=-60,y=78,z=-112,r=2,score_T_Enchanter=0] Enchanter

gc fulllevelup @p[x=-51,y=70,z=-46,r=3]

r, score не заменены

Share this post


Link to post
Share on other sites
Достижения

32 минуты назад, LastLife сказал:

gc gotoguild @p[x=-60,y=78,z=-112,r=2,score_T_Enchanter=0] Enchanter

gc fulllevelup @p[x=-51,y=70,z=-46,r=3]

r, score не заменены

 

Вроде, я и не собирался трогать неизвестные команды. Предоставишь описание синтаксиса - могу допилить апгрейд

Share this post


Link to post
Share on other sites

33 минуты назад, RedTeapot сказал:

Предоставишь описание синтаксиса - могу допилить апгрейд

Чё-т выглядит так, что синтаксис селектора [даже в неизвестных командах] - вполне стандартный. Не?

Share this post


Link to post
Share on other sites

4 минуты назад, Admin сказал:

Чё-т выглядит так, что синтаксис селектора [даже в неизвестных командах] - вполне стандартный. Не?

 

Ну, либо мне надо находить в неизвестной команде что-то, похожее на селектор, либо я смогу четко знать, когда ожидать селектор. Может, какую ошибку по пути бы отловил

Share this post


Link to post
Share on other sites

Короче, глянул исходники Guilds&Clans и запилил апгрейдер для gc-команд

 

Еще добавил вывод ворнингов в лог ошибок, если команда неизвестна скрипту.

 

И еще поправил апгрейд команды xp ...

  • Diamond 1

Share this post


Link to post
Share on other sites

Поправил обработку относительных координат в команде телепорта.

 

Спойлер

В 1.12 относительные координаты отсчитываются от телепортируемой сущности (читай - от игрока).

 

В 1.13 они отсчитываются от того, кто вызывает команду (читай - от КБ).

 

Потому команды с относительными координатами надо заменять на что-то типа /execute as @p at @s run tp @s ~1 ~2 ~3

 

Собственно, именно это теперь и происходит. Абсолютные координаты остаются как есть.

 

 


 

 

И еще:

  • Проверил "Обратный эффект". Вроде, работает
  • В метро не выдаются вагонетки. Кажется, дело в NBT - если удалить их из команды, вагонетки спаунятся.
  • Не работает функция метро, так как в ней ошибка.
  • Телепорты, вроде, в порядке.
  • Сопли гаста и рыбу принимает. Считает и показывает, кажется, правильно.
  • Показывает статистику полета на поллитрах и катания на лошадях. Кажется, не считает. На тестовой карте не видит других скилловых переменных.

Фиксы:

  • Добавил эскейпинг тега CustomName у энтитей (вообще, он теперь принимает строку, содержащую JSON Text Component)
  • Добавил обработку селекторов в поле extra у JSON Text
  • Добавил конвертацию display Name NBT у предметов в JSON Text

Share this post


Link to post
Share on other sites

Так, проверочки.

 

Спойлер

Лавка ББ

  • Шмот выдает (кастомные названия есть, какие-то чары - тоже. Вроде, похоже на правду, но я не сверял), число ББ пишет, изюмы на счет кидает.

Здание торговли

  • Количество ББ, изюма и бутылок опыта на счету пишет.
  • Изюм со счета снимает, обратно тоже закидывает.
  • Бутылки опыта закидывает на счет и снимает с него. Прокачку в гильдии не проверял.
  • Шмот (поллитры, конская броня) продает.
  • Гранаты не продает. Селектор игрока не проапгрейдился, эффекты в тегах тоже. Пример команды:
    • 
      /give @p[x=-78,y=70,z=-84,r=1] minecraft:splash_potion 1 0 {CustomPotionEffects:[{Id:24,Amplifier:0,Duration:400},{Id:2,Amplifier:3,Duration:999},{Id:18,Amplifier:9,Duration:400},{Id:9,Amplifier:0,Duration:400},{Id:19,Amplifier:1,Duration:400},{Id:7,Amplifier:1,Duration:400}],display:{Name:"Шокер"}}
  • Гранаты продает.
  • Эффекты продает.
  • Рыбу и слезы гаста принимает, количество показывает.
  • Количество километров на поллитре показывает и в чате, и в сайдбаре. В бекапе нет остальных переменных. Вангую, что там все аналогично.
  • Выбор гильдии не работает. Очевидно, потому что плагин не обновлен.
  • Комната телепортов и выдача спектатора работают.
  • Флаги на голову выдает.
  • В жандармерии что-то не то с голосовалкой - в одном КБ нет команды. А так - чудо-палку и эффекты выдает. Снятие вины и отвешивение пенделей протестить не смог, так как я один.

Метеостанции

Должны быть идентичными, потому, считаю, достаточно проверить одну.

  • Телепорты внутрь и обратно работают.
  • Смена погоды на ясную работает.
  • Смена погоды на дождь - нет, так как косяк в редстоуне. Поправил косяк - заработало.
  • Время суток меняет.
  • На спаун телепортирует.
  • Cash machine работают.

Биржа опыта

  • Опыт продает и покупает, бутылки выдает. Чо по котировкам - я хз.

ЖК "Лидер"

  • Телепорты в лифт, из лифта в хаты и обратно в лифт работают.
  • В тюрьму из чужой хаты не отправило. А, вроде, должно.

ЖК "Пипирка" "Тихий омут"

  • 3D-кинотеатр работает.
  • Телепорты в конюшню и обратно работают.
  • Телепорт на второй этаж работает. Думаю, на остальные тоже.
  • В служебное помещение телепортирует.
  • Сигналка чет тоже не сработала.

ЦБ

  • Телепорт в филиал и обратно работает.
  • Стойки с изумрудными блоками (выдача?) не работают - под ними ничего нет.
  • Телепорт в мою ячейку и обратно работает. Думаю, с остальными ячейками аналогично.
  • Выдача изюма в филиале работает.

Глиномес

  • Работает. Хотя его немного грифанули, судя по всему.

Обменник льда

  • Работает.

Общественный толкан Униквест 3000

  • Телепорты внутрь и обратно работают.
  • "Болезнь от картофеля" работает.
  • "Седла для армии" работает.
  • "Стрелы для армии" работает.
  • "Яблочный пирог" работает.
  • "Мальчик-с-пальчик" работает.
  • "Муки писателя" работает.

Квест "Факты о яйцах"

  • Телепорты работают.
  • Прием яиц, выдача награды работает.
  • Вывод количества и топа выполнений работает.
  • Опустошение сундуков работает.

Квест "Кошмарные зомби"

  • Телепорты работают.
  • Прием, выдача, проверка работают.

Квест "Обратный эффект"

  • Все работает.

Метро

Станции и развязки типовые - думаю, тоже достаточно проверить одну.

  • Выбор станции работает. Названия пишет, номер меняет.
  • Вызов вагонетки работает.
  • От Доси (1) до ЦБ (2), от ЦБ (2) до спауна (0) доехал без проблем.
  • Выдача спидов на спауне работает.

Новый спаун

  • Телепорт в личные сундуки и обратно работает (как со спауна в лобби, так и из лобби в само помещение с сундуками).
  • Телепорт в хату (если я правильно понял) работает. Кнопку телепорта обратно я не нашел.
  • Инфо-кнопки работают.

Электростанции

  • Угольная
    • Топливо принимает
    • Курс и статистику выводит
    • Изюм выдает
    • Вроде, сданный уголь зачисляет
    • gamerule naturalRegeneration врубает
  • Пшеничная
    • Телепорт работает
    • Количество топлива и статистику пишет
    • Пшеницу жрет
    • Принятую пшеницу начисляет
    • Изюм выдает
    • Вроде, насыщение работает
  • Алмазная
    • Алмазы принимает
    • Вроде, алмазы зачисляет
    • Изюм не выдает, о чем предупреждает после сдачи алмазов
    • Плашку о включении сохранения инвентаря показывает
    • gamerule keepInventory включает

Изменение курса в зависимости от количества топлива и расход топлива я не проверял.

Завод по переплавке

  • Лед и лаву хавает
  • Ссылку на форум выводит
  • Изюм за лаву и лед выдает
  • Шмот жрет
  • Ресурсы на счет зачисляет
  • Выдает не все ресурсы: по одному остается невыданным, даже если снова нажать кнопку выдачи

База PvP-гильдии

 

Комплекс ивентов Тишины (пока считаем, что это -803 -168)

  • Палки выдает
  • Лошадей убивает
  • Лошадей не спаунит, команда не проапгрейдилась:
    • 
      execute @p[tag=Massovik,r=3] ~ ~ ~ /summon horse -894 66 -142 {Tags:["Event"],SaddleItem:{id:saddle, Count:1}, Tame:1, Attributes:[{Name:horse.jumpStrength,Base:1.0},{Name:generic.movementSpeed,Base:0.4},{Name:generic.maxHealth,Base:100.0}]}
  • Лошадей спаунит
  • Включение/выключение работает (по крайней мере, значение переменной выставляет)
  • Эффекты чистит

Комплекс ивентов Фокса

  • Сплиф-арена (которая большая, пафосная и на поверхности)
    • Мобов убивает
    • Тег игрока выдает и снимает
    • Вроде, стартует и останавливает арену
    • Снег обновляет
    • Раун стартует: чистит инвентарь, трет эффекты, телепортирует на арену
    • При падении во время раунда телепортирует на трибуны
  • Паркур - нет КБ
  • Сплиф-площадка (которая под землей) - не работает
  • Свинолов (достаточно сильно разрушен, кстати)
    • На трибуны телепортит, обратно - нет
    • Удочки выдает
    • Удочки не чистит, ошибка в команде (хотя она проапгрейдилась):
      • 
        clear @a[distance=..36] minecraft:fishing_rod{Unbreakable:1B,display:{Lore:["event_pigs"]}} -1
    • Удочки чистит
    • Одну свинью не спаунит. 4, 8, 12 - спаунит, но они полыхают
    • Не убивает свиней
    • Команды в ямах для свиней не проапгрейдились (и я знаю, почему - во втором селекторе координаты некорректно записаны):
      • 
        /execute @e[type=Pig,r=4] ~ ~ ~ /scoreboard players add @p[-769,25,550,4] otest 1

Дацан Будды

  • При установке факелов сообщение пишет
  • Ближе к концу пятиминутного интервала еще пару раз пишет это же сообщение
  • Яблоко выдает, факела чистит

Сигналки игроков

Тут сложно - наверное, тоже достаточно взять и проверить одну заведомо правильную.

  • Сигналка на терре ZeeFear (3) сработала, в тюрьму кинуло с кодом 2000037

ЦНС

Тут прямо страшно, ибо я не знаю точно, сколько там систем и какие. Будем посмотреть.

  • Если alarmCode выставить в -1, отпускает
  • Зекам ставит второй режим и полтонны эффектов, телепортит в тюрьму, в команду prison добавляет, но ник не красит. Если руками задать команде черный цвет - ник начинает краситься.
  • Креатив у не-админов отрубает.
  • Из ЦНС не-админов сажает в тюрьму
  • Ежедневный налог снимает
  • Новичков обрабатывает
  • Бомжей обрабатывает

 

 


 

 

Так, пара фиксов:

  • Выпилил апгрейд NBT CustomPotionEffects у зелий (видимо, оно не нужно)
  • Заставил парсер NBT-строк нормально воспринимать пробелы после запятых и двоеточий в компаундах, после запятых в массивах
  • Поправил апгрейд команды clear, когда данные или количество равны -1

 

Надо ли пытаться парсить устаревшие селекторы игроков (@p[1,2,3,4]) - я хз

  • Thanks 1

Share this post


Link to post
Share on other sites

Изменил команду в КБ, расположенном на 22 2 147

 

Было:

/blockdata ~3 ~ ~ {SuccessCount:0}/scoreboard players tag @a[tag=SkillHorse] remove SkillHorse

Стало:

tag @a[tag=SkillHorse] remove SkillHorse

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

×