マロングラッセ Mk.II

赤西真論のブログらしきもの

エロゲの管理方法

突然ですが、みなさんはエロゲを何本ぐらいお持ちでしょうか?
数本?数十本?数百本?
それらはすべてパッケージでしょうか?DLのみ?どっちも?

僕は数百本あり、パッケージとDLの両方で購入しています。
こうなると何が起きるかと言いますと、「この作品持ってたっけ?」「この作品はあのセットに含まれてたかな?」となるのです。
積みゲーが多すぎるのにどんどん買うからこうなっています)

では、この買ったエロゲをどのように管理するかを考えるようになります。
よくあるのはエロゲー批評空間ですね。あのサイトにアカウントを作成するとプレイした作品や積んでいるゲームを管理できるようになります。
ただ、あのサイトに登録するのが面倒なんですよね。何かしら一括でインポートする仕組みが欲しい。あと、点数を付けたいわけでもないのでちょっと違うなと。
(アカウントを忘れてしまったというのは内緒...)

ということで、自前で管理する仕組みを作成しましたので、ご紹介。
ちなみに昔はExcelのシートに記載していたのですが、更新するのが面倒になって放置されてしまったので、新しく仕組みを作成しました。

Fuka

DL作品は基本的にすべてFANZA GAMESで購入しています。
DLsiteはアカウントを作りましたが、PlayDRM認証でDL版がダウンロードできるものを登録するためにしか使っていません。あと、新規登録したクーポン使ってまいてつのコンプリートセットを激安で購入したぐらいです。

さて、DL作品はFANZA GAMESでまとめているので管理が比較的楽です。
ただ、あのサイトには不満点があり、検索画面などの一覧で購入済みか表示してくれないんですよね。
昔は詳細画面ですら表示されていなかったのですが、少し前に購入済み表示がされるようになりました。以前は購入ボタンを押してもバスケットに追加されないという謎挙動をしていましたから改善されています。
あと、まとめ買い画面も購入済みが表示されますね。

そこで一覧画面でも管理できるようにChrome拡張機能を作成しました。それがFukaになります。

github.com

この拡張機能は購入済み一覧をブラウザ内部に保持させることによって、一覧画面を表示した際に購入済みかどうかを表示できるようにします。
購入済み一覧をブラウザ内部に保持していることが後のパッケージ作品の管理に大きく関わってきます。

また、この拡張機能FANZA GAMESのデザインを損なわないように作成されています。そのため、元々ある機能かのように見えるという謎のこだわりがあります。

スクショはこんな感じ。ちなみにストア配布をしていないので、自力で導入してください。公開してほしいという要望があれば、アカウントは持っているので公開します。

まず、導入すると購入済み商品一覧画面に同期用のボタンが追加されます。このボタンをクリックするとブラウザ内部に購入済みの作品が保持されていきます。
ページング処理は面倒だったので、全ページで実行する必要がありますが、購入したときに押していけばいいだけなのでそこまで面倒ではありません。

ブラウザ内部の一覧に追加されると作品の左上にチェックマークが表示されます。これもFANZA GAMES側のアイコンを利用しています。

これだけやっておけば、一覧画面を表示した際に購入済み表示が行われるようになります。
ただ、ページロード完了後に表示が切り替わるので件数が多いと切り替わるのに時間がかかります。

Fukaの主な機能はこれだけですが、強力な機能が設定画面にあります。拡張機能のオプション画面を開くかFukaのアイコンをクリックすると設定画面が開きます。
CSSをほぼ書いてないので、シンプルな画面です。

登録済み一覧は今ブラウザ内部で保持している内容が表示されています。全件削除や1件削除機能がありますが、ほとんど使わないと思います。元々デバッグ用に用意していたものです。

強力な機能というのは単一追加とCSV追加です。この機能を利用することでFANZA GAMESで購入していない作品でも登録できるようになっています。
これによってパッケージで購入済みの作品を再度FANZA GAMESで購入することを防ぐことが出来るようになっています。

では、パッケージ作品はどうやって管理するかという問題が発生します。

AppSheet

元々Excelのシートで管理していたということを最初に書きました。
実はこの仕組みを作る前はGoogle スプレッドシートで管理すればいいのでは?と考え、シートを用意するところまで行いました。
で、色々メニューを見ていると「AppSheet」という機能があることに気が付きました。

AppSheetとは、Googleが提供しているローコード開発ツールになります。これを使うと簡単に管理ツールを作成することができます。
ということで、このツールを使って作成したものがこちら。

こんな感じでFANZA GAMESのパッケージ画像を表示して一覧に出来るツールを作成しました。
また、攻略サイトのURLも同時に登録出来るようにしているので、各項目の右下にあるアイコンをクリックするだけで攻略サイトを開けるようにしています。
他にもFukaにCSV追加機能がありましたが、その機能で利用するCSVも吐き出せるようになっています。なので、複数作品含まれた作品を買った場合でもAppSheet側に登録してしまえば、Fukaへの登録も簡単です。

AppSheetはアプリも用意されているので、スマホタブレットからも確認することができます。
結構こういうツールを1から開発するのは時間がかかるのですが、AppSheetを使うことで1日でこの形にすることが出来ました。
ローコード開発はあまり好きじゃない(細かい調整が効かない)のですが、こういった管理ツールを作るにはかなり向いていますね。


この仕組みを導入したことによって、かなり管理が楽になりました。「あの作品持ってたっけ?」や「あのブランドの作品ってどのぐらい持ってたっけ?」もすぐに検索出来ます。
改善すべきところとしてはFukaが保持しているデータが各端末依存になっていることでしょうか。ブラウザ内部に持つだけで同期する機能を載せていないので各端末でいちいちインポートする必要があります。
Chrome自体が持っているGoogleアカウントを利用した機能を使うことも検討したのですが、容量が少なすぎるんですよね。圧縮したりすればいけるかもしれません。自前のサーバーと同期させる方法を検討してもいいかもしれません。

今回は管理方法のご紹介でしたが、近いうちにエロゲのプレイスタイルもご紹介したいと思います。といってもリモートデスクトップ使ってるだけですが...