仕組みと Riot API の利用
01概要
ORIVEIL は、VALORANT プレイヤーが自分の試合後のデータで成長を振り返り、仲間とプレイするための Windows デスクトップアプリです。機能は、(1) 戦績・成長分析とパーティ履歴、(2) チーム構成アドバイザー、(3) フレンドリーグ、(4) OBS 用の配信オーバーレイの4つです。無料で、データはユーザーの PC に保存されます。
対象:成長を振り返りたい個人プレイヤー、フレンドグループ、配信者。
02現在の状態
- アプリ(v1.1.1)は完成済みで、デモモード(DEMO と表示されるサンプルデータ)で全機能が動作します。
- Riot Sign On・公式 API 連携のコード(認可コードフロー、トークン更新、同期、レート制限、エラー処理)は実装済みで、模擬 API を使った自動テストで動作を確認しています。Riot API への実接続はまだ行っていません。
- 承認後に、公式データによるパーティ確認(試合データのパーティ情報)と実データでの推定精度の検証を行います。
承認前に使える機能/承認後に有効になる機能
| 機能 | 状態 |
|---|---|
| デモモード(DEMO 表示のサンプルデータ)で全機能を試す | 今すぐ利用可能 |
| チーム構成アドバイザー(構成の提案・保存・比較) | 今すぐ利用可能 |
| フレンドリーグ(手動の結果申告・承認・修正履歴・順位表の共有) | 今すぐ利用可能 |
| OBS オーバーレイ(手動入力モード、デモデータでの表示) | 今すぐ利用可能 |
| フレンド登録・同意管理、本人申告によるパーティ確認 | 今すぐ利用可能 |
| Riot アカウント連携(Riot Sign On・オプトイン) | Riot の承認後に有効 |
| 自分の試合履歴の同期と、実データでの戦績・成長分析 | Riot の承認後に有効 |
| 公式データ(partyId)によるパーティ確認 | Riot の承認後に有効 |
| VALORANT 終了後の自動同期、リーグの自動入力、OBS の自動更新(実データ) | Riot の承認後に有効 |
| ライブ(試合中)のデータ、試合前の相手情報(スカウティング) | 提供しない(公式 API なし・ポリシー上不可) |
03ユーザーフロー
- アプリをインストールして起動(アカウント登録なし)。最初はデモモード。
- 設定 → Riot 連携で「連携するとプレイヤーデータが公開扱いになる」説明を確認し、同意(オプトイン)にチェック(同意日時を記録)。その後「Riot でログイン」を押すと既定のブラウザで Riot Sign On が開き、ユーザーが許可。
- Riot から PC 内のアプリ(127.0.0.1 のループバック)へ認可コードが戻り、中継サーバー経由でトークンに交換。ACCOUNT-V1 で本人の PUUID と Riot ID を取得。
- 本人の試合一覧と、まだ保存していない試合の詳細だけを取得して PC に保存(VALORANT の終了検知から約90秒後・手動・定期確認)。
- 分析・パーティ履歴・アドバイザー・リーグ・オーバーレイで利用。
- 設定から連携解除、または連携解除とデータ削除が可能。


04使用する Riot API
| API | エンドポイント | 目的 | 頻度 |
|---|---|---|---|
| ACCOUNT-V1 | /riot/account/v1/accounts/me | RSO でログインしたユーザーの PUUID と Riot ID を取得 | ログイン時に1回 |
| VAL-MATCH-V1 | /val/match/v1/matchlists/by-puuid/{puuid} | 連携ユーザー本人の試合一覧 | 同期1回につき1リクエスト |
| VAL-MATCH-V1 | /val/match/v1/matches/{matchId} | まだ保存していない試合の詳細のみ(保存済みの試合は再取得しない) | 新しい試合の数だけ(同期1回につき最大60) |
| VAL-STATUS-V1 | /val/status/v1/platform-data | 設定画面の「接続テスト」 | ユーザー操作時のみ |
RSO のスコープは openid と offline_access。同期のきっかけは、VALORANT の終了検知(約90秒後)・手動・定期確認です。定期確認(既定15分ごと)は、前回の同期以降に VALORANT を起動していなければ API を呼ばずに省略します(その場合も6時間に1回は確認)。他のプレイヤーの試合一覧を取得することはありません。
05ポリシーへの対応
| プレイヤーのオプトイン | 連携前にアプリ内で「アカウント連携によりプレイヤーデータが公開扱いになる」旨を表示し、同意のチェックが無いと「Riot でログイン」を押せません(同意日時を記録、連携解除で取り消し)。その後 Riot Sign On で本人が許可した場合のみ連携。取得するのは連携ユーザー本人の試合一覧のみ。 |
| 同意していないプレイヤーの情報 | 本人と同意済みフレンド以外は、試合ごとの匿名ラベル(味方 1・敵 3 など)で表示し、Riot ID・エージェント・成績・ランクや試合をまたぐ識別子を画面に出しません。再マッチ・共闘成績・リーグの自動入力・パーティ申告・共有コードも本人と同意済みフレンドだけが対象で、フレンドの試合データとの紐付けも同意済みのときだけ行います。本人・同意済みフレンドを含まないパーティ情報(公式データの partyId・履歴からの推定とも)を表示せず、「同意していないプレイヤーのため表示しません」と理由を示します。推定も本人・同意済みフレンドを含む組み合わせに限定し、敵パーティの推定は行いません。デモデータにも同じルールを適用しています。 |
| スカウティング | なし。試合前・試合中に相手の情報を表示しません。構成アドバイザーも相手の情報を使いません。 |
| リアルタイムの性能オーバーレイ | なし。OBS オーバーレイは自分の集計済み成績と手動入力の値のみで、ゲーム画面上には表示しません(配信ソフト用)。 |
| ゲームが隠したプレイヤー | 特定・分析しません。「非公開プレイヤー」として表示し、統計とパーティ推定から除外します。 |
| ライブデータ | 取得しません。メモリ読み取り・通信傍受・非公開/ローカル API は使用しません。15秒ごとに Windows のプロセス一覧で VALORANT が起動しているかどうかだけを確認し、終了後に公式 API で同期します。 |
| API キーの保護 | API キーと RSO の client secret はアプリに含めず、運営者のサーバー(中継サーバー)でのみ保持します。中継サーバーは許可した VALORANT / Account API のパスだけを中継します。 |
| レート制限 | アプリ側でリクエスト間隔を制御し、429 では Retry-After を守って再試行します。 |
| ゲーム素材 | エージェント・マップ画像は Riot 公式の VALORANT Public Content Catalog(08.09)だけを使用。カタログに無い新しいエージェント・マップは画像を使わず頭文字で表示。 |
| 非公式表記 | Riot 指定の英語の定型文(と日本語訳)を、アプリの全画面の下部、設定 → API 対応状況、このサイトの全ページに表示。 |


06データの扱い
- 試合データ・設定・フレンド・リーグ・オーバーレイ設定は、ユーザーの PC 内の SQLite データベースに保存。
- トークン等の秘密情報は Windows DPAPI で暗号化して保存し、平文で残しません。
- 運営者のサーバーは API リクエストとトークン交換を中継するだけで、試合データやトークンを保存しません。
- 試合詳細に含まれる他のプレイヤーの情報は、連携ユーザー本人の PC 内でのみ表示されます。同意していないプレイヤーは試合ごとの匿名ラベルで表示し、Riot ID は画面に出しません。
- 詳しくは プライバシーポリシー を参照してください。
07非公式ツール表記(Riot 指定)
ORIVEIL isn't endorsed by Riot Games and doesn't reflect the views or opinions of Riot Games or anyone officially involved in producing or managing Riot Games properties. Riot Games, and all associated properties are trademarks or registered trademarks of Riot Games, Inc.
この表記は、アプリのすべての画面の下部、アプリの設定 → API 対応状況、このサイトのすべてのページに表示しています。
08動作の確認方法
ダウンロードして起動すると、Riot アカウントなしでデモモードの全機能を確認できます。デモデータは画面上で「DEMO」と表示され、実データとは別に保存されます。