[Перевод] Огромное игровое наследие Adobe Flash и мои попытки его сохранить

8b459ac4f8924f474cece9588527e42c.png
Самая старая игра на сайте Newgrounds была загружена в 2000 году

Adobe Flash (ранее Macromedia Flash) — пожалуй, самая большая сокровищница в истории игр. За двадцать лет под неё вышли буквально десятки тысяч игр: библиотека обширнее, чем у любой игровой приставки. И через два года всё это может исчезнуть.
Впрочем, вернёмся к тем временам, когда сигнал тревоги ещё не прозвучал.


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

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

Добро пожаловать на великолепный флэш-портал.

1a0e2f2a010a46cec8f2721d2360537f.png
NotDoppler в мае 2018 года. Не тот сайт, на который я заходил в юности, но часто представлял себе такой

Флэш-порталы были главным врагом сисадминов на работе, в школах и где угодно, где от людей требовали работы за компьютером. Их были сотни, на каждом огромный выбор игр, абсолютно везде ТАНКИ, но на многих сайтах присутствовали и свои уникальные игры. На каждый заблокированный сисадмином сайт мгновенно появлялись два новых.

У Flash было много преимуществ в то время: он без проблем работал на всех видах ПК через браузер, большинство игр были маленькими, не генерировали много трафика — они просто работали большую часть времени. Все могли зайти на сайт, чтобы взорвать друг друга в многопользовательских ТАНКАХ или впасть в бесконечную депрессию в «Самой сложной в мире игре» (The World«s Hardest Game), или попробовать понять безумную логику троллей-авторов «Невозможной викторины» (The Impossible Quiz). И это лишь три примера. Как я уже сказал, на многих сайтах были тысячи таких игр, буквально тысячи — каждая запускалась одним щелчком мышки в браузере.

Как и все остальные, я вырос, а вместе с этим наступил общий закат эпохи Flash. Конечно, тысячи людей по-прежнему каждый день играют во флэш-игры (например, у последней игры ArmorGames для Flash зарегистрировано 13 000 загрузок в первую неделю после выхода), но массовый пользователь ушёл.

Впрочем, постараемся не забыть тех, кто начинал с платформы Flash. Среди самых известных — Эдмунд Макмиллен (автор игр The Binding of Isaac и Super Meat Boy), он начинал с флэша. Студия Cellar Door Games, известная тайтлом Rogue Legacy, начинала с игры Don«t Sh*t Your Pants на флэше. И флэш-технология на самом деле использовалась во многих высокобюджетных играх.

6d4bfc96d1ac9542de4d23af042f67e6.jpg
Благодарите Flash за эту ужасающую картинку

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

И вот на эти последние несколько слов я хочу обратить ваше внимание.

Короче говоря, поддержка Flash заканчивается в 2020 году.

Основная проблема Flash в том, что он известен как огромная дыра в безопасности. Большинство людей не особо любят Flash, и у них есть причины: Flash нагружает CPU, в середине 2000-х на нём повсеместно делали рекламные баннеры, которые замедляли ПК. Количество дыр Flash, которые требуется залатать, равносильно попытке герметизировать «Титаник» после раскола пополам.

И с изобретением мобильных устройств (и печально известным заявлением Стива Джобса, что платформа Flash не подходит для экосистемы Apple) многие разработчики отошли от Flash, а вместе с ними и бóльшая часть рынка казуальных игр, и спустя годы рынок сдулся. Современные каталоги мобильных игр напоминают флэш-порталы прежних лет.

9039575225887b57581eb032e70da866.png
Видите сходство?

С изобретением более универсальной технологии HTML5 дни Flash были сочтены. Начиная с 2020 года Flash больше не будет поддерживаться Adobe, никаких обновлений и патчей. В конце концов вскроется ещё больше уязвимостей в безопасности, что подтолкнёт разработчиков браузеров полностью удалить Flash. Так, Firefox пообещал отключить Flash по умолчанию для всех пользователей к следующему году, а Chrome пообещал полностью удалить плагин до конца 2020 года.

Посмотрите на скриншот чуть выше, а именно на правую часть — Newgrounds на момент написания данной статьи. Все эти двадцать игр работают на Adobe Flash. Если в вашем браузере больше нет плагина для запуска этих игр, то что с ними станет? Неужели 3500 страниц игр с сайта Newgrounds просто исчезнут?

edad3a5e76d3340f14b514dc3d46b6d6.png


Ещё рано ставить финальную точку, хотя…

Никто не знает, что будет. Эти компании — Armor Games, Kongregate, Newgrounds, NotDoppler и все остальные флэш-порталы — не объявляли о своих планах. Некоторые из них могут выжить (поскольку каждый из перечисленных сайтов содержит игры не на флэше, такие как Unity или HTML5), но при этом исчезнет 90% их игровых библиотек просто потому что никто не сможет их запускать.

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

Конечно, некоторые из них можно сохранить локально на жёсткий диск. В большинстве случаев (более 90% игр, по моему личному и совершенно ненадёжному обоснованному предположению) игры смогут по-прежнему запускаться в чём-то вроде автономного Adobe Flash Player одним нажатием кнопки. Но как насчёт игр, которые не запустятся?

e25176fb97f1150eeac792d3af129e28.png


Сейчас такой вариант сработает для большинства игр

Есть некоторые исключения, которые большинство людей не смогут обойти самостоятельно или, по крайней мере, без технических усилий. Главная проблема — залочка на сервер (sitelocking): большое количество игр разработаны с DRM, который просто не позволит вам играть вне соответствующих серверов.

02e6db3e78562a38fd4caba540370f63.png


В игре Cube Escape: The Cave вы никогда не пройдёте за этот экран без дополнительных усилий

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

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

0b5e98b07ee807274aa8de94029615a9.png
Сравните, слева: копия Gateway II без загрузки внешних файлов, справа: с одним внешним файлом

Подведём итог. Менее чем через два года с момента публикации этой статьи сотни тысяч игр, скорее всего, исчезнут из интернета навсегда. Их просто нельзя будет запустить. Сотни миллионов просмотров, лайки, 5-звёздочные обзоры, 1-звёздочные обзоры… всё исчезнет. Издателям этих игр, похоже, до лампочки. Насколько мне известно, и создатели этих игр не обсуждают проблему.

«Но кто-то наверняка захочет сохранить эти игры! Мы пока ни одной не потеряли навсегда! Ещё есть время!»

95d9c87cacac23f5fa4fbf42edcc8c48.jpg
Побалуйте себя взглядом на мёртвую игру

La Insula de Sancho — это приключенческая трилогия, выпущенная примерно в 2005 году. В своё время она была очень популярна среди испаноязычных: сотни статей, скриншотов и даже пошаговых руководств для всей серии доступны в интернете. Но у их домена истёк срок действия, а поскольку игра запрограммирована на получение внешних ресурсов с указанного сервера, то теперь не воспроизводится практически ни в какой форме. Даже после тщательного поиска я не смог найти полной копии, в которую можно играть.

В ближайшие полтора года это может произойти буквально с любой флэш-игрой.

Проблема понятна, но лично я мало что могу с этим поделать. Это первая из причин, почему я начал писать эту статью — чтобы привлечь как можно больше внимания к проблеме. Учитывая, что мои попытки решить её в настоящее время являются единственными, о которых я знаю… ну, вы понимаете.

Вопрос в следующем: что делается, чтобы сохранить это почти неповторимое наследие видеоигр? Что известно об этом из практически любого источника? Ничего. Статья здесь и там, но часики тикают, игры постепенно начинают становиться неиграбельными, и, похоже, никто этим не занимается.

Представляем Flashpoint от BlueMaxima.

4a37d88bd4154ece03073adb522dd555.png
Начиная с версии 1.3.1

Объединив интерфейс LaunchBox и возможности веб-сервера Apache, Flashpoint представляет собой проект по сохранению флэш-игр, музей и коллекцию one-click-to-play в одном окне. Нужно только дважды щёлкнуть по любой игре в списке — и она откроется с локальной копии на жёстком диске, готовая для игры.

Игры с привязкой к домену? Игры, требующие наличия сервера? Игры с внешними файлами? Обо всех вариантах позаботились либо с помощью взлома игры (здоровья и долгих лет жизни создателю декомпилятора JPEXS Free Flash Decompiler), либо с помощью веб-сервера Apache, который заставляет игры думать, что они там, где должны быть.

394da8ce393bcc87110c96d758fa5d12.png
Elephant Quest — одна из игр, которой веб-сервер нужен даже для запуска главного экрана

В конце концов, возникает только один вопрос: это законно? И единственный реальный ответ — никто этого не знает и никто не должен об этом думать. Игры находятся на грани исчезновения, и пока они ещё не умерли — их надо спасти как можно быстрее. И насколько мне известно, я действительно единственный, кто пытается это сделать.

На момент версии Flashpoint 1.3.1 сейчас 850 игр сохранены полностью и воспроизводятся в один или два клика. Около 20% из них пришлось или взломать, или запустить через веб-сервер, или загрузить внешние ресурсы, чтобы игра работала должным образом. Это даже близко не все флэш-игры в интернете: нужно гораздо больше усилий и немного удачи, чтобы приблизиться к этой цели.

Что насчёт остальных? Что насчёт тысяч и тысяч игр, до которых я ещё не добрался и не вылечил во Flashpoint? Десятки и десятки порталов, которые, возможно, ещё не скопированы должным образом через такие сайты, как Archive.org?

О боже, как я рад, что вы спросили об этом.

9fe243031bf5c6a04ff87b169b5f1c5b.png
Порталы, порталы, разбирайте порталы! Большие, маленькие, у нас есть на любой вкус!

Всё это началось с того, что мы с ещё одним помощником, чьё имя для безопасности не буду называть, попытались создать резервные копии как можно большего количества порталов. Результатом этих усилий стал проект под названием Flashfreeze. SWF-файлы более двух десятков порталов, скопированных и сохранённых в каталоге Google Drive.

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

Обновление 30.07.2018. Учитывая, что эта статья снова разошлась по интернету (а поскольку мне вчера исполнилось 25 лет, то это отличный подарок на день рождения, Интернет), я считаю, что лучше обновить её, а не писать новую. Вот список из нескольких пунктов:

  • С момента написания этой статьи мы значительно обновили Flashpoint. Сейчас там более 4000 игр, новая система редиректа, которая помогает обойти залочки на определённые сайты и запускать серверные игры. Очень много людей помогли тестировать и поддерживать её.
  • Теперь мы поддерживаем игры Shockwave, HTML5 и Unity. Эта серверная технология слишком хороша, чтобы ограничить её только флэшем. Flash-игры по-прежнему составляют 90% каталога, но у людей будет копия Cartoon Cartoon Summer Resort, чёрт побери!
  • Мы выпустили кучу дополнительных файлов для скачивания на базе серверной технологии, коллекцию всех SWF-анимаций Newgrounds с фронтендом для их запуска, кучу «быстрых и грязных» резервных копий порталов и готовим ещё больше классных дополнительных фич.
  • Мы стали популярны. Очень популярны. На нашем сервере Discord зарегистрировалось 1500 пользователей, а с нами связались многие флэш-разработчики, чтобы выразить свою благодарность. Когда разработчик VVVVVV выражает тебе благодарность за работу, ты понимаешь, что делаешь правильное дело.
  • Полным ходом идёт архивация. У нас куча людей, которые знают своё дело — теперь лишь вопрос времени, когда мы сделаем резервные копии всего, что осталось.
  • Практически не возникло серьёзных проблем. Я был наполовину уверен, что возникнут препятствия для нашего проекта, но похоже, что в данный момент всё чисто.


Вопрос только в том, где скачать программу и как присоединиться к проекту?

У меня работает сервер Discord: здесь принимаются запросы и взламываются игры с момента старта проекта несколько месяцев назад. Вы можете присоединиться и помочь. Здесь же распространяются новые версии Flashpoint по мере выхода.

Если хотите просто получить доступ к исходным файлам (чтобы убедиться в их работе для поддержки архива или просто поиграться 5 минут и забыть, как я делаю с бесконечным количеством вещей), вот некоторые ссылки:


Убедитесь, что прочитали файл справки для Flashpoint, прежде чем играться с ним.

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

© Habrahabr.ru