Pull to refresh
83
0
Егор Меняйло @istayer

User

Send message

Игровая техподдержка в мобильном шутере: тандем Discord и Zendesk

Reading time7 min
Views2K

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

Поэтому занялись улучшением процессов: расширили штат сотрудников, обновили график для поддержки 24/7 и внедрили саппорт-сервис Zendesk. Подробнее обо всем под катом.

Читать далее
Total votes 36: ↑33 and ↓3+32
Comments1

Работа с ASO: как тестировать тренды и не получить иск

Reading time9 min
Views5.5K

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

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

Читать далее
Total votes 41: ↑41 and ↓0+41
Comments3

Как мы делали партнерскую программу для блогеров в мобильном шутере

Reading time7 min
Views2.8K

Нашему мобильному шутеру Pixel Gun 3D уже 9 лет. За это время у проекта появилось немало блогеров, в основном, ютуберов. Некоторые становились популярными и могли влиять на мнение игроков, с ними мы время от времени выходили на связь, но регулярной работы не было.

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

Читать далее
Total votes 35: ↑35 and ↓0+35
Comments0

Переработали батлрояль и увеличили его онлайн в 2 раза

Reading time9 min
Views9.6K

В нашей игре режим королевской битвы появился в 2018 году, когда жанр был на пике популярности. С тех пор батлрояль успел надоесть индустрии — игроки наигрались и вернулись в привычные дезматчи с маленькими картами и кучей фана. А огромный режим остался.

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

Читать далее
Total votes 52: ↑47 and ↓5+48
Comments7

Нативный маркетинговый инструмент App Store и Google Play или Как рассказать об апдейте прямо на странице приложения

Reading time10 min
Views3.4K

Лайв-опсами можно назвать по сути любые апдейты и ивенты в приложении. Раньше в App Store и Google Play не было нативных маркетинговых инструментов для их продвижения, затем появились лайв-опс карточки. Они могут прямо в сторе познакомить пользователя с игровыми ивентами, и ему даже апдейт качать не придется. 

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

Читать далее
Total votes 36: ↑35 and ↓1+36
Comments1

Как выжить при быстром росте аудитории, когда игра за день становится хитом

Reading time8 min
Views12K

В 2013 году, когда игры-сервисы были где-то в зачатках, мы продавали Pixel Gun 3D за доллар просто как прототип FPS-шутера. В игре была одна карта, одно оружие и два вида зомби, при этом она сильно цепляла эмоционально — игрокам приходилось выживать в ограниченном пространстве с постоянно появляющимися монстрами. Словом, адреналин зашкаливал (по этой же причине до сих пор популярны батлрояли). 

Проект выложили в стор и тут началось: огромное количество установок, оценок, отзывов. Вскоре он занял топ-1 в App Store среди платных игр. Мы совсем были не готовы к огромному потоку игроков, которые что-то советовали, писали развернутые фидбеки и всячески пытались выйти на контакт. 

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

Читать далее
Total votes 53: ↑52 and ↓1+58
Comments6

Настольная игра Холивар, где нужно доказывать, что земля плоская, мужчины умнее женщин и никого не побить

Reading time7 min
Views28K

Как я придумала и выпустила настольную игру Холивар без опыта, издательства, своего медиа или блога, краудфандинга, на свои деньги.

Игры - мое хобби. Холивар - моя вторая игра и первая настольная. Первая была мобильная PNLK, тетрис с панельками, сделанная за месяц на GoDot, которая неожиданно стала популярной, почти год стояла в виде стенда в Музее Советских Игровых автоматов, привлекла внимание и негодование Tetris inc, и последующие удаление из AppStore, но об этом как-нибудь в другой раз. 

Идея

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

Через месяц мы собирались праздновать новый 2020 год почти тем же составом, и тогда тот спорливый товарищ в шутку предложил сделать игру, в которой нужно доказывать противоположную точку зрения. Я подумала, блин, идея. В тот же вечер, 31 декабря 2019 года, буквально за полчаса до выхода в гости, я придумала простую игровую механику:

Читать далее
Total votes 114: ↑109 and ↓5+134
Comments95

Ошибки геймдизайна или как мы сделали игровой режим, который был никому не нужен

Reading time13 min
Views33K

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

Мечтали о своих кланах и мы. Не просто мечтали, а сделали. Трижды.

Под катом я расскажу о каждых граблях, на которые мы наступили в процессе разработки: механики, которые работают не по плану, проблемы экономики, смурфинг, и даже «договорняки» через Discord.

Читать далее
Total votes 91: ↑91 and ↓0+91
Comments10

Устану ли я играть, нужно ли уметь кодить и чем вообще занимаются QA в геймдеве

Reading time11 min
Views34K

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

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

Читать далее
Total votes 53: ↑52 and ↓1+57
Comments34

Децентрализованная конфигурация webpack или как упростить сборку проекта

Reading time8 min
Views9.2K

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

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

Но если говорить о конфигурации сборки, то такая декомпозиция скорее редкость, и в больших проектах часто можно встретить огромные webpack.config.js, модификация которых может доставить немало проблем и привести к ошибкам.

Если вам хочется сделать работу со сборкой проще и надёжнее при модификациях, то добро пожаловать под кат.

Читать далее
Total votes 51: ↑51 and ↓0+51
Comments19

Кластеризация изображений с помощью нейросети CLIP

Reading time5 min
Views6.9K

В статье пойдёт речь о том, как можно автоматически разделить датасет изображений на кластеры, которые поделены по качественному контекстному признаку, благодаря эмбедингам из нашумевшей нейронной сети CLIP от компании Илона Маска. Расскажу на примере контента из нашего приложения iFunny.

Кластеризация считается unsupervised задачей — это значит, что нет никакой явной разметки целевых значений, то есть нет «учителя». В нашем случае мы загружаем некий датасет картинок и хотим произвольно, но качественно побить его на кластеры. 

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

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

Читать далее
Total votes 47: ↑46 and ↓1+51
Comments11

Советы по разработке игр от создателя Civilization Сида Мейера

Reading time14 min
Views32K

В своей книге «Сид Мейер: Жизнь в мире компьютерных игр» знаменитый разработчик рассказывает о ключевых моментах карьеры, много шутит и через всю книгу дает советы и лайфхаки по разработке игр. А в этой статье основные из них — перевод под катом.

Читать далее
Total votes 63: ↑63 and ↓0+63
Comments27

«Право на забвение» или как просто удалять персональные данные по запросу пользователя

Reading time8 min
Views11K

Удалять персональные данные пользователя по его запросу, чтобы продукт соответствовал законам CCPA или GDPR, можно по-разному. Хоть вручную каждую заявку на почте разбирать. Главное — сделать процесс максимально простым и понятным для пользователя. А это уже хороший повод задуматься о некоторой автоматизации.

В статье на примере мобильного приложения iFunny расскажу про систему обработки запросов на удаление данных. Теперь заявки приходят сразу конкретизированными, а саппорт тратит в 2 раза меньше времени на их рассмотрение.

Под катом — о том, как происходит приём заявки, обработка, выставление статусов, хранение в системе учёта и так далее.

Читать далее
Total votes 39: ↑38 and ↓1+41
Comments2

Как написать квестовую RPG

Reading time6 min
Views17K

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

Читать далее
Total votes 32: ↑32 and ↓0+32
Comments4

Готовимся к Windows 11: добавляем поддержку полноценной клавиатуры в Android-приложение

Reading time4 min
Views9.2K

Многие мобильные приложения уже могут конкурировать с полноценными десктопными вариантами, а иногда и превосходить их. Офисные пакеты, фоторедакторы и IDE вполне неплохо работают на портативных девайсах. Samsung, например, даже сделал специальный режим DeX Mode, который позволяет подключить к смартфону монитор и периферию.

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

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

Читать далее
Total votes 44: ↑43 and ↓1+52
Comments16

Работа с фоновыми задачами в Android 12: переезжаем с foreground service на expedited jobs

Reading time4 min
Views11K

С релизом Android 12 приложения, где новая версия операционки будет указана в targetSdkVersion, получат запрет на запуск foreground-сервисов в бэкграунде. В качестве альтернативы Google предлагает WorkManager, который с появлением expedited jobs станет предпочтительным вариантом для запуска высокоприоритетных фоновых задач. 

О нём и пойдёт речь в статье — под катом обсудим новые возможности инструмента, подключим его к приложению и реализуем миграцию с foreground-сервиса.

Читать далее
Total votes 60: ↑60 and ↓0+60
Comments19

Батлрояль за 2 месяца: как мы обновили сетевой код и на 20% сократили траты на сервера

Reading time9 min
Views9.6K

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

В этой статье расскажу о том, как мы обновили сетевой код для собственной королевской битвы на Unity, ввели систему сетевых чанков, контролируемый рандом и в результате сократили траты на сервера на 20%.

Читать далее
Total votes 44: ↑44 and ↓0+44
Comments10

PvP-шутер без даунтаймов: архитектура, аварийные режимы и сервера с рубильником

Reading time6 min
Views6.9K

Мы уже рассказывали, почему первая версия архитектуры игры не была идеальной. Pixel Gun 3D изначально был прототипом в новом для команды жанре PvP-шутер. Хотели протестировать идею, чтобы собрать фидбек от игроков, но популярность игры начала расти достаточно быстро — писать ее заново было уже поздно. Сейчас подход к разработке новых проектов у нас сильно изменился, но зато тогда, без опыта, мы не потратили уйму времени на создание прототипа, который мог оказаться неинтересным для игроков.

С ростом функционала приходилось «на лету» менять архитектуру, делать ее масштабируемой, а также реализовать нашу идею — сделать шутер без даунтаймов даже во время технических работ или форс-мажора.

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

Читать далее
Total votes 34: ↑34 and ↓0+34
Comments4

Как за день потерять 30% онлайна и за два месяца сделать батлрояль

Reading time18 min
Views27K

Однажды в своем PvP-шутере мы за один день потеряли 30% от 60 тысяч одновременного онлайна. Это был 2018-й, в тот день на iOS вышел Fortnite. И хотя хайп был уже около года, а PUBG регулярно бил рекорды, без королевской битвы нам жилось вполне спокойно. Но тут стало очевидно, что батлрояль нельзя игнорировать, игрокам он нравится и нужно разрабатывать свой.

За два месяца мы проделали много интересной и сложной работы. Например, сделали свой редактор террейна, чтобы отрисовывать ландшафт не в 500 тысяч треугольников, как это делал Unity Terrain, а всего в 30 тысяч. Или написали мешбейкер, сократив количество запросов на отрисовку с 800 до 100, а освещение научились запекать за 5 минут вместо 30 часов. 

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

Читать далее
Total votes 66: ↑66 and ↓0+66
Comments20

Автоматизация или смерть: как управлять тысячами единиц игрового контента с помощью гугл-таблиц

Reading time14 min
Views14K

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

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

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

Читать далее
Total votes 36: ↑34 and ↓2+37
Comments22
1

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity

Specialization

Content Writer