Хотите дальше читать devby? 📝
Support us

Wargaming: первым делом — самолеты. Интервью с Антоном Ситниковым

Оставить комментарий
Wargaming: первым делом — самолеты. Интервью с Антоном Ситниковым

В день старта открытого бета-теста «Мира самолетов» мы публикуем следующий материал из цикла интервью с сотрудниками отдела продюсирования компании Wargaming, возникшего на месте отдела геймдизайна. Сегодня нашим собеседником стал ведущий продюсер «Самолетов» Антон Ситников.

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

 — читаем под катом.

— Антон! Сейчас ты продюсер «Мира самолетов». Фактически ты геймдизайнер в продюсировании, а начинал совершенно с иного. Как произошла такая трансформация, сколько времени это заняло и через какие этапы ты прошел?

— Я учился и получил диплом как программист, в первую очередь специализировался на C++. Первые 10 лет после получения диплома работал в НИИ, занимался разработкой и сопровождением диспетчерских систем для энергетики. 10 лет в НИИ были интересны и по содержанию работы, и вполне комфортны с финансовой точки зрения, но я пережил какого-то рода кризис среднего возраста и решил что-то изменить в своей жизни. Пошел на работу в EPAM, закончив курсы по ABAP/4. Отработал год просто для того, чтобы закончить контракт, так как оказалось, что, несмотря на перспективность SAP, эта тема совершенно не моя. Мне предложили прособеседоваться на разработчика игровой логики в небольшую и уютную компанию Wargaming, куда я и пришел в октябре 2005 года. Мы тогда начинали делать то, что впоследствии стало «Операцией Багратион».

— Ты же шел уже с видом перейти в геймдизайнеры, так ведь?

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

— А почему?

— У меня никогда не было проблем с идеями, а имея программистский бэкграунд, я понимал, как их можно реализовать. И мог отфильтровывать нереализуемое. В общем, после собеседования с Витей Кислым мой шифт был утвержден и я стал геймдизайнером. А в скором времени — ведущим геймдизайнером «Операции Багратион».

— То есть ты, получается, с места в карьер?

— Да, это, наверное, одна из традиций Варгейминга — бросать человека в воду и если он выплывет, то все круто. Не выплывет — это, конечно, печально, но в целом работает. «Багратион» получился. Нам дали «Лучшую стратегическую игру» на КРИ, мы получили «Выбор редакции» некоторых игровых изданий... 

В какой-то момент, когда работа над вестернизированной реинкарнацией «Багратиона» — Order of War — подходила к концу, мне, как специалисту по балансу, предложили перейти на «Танки». В основном занимался экономическим балансом, в меньшей степени — боевым. Мне были интересны и другие задачи, но для баланса нужен был технарь, способный к аналитике и расчетам. Я разработал экономическую модель, что было сущей «авантюрой», потому что на тот момент не было достаточно статистики и было неясно, на что опираться, нужно было определять даже сам порядок цен. Но модель оказалась рабочей, сейчас мы ее во многом повторяем в «Самолетах». Конечно, по ходу модель донастраивалась, так как экономика массовой онлайновой игры неизбежно подвержена различным влияниям и флуктуациям. Этот процесс продолжается и будет продолжаться, пока проект жив.

— И в какой-то момент тебе предложили возглавить «Самолеты»

— Баланс «Танков» уже был сделан. Месяца два-три поработал в качестве аналитика, а чуть позже стал начальником аналитического отдела (который так и не был создан). В этот период, например, было создано ТЗ системы жалоб, которая сейчас уже реализована и в полной мере заработает на ОБТ «Самолетов». Тогда мне и предложили посмотреть на «Самолеты». Слетал в Киев, поиграл в прототип, посмотрел на коллектив. По возвращении написал большой отчет, где перечислил риски проекта, основные геймплейные проблемы, изложил свое мнение о коллективе студии. Радует, что время показало: я не ошибся ни в одном пункте. Мне предложили возглавить разработку с минской стороны.

В Киеве была мощная профессиональная студия, которая стала интенсивно расширяться в первую очередь под «Самолеты». У нас после «Танков» имелся опыт, знания и видение. Все это было необходимо донести до разработки. Специалисты в Киеве крутые, но авторский надзор в любом случае нужен. Не просто на концептуальном уровне, но на уровне передачи знаний вплоть до достаточно мелких деталей.

— А теперь твой программистский бэкграунд помогает в твоей роли продюсера и надзирающего за геймплеем «Самолетов»?

— Помогает в случаях, когда нужно сделать удивленное лицо со словами: «Вы оцениваете эту фичу в неделю работы?» Подобного рода демагогические заявления мне помогают (смеется). Мне, скорее, полезны общетехнический бэкграунд, здравый смысл, системность. Помогает при формулировании запросов и технических заданий. Помогает удерживать какую-то достаточно строгую непротиворечивую концепцию продукта в целом.

— Чем «Самолеты» отличаются от «Танков» в технической части? Какие проблемы были с этим связаны?

— Технические различия между «Самолетами» и «Танками» довольно значительны, и это во многом диктуется переходом от танкового 2.5D к полному 3D. Кроме этого, дело в самолетных скоростях и самолетном вооружении. Хотя мы понимали, что концепция «как танки, но про самолеты» звучала наивно с самого начала, на практике оказалось, что игровой процесс отличается в еще большей мере. И многие решения пришлось разрабатывать с нуля. Это было непросто, потому что специфического опыта недоставало.

Например, рендер. Танковый рендер, по большому счету, никогда не опирался на дефолтный, который обеспечивал BigWorld «из коробки». Наш рендер ориентировался на танковые потребности с самого начала и уже на альфа-тесте отличался от дефолтной версии. Оказалось, что танковые наработки подходят для «Самолетов», скорее, на уровне общей эрудиции. У самолетов — большое открытое пространство, мало визуальных препятствий в воздухе. Во-вторых, сами по себе самолеты и в игре, и в реальной жизни с точки зрения полигонов, кривых, окружностей — гораздо более сложные объекты, чем рубленые танки. Самый главный объект, который игрок созерцает 99% игрового времени, должен отрисовываться совершенно иначе. Для «Самолетов» не требуется высокой детализации велосипеда, прислоненного к заборчику в тени дерева, — то, что могут видеть танковые игроки. Самолетные игроки видят это постольку-поскольку, когда проносятся на низкой высоте над землей. Но все остальное требует более тщательного подхода: дальность отрисовки, сложность моделей, качество трехмерной проработки террейна, который игрок видит с разных ракурсов и дистанций. Огромные массивы деревьев, большие городские кварталы, большие водные пространства, сложные трехмерные облака.

Киевские программисты, получив BigWorld, посмотрели на голый бигворлдовский рендер и, как минские в свое время на «Танках», поняли, насколько этого недостаточно. Некоторое время мы обходились какой-то компиляцией из дефолтного рендера, танковых кусочков и первых собственных наработок, но в итоге самолетный рендер переписали практически полностью. И поток знаний потек уже из Киева в Минск, а сейчас уже и в Питер.

— А ваши наработки как-то портируются обратно в BigWorld?

— Теперь — да (смеется). В нынешней ситуации мы можем более эффективно приоритезировать запросы к австралийской команде. Много работы по доработке серверного кода, сетевых протоколов и инструментария. Если брать серверную часть, то наше отличие от «Танков» тоже велико. Например, ведение стрельбы. Снаряд вылетает, летит с определенной скоростью, по определенной баллистике, попадает в броневой лист под определенным углом. Может пробить, не пробить, срекошетировать. Все это считается по эмпирическим формулам из реальной жизни. После пробития снаряд может проследовать дальше и разрушить один или более модулей танка, внутренние бронеперегородки и т. п. А теперь можно сравнить. Танковая пушка делает порядка 6 выстрелов в минуту. Мой любимый пример в «Самолетах» — штурмовик третьего уровня, монструозное советское изделие 30-х гг. ТШ-3. Он несет 10 пулеметов, каждый из которых выпускает по 10 пуль в секунду. Хотя бронирование самолетов проще танкового и нам не нужны такие подробные расчеты пробитий/непробитий, тем не менее это представляет значительную вычислительную проблему. Никто не застрахован от боя, в котором 30 ТШ-3 начнут стрелять одновременно. Первое время мы это решали кластеризацией пуль, а сейчас проведенная оптимизация серверной части позволила обсчитывать уже каждую пулю. Понятное дело, что имеют место упрощения и допущения, но с точки зрения игровой механики результат нас устраивает.

— А кроме специфики рендеров, какие еще были сложности в разработке «Самолетов»?  

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

— Это все в рамках борьбы с читерами?

— В первую очередь, да. Обеспечение гарантий равных правил игры для всех игроков. К чему это привело, если сравнить с «Танками»? Игрок жмет на кнопку «ехать вперед», и танк неторопливо разгоняется. У самолета другие скорости, от них требуется другая реакция, высокая отзывчивость, запаздывание в 200 миллисекунд очень ощутимо. «Самолеты» — более динамичный шутер, чем танки. Представим, клиент собрал «ввод» от пользователя, преобразовал, забросил на сервер, сервер все это обсчитал, перебросил обратно клиенту, который интерполировал и визуализировал это все. Если бы физику полета и повреждения считали на клиенте, мы бы с самого начала добились, чтобы у нас все было очень отзывчивым. Но игроки могут находиться на значительном удалении, пинг в 300 миллисекунд является неприятным для «Танков» и на 70% фатальным для «Самолетов». Причем серверные лаги — это всего лишь один аспект. Другой аспект — казуальность и удобство управления. На решение этой проблемы мы затратили массу ресурсов и времени, сделали около полутора десятков прототипов управления. Хорошо, если треть из них дошла до игроков-тестеров. В какое-то время наша флайт-модель разрослась, стала ресурсоемкой и сложной для балансировки. Наше управление нравилось одним игрокам, но его категорически не принимала другая часть игроков. А при смене вариантов управления эти аудитории просто менялись местами. У нас возникло ощущение, что мы зашли в тупик. 

Но тут выявилась очень молодая и очень инициативная группа внутри разработки: геймдизайнер и серверный программист, Антон Мускеев и Миша Павленко. Они начали самостоятельно прототипировать в свободное время и на одном из больших совещаний показали минским кураторам свои прототипы. Мы были в восторге, и их варианты пошли в параллельную разработку с уже существующими вариантами. Через какое-то время посмотрели, что получается, их разработка стала уже мейнстримом и была представлена в эпической версии 0.4.0. И теперь мы понимаем, что находимся на совершенно верном пути. Оставалось только реализовать все запланированное.

В чем суть решения этого творческого дуэта? Ребята полностью переписали флайт-модель на сервере в угоду отзывчивости и реалистичности поведения самолета. Они не побоялись пойти на архитектурные изменения, что в итоге позволило нам сделать по-настоящему независимую и качественную обработку данных с разных устройств ввода. Следует отметить, что окончательно отшлифовать это решение нам помогли ребята из студии «777», авторы чудеснейшего хардкорного симулятора Rise of Flight про самолеты Первой мировой войны. Сейчас они, кстати, вместе с «1С» делают новый «Ил-2 Штурмовик». Мы привлекли их в качестве консультантов, их экспертиза и свежий, незамыленный взгляд со стороны и помогли довести изначально прекрасную идею до стадии отличной реализации.

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

— Отличаются ли украинские разработчики от наших? Вроде бы близко, а темперамент у нас разный.

— Отличаются. И по темпераменту, и по корпоративной культуре. В целом в Минске процессы коммуникации более жесткие. В Украине — более расслабленные и доброжелательные.

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

Работать с украинским офисом комфортно. Команда имеет мощный аутсорсинговый опыт разработки для западных игровых компаний. Ребята весьма компетентные и квалифицированные. Правда, опыт в аутсорсинге — палка о двух концах. Все-таки нужно перестраивать мышление, когда работаешь над своим собственным продуктом. А «Самолеты» для киевской студии — их первый собственный проект. И история с разработкой нового управления показывает, что мышление меняется успешно.

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

Помогаете devby = помогаете ИТ-комьюнити.

Засапортить сейчас.

Читайте также
9 крутых курсов по геймдеву: подборка для начинающих карьеру (июнь 2023 г.)
9 крутых курсов по геймдеву: подборка для начинающих карьеру (июнь 2023 г.)
9 крутых курсов по геймдеву: подборка для начинающих карьеру (июнь 2023 г.)
Собрали для вас курсы, которые помогут освоить с нуля геймдев и геймдизайн, а также систематизировать свои знания и прокачать навыки начинающим гейм дизайнерам и разработчикам игр.
Мечтаете создать собственную игру? Собрали классные курсы по геймдеву всего за 9,99$!
Мечтаете создать собственную игру? Собрали классные курсы по геймдеву всего за 9,99$!
Мечтаете создать собственную игру? Собрали классные курсы по геймдеву всего за 9,99$!
Belka Games уволила сотрудников в Беларуси, России и Литве
Belka Games уволила сотрудников в Беларуси, России и Литве
Belka Games уволила сотрудников в Беларуси, России и Литве
22 комментария
Российская «Леста» стала 100%-м собственником «Гейм Стрим»
Российская «Леста» стала 100%-м собственником «Гейм Стрим»
Российская «Леста» стала 100%-м собственником «Гейм Стрим»

Хотите сообщить важную новость? Пишите в Telegram-бот

Главные события и полезные ссылки в нашем Telegram-канале

Обсуждение
Комментируйте без ограничений

Релоцировались? Теперь вы можете комментировать без верификации аккаунта.

Комментариев пока нет.