Здравствуйте, меня зовут Дмитрий Лейкин и я вангер.
ВанГеры - российская игра 1998 года студии KD-Lab. Она имеет статус "культовой". Это необычная игра, которую до сих пор не могут классифицировать под определенный жанр. В последние годы она регулярно генерирует инфоповоды, в том числе на полях Хабра. Я хочу рассказать, как так вышло.
Эта статья в первую очередь про силу Open Source и о том как продлить жизнь старым компьютерным играм благодаря сообществу. Это не единственный и не первый случай - самым ярким, можно сказать установившими традицию, стали игры от id Software - Wolfenstein 3d, Doom, Quake. Как рассказывал Джон Кармак, он, увидев что поклонники игр пытаются делать для них моды, он в каждом новом своем движке все больше и больше кода выносил во внешние ресурсы, а затем решил не мелочиться и выпустил исходные коды игр под лицензией GPL - чтобы поклонники могли делать из любимых игр все, что захотят. Итог - Doom-сообщество живо до сих пор и до сих пор развивает порты этой игры 1993 года.
Сразу предупрежу, что все нижеперечисленное - это взгляд с моей колокольни и другие участники сообщества могут видеть историю иначе.
Я занимаюсь интернет-сообществами с 15 лет. Обычно у меня получалось то, что называется "производящими сообществами" - участники моих сообществ что-то создают. Статьи, рассказы, программный код. Обычно это сообщества поклонников чего-нибудь. У меня есть лозунг: "Не только творчество должно порождать поклонников, но и поклонники должны порождать творчество".
Сообщество ВанГеров возникло практически одновременно с игрой. Его активность то росла, то падала. После выхода игры оно в основном занималось проведением сетевых игр и чемпионатов. Я в нулевых участвовал в сообществе в основном написанием фанфиков, и немного программированием. Но к десятым я уже практически не участвовал в сообществе.
Для улучшения проведения сетевых игр разработчики в какой-то момент передали доверенным людям из сообщества исходный код игры. Это сильно повлияло на дальнейшую историю. Поскольку в определенный момент один из доверенных людей, Юрий Журавлев, решил попробовать адаптировать исходный код игры под работу в операционной системе Linux. Это сильно заинтересовало разработчиков, и благодаря его усилиям в 2014 году игра была переиздана в интернет-магазинах Steam и Gog, и запускалась под Windows, Linux и MacOS X. И благодаря усилиям этого же человека, в 2016 году исходный код был опубликован под Open Source. Таким образом сообщество игры ВанГеры стало Open Source сообществом.
Несмотря на это, когда я вернулся в сообщество в 2017 году, оно было в замороженом состоянии. Оно состояло из закрытого чата в Телеграме из пары десятка человек, и редко обновляемой группы Вконтакте. Большая часть старых сайтов исчезло, сетевые игры не проводились. При этом уже начались эксперименты с переписыванием игры на Rust и рендерингом в 3d, но не так много людей об этом знало.
В какой-то момент я решил помочь сообществу. И я начал с повышения связности внутри сообщества, а также между сообществом и внешнем миром.
Для начала я уговорил владельцев чата сделать его публичным, чтобы в него можно было попасть по ссылке. Они даже не знали, публичен ли их чат.
Затем я попросил владельцев группы вконтакте поставить ссылку из Вконтакте на чат сообщества, а владельцев репозитория с кодом игры на GitHub, поставить в описании репозитория ссылку на чат.
Затем я начал ставить ссылки на группу и чат везде в интернете, где это уместно. В Википедии, в Луркоморье, в комментариях под обзорами ВанГеров на YouTube. Моя цель была в том, чтобы все люди, которые заинтересованы в ВанГерах, попали бы в чат.
Итог можно посмотреть на социотехнической карте: https://drive.google.com/file/d/1Ik7SOkUXDlL_mYUOKv4t1VK8M5Gsm7sw/view Основной цикл заключается в том, что люди, разными путями попадая в чат, и общаясь в нем, начинали создавать контент. Этот контент публиковался в группе ВК и на YouTube, и благодаря ему новые люди попадали в чат.
Это сработало. В чат начало приходить все больше людей. Кто-то из них рисовал фан-арт по игре, кто-то сочинял музыку, кто-то писал программный код и выполнял issue на GitHub. Многие люди обнаружили, что сообщество ВанГеров до сих пор существует.
В какой-то момент стала очень высокая активность разработчиков. Они переписывали игру на язык Rust, добавляли поддержку современных разрешений экрана и работу игры на скорости 60 fps, починили сетевую игру, которая не работала нормально после выпуска в Steam. Поскольку Юра Журавлев имел доступ к интернет-магазинам как разработчик, многие улучшения стали официальными обновлениями игры. Я сам вспомнил свои навыки работы в C++ и начал исправлять разные баги.
Другой участник сообщества, Дима Толкунов, вошел в сильную лидерскую позицию. Он начал делать еженедельные сетевые игры в ВанГеров с трансляцией в Twitch. Поскольку Толкунов - профессиональный актер и режиссер, его трансляции всегда было интересно смотреть, и это привлекало к игре все больше внимания, и в сообщество - все больше новых и старых участников.
В 2020 случилось еще одно важное событие. Популярные блогеры с Ютуба, Булджать и Бэбэй, с общий аудиторией более миллиона подписчиков, выпустили видеообзоры ВанГеров. Они стали очень популярны, обзор Булджатя на данный момент просмотрело более 3 миллионов человек. На сообщество начался огромный наплыв новых участников.
На волне общего интереса начало происходить множество других вещей, о которых двумя годами ранее никто бы не подумал. Например, у кого-то в архивах оказалась база данных старого форума ВанГеров, считавшегося утерянным. Я смог из этой базы данных восстановить форум на своем сервере.
У других участников обнаружился исходный код оригинального редактора карт для ВанГеров, Сюрмапа. Но этот старый код никто не мог восстановить до современного уровня. Участники сообщества считали, что никто и не сможет. Я же считал иначе и попросил себе копию этого кода.
Вскоре после этого игрой заинтересовалась итальянская студия GamePix, которая занималась портированием и изданием игр под веб-браузеры. Посмотрев исходный код ВанГеров, они поняли, что их можно портировать в браузер. Они заключили договор с разработчиками (студией KranX) и стали портировать. И сейчас в игру можно успешно играть через веб, как на обычных компьютерах, так и на смартфонах. Причем не только на сайте GamePix, но и на сайте Яндекс.Игр, где игру также опубликовали.
Что здесь самое интересное. Одним из разработчиков GamePix оказался человек из России, Саша Гурьянов. И он был активным участником сообщества ВанГеров. Услышав от меня, что существует исходный код редактора Сюрмап, он сказал, что может его восстановить. И он его восстановил. За неделю. Код, который как считали остальные участники сообщества, не восстановит никто. Саша сказал, что это его специализация - портировать что угодно откуда угодно куда угодно.
И здесь на мой взгляд важный момент. Посмотрите, как сообщество и разработчики игры дополняют друг друга. Например, участники сообщества восстановили сетевую игру. Саша Гурьянов также в этом поучаствовал, и в итоге понял, как интегрировать сетевой режим игры в браузерную версию ВанГеров, которую он делал, работая в GamePix. В итоге теперь можно спокойно играть по сети игрокам в браузерную версию, и игрокам из Стима. При этом Саша с одной стороны участвовал в деятельности сообщества, а с другой стороны, его деятельность была частью его работы в GamePix, поэтому фактически, участвуя в деятельности сообщества, он делал свою работу.
И то, что можно назвать важной вехой. Когда сообщество и разработка игры начали наиболее активно развиваться, участникам сообщества дали доступ к официальным новостям игры на Стиме. Фактически, с тех пор выход новых версий игры полностью производится сообществом. Это можно назвать community-driven разработкой и публикацией игры.
Также, увидев насколько Open Source вдохнуло новую жизнь в игру 1998 года, сообществу удалось договориться о публикации в Open Source другой крупной игры KD-Lab - "Периметр". Разработчики и издатели, как выяснилось, не против - просто они не могли себе позволить выделить достаточное число времени на то, чтобы разбираться в своем старом коде и готовить его к публикации. Поэтому, как и в случае с ВанГерами, группа доверенных участников сообщества получило код "Периметра", подготовила его к публикации и опубликовало его в Open Source.
А еще через некоторое время мне удалось договориться с разработчиками KD-lab (что было не самой простой задачей, потому что за 20 лет компания разделилась на две независимых) о публикации в Open Source всех известных игр этой компании. В результате была опубликована игра "Самогонки", а сейчас мы готовим к публикации движок игр Периметр 2 и Maelstrom - Vista Engine.
Сейчас по всем играм идет активная работа. Для ВанГеров идет работа над подключением движка рендеринга на GPU (на основе вышеупомянутой Rust-версии). Периметр был портирован под Linux, в него было добавлено HD-разрешение, а сейчас идет доработка сетевой части. Самогонки портируются под Linux и под Mac.
При этом знаете, о чем я сейчас мечтаю? О том, чтобы все игры KD-Lab, и Периметры, и Самогонки, были, как и ВанГеры, переизданы в Стиме на основе наших обновлений. Насколько я могу судить, над ними, кроме нас, никто не работает, Периметр в Стиме много лет не обновлялся (а Самогонки там никогда и не издавались), а мы постоянно добавляем туда что-то новое. Если на Хабре есть люди, которые могут принять такое решение, мы будем рады сотрудничеству.
И в качестве итога. На основании этой истории я написал манифест открытых игровых движков. Мне кажется, разработчики старых игр могут смело передавать их исходный код сообществу. От этого будет большая польза и выгода обеим сторонам.