
ゲームをマクロで自動操作することで、プレイデータを記録・分析し、ダッシュボードにまとめて活用することができます。通常、マクロを実行するだけでは行動履歴が残りませんが、特定のアクションが発生したタイミングでログファイルへの出力やAPI通知を行うことで、後からデータを確認できるようになります。
今回は、私が実践している方法として、マクロの状態を監視し、特定の行動データをAPIに送信して集計する仕組みを紹介します。この仕組みにより、どこからでもプレイデータを可視化でき、マクロが正常に動作しているか確認することが可能になります。
Contents
マクロとAPIの連携
特定の条件が発生した際に、マクロが curl
コマンドを用いて自作APIへ通知を送ることで、データを蓄積し、ダッシュボードで閲覧できるようにします。
APIの主な仕様
- 各条件が発生した際にAPIへ通知を送信
- APIは受信したデータをカウントし、発生回数を記録
- クエスト開始・終了時には時間を記録し、プレイ時間を計測
- 小規模な運用のため、データはJSONファイルに記録
ダッシュボードの仕様
表示項目
ダッシュボードには以下の情報を表示します。
- 👹 ボスエンカウント回数
- 👾 雑魚エンカウント回数
- 🏆 クエストクリア回数
- ⏳ クエストクリア平均時間
- ⏱ クエスト経過時間
- 🎁 宝箱出現回数
- ✅ 宝箱解除成功回数
- ❌ 宝箱解除失敗回数

動作仕様
- APIで記録したJSONファイルを元に、HTMLページに統計データを表示
- 成功/失敗の割合は積み上げ棒グラフで視覚化
実装の流れ
- マクロの作成
- ゲームの特定の動作を自動化
- 条件が発生した場合に
curl
コマンドを実行しAPIへ通知
- APIの開発
- 受信データを処理し、JSONファイルに記録
- クエストの開始・終了時間をログに保存
- 記録データをダッシュボードで参照可能にする
- ダッシュボードの作成
- HTML+CSS+JavaScript でデータを表示
- JSONファイルを読み込んで動的にデータを反映
- 成功/失敗の割合をグラフ化して視認性を向上
まとめ
この仕組みを導入することで、マクロによるゲームプレイの記録を可視化し、統計データを活用できるようになります。また、APIを通じてどこからでもプレイ履歴を確認できるため、マクロが適切に動作しているかを監視する手段としても有効です。
小規模なシステムであればJSONファイルを利用するだけでも十分ですが、より高度な分析を行いたい場合はデータベースを導入することも検討できます。
もっと細かい経験値、ゴールド、ドロップアイテムの集計等についてもマクロ内の判定を細かくすることで行うこともできるので試してみてください。