Как издать игру в Steam: что делать и в какой момент
В первой игре я открыл страницу магазина за три недели до релиза и стартовал с 480 вишлистами; во второй я построил весь календарь в обратном порядке.
Страница магазина, открытая за три недели до релиза
Свою первую игру я выпустил в конце 2023 года. Билд был готов уже несколько месяцев, но страницу в Steam я открыл всего за три недели до релиза — мне казалось, что страница делается в последнюю очередь. В день выхода у меня было 480 записей wishlist. За первую неделю игра продала 210 копий и на второй день вылетела из списка новинок. Время в этом списке напрямую зависит от скорости продаж: без набранного темпа в первые 24 часа список тебя отпускает.
Во второй игре я изменил ровно одну вещь: открыл страницу магазина за семь месяцев до релиза. К дню выхода набралось 9 400 вишлистов, а за первую неделю разошлось 2 100 копий. То же качество кода, тот же бюджет на графику, тот же жанр. Вся разница была в календаре.
Издание игры в Steam — это не техническая задача, а задача планирования. На то, чтобы разобраться в интерфейсе Steamworks, у меня ушло полдня; на накопление вишлистов — месяцы. Дальше идёт весь процесс в том порядке, в каком он реально выполняется, вместе со сроками, которые я сам пропустил. Поэтому в тексте нет кода, зато есть даты.
Аккаунт Steamworks, Steam Direct и налоговые настройки
Партнёрский аккаунт Steamworks можно открыть и как физическое лицо, и как компанию. Потребуются подтверждение личности или регистрации бизнеса, банковские реквизиты (IBAN и SWIFT) и налоговая форма. Взнос Steam Direct составляет 100 USD за игру и возвращается, когда проект набирает 1 000 USD валового дохода. После оплаты начинается 30-дневный период ожидания, и раньше его окончания выпустить игру нельзя.
При издании из Турции именно на налоговой форме чаще всего теряют деньги. Физические лица заполняют W-8BEN, компании — W-8BEN-E. Между Турцией и США действует соглашение об избежании двойного налогообложения, и если правильно указать строку со статьёй соглашения, налог у источника в США снижается с 30% до 0%. Я оставил эту строку пустой в первой форме, и с первой выплаты удержали 30%. Исправленная позже форма починила следующие выплаты, но уже удержанные деньги не вернулись.
Выплаты приходят раз в месяц и в долларах. Остаток ниже определённого порога переносится на следующий месяц, поэтому первые платежи выглядят задержанными, хотя они просто слишком маленькие. Если вы издаёте игру как индивидуальный предприниматель, спросите у бухгалтера, по какой статье декларировать доход и применяется ли льгота на экспорт услуг: это вопрос вашей бухгалтерии, а не Valve.
В сумме всё это обычно занимает шесть недель: несколько дней на проверку аккаунта, около недели на одобрение налоговой формы и 30 дней ожидания Steam Direct. Когда будете отсчитывать назад от даты релиза, поставьте эти шесть недель в самое начало.
Насколько рано стоит открывать страницу магазина?
Честный ответ: как только у вас есть тридцать секунд играбельного видео. Страница публикуется в статусе «Скоро выйдет», дату релиза можно не объявлять, и вишлисты начинают набираться сразу же. Любое продвижение, которое вы делаете при закрытой странице в Steam, — это трафик, которому некуда приземлиться. Готовая игра для открытия тоже не нужна: хватит пяти скриншотов, одного трейлера, капсульных изображений и короткого описания.
Число вишлистов — не украшение отчёта, а входной параметр алгоритма. Скорость их прироста в последние дни перед релизом решает, попадёте ли вы в список Popular Upcoming, а это крупнейший источник бесплатной видимости. В двух моих играх конверсия вишлистов в продажи первой недели составила 18% и 22%; обычно называют диапазон 10-20%.
Такая пропорция сильно упрощает постановку целей. Если нужны 2 000 продаж за первую неделю, к релизу требуется примерно 10 000 вишлистов. Органический приток после открытия страницы держится на уровне 5-15 в день; настоящие скачки дают события. На неделе Next Fest ежедневный прирост поднялся с 40 до 900, потом упал до 60 — и всё равно за две недели прибавилось 4 100. Здесь же работает вторая функция вишлиста: Steam рассылает письма всему списку при выходе игры и при каждой скидке.
Практические правила для капсулы и трейлера
Капсулу вы готовите в 616x353, но в списках Steam ужимает её до 231x87. Правило простое: название должно читаться в этом размере, а на изображении стоит оставить не больше двух-трёх чётких элементов. На первой капсуле у меня было пять персонажей и силуэт города позади; когда я переделал её на одного персонажа и крупное название, кликабельность выросла с 2,1% до 3,4%.
Мой способ проверки: выгрузить капсулу в 231x87 и посмотреть на экране телефона. Если за секунду жанр не считывается, капсула не работает. Проверьте и цвета на тёмном интерфейсе Steam: картинка, которая прекрасно смотрится на белом фоне, может потеряться в тёмном списке. Поверх капсулы Steam ещё накладывает плашку скидки, поэтому левый верхний угол лучше оставить пустым.
Первые пять секунд трейлера должны быть геймплеем. Логотип студии, логотип движка и медленное атмосферное вступление съедают ровно это окно. На странице магазина Steam запускает трейлер автоматически и без звука, так что первый кадр обязан работать сам по себе. Когда я вырезал 12-секундное атмосферное вступление и начал сразу с геймплея, среднее время просмотра выросло с 19 до 34 секунд; трейлера на 60-90 секунд более чем достаточно. Перед загрузкой посмотрите его один раз в 480p: мелкий текст и тонкие элементы интерфейса на таком разрешении уже не читаются.
Как настроить депоты, ветки и ключи для бета-версий
В Steam ваша игра — это app, а пакеты контента — записи depot. Для каждой платформы заводится свой depot, DLC тоже уходят в отдельные. Даже при выпуске на одной платформе я держу два: один под контент игры, другой под распространяемые зависимости. Тогда обновление redist на 40 МБ не заставляет заново заливать двухгигабайтный депот с контентом. Идентификаторы депотов образуются от идентификатора приложения и после создания не удаляются, поэтому продумайте структуру до первой загрузки.
Билды загружаются через steamcmd двумя VDF-скриптами: один app_build и по одному depot_build на каждый депот. В скрипте депота действительно важны поля ContentRoot, FileMapping и FileExclusion. При первой загрузке я забыл исключить файлы .pdb и .log; билд вышел на 3,1 ГБ вместо 1,8 ГБ, и игроки скачали 1,3 ГБ пустоты.
Ветки — это то, что делает тестирование выносимым. default — публичная ветка, рядом с ней я держу защищённые паролем qa и press. Новый билд сначала попадает в qa, его проверяют три человека, и только потом он переезжает в default. Ключи для прессы и стримеров указывают на собственную ветку, поэтому в день релиза я могу её закрыть. После выхода обязательно смените пароли веток: утёкший пароль от press — это неоплаченная копия вашей игры.
Загрузка билда происходит мгновенно, а вот проверка — отдельный процесс. Valve смотрит и страницу магазина, и исполняемый файл, и обычно это занимает от одного до пяти рабочих дней. Причины отказа скучные: не хватает скриншота, противоречивые ответы в анкете возрастного рейтинга, билд не запускается. Отправляйте на проверку минимум за две недели — как раз тогда Valve и хочет видеть зафиксированную дату релиза.
Дата релиза, календарь фестивалей и первая неделя
Для релиза выбирайте вторник, среду или четверг. Если в пятничном релизе что-то сломается, на стороне Valve в выходные вы никого не найдёте. Держитесь подальше от недель с крупнобюджетными премьерами и от больших распродаж Steam: на неделе распродажи новая инди-игра по полной цене просто не показывается в тех списках, которые листают люди. Дата фиксируется в Steamworks за две недели, а перенести её на более ранний срок потом можно только с одобрения Valve, поэтому давайте реалистичную оценку, а не оптимистичную.
Календарь фестивалей — самая выгодная бесплатная видимость из доступных. Next Fest проходит трижды в год, требует играбельного демо, и с одной игрой участвовать можно только один раз, так что используйте его тогда, когда вишлисты ещё есть куда копить, а не прямо перед выходом. Регистрация закрывается за шесть-восемь недель. Приглашения на тематические фестивали приходят по тегам вашей страницы магазина, и при неверных тегах приглашения не будет вовсе.
После релиза я слежу за четырьмя числами в отчёте о продажах Steamworks: количество проданных копий, конверсия вишлистов, доля возвратов и медианное время в игре. Доля возвратов выше 8% означает, что игра либо заканчивается внутри двухчасового окна, либо где-то падает. Во второй игре за первую неделю возвраты дошли до 11%; причиной был шейдер, который не компилировался на встроенных GPU Intel, и после исправления через три дня показатель опустился до 6%. Если медианное время в игре меньше двухчасового окна возврата, смотрите на первые полчаса игры, а не на её общую продолжительность.
Если сжать всё это в одну строку: выберите дату релиза и считайте назад. Шесть недель на аккаунт и ожидание Steam Direct, две недели на проверку, восемь недель на регистрацию в фестивале, четыре-шесть месяцев на накопление вишлистов. Выпишите эти даты, перенесите их в календарь и возвращайтесь к коду. Сложное в издании на Steam — не собрать билд, а не пропустить эти даты.