本記事はFIXERが提供する「cloud.config Tech Blog」に掲載された「毎日欠かさずシャイニーカラーズがしたい話」を再編集したものです。
※こちらの記事は「FIXER Rookies Advent Calendar 2022」9日目の記事となります。
こんにちは! 三瀬と申します。
さっそく本題なのですが、私は「アイドルマスター シャイニーカラーズ」の応援に力を注いでおります。
楽曲のコンセプトや衣装のビジュアル、カードイラストの構図、作り込まれたシナリオなど魅力的な点を挙げればキリがありません。
最近だとゲーム内展開に留まらず、SNSやリアルイベント、他アイマス作品や他企業とのコラボ等様々な方面に大きく展開されるようになりました。
特に印象的な展開としては、公式Twitterでアイドルが1日限定でなりきりツイートをする企画が時たま開催されることで、ファンのツイートに対して実際にライターさんが文面を考えてリプライを送ることで本物のアイドルと実際に交流することができたり、ゲーム内のシナリオだけでは中々解釈できない「あのアイドルがSNSをやったらどんな感じになるのか」ということを実感できたりして楽しいです。
あと個人としては来年2月に開催されるアイマス合同ライブのチケットを握れたのでかなり楽しみ。
そんな悠々自適なシャニマスライフの中で自分が危惧していることがありまして、それはゲームのログイン忘れです。
最初は「まあ、まさか自分が忘れるわけ...」と思っていたのですが、自分のものぐさレベルをかなり甘く見ていました。
仕事を終えて帰宅した後にPCを開き、何かしらのアニメ鑑賞や開発に熱中し、そのまま夜中を迎えて布団にこもり、朝起きて「あっ...」となることがたまにあったりなかったりします。
ログインボーナスは最悪どうでもいいのですが、せっかくなら毎日欠かさず283プロダクションに出勤し、アイドル達と触れ合い、徳を高めていきたいですよね。
ということでシャイニーカラーズはブラウザゲームなので、毎日夜中にGoogle Chromeの履歴を取得し、シャイニーカラーズにログインしていない時に鬼リマインド通知をかけるプログラムを考えてみました。
実行環境はWindows 11で、上述の通りChromeでシャイニーカラーズを開いていることを前提としています。
前提知識のようなもの
Google Chromeの履歴はローカルの以下の場所に「History」という名前のDB形式のファイルで保存されています。
このHistoryを取得し、「urls」というテーブルにSQL文で検索をかけることでURLや最終訪問日時などの閲覧履歴を抽出することができるので、"select title,url,last_visit_time from urls" で検索をかけると、以下のように履歴一覧を取得できます。
シャイニーカラーズにログインしていたらこんな感じにログに残っているということですね。
つまり、取得した履歴から「今日の0時0分0秒以降」の履歴のみを取り出すことで、その日にシャイニーカラーズにログインしているかどうかを判別することができます。
ということで上記を活用し、いい感じにリマインドまで行えるプログラムを作っていきましょう。
SQLテーブルからクエリでデータを抽出してそのままデータフレームとして使うことのできるpandasを使っていきたいので、Pythonで書いていきます。
制作編
まずは必要なモジュール達をインストールしていきます。
あとは標準ライブラリのはず。抜けがあったらごめんなさい。
モジュールが入れられたらあとはコードを書くだけです。
全文ドーン
補足的なものはコメントに残しているのでいい感じにご参照ください。
簡単に説明すると、1分に1回Chromeのログを取得し、シャイニーカラーズのURLが存在すれば終了、存在しない限り(最大30分)しつこくトースト通知を送りまくるようになっています。
このプログラムをそのままor実行ファイル化するなどして、タスクスケジューラに放り込んで1日1回決まった時間に実行するように設定してあげましょう。
シャイニーカラーズではログインボーナスの切り替わりは4時なのですが無料ガチャがある日の切り替わりは0時なので、それ以前の時間が好ましいかもしれません。
プログラムを実行してシャイニーカラーズに未ログインだった場合、こんな感じに通知が来るようになります。
「Go to 283 production」をクリックすると実際にゲームのURLを開くこともできるようになっています。嬉しいね
今回はブラウザゲームに限定したのですが、アプリゲームでも起動ログさえ取得できれば同じようなことができると思います。
あと、もしこの先Googleアカウントに紐づいた履歴をサクっと取れるようなAPI機能が提供されたらAzure Functions等でクラウド化できたり様々な鬼リマインド方法を試せそうな気がしますね。(2022年12月現在は調べた感じ無さそうでした。あったらごめんなさい...)
まとめ
本当に気が向いたらでいいのですが、皆さんも触れてみてください。シャイニーカラーズ。
最近ですと楽曲がサブスク解禁され始め、少しずつコンテンツに触れやすくなってきているかと思われます。
現在サブスク配信されている曲の中だと個人的には、ノクチルの「アスファルトを鳴らして」、ノクチル+放クラの「相合学舎」、市川雛菜ちゃんのソロ曲「あおぞらサイダー」がおすすめです。
参考文献
・Google Chromeの閲覧履歴をエクスポートする(Windows, Mac対応)
・GitHub30/win11toast
三瀬 リキト/FIXER
魔法少女とアイドルが好きです。
[転載元]
毎日欠かさずシャイニーカラーズがしたい話
この連載の記事
-
TECH
はじめてのOSSコントリビュートで“推しからのリプ”をもらった話 -
TECH
Prometheusで辞書形式のメトリクスを持つExporterを作りたい! -
TECH
GTM経由でカスタムディメンションを取得するTypeScript -
TECH
Grafana Tempo×OpenTelemetryの導入方法 -
TECH
Grafana TempoとLokiの連携で進化するログ解析とトレーシング -
TECH
「Microsoft 365開発者プログラム」のアクティベーション方法 -
TECH
サインインなしでも使える! 開発者向けAI検索エンジン「Phind」をご紹介 -
TECH
え、高級言語しか触ったことないのにCPUを自作するんですか!? -
TECH
Github Copilotで、コミットメッセージもAIに考えてもらう方法 -
TECH
Github Copilot Chatをさらに便利にする3つの機能 -
TECH
Terraform 1.5から追加されたimportブロックがすごい!! - この連載の一覧へ