はじめに…
皆さんはマリメ2内のランキングを見ますか?「全期間職ポ,週間職ポ,クリア数,一番乗り数,ベストタイム数,バトル,どこマリ4部門」の10部門あり、一定の順位より上だとメダルが貰えます!
しかし、ランキングの仕様上同じスコアやポイントの人が現れる可能性があります…今回はその時の処理について考察します!
以前とある方にバトルランキングの法則について教えていただいたのですが、実際に調べてみると少し違う点があったので僕なりの仮説を立ててみました!是非ご覧ください!

しかし、ランキングの仕様上同じスコアやポイントの人が現れる可能性があります…今回はその時の処理について考察します!
以前とある方にバトルランキングの法則について教えていただいたのですが、実際に調べてみると少し違う点があったので僕なりの仮説を立ててみました!是非ご覧ください!

バトルランキングの謎
以前とある方に「同レートの場合、バトル勝利数が多い人がランキングの上になる」と教えていただいたのですが、8000以外はこのパターンではない…?
バトルレートランキングの考察
ここからは写真を用いて説明します!
便宜上ランキングの上からAさん→Bさん→Cさん…と表します!
※写真撮影日:2022/9/10
便宜上ランキングの上からAさん→Bさん→Cさん…と表します!
※写真撮影日:2022/9/10
パターンその1 レート8000
- Aさん

- Bさん

- Cさん

- Dさん

- Eさん

- Fさん

バトルレートは同一(8000)・バトルの項目以外の関係性も見受けられないので、「勝利数と試合数」を見ます!
名前 | 勝利数 | 順位 | 試合数 | 順位 |
Aさん | 10853 | 1 | 26213 | 2 |
Bさん | 10473 | 2 | 26425 | 1 |
Cさん | 5694 | 3 | 9618 | 3 |
Dさん | 3937 | 4 | 8632 | 4 |
Eさん | 3669 | 5 | 6407 | 5 |
Fさん | 3212 | 6 | 5521 | 6 |
これを見て分かる通り、「試合数」だとAさんとBさんがおかしくなる。「勝率」だとEさんとFさんが高く、「早く8000になった順」でもAさんよりもCさんの方が早い。
よって、「試合数・勝率・早くなった順」でもない。おそらく「勝利数」を参照しているだろう。

よって、「試合数・勝率・早くなった順」でもない。おそらく「勝利数」を参照しているだろう。

パターンその2 8000以外(2人)
- Aさん

- Bさん

Bさんの方が試合数,勝利数ともに多い。レートも7357で一緒なのでパターン1の通りだとBさんがランキングの上になるはずだが…

写真の通り同じレートで同じ順位だが、先程の法則とは違い試合数,勝利数が多いBさんが下になっている。
つまり、8000以外は勝利数が少ない人が上になるのか?
パターンその3 8000以外(3人)
- Aさん

- Bさん

- Cさん

試合数,勝利数ともに多い順だとBさん→Cさん→Aさんだが…?

実際のランキングはこのような感じ。8000以外は試合数,勝利数が多い,少ないの相関性が見られない…
これはなぜだろうか…?
本題 バトルランキングの考察
なぜこのような結果になったのか。僕の考察を仮説を立てながら説明します!
「バトルレートには小数点以下もあるのではないか」
詳しくはバトルレート+0考察
バトルレート+0が出る原因として、タイムアップや全員ギブアップ以外に小数点以下の数値が関係しているのではないか、と仮説を立てた。小数点第1か小数点第2までは存在している?
バトルレート+0が出る原因として、タイムアップや全員ギブアップ以外に小数点以下の数値が関係しているのではないか、と仮説を立てた。小数点第1か小数点第2までは存在している?
そして8000はバトルレートのカンスト値であり、その証拠に8000の人が勝利してもバトルレートの変動を表す吹き出し💭が出ないことから8000がカンスト値ということが分かる。
小数点の仮説を正しいと仮定すると、バトルレート8000は内部上「8000.0」と処理されているはずだ。
だが、7357や7208の場合は「7357.8と7357.4」「7208.6と7208.3と7208.1」の人が存在しているように、同じレートに見えても小数点以下を含むと差が出る可能性がある。
なので、8000の人は勝利数の多さで決められているが8000以外はまず小数点以下の数値を参照して、それでも同じなら勝利数の多さで決められているのではないか?
全期間職ポ,週間職ポの処理
これも同じで、小数点第1や第2まであると予想される。
完全に同じ場合は後述するコース数スコア型で処理?
完全に同じ場合は後述するコース数スコア型で処理?
クリア数,どこマリ等コース数スコア型
ここでいうコース数スコア型は「クリア数,一番乗り数,ベストタイム数,どこマリ4部門」の7部門である。
クリアしたコース数などは最低単位が「1(整数)」であり、まず小数点以下があるとは思えない。
クリアしたコース数などは最低単位が「1(整数)」であり、まず小数点以下があるとは思えない。
そして、同じスコアの場合は先にそのスコアに到達していた人が上になる。
その証拠に2つの写真を用いて説明する。

クリア数の日本ランキング。たすまるさんが先に50504コースに到達していて、僕がその後に50504コースを達成した。
先に到達した人が上になるので、たすまるさんが上になる。

クリア数の日本ランキング。たすまるさんが先に50504コースに到達していて、僕がその後に50504コースを達成した。
先に到達した人が上になるので、たすまるさんが上になる。

2019/8/18時点のベストタイム数ランキング(世界)
元々polysawさんが1位で、次にkirbyQTさん、その約30分後に僕が4257コースに到達した。
これを見ても、先に到達した順に並んでいる。
この仕様を実際に見る方法
最も楽なのは「とてむずのハイスコアが14未満の人」とてむずのハイスコアが14以上でもどこマリや一番乗りなどで同じ現象を見ることは可能。(とてむずが一番確認しやすい)
※資料制作時点では、とてむずの銅メダルボーダーは14
※資料制作時点では、とてむずの銅メダルボーダーは14
とてむず14を達成すると、とてむずの銅メダルを貰うことができる。だが、ハイスコアが14のままだと世界ランキングを見てもどこにも見当たらない。(地域別に見ると見つけられる)
とてむずのハイスコアを15にしてみよう。そうすると世界ランキングに出てくるが、先にそのスコア(とてむず15)に到達した人が上になるので自分が最も遅く達成したことになり、「とてむず15の中でも最も下,自分の下は14の人がいる」状態になるだろう。
まとめ
- バトルや全期間職ポ,週間職ポなど小数点以外が存在していると考えられるものは、表上は同じ数値,同じ順位であっても小数点以下の数が高い人がランキングの上になる。
- レートは8000がカンスト値であり、おそらく8000.0として内部上は処理されているので「勝利数」が多い人が上になる。
- クリア数,一番乗り数,ベストタイム数,どこマリは「先にそのスコアに到達した人が上になる」
- 全期間職ポ,週間職ポも小数点以下の数値も同じだった場合、「先にそのポイントに到達した人が上になる?」※実際は職ポの変動が激しいので中々ないパターンだが……