Wild World: обновление августа — база снова укрывает, а цены сошлись
Пять сообщений от игроков за восемь дней — четыре жалобы и один вопрос. «У меня исчезло 50% ресурсов, всё время был на базе». «В инвентаре появился бесконечный медовый сбитень». «Я везде пересмотрел в меню крафта — укрытия нигде нет». Каждая жалоба оказалась права, и каждая вскрыла больше, чем в ней было написано.
Прошлый выпуск был про то, что часть дверей в игре была заперта молча. Этот — про то, что случается, когда дверь есть, но за ней стоит не то, что обещала табличка. Двенадцать релизов, все — по следам конкретных людей.
Дома было опаснее, чем в чистом поле
Начнём с худшего. Игрок написал, что потерял половину запасов, не отходя от базы. Разбор подтвердил жалобу целиком: девятого августа по острову прошёл «Метеоритный удар», и списание у него составило 52% ресурсов — даже больше, чем он насчитал.
Текст события прямо обещает: нахождение на базе защищает полностью. Обещание было настоящим — коэффициент потерь для «на базе» равен нулю. Проблема оказалась в том, как игра определяла, что персонаж «на базе»: защищённым состоянием считалось только полное бездействие. Стоило запустить добычу — и персонаж, физически стоящий в своём лагере, переставал считаться домашним и попадал в самую тяжёлую категорию.
Какая доля полного удара доставалась персонажу
Третья строка — состояние до правки. Дома било сильнее, чем в поле.
Отсюда и вывернутая логика: активный игрок почти всегда держит запущенную добычу, а значит, защита базой срабатывала практически только у тех, кто ничего не делал. Условие сведено к одному правилу — присутствие на базе важнее занятости. Радиус правки шире метеорита: это же состояние читают все события, которые бьют по здоровью и запасам, — от урагана и песчаной бури до подземных толчков. Для «Фонящего тумана» база теперь укрывает полностью, для «Эпидемии» — почти полностью: слечь дома можно, но в разы реже, чем в поле.
Пострадавшим за тот удар вернули потерянное: четверым, кого он застал на собственной базе, — 227 стопок ресурсов, около 3,8 млн единиц. За прошлые удары точный возврат невозможен, и мы не будем притворяться, что это не так: запасы с тех пор менялись многократно. Если считаешь, что тебя задело несправедливо, просто напиши сообщение в чат с ботом — мы читаем и разберём поимённо. Что вообще защищает базу и во сколько обходится её содержание — в гайде по базе и постройкам.
Укрытие, которое обещали, но негде было собрать
Второе, что вскрылось на том же разборе, оказалось хуже первого. У «Метеоритного удара» есть штатная контригра — «Метеоритное укрытие», предмет, который вдвое снижает потери. Тексты события честно про него рассказывают. Укрытие — страховка для вылазки: дома от этого события укрывает сама база, а удар чаще всего застаёт в поле. Оно не изнашивается, и нажимать ничего не нужно — достаточно держать одно в инвентаре.
Владельцев в игре было ноль. Ни одного, ни разу за всё время.
Рецепт существовал в трёх слоях одновременно: описание предмета, задача сборки, запись в конфиге. Не существовало только кнопки. Все меню крафта — это собранные вручную списки, и ни один из них не выводил защитные предметы: защита не была представлена нигде: ни разделом в меню крафта, ни полкой в инвентаре — хотя сам тип предмета в игре был. Игрок, дочитавший текст события до конца и пошедший искать укрытие, не мог найти его в принципе — что и написал в чат.
В общем крафте появился раздел «🛡 Защита». Путь целиком: «🔨 Крафт» → «🔨 Общий крафт» → «🛡 Защита» → «Метеоритное укрытие». Вход не исчезает ни при каких условиях: кнопка на месте всегда, а за ней экран прямо говорит, какого уровня не хватает и сколько до него осталось. Молчаливое исчезновение входа и есть та самая ошибка, которую мы чиним весь этот выпуск.
Раздел сознательно открылся с одним предметом. Тексты событий говорят о «защитном предмете» как о классе вещей, а не как об одной поделке — теперь у этого класса есть полка, на которую можно ставить следующие. За первые часы после релиза укрытие собрали три человека: первые за всю историю острова.
Как теперь не потерять запасы. Дома — не потеряешь: на базе потери от таких событий нулевые, и теперь это работает при любых запущенных делах, а не только когда ты бездействуешь. Исключение — «Эпидемия»: дома тоже можно слечь, просто в разы реже, чем в поле. В поле — держи в инвентаре «Метеоритное укрытие»: от метеоритного удара оно срабатывает само — нажимать ничего не нужно — и режет потерю вдвое. А что сейчас происходит на острове, показывает кнопка «🎉 События»: она в меню «🌍 Мир», рядом с «🌍 Остров живёт», и появляется под самим уведомлением о событии.
Цена на кнопке и цена сделки стали одним числом
Экраны лавки крафта показывали базовую стоимость предмета, а сделку проводили по другой формуле — с учётом торговой репутации, складского бонуса и спреда, то есть разницы между ценой покупки и ценой продажи у торговца. Совпадала цифра только у того, у кого репутация ровно нейтральная: при просевшей выплата доходила до половины показанного числа, а складской бонус, наоборот, уводил её выше обещанного.
Зеркальный баг нашёлся на покупке: там экран печатал цену витрины, а списывалось ощутимо больше — и тем больше, чем хуже репутация. Оба расхождения жили ровно столько, сколько существуют сами экраны.
Тот же класс ошибки был и на ресурсах. Кнопки количества обрезали дробную часть у цены за единицу, а сделка округляла итог целиком — дробную цену имеют 50 ресурсов из 80 на продажу и 65 из 80 на покупку, а кнопки доходят до пяти тысяч единиц. На большой партии расхождение достигало пары тысяч золота: на покупке — против игрока, списывали больше обещанного; на продаже — мимо обещания в другую сторону. Расхождения не должно быть ни там, ни там.
Теперь на всех шести экранах лавки работает одна формула, и число под кнопкой — это ровно то, что произойдёт со счётом. Заодно исчезли кнопки, ведущие в отказ: «50 шт.» больше не предлагают тому, у кого их семь. Как репутация влияет на цену — торговец объясняет прямо под ценой, а полное описание правил торговли лежит в игровом справочнике «📖 Путь новичка».
Торговец больше не платит за вещь больше, чем стоит её собрать
Эту часть выпуска почувствуют как отъём. Так и есть — отъём.
Аудит всех 73 рецептов показал: у большинства выкуп у торговца превышал стоимость сборки. Круг «собрал → сдал» печатал золото, и ущерб был не теоретическим. Замер по серверу: за тридцать дней продажа собранного принесла 86,8 млн золота — при том, что на руках у всех 684 персонажей сейчас 146,8 млн. Делали это десять человек. После правки цен тот же канал за шесть дней дал 269 тысяч.
Цены приведены к простому правилу: выкуп с любыми бонусами обязан быть меньше стоимости входа рецепта. Под него попали двенадцать позиций — верстаки, роботы, дроны и телепорт-устройства. Медиана снижения — около 59%, крайние точки: карго-дрон потерял 6%, телепорт-маяк — 85%.
Цена выкупа у торговца, золото
Цены на 12.08. Полосы сравниваются с максимумом ряда — 150 000. У дрона-разведчика правка мягкая (−20%), поэтому его полосы почти одинаковы — это данные, а не сбой.
Две вещи, которые важно сказать прямо. Первая: ничьи балансы не тронуты — золото, заработанное по старым ценам, осталось у игроков, мы закрыли только источник. Вторая: если ты не собирал верстаки, роботов и телепорты на продажу, тебя это не заденет. Еда, лекарства и компоненты — сорок с лишним позиций с небольшой плюсовой маржой — намеренно не тронуты. Это привычный ранний доход, ограниченный временем добычи; за десять дней после ужесточения торговли он дал около 0,2% всей денежной массы. Резать его ради двух десятых процента — плохой размен.
И следствие, которое нечестно оставлять читателю на самостоятельный вывод: сдача дорогих вещей перестала быть станком для золота — верстаки, роботы, дроны и телепорт-устройства больше не окупают собственную сборку. Еда, лекарства и компоненты по-прежнему дают небольшой плюс: варить и сдавать их можно ровно как раньше — это осознанно оставленный ранний доход, и именно поэтому у торговца есть суточный предел. Репутация и складской бонус никуда не делись: они по-прежнему считают цену и на сырье, и на покупке, и на сдаче крафта — просто выше базовой цены торговец не платит, а поверх всего стоит инвариант «продажа всегда дешевле покупки». Основные источники золота — добыча и сдача сырья, продажа экипировки, награды за бои и за Узлы с их Хозяевами, квесты и задания.
И сразу закроем ожидание, которого игра не выполняет: продать вещь другому игроку напрямую нельзя — такой механики нет. Сданное не исчезает: оно встаёт на витрину «🛍 Купить крафт», где его может забрать другой выживший, — но платит за твою сдачу всё тот же торговец и в тот же момент.
Суточный предел стал резать количество, а не сделку
У торговца ограниченный запас монет на одного выжившего. Предел касается только готовых вещей — крафта и экипировки; сдача сырья идёт мимо него, а счёт ведётся по последним двадцати четырём часам, а не по календарному дню. Работал он грубо: пока предел не выбран, сделка проходила целиком — пачка из пяти верстаков уходила разом и выносила больше десятка потолков за проход. То есть предел был формальностью для того, кто умеет умножать количество.
Теперь сделка режется по остатку, а не отклоняется целиком: продаётся столько, на сколько у торговца хватило монет, остальное остаётся у тебя. Даже если монет у торговца почти не осталось, одну штуку он выкупит всегда: с дорогой вещью ты не окажешься отрезан от лавки навсегда. И главное — игра об этом говорит: «Предлагал пять, хватило на две, три остались у тебя». Молча продать меньше — значит оставить человека думать, что вещи пропали.
Отказ по пределу тоже перестал быть загадкой: он называет и потолок, и уже выкупленное, и час, когда окно приоткроется. Скажем честно, насколько это заденет продавцов: по старым правилам в предел за всё время упёрлись всего трое — но упереться было почти невозможно, пачка проходила мимо потолка целиком. По новым правилам зажим сработает заметно чаще: из 297 сделок за последние тридцать дней 102 были дороже целого суточного потолка, и делали их пятеро.
Штуки и дозы: бесконечный сбитень
«В инвентаре появился бесконечный медовый сбитень: пишет, что в остатке 1, но не заканчивается». Так и было — и, что важно, экран не соврал ни единым словом: штука действительно была одна, ошибка жила в невидимом счётчике доз. Препарат получил сотню зарядов вместо одного: выдавая награду, игра подставляла запасное число вместо настоящего. Игрок применил его 71 раз бесплатно и сам об этом сообщил.
Счётчик теперь зажат ёмкостью самого предмета и на выдаче, и на расходе, а девятнадцать перекошенных записей мы выровняли до этой ёмкости. Сами вещи из инвентарей не изымались, штрафов никому не выписано: ошибка наша, а сообщать о ней — ровно то поведение, которое мы хотим поощрять.
Вторая половина этой истории интереснее самого бага. Обладатель честного многодозового препарата — антисептика, у которого доз действительно несколько, — видел ровно ту же картину: «1 шт.», а применяется много раз. И написал бы точно такой же багрепорт, будучи полностью прав в наблюдении и полностью неправ в выводе. Поэтому аптечка теперь печатает строку «доз в начатой упаковке: 2 из 3», и в справочнике появилось объяснение разницы между штуками и дозами. Сама аптечка — на карточке выжившего: «🧑 Я» → «💊 Аптечка». Что вообще стоит в ней держать и чем лечиться в поле — в гайде по основам выживания.
Занятость стала симметричной
Ещё одна жалоба, за которой пряталась настоящая асимметрия: «Нельзя запустить сбор, если идёт готовка на костре, но можно запустить готовку, если идёт сбор».
Проверка подтвердила. Дела, которые занимают персонажа целиком, помечены в интерфейсе замком — и этот замок читали только полевые действия: добыча, переход, Поход. Старты крафта, ремонта и переезда его не читали. Крафт-экран рисовал значок «займёт целиком» и запускался поверх чего угодно. Врал, таким образом, не запрет на добычу, а обещание крафта.
Пересечения дел с замком за 30 дней до правки
Активных игроков за период — 32. В асимметрию упиралось от десяти до двадцати одного из них.
Теперь правило одно и работает во все стороны: дело с замком не начинается поверх другого дела с замком. На практике это значит: готовка на костре и добыча теперь исключают друг друга в обе стороны; два крафта с замком одновременно не запустить, даже если рецепты разные; ремонт и переезд подчиняются тому же правилу; а очередь из одного и того же рецепта осталась живой. Фоновые занятия — те, что помечены песочными часами, — не тронуты: их можно вести параллельно, как и раньше.
Скажем прямо: для тех, кто гнал по два-три крафта разом, это потеря пропускной способности, и ничем она не компенсируется — ни временем сборки, ни дополнительными слотами. Мы выбрали строгую симметрию вместо того, чтобы облегчить готовку: облегчение было бы скрытым усилением, о котором никто не просил. Как устроены верстаки, очередь рецептов и ремонт — в гайде по крафту.
«Навес» отвечал «Неизвестное строение»
Мелочь, которая портила ровно тот момент, который портить нельзя. «Навес» — первая постройка новичка; тап по нему на базе получал в ответ ошибку «Неизвестное строение». Экран здания просто не завели, когда постройку добавляли. Двадцать один человек успел построить «Навес» — и каждого, кто на него нажимал, встречала ошибка вместо первой награды за стройку.
Теперь у «Навеса» есть экран. Улучшения у него намеренно нет: постройка одноуровневая, и кнопка обещала бы то, чего не существует. А неизвестное здание перестало быть тупиком — вместо ошибки игра теперь объясняет, что произошло, и даёт кнопку возврата на базу.
Рядом нашлось похожее: в инвентаре не было полок для четырёх типов предметов — защиты, дронов, еды и аксессуаров. Девять вещей у двадцати владельцев падали в «Прочие предметы» без всякого объяснения. Полки добавлены все четыре.
Телепорт, который не рюкзак
Постоянный игрок спросил: «Как пользоваться телепортом, который не ранец?» Вопрос оказался закономерным по двум независимым причинам.
Маяк работал, но о нём никто не рассказывал. Он ставится точкой возврата в мире и позволяет прыгнуть к ней с любого края карты, но экран сборки выдавал предмет и уводил обратно в крафт — адреса, где им пользоваться, не было ни в справочнике, ни в подсказках. Теперь сразу после сборки приходит объяснение с обоими шагами, а кнопка «📡 Маяки» стоит в самом сообщении о готовности.
Портативный телепорт был мёртвым предметом. Он лежал в игре с прошлого года, движок умел его применять и списывать заряд — но рецепта не было ни в одном меню крафта. Ветка в меню телепорта была декорацией. Теперь рецепт живой: путь — «🔨 Крафт» → «🔧 Стандартный крафт» → «🌀 Телепорты» → «📡 Портативный телепорт». Для сборки нужны своя база, Центр телепортации и первый верстак — «🔧 Мастерская», которая строится на базе: «🏠 База» → «🏗 Строить» → «Мастерская». Чего именно не хватает, экран называет до начала сборки. Первый портативный телепорт в истории игры собрали в день релиза.
Разница между способами перемещения теперь описана целиком: маяк — точка возврата в мире; рюкзак — дорога домой раз в час; портативный — дорога домой без ожидания; кнопка «📡 Телепорт» на экране действий — возврат домой за опыт или золото; и отдельно быстрое перемещение между уже открытыми поселениями. Куда вообще стоит ходить по острову и что там искать — в гайде по карте и биомам.
Чтобы это не повторилось
Три случая за одну неделю сложились в один класс: сущность в игре есть, а двери к ней нет. Рецепт крафта без кнопки, постройка без экрана, тип предмета без полки в инвентаре. Общая причина — списки, которые собираются руками и в которые легко забыть дописать строку.
Поэтому вместо очередной памятки себе мы поставили автоматические проверки, которые прогоняются на каждом билде и не дают выкатить релиз с такой дырой:
- каждый рецепт крафта должен быть достижим снаружи — с чужого экрана, а не только со своего;
- каждая кнопка должна вести в существующий обработчик;
- каждая постройка должна иметь свой экран, а неизвестное здание — давать выход;
- каждый обещанный событием защитный предмет должен иметь живой рецепт и задачу сборки;
- каждый тип предмета должен иметь полку в инвентаре.
Каждую проверку мы прогнали на состоянии «до фикса» и убедились, что она краснеет и называет виновника по имени. Проверка, которая не умеет падать, ничего не стоит.
Что дальше
Новых биомов и фракций в выпуске нет — второй раз подряд. Это осознанно: пока обещания игры расходятся с её поведением, добавлять новые обещания нечестно. О чём были предыдущие девять выпусков — в остальных записях дев-блога. А тем, кто собирал на продажу, стоит заглядывать на витрину «🛍 Купить крафт»: туда попадает сданное другими выжившими, и там иногда лежит деталь, до которой ты ещё не дорос.
Четыре места, где выпуск видно руками:
- «🔨 Крафт» → «🔨 Общий крафт» → «🛡 Защита» → нажми на укрытие: если уровня не хватает, экран честно скажет, чем оно открывается и сколько осталось.
- «🧑 Я» → «💊 Аптечка» — у препаратов теперь видно, сколько доз осталось в начатой упаковке.
- Зайди в лавку и сравни число под кнопкой с итогом сделки — хоть на одной штуке. Они обязаны совпасть.
- Если у тебя есть «Навес» — просто нажми на него. Ошибки больше не будет.
И последнее, ради чего всё это написано. Пять починок из этого выпуска начались с сообщения игрока в чат. Ни одну из них не нашла бы метрика: ни одна панель не показывает «игрок не нашёл кнопку». Чат показывает. Если что-то не находится или ведёт себя странно — напиши в чат сообщества или прямо боту.
Если ты бросил, потому что что-то «не работало», возможно, дело было не в тебе. Вернуться на остров.
Как теперь считается выкуп — карма, спред и суточный предел торговца, страница обновлена под новые правила.
Wild World — текстовая MMORPG в Telegram
Без регистраций. Без P2W. Открытый мир, караваны, фракции — заходи и живи.