Skip to main content
Salmon Statsで使われている技術

Salmon Stats

今回、大型アップデートを行い 3.6.1 -> 4.0.0 へとバージョンアップをしました。

この変更には破壊的変更が多く含まれ、データベースの情報もほとんど一から再構成しました。なぜこの変更が必要だったのか、この変更によるメリットは何なのかを説明していこうと思います。

データベースの変更

変更点のうち、データベースの変更について解説します。

スケジュール ID

前回まではスケジュールを指定するためのschedule_idはランダムなuuid_v4が利用されていました。しかしこれはクライアントからschedule_idを知るための方法はいちいちスケジュール用の API を叩くしか方法がなく、また uuid はインデックスに不向きという弱点がありました。


tkglingAbout 2 minNintendoSalmon Run
お気持ち表明

BAN 実施

[ご注意]『スプラトゥーン 3』において当社サーバーに不正にアクセスし、負荷をかける等の影響を与える非正規アプリの存在を確認しております。このようなアプリの利用は当社サービスの利用規約違反にあたるため、利用を確認した際、サービスの利用停止等の対応をとることがあります。ご注意ください。

さて、せっかくなので色々話したいと思います。

ちなみに上記の任天堂株式会社の決定に対して私は一切の異存はありません。自分たちのサービスなのですから、自分たちの方針で好きに方針を決めれば良いと考えています。


tkglingAbout 2 minNintendoSalmonia3+
Salmonia3+ Universal版開発進捗状況

ご支援状況

以前の記事で初期段階の開発資金のご支援をお願いしたのですが、ご支援を頂いたからには報告するのが道理であると思われるので、報告致します。

支援者様 合計
PayPay 22 名 39,433
PayPal 8 名 17,247
合計 30 名 56,680

tkglingAbout 2 minNintendoSalmonia3+
Salmonia3+ Universal版開発に向けて

Salmonia3+は現在 iOS 向けしかリリースしていませんが、時々 Android 版もリリースして欲しいというご要望を頂きます。

これに関しては Salmon Stats がサーモンランにおける統計を管理したいという理念で開発を進めている以上、Android ユーザーの方のデータを全く集められないことは非常に残念に思っており、Android 版というのはいつかは対応したいこととして考えていました。

しかしながら、現状は iOS 版の開発で手一杯な状況であり、個人で Android 版の開発を行うのはリソース的に(主に時間)不可能であるとも考えています。


tkglingAbout 3 minNintendoSalmonia3+
フォントをマージして利用する

背景

Salmonia3+にはフォントが同梱されていないので、自分でフォントをインストールして表示する方法に付いて解説します。

スプラトゥーン 3 で利用されているフォントは以下の通り。

  • 共通
    • Splatoon1-common.3b7ce8b3c19f74921f51.woff2
    • Splatoon1-symbol-common.38ddb9a11cb1f225e092.woff2
    • Splatoon1-cjk-common.62441e2d3263b7141ca0.woff2
    • Splatoon1JP-hiragana-katakana.7650dccc9af86f19f094.woff2
    • Splatoon2-common.4e7b2cad208fa2fc42ca.woff2
    • Splatoon2-symbol-common.93fd6ce98e21ffcf60bb.woff2
    • Splatoon2-cjk-common.7dc791c403ed7f33d73e.woff2
    • Splatoon2JP-hiragana-katakana.f423b5ce60b7456df1b3.woff2
  • 日本語
    • Splatoon1JP-level1.fafc97f04a568e26ba52.woff2
    • Splatoon1JP-level2.225bb1db5962c9d61773.woff2
    • Splatoon2JP-level1.1f43f499aa71ee002067.woff2
    • Splatoon2JP-level2.9742567c70e359573d6d.woff2
  • 韓国語
    • Splatoon1KRko-level1.a94dd3748648749f4583.woff2
    • Splatoon1KRko-level2.fcce77dce5655afed7d2.woff2
    • Splatoon2KRko-level1.43823c36f04880c807a5.woff2
    • Splatoon2KRko-level2.5f8850c8a0ecb0e0bad0.woff2
  • 中国語(繁体字)
    • Splatoon1TWzh-level1.e991c1b3c2084df56d18.woff2
    • Splatoon1TWzh-level2.054b111fb7118a083ff7.woff2
    • Splatoon2TWzh-level1.e7cd7449c1194b2e74fc.woff2
    • Splatoon2TWzh-level2.c6e3984575483b178a4f.woff2
  • 中国語(簡体字)
    • Splatoon1CHzh-level1.6b6af277c3dc45a8cf10.woff2
    • Splatoon1CHzh-level2.a24ca5d538d0b6a0d086.woff2
    • Splatoon2CHzh-level1.2b5402a3e1871d28d815.woff2
    • Splatoon2CHzh-level2.f1fae9e976006ec600e1.woff2

tkglingAbout 3 minNintendoSplatoon3Salmonia3+
イカッチャでビッグラン向けのステージを遊ぶための方法

イカッチャ

通常、イカッチャにおけるサーモンランのモードは次のうちのどちらかです。

  1. プライベート
  2. レギュラー
項目 プライベート レギュラー
条件 レギュラー以外 いつものバイトのシナリオ保存
編成 緑ランダムのみ(自由選択可) 固定
ブキ 固定 変動
キケン度 200%まで 任意
オカシラシャケ 出現しない 任意
レアブキ枠 なし あり

tkglingAbout 3 minNintendoHackSplatoon3Salmon Run
スプラトゥーン3で公開されているパッチを確認する

IPSwitch

IPSwitch はニンテンドースイッチで動作する exefs 形式のパッチファイルを提供するためのツールです。

具体的にはパッチが載ったテキストからパッチファイルを自動で作成してくれます。

なお、パッチが効くのは LFS の仕組み上、ゲームを起動した瞬間ですのでゲームプレイ中にパッチの有効・無効を切り替えることはできません。

スプラトゥーン 3 向け

GitHub で公開されているのでそれをそのまま貼り付けます。


tkglingAbout 2 minNintendoHackSplatoon3IPSwitch
iOSでカスタムフォントを利用するための方法

カスタムフォント

iOS アプリでカスタムフォントを利用する方法は大雑把に分けると二つあります。

  1. アプリにフォントをバンドルする
  2. デバイスにインストールされたフォントを参照する

フォント自体が配布可能である場合は 1 の方法を利用するのが最も手っ取り早いのだが、数が多くなったりフォント自体にライセンスがあるような場合にはバンドルに組み込むことができないのでこの方法は使えない。

検索してでてくるほとんどの記事は前者の方法について解説しているが、前者は全く難しくないのでここでは扱わない。


tkglingLess than 1 minuteNintendoSplatoon3
アプリ開発の今後の方針などについて

アプリ開発事情について

任天堂サポートからサードパーティアプリに対する声明が発表され、App Store および Google Play からアプリが公開が取り下げられるという事態が発生しました。

当アプリは取り下げ要請を受けていませんが、法的に問題のあるコードが含まれていないかチェックするためにアプリの公開を停止しています。

現在、アプリが App Store からインストールすることができないのはそれが理由です。

今後について

多くのアプリ開発者が開発のモチベーションを失っているので、わたしもそうなのではないかと心配されがちなのですが、実はモチベーション自体には特に変わりがありません。


tkglingAbout 2 minNintendoProgrammingSalmonia3+Swift
ぶっちゃけOAuthはどこまでデータ抜けるんですか

任天堂、サードパーティアプリを認識していた

[ご注意]『スプラトゥーン 3』などのネットワークサービスにおいて正規アプリになりすまし、当社サーバーに不正にアクセスするスマホアプリの存在を確認しております。このようなアプリの利用はセキュリティや個人情報が脅かされたり、思わぬ被害を受けたりする可能性が考えられます。ご注意ください。

という注意喚起が任天堂からされていました。


tkglingAbout 2 minNintendoSplatoon3
2
3
4
5
...
8