RuStore: вы вообще кукухой поехали ???
Захожу в Мах, говорит надо обновиться. Ок, обновлялся. Через RuStore.
Этот красавец вместе с Максом мне обновил еще 62 приложения, из которых 60 были установлены через Google Play, ничего не спрашивая.
И что ? И БЛЯДЬ ВСЁ !!! В этих других 60 приложениях слетели логины, локальные данные, вообще все !!!
@Rustore вы там вообще кукухой поехали ? Какое вы вообще имеете право обновлять приложения которые к вам никакого отношения не имеют ???
Н-ненависть.
Фабрика размером с галактику: как я утопил 2 планеты в Солнце и сломал лимиты движка Factorio (Часть 2)
Привет снова, инженеры!
В прошлом посте я рассказывал, как наивная идея «собрать мега-сборку на Space Age» обернулась тремя месяцами раскопок в Lua и борьбой с рецептурным адом и UPS.
Сегодня хочу рассказать про вторую сторону этой медали: космическую навигацию, войну с авторами модов и баг, из-за которого игра вылетела с ошибкой, в существование которой я сначала вообще отказался верить.
Боль №3: Космос сошел с ума, или как вытащить планеты из Солнца
Когда базовые цепочки на Наувисе наконец заработали, пришло время взглянуть наверх — на звездную карту. В сборке сейчас суммарно больше шестидесяти космических тел (оригинальные миры, кастомные планеты, луны и орбитальные платформы).
Открываю карту галактики и наблюдаю прекрасное:
Планеты-камикадзе внутри звезды.
В самом центре системы ярко сияет главное солнце. А прямо внутри его текстуры, в пылающей фотосфере, беззаботно нарезают круги две орбитальные станции с солнечными коллекторами. Они буквально спавнились внутри диска звезды на нулевом радиусе.
Пришлось лезть в data-final-fixes.lua, вспоминать полярные координаты, пересчитывать радиусы орбит и аккуратно выводить эти станции наружу, чтобы они вращались вокруг звезды, как нормальные рукотворные объекты, а не жарились в термоядерном аду.Черная дыра вместо созвездий.
Вторая проблема — мододелы обожают делать крутые планеты, но совершенно не думают, как они выглядят вместе. В итоге за пределами Солнечной системы висели кучки планет посреди абсолютной черной пустоты. Ни звезд, ни ориентиров — просто летающие шары в темном подвале.
Чтобы придать космосу масштаб и логику, я разметил карту на 5 удаленных звездных секторов («Кузница», «Океанический фронтир», «Крио-рубеж», «Энергетический сектор» и «Сингулярность Предтеч») и прописал каждому сектору свое яркое солнце-ядро. Теперь у дальних систем есть центр гравитации, а у космических кораблей — понятная навигация.
Боль №4: Обновление модов — игра в русскую рулетку на 475 патронов
Сборка живет, Factorio 2.0/2.1 активно допиливается, и разработчики модов тоже выкатывают обновления. На днях я решил провести ревизию: скачал свежие версии сразу для 63 модов.
Наивный расчет: «Авторы ведь исправили баги, станет только стабильнее».
Реальность: игра перестала запускаться примерно шестью разными способами.
Искусственные заборы. Автор одного популярного мода на луну просто взял и добавил в манифест зависимостей строчку ! janus (запрет на запуск с планетой Янус). Почему? «Ну, мне показалось, они тематически не очень сочетаются». То, что у сотен игроков они прекрасно сосуществовали, автора не смутило.
Привет из 2020 года. Скрипт подтянул с портала мод версии 1.1.6, посчитав его новее нашей 1.1.5. Только вот 1.1.5 была неофициальным свежим портом под Factorio 2.1, а 1.1.6 оказалась архивной версией пятилетней давности для старой игры.
Фатальный nil. В библиотеке тепловых расчетов разработчик в патче решил причесать код интерфейса и… случайно снес строчку проверки if not storage.players. Итог: при любой попытке загрузить существующую карту движок пытается опросить несуществующего игрока и вываливается в Windows с крашем attempt to index field '?' (a nil value).
Пришлось вручную тестировать каждый чих, возвращать стабильные версии и патчить чужие «исправления».
Боль №5: Предел рекурсии Wube Software (21 > 20)
Но главный босс ждал меня на финальной стадии компиляции. Когда все зависимости сошлись, движок Factorio выдал лог, от которого у меня дернулся глаз:
Error while loading space-location prototype "erimos-prime": Too deep recursion for localised string: 21 > 20 (limit)
Что произошло?
В движке Factorio 2.1 есть жесткое ограничение: дерево локализованной строки (текста описания объекта) не может быть глубже 20 уровней вложенности.
А теперь следите за руками: есть планета Эримос Прайм.
Первый мод дописывает ей свойства атмосферы: desc = { "", desc, "Текст 1" } (глубина 2).
Второй мод добавляет статус орбитальной обороны (глубина 3).
Третий мод вешает расчет загрязнения (глубина 4).
Четвертый добавляет инфу о ресурсах…
К моменту, когда до планеты добрался 21-й мод со своим микро-описанием, строка превратилась в матрешку из 21 вложенной таблицы. И C++ парсер Wube просто выкинул белый флаг: «Лимит рекурсии превышен, я закрываюсь».
Лечилось это написанием собственного санитайзера в конце загрузки: скрипт пробегает по описаниям планет, рекурсивно раскручивает эту чудовищную матрешку, склеивает текстовые куски и запаковывает все обратно в плоский массив глубиной 1.
Что в сухом остатке?
На данный момент:
Все 475 модов засинхронизированы.
Контрольный прогон через движок выдал заветное: Prototype list checksum: 1364196656, exit code: 0.
Сохранения загружаются без единого предупреждения, а полет между секторами наконец-то похож на настоящее космическое путешествие, а не на блуждание по темному чулану.
Дальше останется лишь по ходу игры аккуратно полировать баланс отдельных рецептов.
А пока — чертежи готовы, поезда заправлены.
Фабрика должна расти.
Авторизация ВК и Мэйлру превратилась в дерьмоквест без намёка на логику
В который раз, при разлогинивании, сталкиваюсь с непроходимым квестом при повторной авторизации в ВК и почте Мэйл.ру.
Я не знаю, по каким объявлениям набирали людей в администрацию и директорат ВК, но как мне кажется, адекватных там практически не осталось. Превратить одну из эталонных соцсетей в кусок непонятной субстанции - это надо было постараться.
Любопытно было бы послушать отмазки услышать мнение администрации ВК, нахрена так сделано? У вас появились лишние пользователи, чтобы так троллить свою аудиторию?
Vk как всегда...
**ВНИМАНИЕ:** РЕЗКИЕ ЗВУКИ
Смотришь себе видео, а там ломается алгоритм рекламы.
Решилось перезагрузкой страницы, но все же ... Неприятненько.
«Напишите нам в Яндекс Про, находясь в Яндекс Про»: как поддержка Яндекса создала временную петлю для курьера
Знаете, я всегда думал, что мем про «позвоните по номеру, с которого вам звонят» — это преувеличение. Но техподдержка Яндекса доказала, что дно еще не пробито, а их скрипты способны искривлять пространство и логику.
Суть предыстории: я работаю курьером в сервисе «Яндекс Доставка». Для курьеров на слотах существует льготный тариф на самокаты Яндекс Go (без платного старта, по сниженной минуте). Штука критически важная, чтобы не стирать ноги до колен. Но у меня этот тариф просто перестал появляться. Приложения обновлены, номер в Про и Go совпадает до цифры, смена активна — тарифа нет.
Ну, думаю, напишу в поддержку рабочего приложения Яндекс Про. Логично же? А вот Яндекс так не считает. Дальше начинается трехдневная драма в картинках.
Акт 1. Появление проводника
Пишу в чат поддержки курьеров. Появляется некий «Слава: гид в мире самокатов».
Слава вежливо уточняет, от какого сервиса я работаю: «Еда, Лавка или Доставка». Отвечаю: «Доставка».
И тут Слава выдает шедевр корпоративной мысли:
«Напишите, пожалуйста, через приложение Яндекс Про. Обязательно поможем вам».
Сказать, что у меня дернулся глаз — ничего не сказать. Я пишу ему ИЗ Яндекс Про. Я нахожусь внутри этой программы. Пишу: «Так я и так через яндекс про, через что еще мне писать?» Слава делает вид, что всё понял: «Уже занимаюсь вашим обращением»... а через 30 секунд копирует:
«Очень хочу помочь вам, но разобраться смогут только в Яндекс Про — пожалуйста, напишите туда».
Акт 2. Театр абсурда и Кристина
Я решаю, что Славе нужно визуальное подтверждение. Делаю скриншот прямо этого же чата, где огромными буквами написано «Поддержка», отправляю в диалог и вежливо прошу: «Переведите на старшего технического специалиста».
Слава опять уходит «разбираться». Спустя 20 минут в диалог врывается живой оператор Кристина. Казалось бы, человек! Спасение!
Кристина читает мою просьбу позвать технаря и с каменным лицом выдает:
«Иван, пожалуйста, обратитесь в поддержку Яндекс Про».
Занавес. Они закрывают обращение. Меня буквально выставили за дверь того самого кабинета, в который я только что зашел.
Акт 3. Пробиваем стену
Поняв, что классические методы не работают, открываю новый чат и сразу, минуя приветствия, пишу текст капсом и фактами: «Я ВНУТРИ Яндекс Про, не советуйте мне туда писать, зовите человека».
И о чудо! Скрипт с треском ломается. Подключается оператор, который вместо отсылки в параллельное измерение просит прислать видео с ошибкой.
Я снимаю полный метр: как я выхожу на линию в Яндекс Про, бесшовно перехожу в Яндекс Go, показываю отсутствие тарифа, сверяю одинаковые номера телефонов — заливаю на их же Яндекс Диск и кидаю ссылку.
Эпилог
В ответ приходит кульминация:
«Тут мне понадобится помощь технического отдела. Это может занять пару дней. Отвечать на моё сообщение необязательно — так мне будет легче найти этот чат».
Перевожу: «Пожалуйста, молчи, не трогай систему, а то бот снова пошлет тебя писать в Яндекс Про».
Мораль сей басни: чтобы решить баг в приложении Яндекса, курьеру нужно сначала пройти три круга ада с чат-ботами, доказать, что он находится там, где находится, снять кино со скринкастом и теперь молиться на техников пару дней.
@Yandex, @Yandex.Go, передайте вашим разработчикам логи этого тикета. А вашим скриптологам — премию за создание самой стабильной петли Мёбиуса в истории клиентского сервиса.
P.S. Для тех, кто в теме внутренней кухни: я прекрасно понимаю, как устроен этот зоопарк микросервисов. Выбираешь раздел про самокаты — и заявку внутри CRM просто швыряет в ветку операторов клиентского Яндекс Go, а не в курьерский саппорт Доставки. А у тех в регламенте при слове «курьер» вшит рефлекс собаки Павлова: не глядя нажать кнопку «Идите в Яндекс Про».
Но, ребята, меня как курьера и пользователя это вообще не должно волновать. Это ВАШИ костыли маршрутизации, ВАШИ интеграции и ВАШИ кривые скрипты. Почему вместо того, чтобы внутри перекинуть тикет в нужный отдел одной кнопкой, живые сотрудники на полном серьезе советуют человеку перейти в то приложение, из которого он прямо сейчас им пишет?
В общем, жду ответа технарей. Если починят — напишу апдейт. Если снова предложат установить Яндекс Про поверх Яндекс Про — сниму сериал
Обновлено: Поддержка на почте подтвердила, что в приложении произошел баг с отображением льготного тарифа для курьеров, разработчики занимаются исправлением. Жду починки
Баг от музыки в Телеграм: Включается музыка и не выключить ее
Когда-то давно, я в своём канале в Телеграм, разместил пару постов с музыкой.
А сегодня получил сообщение(на скриншоте).
(текст сообщения, сюда не смог вставить т.е пост тогда не публикуется по какой-то причине).
Вопрос:
У кого-то бывали похожие проблемы?
Черный экран при вызове на HONOR X7c
Есть проблема с телефоном у него при вызове черный экран.
По умолчанию у него стоит контакты как приложение для звонков, для него даны все разрешения какие есть.
Но когда хочешь позвонить открывается приложение телефон
Установить приложение телефон для приема звонков по умолчанию не получается, так как его там тупо нет в выборе. Нейронка сказала что приложение контакты не обладает функциями чтобы показывать уведомления при входящем вызове и поэтому черный экран.
Пробовал ставить другое приложение для приема звонков, гугл телефон и оно появляется в приложениях для звонков и когда оно стоит по умолчанию для приема, то тогда без проблем экран зажигается при вызове.
При это когда заходишь в стандартный телефон там пишет что он не является приложением по умолчанию, но при этом он может звонить, там нормально работают контакты.
К кого-нибудь была подобная проблема что никак не заставить стандартное приложение показывать звонок на экране, потому что как я сделал это по сути кастыль когда одно приложение показывает что звонят, а сам звонишь с другого где уже все вбиты контакты и т.д.
После полного сброса телефона до заводских настроек проблема сохраняется.
ПРОБЛЕМА РЕШИЛАСЬ. Сделал сброс до завода и не стал копировать данные со старого телефона, установил чистую систему. Так что если у вас возникнет подобная проблема, то вот один из вариантов решения. Всем спасибо за участие.














