はじめに・ご挨拶
会社から期待もされない投資もされない誰にでも出来る仕事だと思われてる保守作業を日々こなしているだけのIT系一般社畜です。趣味で仕事に全く関係のないプログラミングをしています。
このプロジェクトで実現したいこと
かつて栄えたFlashゲームをこれまで通り手軽にブラウザから遊べるようにしたい!
そんな願いを叶えるツールを作って世に広めたいと考えています。
(Windows限定です。)
ついでにおすすめのFlash作品をまとめたwebページも作ろうと思っています。
プロジェクトをやろうと思った理由
去る2021/8/30日頃、もう誰も参加者がいない某Flashイベントに向けてクソフラを作っていたところ、ふととある疑問が脳裏に浮かびました。
「この作品、自分はブラウザのFlashが動くようにレジストリとかファイル回り弄っているから問題なく閲覧できるが、果たして他の人はRuffleやswf2js越しでも見れるんだろうか?」
慌てて製造を中断し、Ruffleやswf2jsを導入し動作を確認してみましたが、案の定というか自作関数があるとまず動いてくれないというのが判明しました。
プログラミング有識者による開発が始まってから数年経っているツールですら、自分のごく簡単なクソフラも再生してくれないのかと絶望した時に天啓がありました。
「厳密にブラウザ上で再生という手法じゃなくても、拡張機能であれやこれやすればそれっぽいものが作れるのでは?」
この時の天啓と、いつ完成するかわからないRuffleやHTML5変換ツールなんて待っていられない!という反骨精神からそれまで作っていたクソフラの製造を中断し、ツールを作り始めました。
正直なところブラウザの拡張機能は使ったことが無く、javascript自体まともに触ったことが無いためゼロからのスタートでした。
これまでの活動
2021年
9月:上述のクソフラの製造を投げ出し拡張機能についてググり始める。
2022年
1月:ようやく拡張機能の設定画面のpopup.htmlを理解する。
2月:コールバック関数とリスナーについてググる。
3月:とりあえず見よう見まねでjavascriptであれやこれやしてようやく拡張機能(プロト版)が出来た。
当初予定していた機能を、このままじゃ完成しない!ということで年明けに2回ほど仕様を変更してプロト版へと切り替えましたが3か月も経ってました。早いですね。
4月:絶賛テスト中です。なぜか初期設定ファイルの読み書きで挙動がおかしいので解決しなかったら作り直しかな…みたいな部分が発生していますが大枠には影響ないと思います。
動作確認はEdgeを使用し、swfがアップロードできるサイトや一方的な知り合いのサイト等で行っています。
資金の使い道
5ドル分はchromeウェブストアへの登録料に使います。(※審査通過しない可能性がありますがその時は単体ファイルとして配布します)
残りは配布用のwebサイト構築費と今後の作業費・開発費に使います。
(一部はCAMPFIRE手数料として徴収されます)
リターンについて
ツールご使用希望の方は事前に動作確認をしたいので備考欄にPC環境の記載をお願いします。
例:win10pro 32bit バージョン1903 等
※WindowsOSのみ対応しています。MacOS、Linux 、ChromeOS、スマートフォン、タブレット等は動作対象外です。
【お名前記載】
ツール配布サイト内にてお名前を掲載いたします。備考欄に掲載希望のお名前をご記入ください。(30文字以内、公序良俗に反しないもの)
掲載形式はプレーンテキストとなります。
掲載はお申込み順になります。
複数ご支援いただいた場合は複数回載せることも可能です。その際は掲載したいお名前をそれぞれ備考欄 にご記入ください。
掲載される期間はサイトが存続する限り無期限とします。
【再生したいFlash作品が再生できるように優先的に対応】
再生したいFlash作品が再生できるように優先的に対応いたします。備考欄にurlをご記入ください。(webarchiveのurlでも構いません)
urlは好きなだけ書いていただいて構いませんがとりあえず、支援の金額でそれぞれ目安を設けさせていただきます。備考欄に記載の上から1個・3個・10個・20個を優先的に対応し、余力があったら残りの分も対応するということでご理解いただければ幸いです。
下に記載している※注意事項についてのご了承をお願いいたします。対応できないことが判明した時点で個別にご連絡させていただきます。
【支援者様 おすすめのFlash作品をまとめたページをそれぞれ作成】
配布予定サイトに支援者様ごとの個別ページを作成し、お名前とおすすめとして挙げていただいたFlash作品へのリンクを掲載いたします。載せたい作品のurl(あれば自己紹介の文言や支援者様のwebサイト、おすすめ作品の紹介文など)備考欄にご記載ください。
【拡張機能の命名権】
文字通りです。chromeウェブストアに載るかもしれない名前を決めることができます。40文字まで(審査に通らない可能性があります)、備考にご記入ください。
参考までに現在の仮ネームは「_ネコチャン_」です。支援が無い場合は適当にそれっぽいのをこちらで決めます。
支援の前に金額の桁を今一度ご確認ください。
【ツールの命名権 】
文字通りです。 Flashを起動する側のツールの名前を決めることができます。あまり長いと表示しきれないと思いますが30文字まで、備考にご記入ください。
参考までに現在の仮ネームは「doFP」です。支援が無い場合はこれが正式名になると思います。
支援の前に金額の桁を今一度ご確認ください。
※注意事項
仕様上どうしても再生できないものがありますので、現状判明しているものを以下に記載します。対応が今のところ不可ですのでご了承ください。
(他にもあるかもしれません)
・Flashの表示にswfobjectを使用しているもの
・Flash内でjavascriptを呼び出しているもの
・Flash読み込み時に転載防止確認を行っているもの
・Flash内で外部テキストなどを読み込んでおり、そのリンクが切れているもの
・サーバーと通信しており、該当サーバーが起動していないもの
上3つに関しては将来的には対応できるかもしれませんが確約ができないので今回は対応不可としています。
実施スケジュール
~2022年7月 動作テスト
2022年8月 リリース
~2022年9月末日 リターン対応
※1個人で開発・公開作業を行うため、やむを得ない事情や状況により、スケジュールが前後する可能性がございます。あらかじめご了承ください。
最後に
動作環境はWindowsOSのみ、対応ブラウザはMicrosoft Edge・Google Chromeとなっています。
【要注意ポイント】
作っている途中で全くコンセプトが同じであるPULL UP FLASH(https://pullupflash.com/)の存在に気が付きました。
(MacOS・Linuxにも対応しているそうなのでWindowsOSじゃない方はそちらを使われるといいと思います)
が、今更引き返せたいとこまで作っちゃったしなという気持ちで製造やテストを続けています。
なので目標達成した暁には、仕様上再生できないとした転載防止確認を行っているFlashの再生もできるよう改良版リリースにも取り組みたいと思っています。改良版が完成するのとRuffleが完全体になるのとじゃどちらが先に完成するかはわかりませんし、開発に当たっての資金も全く無いですが。
(完璧とは言いませんが一応の目途はついています。製造中ですが、某脱出ゲームの「Remake - ぼくはだれ?」はなぜか再生ができました)
目標達成できなくても、これを見た人にPULL UP FLASHというFlashを再生できるツールを紹介出来そうなので、このプロジェクトを広めていただければ多少は人生報われたかなという気持ちになります。
ぜひともこのプロジェクトやFlashを再生できるツールや拡張機能があることを世間に広めていただけたらと思います。
あとこれは余談ですが、Ruffleはブラウザの拡張機能で簡単に導入できます。
<募集方式について>
本プロジェクトはAll-in方式で実施します。目標金額に満たない場合も、計画を実行し、リターンをお届けします。
最新の活動報告
もっと見るRuffle無効化版リリースしました
2023/10/24 10:002023/10/24の活動報告です。拡張機能version1.3をリリースしました。変更点は以下の通りです。[拡張機能]・webarchiveがRuffleを強制的に適用するようになっていたので、Ruffle自体を無効化(ページ読み込みが遅くなるので)・webarchive内の一部JavaScriptファイルを読み込まないように修正(ページ読み込みが遅いので)・swfファイルが別ドメインにある場合の表記を追加(corsエラーと表記)・htmlから取得したswfファイルがFlashではない場合の表記を追加(リンク先がFlashじゃないと表記)・webページにswfという文字がない場合は動作しないように修正[ツール]・簡易webサーバを使うときにswfファイルが存在するかのチェック追加・機能改善対応サイトについて以下のサイトに対応しました。・おもしろフラッシュ総合サイト (https://29g.net/)RuffleについてRuffle少しは動くようになったのかと思ったんですけど、だめですね…。それ以前に画面動作が遅くなりすぎて論外ですね…。プロジェクト進捗状況のActionScript 1 & 2の95%って何なんでしょう。拡張機能の設定でRuffle有効無効オプション付けようとしたんですが、htmlをみんな思い思いの書き方してるせいでうまく適用できそうになかったため、強制的に停止しています。拡張機能のエラー表記についてswfファイルが別ドメインにある場合、ファイルが本当にFlashファイルなのか判別ができないためクリックしても再生されない可能性が高いです。swfファイルがFlashではないと出る場合は、リンク先が無くエラーページにリダイレクトしているか、Flashを指定するはずの場所にhtmlファイルを指定しているなどの可能性があります。あと、今テストしたら古の自サイトの表記がこれになってました。バグがあるようです。ツールの変更点についてFlashPlayer起動後数秒間は別のFlashPlayerが立ち上がらないようにしました。間違って連打してしまった場合の対策です。あと、無いとは思うんですが、簡易webサーバ機能を使うと以下のようなJavaScriptでFlashPlayerを大量に立ち上げるいたずらができてしまうので、その対策です。for (let i = 0; i < 5; i++) {fetch("http://localhost:ポート番号/Flashのurl");}ついでに簡易webサーバを止めるボタンも追加しました。swfファイルをダウンロードする場合も、簡易webサーバ機能使えばすんなり出来るんですが、いたずら防止ということで処理は既存のままにしてあります。ただ動作確認に十分な時間が取れていないので、念のため前のバージョンも残しておきます。あと関係ないですがRuffle停止方法を調べている時に思いついて、テスト的に作った拡張機能です。https://chrome.google.com/webstore/detail/jgmgebnhmbogkccaahfoenimempfbfgoAmazonアフィリエイトリンクのユーザーを識別するタグの部分を強制的に消したり、Googleの広告とかアクセス解析を読み込まないようにするやつです。オンオフ切り替えボタンは無いです。有効にすると発動し続けます。キャッシュが残っているとうまく動かない部分があるかもしれません。ChromeのAPIだけを使用して一切コード書いてないので修正しようがないやつですね。とりあえず親のパソコンにこっそり仕込んできました。Googleの広告や解析を強制的に消してるのに審査通るものなんですね、驚きです。みなさんもぜひノーコードで拡張機能を作ってみましょう。以上よろしくお願いいたします。 もっと見る
ツール微修正&技術情報
2023/03/05 23:05春も近づいてきましたが、いかがお過ごしでしょうか。さて、2023/03/05の活動報告です。拡張機能とツールの作り的に微妙なところを修正しました。あとswfをexeに変換するツールを作りました。http://azriuum.starfree.jp/software/swf2exe/swf2exe.htmlたまにエラーで落ちるんですが、そこを見なかったことにしていただければちゃんと使えます。そのうちブラウザ版も作るかもしれません。昔使っていたPCを発掘したら、Flash載せてる系のジオシティーズのサイトを収集したやつが出てきたので、サイト掲載を思案中です。以上です。あとは技術面についての調査報告です。swfをexeに変換するツールを作る過程でC++について調べていたらブラウザ上でC/C++を動かせるようにするEmscriptenというものを知って、FlashPlayerのソースをEmscriptenでコンパイルすれば、普通にブラウザでFlash再生可能なんじゃないかって思いついて調べてみたら先駆者を発見しました。https://vidkidz.github.io/ドラッグ&ドロップで任意のswfファイルを再生できます。(再生されない場合はもう1度ドラッグ&ドロップしてみてください)Ruffleでは動かせないAS3.0も動かせるということにはなっているみたいです。おそらく同じ作者が運営しているサイトが以下のようです。(韓国語サイト)https://vidkidz.tistory.comこの作者が何をEmscriptenでコンパイルしたのかは不明なんですが、なんとなくこのあたりが関係してそうかなと推測しています。https://github.com/adobe/avmpluswasm内にavmplusという文字があったので。githubを探すとFlashPlayerがあるにはあるので、それらを参考にすればブラウザ上でこれまで通りに動かせるFlashPlayerを作ることも可能なんじゃないかという素人考え中です。環境構築しきれなかった動かせなかったのですが、このあたりのソースなどわかる人はいかがでしょうか。https://github.com/mhfan/fastswf(ubuntuで動くらしいswfプレイヤー)https://github.com/PSP-Archive/SWFPlayer(PSP用のswfプレイヤー)(fastswfを動かそうとしてubuntuデビューして4回環境壊しました)自分でもどうにか改造したいとは思うのですが、なんせCもC++もまともにやったことがないのでハードルが高いなというのが現状です。でも誰か有識者がこれを見て試してくれないかなとの願いを込めてこの調査報告を書きました。何か進展があったらまた報告いたします。以上よろしくお願いいたします。 もっと見る
2022/11/11 機能改善版リリースしました!
2022/11/11 11:00こちらの活動報告は支援者限定の公開です。
コメント
もっと見る