Hatena::ブログ(Diary)

Dlog 隔離館 このページをアンテナに追加 RSSフィード

2017-07-31

スプラトゥーン2のスコア(戦績)管理サービスを作ってみた

こんなの

f:id:Dltn:20170813134157p:image:w360f:id:Dltn:20170813134152p:image:w360

f:id:Dltn:20170813134147p:image:w360f:id:Dltn:20170823082519p:image:w360


経緯

前作はPC向けで作っていましたが、今作はスマホ向けに作りました。

Nintendo Switchアプリからスプラトゥーン2の戦績を見れますが、50試合分しか見れません。

おそらくいろいろな都合があって、この件数なのでしょう。

せっかくなので、全試合分を保存したいと思い、イカスコア2を作りました。主に自分用に。

誰か作ってくれるかなーと思って待ってたんですが自分の検索力が低いのかまだないのか見つからなかったので作りました。

2017/08/09追記: イカスコア2で取得できる戦績の件数は、最新の50試合だけです。なので、全試合を保存しておきたい場合は、50試合プレイする前に、改めて取得する必要があります。


内部 (2017/09/16加筆修正)

データの登録方法は、以下の2種類を用意しています。

JSONファイルで登録

  • results/{battle number}.json をアップロードして登録

iksm_sessionを使って登録

  • サーバが勝手にAPIを叩いて登録
  • (サーバへのアクセス負荷を下げるために、1人につき一定時間に1回しか取得できないようにしています。既にDBに登録されてるデータは取得しません。)
  • プレイしてもいないのに一定時間ごとに自動でアクセスする、みたいな相手先のサーバの負荷が上がりそうなことは行わないでください。
  • iksm_sessionは有効期限がありますが、自動で更新する機能を付ける予定は一切ありません。iksm_sessionを使っての登録方式は、そのうち廃止する予定です。

JSONファイルを手軽に保存できるソフトを作りました。

f:id:Dltn:20170917171549p:image:w360

こちらからどうぞ。Mac, Windows対応しています。作りは雑ですが、iksm_sessionの値さえ間違えていなければ取得できるはず.... PRも歓迎します。Macは 【~/Library/Application Support/iksm-fetcher/results】 に保存されます。

(そのうちイカスコア2にもJSONファイルのまとめて登録機能をつける予定....)


使ってみたい人へ

今のところ、戦績はこんな感じで公開されます公開されるのが嫌な人は、そのうち公開設定つけるので、それまでお待ち下さい。 2017/08/09に公開設定つけました。


2017/08/23追記: JSONファイルでの登録に対応したので、iksm_session無しでも利用できるようになりました。その上でiksm_sessionを使って戦績を登録する人は、以下の内容を10回ぐらい読んで、リスクがあるんだなということをちゃんと頭に入れてください。


iksm_sessionは、大事なセッション情報なので、外部に漏れると、勝手にスプラ2の情報を見られたり、ゲソタウンで注文される可能性があります。

任天堂とは全く関係がないサービスですので、勝手にiksm_sessionを利用すると、アカウント停止などの処置がなされる可能性もあります。

できる限り、そういうことが起こらないように配慮はしているつもり(通信の暗号化、iksm_sessionの暗号化等)ですが、何が起こるかは分かりません。

「セッションハイジャック」の意味が分からない人は、JSONで登録した方が無難です。


アカウント登録に使うメールアドレスは、パスワードを忘れたとき用にしか使ってません。

なので、パスワード忘れてもいいや、って人や、忘れることがない人は、

hogehoge@example.comとか好きなアドレスで登録して使ってもらったらいいと思います。


それでも使いたい人はこちらからどうぞ

使用は自己責任でお願いします。

アクセスの様子を見て、あまりにアクセス数が多い場合は、ユーザ数やiksmの取得に制限をつけるかもしれません。

結構しょぼいサーバに置いてあるので、人が押しかけたら落ちるかもしれません。

(そのうち新規登録は止める予定です。)


そのうちつけたいもの(妄想)
  • 戦績の公開設定
    • 試合ごとの結果は、公開設定がまだないので、自分以外の人が表示するとプレイヤー名が伏せ字になります。 2017/08/09 実装しました。
  • マイページ
    • 統計表示(連勝記録 実装済、武器、マップ、ルール、K/D、塗p、他 何か面白そうなのあればコメントください)
  • 別の人との比較機能
  • 登録者内でのランキング的な何か(塗りp、試合数、勝利数、etc)
  • 今日の戦績的なものをTwitter等に貼れるような何か 実装済

にぼしそばにぼしそば 2017/08/14 04:06 初めまして、突然のコメント失礼いたします。
こういったサービスを待ち望んでおりまして、早速利用させていただきました。
戦績情報など大変見やすく、ぜひとも長く利用させていただきたく思っております!

勝手ながらご要望を書かせて頂きたいので、もし余裕がありましたら目を通して頂けましたら、、
私事ではありますが、いつか活用できないかなぁと思い、戦績のJSONファイルを二週間ほど前からローカルに
保存しており、そのデータをイカスコアのDBに投げることができたら嬉しいなぁ、と思っております。

集計などに関しましては、ルール毎の集計に加えて、ブキ・ステージ毎、またプレイ時のウデマエ、
等で戦績が集計できたら便利ではないかな、と思いました。
また、プラベに関してはフレンドとふざけてプレイすることも少なくないので、戦績から完全除外するオプションも
存在したら嬉しく思います。

勝手なご要望を書いてしまい申し訳ありません。
自身もこういったサービスを所望しておりましたので、ぴったりなものを開発している方がいらっしゃり、
とても嬉しく思っております。
今後とも開発の方、陰ながら応援させていただきます!

DltnDltn 2017/08/14 09:07 にぼしそばさま。
初めまして!コメントどうもありがとうございます。このようなご意見をいただけるのは、本当に嬉しい限りです。
保存済みのJSONファイルの取込については、何かしらの取り込む機能を検討してみます。

> ブキ・ステージ毎、またプレイ時のウデマエ、等で戦績が集計できたら
そうですね!武器とステージについては、絞りこめるようにしようと検討していましたが、ウデマエも面白そうです。
特に、時間経過による成長(または退化)を何かしらの形で可視化したいと考えているので、その辺にも活かしたいですね。

> プラベに関して
おっしゃる通りですね!
リーグマッチやプラベは、その時々の一緒に遊ぶ人によっても変わってくると思うので、何らかの形で整理できるようにしてみたいと思います。

NishNish 2018/12/15 23:13 すいません、そのアプリってAndroid版ですか?
Android版でしたら早速使いたいのですがどうでしょうか

DltnDltn 2018/12/16 02:35 Nish さま。
スミマセン。
Webブラウザで使えていたのですが、利用者が少なかったのでサービス終了しました。
ttps://stat.ink など、より高機能な類似サービスがありますので、そちらの利用をおすすめします。

トラックバック - http://d.hatena.ne.jp/Dltn/20170731/1501472576