こんにちは、ねるねです。スプラトゥーン戦績管理サイトのstat.inkが早くもスプラトゥーン3に対応しました。
現時点では戦績を登録するために必要なスクリプトs3sの導入にpythonが必須となっており、exeファイルをダウンロードして導入することができた前作より難しくなっているのですが、導入方法を日本語で説明している記事が見当たらなかったため、ここに備忘録を兼ねて残しておきます。
目次
戦績管理サイトと転送スクリプトの紹介
stat.ink
stat.inkはスプラトゥーンの戦績を保存し、閲覧や統計データの確認などを行うことのできるサイトです。
splatnet2statink for splatoon3(s3s)
stat.inkは単体では戦績データを取り込むことはできません。
そのため手打ちで戦績を登録するか、splatnet(イカリングの海外名)→stat.inkに戦績を転送する外部ソフトを使用する必要があります。
前者は現実的ではないのでsplatnet2statink for splatoon3(s3s)を使用します。
各サイト・スクリプトの登録・導入方法
stat.inkへの登録
stat.inkにアクセスします。
stat.inkのアカウントを持っていない場合は新規ユーザー登録→ログイン、持っている場合はログインを下記メニューから行います。
同メニューからプロフィールと設定画面に遷移し、「APIキーを表示ボタン」をクリックします。
ここで表示されたAPIキーは後ほど使用します。
s3sの導入
Python/Homebrewの導入
s3sはCUIで操作するPythonスクリプトのため、まずはPython3を導入します。筆者はMac環境では試していないため、Mac環境は文章のみでの説明になります。
Windowsの場合
Python.orgにアクセスし、Python3を選択します。
ページ下部に移動し、自分の環境に合わせたインストーラー(ほとんどの人は64bit)を選択し、ダウンロードします。
ダウンロードが終わったらインストーラーを起動します。
インストール操作時、下記画面のAdd Python 3.10 to PATHチェックボックスにチェックします。
Setup was successfulの画面が表示されたらウィンドウを閉じて構いません。
Macの場合
ターミナルを起動し、以下のコードを実行します。
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
インストール完了後、同じくターミナルから以下のコードを実行します。
brew install python
Gitの導入(Windowsのみ)
Git-scm.comにアクセスし、環境に合わせたインストーラーをダウンロードします。
ダウンロードが完了したら、インストーラーを起動します。
インストールが完了するまでに大量にチェックボックスが表示されますが、デフォルトのままで進めて問題ありません。
s3sの導入
Windowsの場合はタスクバーのWindowsボタンを右クリックし、コマンドプロンプト/Windows PowerShell/Windowsターミナルのいずれかを起動します(今後s3sを使用する際に使うことになるためタスクバーに固定しておくと便利です)。
Macの場合はターミナルを起動します。
以下のコードを実行し、s3sのスクリプトをダウンロードします。
git clone https://github.com/frozenpandaman/s3s.git
以下のコードを実行し、s3sの新規ディレクトリに移動します。
cd s3s/
Windowsの場合は以下のコードを実行します。
python -m pip install -r requirements.txt
Macの場合は以下のコードを実行します。
pip install -r requirements.txt
以下のコードを下記の要素を適応して実行することでs3sを起動させることができます(導入後、起動する際はこのコードを実行することになります)。
python s3s.py -M N -r -nsr|osr
-M:これを挿入することでN秒ごとに戦績をチェックし、未登録の戦績をアップロードします(Nを挿入しなければ300秒ごとに戦績をチェックします)。短時間で何度もアクセスを行う人が増えると今後任天堂が対策を取ってしまう可能性があるため、Nの数値をあまり小さくすることは推奨しません。
-r:イカリング3を参照し、現時点で未登録の戦績をまとめてアップロードします。
-nsr|-osr:-nsrを挿入するとサーモンランの戦績をアップロードしません。-osrを挿入するとサーモンランの戦績のみをアップロードします。
例えば以下のようにコードを実行すると、起動時に未登録の戦績をまとめてアップロードし、あとは300秒ごとにバトルとサーモンラン双方の戦績をチェックしてアップロードします。
python s3s.py -M 300 -r
初回起動時にはAPIキーの入力を求められるので、ペーストしてエンターキーを押します。
urlが表示されるのでコピーしてブラウザで開きます。
戦績をアップロードしたいニンテンドーアカウントでログインし、下記画面で「この人にする」ボタンを右クリックしてリンクのアドレスをコピーします。
コピーしたurlをコマンドプロンプト/PowerShell/ターミナルにペーストしてエンターキーを押します。
イカリング3をPCブラウザで閲覧する方法
ブラウザ拡張機能の導入
ここではChrome系ブラウザについて扱います。
ブラウザ拡張機能EditThisCookieをインストールします。
gtokenの取得
s3sは起動するたびにイカリング3にアクセスするためのgtokenを取得します。
これはユーザーフォルダー直下のs3sフォルダにconfig.txtとして保存されているため、これを開いてgtokenの値をコピーしておきます。
イカリング3の閲覧
イカリング3にアクセスします。
サーバーのメンテナンス画面が表示されるので、EditThisCookieを起動します。
値にコピーしたgtokenを入力し、SameSiteでStrictを選択します。
チェックマークをクリックしてブラウザのページを更新すると、イカリングを閲覧できます。
ただし、gtokenは定期的に更新されてしまうため、そのたびにconfig.txtを参照する必要があります。
コメント
はじめまして。
当記事を見て、s3sの導入に成功しました。
しかし、数日間はもんだいなく動いていたものの、今朝実行時に以下エラーが発生し、困っています。
Error from Nintendo (in Account/Login step):
{
“status”: 9403,
“errorMessage”: “Invalid token.”,
“correlationId”: “●●●(なんとなく伏せたほうがいいと思ったのでマスキング)”
}
Re-running the script usually fixes this.
自分なりにググったところ、他の人でも同様のエラーが発生することがわかりましたが、私の英語力に難があり、有効な解決策を見つけ出すことができませんでした…
コンフィグファイルを削除し、APIキーを再発行した上、再実行しましたが同様のエラーが出ました。
何か解決策をご存知であれば、教えていただけると助かります。よろしくお願いします。
記事の閲覧とコメントありがとうございます。
tokenの取得周りでエラーが起きているようですね。
config.txtの削除でも同様のエラーが出たのであれば望み薄ですが、config.txt内のgtokenを削除するという方法もあるみたいです。
これ以上はお役に立てそうにないですが、こちらでも引き続き調べてみます。
はじめまして。 stat.inkについていろいろ調べていたらこちらに行き着き、無事おかげさまで戦績のアップロードまでできてstat.ink上で確認することが出来ました!たいへん感謝しております^^!
そこでなのですが、これってPCやコマンドプロンプトを落としたら、戦績の自動アップロードってとまってしまいますかね??
あと、「Press Ctrl+C to exit.」とあるのですが、こちらは押してもよろしいのでしょうか?
簡単な質問ばかりですみません💦