Flashが終わる12月末までに我々一般人がしておくべきこと

[2021-01-23 追記]
2021年1月12日を過ぎても、後述のAdobeのサイトにてスタンドアロンFlash Playerは公開され続けています。
というわけで、昨年末までに急いでダウンロードする必要はなかったこととなり、煽るような記事を書いてしまったことをお詫びします。
なお、この記事はスタンドアロンFlash Playerの紹介として残しておくことといたします。
[追記終]

結論だけ知りたい人へ

前書き

長らくインターネットを支えてきたFlashが2020年12月31日を以て終了します。

詳細は公式の案内 Adobe Flash Playerサポート終了 を参照くださると良いのですが、

  • 2020年12月31日を以てサポート終了
  • 2020年12月31日以降、主要なブラウザでFlash Playerの実行が無効になる
  • 2021年1月12日以降、Flash PlayerではFlashが再生できなくなる

というところです。

特にこの後者が曲者で、最近のFlash Playerには(恐らくOSの時刻を見て)2021年1月12日以降は動かなくなるような、いわば時限爆弾的なコードが組み込まれているようです。つまり、Flash Playerをアンインストールしなくても、この日を過ぎると我々はFlashを再生することができなくなります

もちろん、Flashを終了させるのに相応の理由があることも理解はできます。
セキュリティの問題は無視できないでしょう。3年前に告知していて、他の技術に移行するための時間は十分あったというのも、提供側の言い分としてはもっともでしょう。

しかしながら、そのHTML5JavaScript、WebAssemblyに取って代わられるべきだったものは、あくまでサイトを彩るUI要素などとして使われてきたFlashではないでしょうか。我々が文化として親しんできた、動画やゲームといったコンテンツではないのではなかろうかと思うのです。
あくまで継続的にメンテナンスされるWebサイトの構成要素であれば、移行せよというのもわかります。しかし、基本的に「一回作ればできあがり、後はずっと楽しんでね」的なコンテンツに移行を求めるのは酷ではないでしょうか。
また、セキュリティに問題があるというのも、ネットサーフィンしてたら勝手に実行されてしまうといったシナリオを想定するからこそでしょう。
果たして、既に信頼している人が作ったFlashコンテンツを再生するのにFlashに存在するセキュリティホールが問題となるのでしょうか。ゲームがFlash以外で作られていれば、我々はexeというなんでもできる実行ファイルを実行するというのに、です。

Flashが終わってもFlashの思い出はなくならないと言うのは簡単ですが、やはり現物を見られるに越したことないでしょう。去る者は日々に疎し、です。

というわけでここでは、「移行」されることがきっとないような、しかし素晴らしいFlashの動画・ゲームコンテンツを、2021年1月12日以降も再生できるよう、我々が今しておくべきことの紹介をします。

スタンドアロンFlash Player

しておくべきことは一つ、Adobeが配布しているスタンドアロン版のFlash Playerをダウンロードしておくことです。

スタンドアロン版というのは、ブラウザに組み込まれたものではなく、それ単体で動くものという意味です。つまり、スタンドアロンFlash Playerは、動画プレイヤーのようにFlashを再生できるプログラムです。

スタンドアロン版であれば、ブラウザ側のサポート終了は関係ありません。
PCの時計をいじって2021年末にしてもこのスタンドアロンFlash Playerは実行できたので、おそらく実際に2021年1月12日以降になってもスタンドアロン版は動き続けるものと思われます*1

というわけで、このスタンドアロン版が公開されている12月の間にダウンロードしておくべきです。
なお、12月8日に最終版が出たということなので、これ以降のアップデートはないはずです。

一応この12月8日版(ver. 32.0.0.465)のSHA256ハッシュを貼っておきます。

PS ****> Get-FileHash -Algorithm SHA256 flashplayer_32_sa.exe

Algorithm       Hash                                                                   Path
---------       ----                                                                   ----
SHA256          A4B333AC1DA12026989549015303D82231982838BCCFB544BA5FD188746066F0       *******

ダウンロード方法

開発者向けページである Adobe Flash Player - Debug Downloads にアクセスします。

Windowsの項目にある Download the Flash Player projector をクリックしてダウンロードします。すると保存される flashplayer_32_sa.exe というのが件のスタンドアロンFlash Playerです。

f:id:suzusime:20201210233008p:plain

(※Mac版がほしい人はMac版のFlash Player projectorをダウンロードしてください)

使い方

Flashファイル(拡張子swf)をドラッグアンドドロップするだけです。

f:id:suzusime:20201210235337p:plain
「チルノのパーフェクトさんすう教室」が再生されている様子

ご存じない方もいらっしゃるかもしれませんが、よくWebページ上で動いているFlashの本体は、たいてい拡張子swfのファイル一つです。
つまり、これをダウンロードしてくれば、スタンドアロンFlash Playerで再生できます。

このswfファイルはチルノのパーフェクトさんすう教室のページのように「お持ち帰りはこちら」とダウンロードしやすい形にしてくれていることもありますし、そうでないこともあります。そうでない場合は、Webページのソースを表示して「swf」でページ内検索して探してみましょう。

f:id:suzusime:20201210235819p:plain
みんな大好きホームランダービースタンドアロンで動きます


ただし、swfの1ファイルで完結していない場合(外部のファイルを読み込んでいたりランキングを実装している場合)はうまく動かないはずです。
試したものでは、「ステラのまほう」公式サイト - すたーらいなー(パズルゲーム)は動きませんでした*2

その他の手段について

スタンドアロンFlash Player以外でFlashを再生し続ける方法を紹介しておきます。

ふらっしゅえぁえぐぜ

forest.watch.impress.co.jp

FlashAdobe AIRのexeに変換して、以降もAIRの環境さえあれば動くようにしてくれるツールのようです。
試してはいませんが、Adobe AIRを使うわけですから、Flashが崩れるといったことはないのではないかと思います。

Ruffle

ruffle.rs

Rustで書いたFlash処理系をWebAssemblyにコンパイルすることで、以降もブラウザでFlashを(セキュアに)動かし続けようというプロジェクトです。

ただ、今のところ開発途上で、特に ActionScript 3 についてはほとんど実装されていません。いくつかのFlashファイルで試してみましたが、まともに再生できたものはありませんでした。

結び

以上、スタンドアロンFlash Playerの紹介でした。お役に立てば幸いです。

  * * *

ところで、動画やゲームの作成ツールとしてのFlashにはきちんとした代替ができたんだろうか、などと割と長らく考えていました。

私がFlashを触っていたのは、中学・高校時代にパソコン部で部活紹介動画(エロゲOPのMAD)を作って新入生歓迎会で流したときくらいなのですが、私が10年遅く生まれていて今同じようなものを作ろうとしたらなにを選ぶんだろう、なんて思います。
AviUtilsになるでしょうか。

イライラ棒や脱出ゲームを作りたくなったら?
Unityでしょうか。でもUnityは用件に対して過大すぎる気もします。
P5.js?Phaser? それともHaxe? それは果たして普通の高校生に扱えるものなんでしょうか。GUIの開発環境は整っているのでしょうか。

基本は動画だけど何周もするとちょっと変わるギミックを作れるような新しい形式はどこかにあるのでしょうか。

ベクタ画像で動画を作るツールはどこにあるのでしょう。少し前にチルノのパーフェクトさんすう教室を先輩の家の4Kディスプレイで見たのですが、あまりの美しさに感動してしまいました。

「MP4などのラスタ画像の動画」と「Unityでつくるゲームのような重量級のコンテンツ」の狭間くらいのものを「プログラマでない人でも直感的に」つくれるツールがないのなら、その状態でFlashを終了させるのは無責任ではなかろうかと思っていました。

……が、最近Flashの代替たりうるものを知りました。Adobe Animateです。
なんと、Adobe Flashの直接の後継ソフト。あまりにも無知でした。

こいつはFlashみたいにコンテンツを作って、HTML5+JavaScript等の現代的な形式で吐き出してくれるソフトです。いいじゃん。

まあ「Animateで脱出ゲームを」みたいな話はぜんぜん聞きませんが、それはきっと無料のソフトでどうにかしようという人が多いからでしょう(私のアンテナの問題かも)。
でもこれはAdobeのせいではないです。Adobeは文化に対する責任(とは?)をきっちり果たしていたんだな、と思うなどしました。

*1:スタンドアロン版をわざわざ使う人のために時限爆弾(安全装置)を用意する義理はありませんしね。

*2:ブラウザの開発者ツールのネットワークタブで読み込んでいる外部リソースが見えるので、この外部リソース群もダウンロードしてきてswfと同じパスに突っ込めば動く気がしないでもないですが、それよりはくろば・U先生にexe化したものを公開してもらえないか聞いてみた方がいいだろうなって思っております。