Gamedev Stas Shostak
5 009

Разработка по-македонски, как стратегия для выживания в инди-апокалипсисе

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

В закладки

Как обычно, я начал этот текст до релиза, и закончу после. В этот раз первые строки написаны всего за сутки до выхода игры, и главное, о чём я хочу рассказать: как и почему я организовал разработку двух игр одновременно, и к чему это привело.

Стрельба по-македонски, чтобы никто не упустил моей аналогии в заголовке

Первые две игры, вышедшие ранее

Перед тем, как перейти к делу, я коротко расскажу о себе, на случай если вы не любитель читать двенадцатистраничные статьи полугодовалой давности, пропущенные в своё время.

До 2015 года я работал программистом в окологеймдевных сферах, любил комфорт, стабильность, а в свободное время не спеша делал с командой друзей первую игру, затем во мне что-то изменилось, и я перестал работать по найму, потратил все сбережения, продал машину и выпустил пиксель-артовый раннер Tribal Pass. Затем ещё за год с большими паузами и трудностями я выпустил твинстик-шутер JASEM, который в отличии от первой игры не окупился до сих пор. Ссылки на статьи о каждом из этих релизов будут в конце текста.

Tribal Pass

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

Огромное спасибо всем этим людям, такое отношение сгладило разочарование от релизов и придало сил продолжать разработку, относясь к текущим затратам, как к вполне общепринятому кредиту на открытие бизнеса (только в моем случае я еще и не должен банку). Это очередной раз подтверждает, что наличие законченных игр, по которым видно, что вы способны выжимать определенные результаты при ограниченных бюджетах и времени — это ваше преимущество, которое невозможно переоценить.

Третья игра, которая выйдет четвёртой (или позже)

После релиза JASEM я объединился с инвестором и договорился о бюджете, соизмеримом с моими предыдущими играми (детали сотрудничества с инвестором — это наверное единственные цифры, которые я считаю неправильным называть), который я решил направить на оплату 3D-моделей и звуков.

Тут стоит заметить (не ради хвастовства, это реально важно), что перед этим я отказывался от нескольких предложений инвесторской, продюсерской или издательской помощи от других людей. И в целом не ошибся — я дождался предложения о таком сотрудничестве, в котором мне было максимально комфортно.

Да, возможно с другими вариантами я бы получил больше, но для меня важно сохранить свой стиль жизни, занимаясь любимым делом. Так что, хоть мне и очень приятно получать интересные предложения от уважаемых людей, и я благодарен им за готовность со мной сотрудничать, я не хочу сходить с того пути, который считаю для себя наиболее подходящим, поэтому отказываюсь от всего, что не кажется мне удачным на все 100%. И мне кажется, большинство разочарований в партнерах и скандалов в игровой индустрии (и не только в ней) возникают по большей части потому, что кто-то принимал решения, основываясь только на краткосрочной выгоде, и не думая, насколько он готов жить в оговоренных условиях в течении длительного срока.

С бюджетом возник вопрос: что я могу сделать на эти деньги? После провального релиза JASEM не хотелось снова ввязываться в разработку чего-то просто потому, что это легче сделать, и после не особо длительного перебора идей и прототипов было решено делать тактическую игру про сражения машинок в конвое в духе последнего Mad Max.

По всем параметрам это выходит проект мечты — большая игра в пост-апокалипсисе, машины, относительно открытый мир с фракциями, квесты, тактическая боевая система, всё что мы все любим. Даже удивительно, что я не начал свой путь в геймдеве с подобных идей, а целых три года держал себя в руках и старался Keep it simple.

Road of Dust and Rust

С самых первых дней разработки ко мне присоединились знакомый 3D-моделлер и саунддизайнер, работавший со мной над Tribal Pass. Сотрудничество с проверенными людьми, с которыми мы давно в хороших отношениях, придало уверенность что мы сможем сохранить бюджет небольшим, не потеряв при этом в надежности, если будем за него выходить или будут другие тяжелые периоды в разработке.

Тема игры оказалась благодатной и Road of Dust and Rust (далее RoDaR) привлекала внимание даже без особых усилий с моей стороны, поэтому едва у нас были готовы первые прототипы (примерно через четыре месяца после начала разработки), в которые было еще даже невозможно играть, я нарезал из них пятнадцатисекундный тизер и открыл страницу в Steam. Я не афишировал это нигде, кроме своих соц.сетей, но спустя несколько дней об игре написали indiegames.com (к которым я безуспешно пытался достучаться с обеими предыдущими играми), shazoo.ru и ещё несколько ресурсов на испанском, немецком и чешском.

Тот самый тизер

Увидев реакцию прессы, и комментарии, я понял, что релизить игру как обычно (по плану минимум, с тем что успеваю в рамках бюджета) в этот раз будет преступлением, и сел раскладывать перед собой слово «счастье» из букв «о», «п», «ж» и «а», (читать, как доделать игру в приличном виде на оставшиеся деньги и иссякающие доходы от предыдущих игр).

План не складывался, я загрустил, а разработка замедлилась. После трех переделок меня не устраивал геймплей боёвки. Здесь я бы хотел передать привет и уважение всем геймдизайнерам, оттачивающим геймплей на кубиках до того, как делать контент. Я так не могу. Без приятного визуала, что бы я не делал, напоминает мне о JASEM (этот релиз стал моим личным видом пост-травматического синдрома), и кажется бесперспективным.

Так что теперь мой процесс разработки сразу после самых примитивных прототипов базируется на сеттинге и визуале, и оттуда уже переходит к развитию и углублению (если повезет) механик, которые это все поддерживают. На всякий случай, чтоб в комментах меня не распяли опытные игроделы, скажу: это неправильно, не надо так.

еще Road of Dust and Rust

Четвёртая игра, вышедшая третьей

Как это обычно бывает, пока не получается с одной игрой, в голове зарождается другая. После просмотра документальных сериалов о войне, у меня сформировалась идея антивоенной игры, которую я давно хотел сделать. За сутки был готов первый прототип геймплея, а к вечеру второго дня — документ, расписывающий все уровни, механики и сюжет для небольшой игры. Такое со мной случается крайне редко, и упускать возможность было нельзя.

После краткого обсуждения с инвестором, мы перенаправили силы и небольшую часть бюджета на этот прототип, который выглядел реализуемым за месяц-два. С этого момента до релиза прошло три месяца, так что это мой наиболее точно спланированный проект на данный момент, и это стало возможным только благодаря четко прописанному документу на старте, от которого я почти не отклонялся до самого финиша.

Трейлер Save One More, сделанный мной собственноручно

Над Save One More со мной работал тот же 3D-моделлер, что и над RoDaR, музыку написала моя девушка, а звуки были куплены на unity asset store (пока что об этом никто не догадался, и за саунддизайн игру хвалили).

Всего, кроме трёх месяцев моей работы, у нас ушло 600 долларов на контент (из них 100 на озвучку трейлера и логотипы с помощью фрилансеров на Fiverr). На момент написания этих строк, Save One More два дня как вышла и за это время продалась на тысячу долларов. Конечно, будет большое количество рефандов (геймплея меньше двух часов), доли Steam и налоги, но если смотреть не на абсолютные цифры, а на соотношение дохода к затратам это выглядит как самая эффективная моя игра.

Save One More

Меня можно обвинить в загаживании Steam сделанными второпях поделками, но в своё оправдание могу сказать, что игра в итоге получилась хоть и на любителя, но по оригинальному концепту и с определёнными идеями, поэтому мне абсолютно не стыдно — это не ассет-флип и не клон клона в популярном жанре.

Моя стратегия на будущее

Сразу оговорюсь: то что я дальше напишу — это метод, который я опробовал на собственном опыте, подходящий лично для меня в моей жизненной ситуации. Если вы разрабатываете игры в свободное от основной работы время, скорее всего, такой подход вам только навредит. Аналогично, если у вас средне-крупная студия и богатый опыт и экспертиза в геймдеве.

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

Основной мой проект, Road of Dust and Rust — это типичная игра мечты, в которой я дал волю фантазии и не особо сдерживаю себя в рамках бюджета. Это потенциальный долгострой, с которым я определенно буду обращаться к издателям, и с которым можно будет конкурировать с «настоящими» инди-играми от серьёзных студий.

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

В то же время, я регулярно прощупываю прототипы из своих идей на более мелкие игры, как Save One More, и если какой-то из них в самые минимальные сроки оформляется в готовый план для небольшой экспериментальной (или не очень) игры — я перебрасываю свои силы на неё, по возможности как можно меньше отвлекая остальную команду от работы над RoDaR.

Неожиданный плюс от такого подхода: во время работы над одной игрой, могут прийти свежие идеи для другой. Так, за неделю до релиза Save One More я решил проблему с кор-геймплеем RoDaR — осталось только закончить пост-релизные апдейты, и можно будет по уже готовым планам в полную силу продолжать разработку игры мечты.

Save One More

Я не хочу превращать это в конвейер по разработке мелких никому не нужных игр, так что главное требование к таким проектам — цепляющая и выделяющаяся идея уже на уровне короткого питча. Я готов экономить на реализации, но больше не планирую браться за идеи, не несущие ничего нового, своими мини-играми я собираюсь делать заявления или как минимум, проводить безумные эксперименты с механиками. Я не хочу больше быть ответственным за появление в Steam просто ещё одного платформера, шутера или рогалика просто потому, что я технически способен его сделать.

Также этот метод пока что оправдывает себя экономически — пассивный доход от среднеуспешных игр складывается и позволяет дольше выживать, чтобы не спешить с основным проектом. А провал небольшой игры не ведет к депрессии и самоедству (привет, JASEM).

Приведу немного итоговых цифр (ведь от меня чаще всего ждут именно их).

  • Затраты на игру: три месяца моей работы и 600 долларов.
  • Перед релизом было разослано около 300 ключей прессе и ютуберам (активировано около 40)
  • Релиз состоялся в среду, в 20:00 по Киеву, с ценой 5,99 доллара и релизной скидкой 17%.
  • Почти сразу игра попала в раздел популярных новинок в России, за что огромное спасибо всем, кто меня поддержал покупкой. В других странах с фичером не сложилось.
  • За двое суток страницу игры посетила 41 тысяча человек. Из них почти 5 тысяч с одного поста на Reddit в разделе скидок. Так я испробовал на себе силу Reddit, если пользоваться им правильно и оформлять всё согласно правилам.
  • За двое суток было продано 300 копий на тысячу долларов (до вычета всего что может вычтено).

Ссылки

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

  • «Путь в тысячу граблей» — моя первая статья о разработке и релизе Tribal Pass.
  • «На дне геймдева» — текст-психотерапия о разработке JASEM: Just Another Shooter with Electronic Music.
  • Сайт, на котором удобно и приятно заказывать разные небольшие куски работы фрилансерам. Там я сделал озвучку для трейлера Save One More и логотипы игры для промо-арта.
  • Пост на Reddit, давший мне 5 тысяч посещений на странице игры в Steam.

И, наконец, ссылки на мои игры и сообщества, если вы хотите что-то попробовать собственноручно, или следить за ходом разработки/

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

Делайте больше необычных игр

#опыт

Материал дополнен редакцией
{ "author_name": "Stas Shostak", "author_type": "self", "tags": ["\u043e\u043f\u044b\u0442"], "comments": 37, "likes": 116, "favorites": 58, "is_advertisement": false, "subsite_label": "gamedev", "id": 20652, "is_wide": false }
{ "id": 20652, "author_id": 1718, "diff_limit": 1000, "urls": {"diff":"\/comments\/20652\/get","add":"\/comments\/20652\/add","edit":"\/comments\/edit","remove":"\/admin\/comments\/remove","pin":"\/admin\/comments\/pin","get4edit":"\/comments\/get4edit","complain":"\/comments\/complain","load_more":"\/comments\/loading\/20652"}, "attach_limit": 2, "max_comment_text_length": 5000 }

37 комментариев 37 комм.

Популярные

По порядку

Написать комментарий...
26

Автор — герой СНГ инди сцены. Всегда свежие идеи, мысли и цифры. Желаю автору дальнейшего профессионального роста! За статью спасибо)

Ответить
14

Спасибо! Осталось теперь заслужить это звание не только текстами, а и играми :)

Ответить
8

Жду RoDaR и уверен что дождусь.

Ответить
5

О! Это же тот чувак, который продал машину, чтобы доделать игру.

Всегда интересно читать такие статьи. Удачи в работе над следующим проектом!

Ответить
6

Я продал машину, когда игра уже была доделана, но да, это я :) Спасибо!

Ответить
6

Очень круто, Стас! Как раз добавил вот Save One More в «инди-находки» (https://dtf.ru/indie/20557)
Надеюсь, поможет хоть немного.
Музыка там классная, кстати.

Ответить
0

Круто, спасибо! Со стороны наверное выглядит, как массированная пиар-атака на ДТФ с моей стороны, с разницей в полчаса сразу два материала про мои игры :)

Ответить
5

Напрасно переживаете, не выглядит :)

Ответить
3

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

Ответить
3

Стас, привет! Отличная статья, впрочем, как и всегда :)

Хотел только дополнить, что использования покупных звуков и именно с ассет стора не считаю преступлением.

Ответить
3

Спасибо! Я тоже не вижу в этом ничего зазорного, ведь главное то, как их использовать :)

Ответить
4

Save One More очень понравилась. Купил. Спасибо. Рефандить не собираюсь.
ТАК ДЕРЖАТЬ !!!

Ответить
0

Спасибо!

Ответить
3

Спасибо за отличную и мотивирующую статью!
Сидя на работе в воскресенье, читать статейку о непробиваемом девелопере - просто отдушина!) Особенно, когда у самого дома лежит наполовину сделанный проект...
Удачи с проектом мечты!)

Ответить
2

Хорошая статья, спасибо.

Ответить
2

Идея и Save One More сильная. Игры и должны быть идейными, хоть маленькие хоть большие.

Ответить
1

Я правильно понял, что игра за 48ч принесла 1000$ Gross revenue (а не прибыль. т.е потом ооттуда вычет стима, налогов и т.д). И эти 1000$, самый лучший старт для вашей игры?

Еще вопрос
<затраты на игру: 3 месяца моей работы + $600
Вы себе зп платите? или тока доходы от игры. И если не секрет во сколько вы оцениваете свое время

Ответить
1

Gross у Tribal Pass был в 7-8 раз выше, но он был в разработке два года, и было потрачено больше 5 тысяч долларов сверху. Если сравнивать отношение затрат к доходу - этот старт лучше.
Месяцы своей жизни я специально выношу за скобки бюджетов, потому что эти цифры индивидуальны для каждого. Свое время я воспринимаю как своего рода кредит на бизнес, который не надо никому отдавать. Пока я имею возможность тратить его полностью в разработку, я не оцениваю его в часовых или месячных рейтах (будучи программистом, я получал в час больше, чем в средний день с двух неудачных игр). Главное для меня сейчас - оставаться на плаву в течении разработки, пока это не окупится.

Ответить
1

Потрясающе. Спасибо за опубликованные цифры.
И жаль, что JASEM провалился, он выглядел довольно интересно по трейлеру.

Ответить
1

JASEM никак не цеплял описанием и сутью, эксперимент с иронией и названием "просто еще один шутер" не оправдал себя. Игре нужно что-то выделяющее её от остальных, что можно в одном предложении рассказать другу/подписчикам/покупателям, и он захочет её попробовать - в JASEM ничего такого не было, хотя его можно назвать самой полноценной моей игрой с точки зрения геймплея.

Ответить
0

И всё же стоило попробовать перекомпилировать под x32, т.к. есть много неигровых компьютеров.

Ответить
0

на большинстве таких компьютеров игра бы тормозила, и вместо просто потенциальной недополученной прибыли (судя по статистике устройств, довольно небольшой), я бы получал отрицательные отзывы

Ответить
1

Статья огонь, побольше бы таких.

Так как возможности задонатить за годную статью тут нет, пожалуй надо бы купить Save one more ;)

Ответить
0

Это было бы более чем круто, даже лучше, чем просто задонатить за статью :)

Ответить
1

Полезная статья, было приятно читать :)

Ответить
1

Спасибо за очередную статью, дружище.
Как всегда очень интересно читать про то, как у тебя все развивается.
Жмииии (:

Ответить
1

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

Теперь осталось проект мечты доделать )

Ответить
1

Вызывает уважение просто то, что хватило бодрости духа, чтобы это все сделать, поставить себя в такую ситуация и заниматься чем хочется. Это круто.
Мне кажется, таким что упорным трудом нащупаешь в свое время какую-то геймдизайнерскую жилку и создашь что-то крутое. Главное дожить до этого момента и не перегореть.
Удачи, мужик!

Ответить
1

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

Тут не всё однозначно, стоит заметить. Даже у больших (варгейминг) прототипы могут "ломаться" при переходе от кубиков к относительно живым ассетам (на последнем девгаме так говорил уважаемый человек в докладе). Поэтому подход с кубиками нельзя назвать универсальным и у каждого разработчика и проекта свой путь в поиске тех самых, главных, кор механик.

Ответить
1

Спасибо за ценную и практическую информацию.

Ответить
1

Спасибо, очень интересно! RoDaR выглядит круто, сочно и интересно.
Ну и да, знакомые сложности с маркетингом)

Ответить
1

1) лого save one more с красным крестом крутое получилось, у мения лично с первого взгляда возникла мысль как раз про военного медика
2) каждый раз, когда вижу упоминание JASEM, читаю его как "ЗАЧЕМ", похоже, тут какая-то тонкая отсылка к процессу разработки
3) Road of Dust and Rust хорошо аббревиируется в RoDaR но целиком произносится неловко, гораздо лучше звучит Road of Rust and Dust, звуки перетекают друг в друга

Ответить
0

Стас, подскажите - какой прессе рассылали? И как, на корпоративку или уже были личные контакты?

Ответить
1

В основном на корпоративные адреса, по сусекам наскреб несколько личных, но результата с прессой я особо не достиг. Адреса прессы и ютуберов я брал из различных маркетинговых гугл-таблиц со списками, плюс отдельно рассылал тем, кто обозревал мои предыдущие игры. Для ДТФ отправил ключ через встроенную в стим программу связи с кураторами - так попал в инди-находки :)

Ответить
0

Принял, спс. Дайте, пожалуйста, ссылку на ваш реддит, с которого побежали.

Ответить
1

собственный реддит я не веду, пользуюсь только большими сабреддитами, пытаясь в разное время что-нибудь поудачнее туда запостить. Но мой профиль вот - https://www.reddit.com/user/stasShostak/

Ответить
0

+, а если нет, то мои дети точно

Ответить
0

Прямой эфир

[ { "id": 1, "label": "100%×150_Branding_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox_method": "createAdaptive", "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfl" } } }, { "id": 2, "label": "1200х400", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfn" } } }, { "id": 3, "label": "240х200 _ТГБ_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fizc" } } }, { "id": 4, "label": "240х200_mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "flbq" } } }, { "id": 5, "label": "300x500_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfk" } } }, { "id": 6, "label": "1180х250_Interpool_баннер над комментариями_Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "clmf", "p2": "ffyh" } } }, { "id": 7, "label": "Article Footer 100%_desktop_mobile", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjxb" } } }, { "id": 8, "label": "Fullscreen Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjoh" } } }, { "id": 9, "label": "Fullscreen Mobile", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjog" } } }, { "id": 10, "label": "Native Partner Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyb" } } }, { "id": 11, "label": "Native Partner Mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyc" } } }, { "id": 12, "label": "Кнопка в шапке", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fdhx" } } }, { "id": 13, "label": "DM InPage Video PartnerCode", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox_method": "createAdaptive", "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "clmf", "p2": "flvn" } } }, { "id": 14, "label": "Yandex context video banner", "provider": "yandex", "yandex": { "block_id": "VI-250597-0", "render_to": "inpage_VI-250597-0-1134314964", "adfox_url": "//ads.adfox.ru/228129/getCode?pp=h&ps=clmf&p2=fpjw&puid1=&puid2=&puid3=&puid4=&puid8=&puid9=&puid10=&puid21=&puid22=&puid31=&puid32=&puid33=&fmt=1&dl={REFERER}&pr=" } }, { "id": 15, "label": "Плашка на главной", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byudo", "p2": "ftjf" } } }, { "id": 17, "label": "Stratum Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fzvb" } } }, { "id": 18, "label": "Stratum Mobile", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fzvc" } } } ]
В Steam появилась функция продажи
подержанных цифровых копий игр
Подписаться на push-уведомления