見出し画像

マリオメーカー1のコースIDについての考察と活用法

マリオメーカー1のIDについて、分かったこととその活用法についてまとめます。
発売前のマリオメーカー1の先行体験についてや、その他の余談も絡めながら説明していきたいと思います。

1.マリオメーカー1のIDの仕組み

① 大まかな仕組み

単刀直入ですが、マリオメーカー1のコースIDは0〜9、そしてA〜Fの16文字からなる、16桁の16進数で表されています。

マリオメーカー1のIDをいくつか見てみるとマリオメーカー2とは違い、アルファベットがA〜Fしか使われていない事が分かります。(マリオメーカー2はA~F以外にもあります。)
そして特徴的なのは、これらの共通点として、5~8文字の部分(2つ目の部分)が、全て「0000」である事。マリオメーカー1でコースIDを入力した事のある多くの人はこの事に気付いたと思います。
これは何を表すIDなのか。最近までは何も分かりませんでしたが、マリオメーカー1に関する作業を行なっている内に少しずつ分かってきました。

分かりきっているという人もいるかもしれないが、実はIDの下12桁は投稿された順番を表してます。

例を挙げると、

マリオメーカー1 スピラン年表から

New Daily Speedrun Challenge というシリーズ作品では、作成者がコースを一気に投稿していますが、IDの9〜12桁に注目してもらうと、全て同じです。
さらに13〜16桁に注目してもらうとこちらはとびとびですが順番に16進数で並んでいることが分かります。

この事から、マリオメーカー1のIDの下12桁は、全世界で何コース目に投稿されたコースか表す数字を16進数に変換したものだと分かります。

例を挙げると、

例 : Mario Maker 300th Anniversary (by Poizn)
ID : B879-0000-03BB-A700
下12桁: 000003BBA700
10進数に変換すると、62,629,632

つまり、約6300万コース目に投稿されたコースと分かります。
「IDから投稿された順番を知れる」という事を知っている人は少なかったんじゃないでしょうか。

② 矛盾点

しかし、ここで1つ矛盾点が生じます。

マリオメーカー1では日本時間の2015/09/10(発売日)から投稿サービスが始まっています。

2015 09/09 22:59 のツイート
@ChesnaughtSkip   のツイートによった

試しに、Twitterで
「until:2015-09-10_0:00:00_jst #supermariomaker」
「until:2015-09-10_0:00:00_jst #スーパーマリオメーカー」
と検索して、「最新」で並び替えてみてください。日本時間の発売日の00:00より前のツイートを探しても、投稿したコースを共有しているツイートは見られない事が分かるはずです。

そして、発売日の00:00より前に投稿されたコースで、現存しているものは確認できる限りでは1コースしか見つかっていません(投稿日時は、2015/09/09 23:59)。

(ちなみにこのIDは 03E7-0000-000F-6380 なので、現存しているコースの中でこれより若いIDがあったら教えてもらえるとありがたいです。)

ここで、このコースを現存する最古のコースとして考えます。
後で詳しく述べますが、先行体験等によって投稿されたコースで、この時刻よりも早く投稿されたコースのIDがTwitter上で確認できますが、それらのコースは既に削除済みです。

訳: [言いたくはありませんが、これらのコース(先行体験等で発売日より前に投稿されたコース)は全て起動前(発売日の前)に全て消去されます。]
@gamespite のツイートによった

しかし、ここで矛盾が生じます。
先ほど述べた、1番古いコースIDの下12桁は16進数で 「F6380」 と表せます。
これを10進数に変換すると、1,008,512

それに対し、
2015年の10月に投稿された公式職人の「ましこ」が最初に投稿したコースIDの241A-0000-000D-E2B0 でした。これは16進数で 「DE2B0」 です。
これを10進数に変換すると、910,000

つまり、
ましこのコースの方が後に(2015/09/10より後に)投稿されたのに対し、IDはましこのコースのIDの方が値が小さい( =先に投稿されたことになっている)ということです。
ましこの他のコースや、他の公式職人のコースも同様に100万より値が小さくなります。
これは先程述べたこととは矛盾します。

つまり、公式職人は普通のプレイヤーとは別の形でIDが付与されていることが判明しました。

③ 矛盾点に対する仮説

ここから仮説を述べます。

前述したコース(最古のコース)のIDを用いると、
下12桁はF6380 なので、1番最初に述べた仮設が正しいとすれば、1,008,558番目に投稿されたコースのはず。
しかし、どう考えても公開からほとんど経たずに100万以上のコースが投稿されたとは考えにくいです。
後々詳しく述べますが、先行体験などで投稿されたコースも5000コース程度である事が分かっており、100万以上のコース量では無いはずです。
また、前述したように公式職人という例外が存在します。
よって、先行体験でプレイしたユーザーを含めた一般ユーザーは、IDが1,000,001コース目から(IDでいうと xxxx-0000-000F-4239 か、もしくはxxxx-0000-000F-4240、xは不明) 始まったと考えるのが自然です。

④ 結論

これまでの話をまとめると、マリオメーカー1のIDから投稿コース数を把握するには、一般ユーザーのコースの場合、IDの下12桁を16進数として、10進数に変換して -1,000,000をすることで、何番目に投稿されたコースかを確認できる、という事ですね。

これも推測ですが、おそらくこの100万分のコースIDの空きは、任天堂がサーバーの確認をするための100万コースでは無いかと思います。

また、最初の4文字については良く分かっていませんが、現状はランダムでは無いかとの推測です。
根拠は特にありません。

2.マリオメーカー1の先行体験に関して

①先行体験

では次に、マリオメーカー1の先行体験版で投稿されたコースに関して詳しく述べます。

マリオメーカー1は発売前から店頭体験会やイベントでの先行体験などが行われています。

(他にも沢山あったようです。)

Twitterで、
「マリオメーカー 体験 until:2015-08-31」
と検索すると、日本での先行体験について詳細を知ることができます。
こんなにあったとは驚きました。

イベントや店頭などの先行体験でコースを投稿できたかは不明ですが、事実、発売前に多くのコースが投稿されていることは明らかです。

実際にYouTubeで、
「after:2015-07-01 before:2015-09-01 supermariomaker」と調べると、発売前のプレイ動画をあげている人が見られます。

これらの動画やTwitterの情報から考えるに、2015/08/10〜18辺りに一部のユーザーにマリオメーカー1が配布されたのではないかと推測できます。(ソースは確認できていません。)そしてこれらのユーザーは世界のコースに投稿することも出来るようです。

2015/08/11 投稿

任天堂公式アカウントが2015/08/17からマリオメーカーに関する宣伝のツイートを開始しています。

2015 08/19 には既に世界のコースの様子が確認できます。

この動画でも色々なコースの様子が映されている事から、恐らくこの頃に配布されたのでは無いかと推測できます。(この動画は2015/08/13 投稿。)

②発売日前のコースIDを調べる

ここで、発売日前にプレイしている様子を確認できる動画の例を1つ挙げます。

例えばこの再生リストの1〜10本目の動画で、発売前の様子を確認出来ます。

その中で、例えばこの動画では当時の世界のコースの様子を見ることができます。

この動画を見るに、当時から注目コース、いいねランキング等があったようです。
この動画の投稿者も、コースを投稿していることから、投稿できることが明白ですね。

余談ですが、マリオメーカーのパッケージにいいねランキングが映されている画面があります。

画像が見つからなかったので自分のもので撮影しました。

このコースは任天堂が用意したコースと昔は考えていましたが、今思えば恐らくこれは発売前の先行体験による投稿ですね。
1位のコースがいいね要求のタイトルなの、ちょっと面白い。
(ちなみに週間ランキングなので、先程載せた動画で確認できるいいねランキングとは異なります。)

という事は、この動画を見れば発売前のIDを押さえることができるのでは?... と考えましたが、

t=25s

マリオメーカー1では、サムネの左下にあるIDのボタンを押さないとIDを見ることができません。
なんでこの仕様にしたのか全く理解ができませんね。2では最初からIDが映っているので助かります。

ただマリメ1でも2でも、コースに入る前の画面ではIDが映るようになっていますので、この次の画面でIDを押さえる事ができるのでは?...

t=29s

駄目でした。

初期の頃のマリオメーカー1ではコースに入る前の画面ではIDが表示されないようです。これは先行体験だからというわけでは無く、発売初期も同様です。とにかく残念ですね。

前述したように、Twitterで発売日より前にマリオメーカーの画像を共有している人を探そうとしても、なかなか見つかりません。

ただ画像で証拠が見つからなくても、ID自体を探すことならできます。

また例の如くTwitterの日時検索を使って、投稿日のIDを調べれば良いわけです。
ただ、「supermariomaker  ID」 のように調べてもまともに出てきません。

ここで、先程述べたIDの仕組みを役に立てます。
現存しているコースの中で一番古いIDをもう一度あげます。
「03E7-0000-000F-6380」
そして、先行体験で投稿されたコースが1,000,001コースからと仮定した時のIDは、こちらも前述したように
「xxxx-0000-000F-4239」となります。

つまり、先行体験中にあげられたコースのIDの5〜12桁は「0000-000F」であるという訳です。
IDの一部分を検索することで、「マリオメーカー」「MarioMaker」等の、沢山引っかかってしまうワードを避けつつIDを探せます。

Twitterで
「0000-000F until:2015-09-10_0:00:00_jst」
と調べると、
まあまあな数のIDが掘り返せます。

現存する最古のコース(と仮定していた)IDよりも若いIDなのが確認できたと思います。

よく分からないbotも引っ掛かりますが…
(こういうよく分からないbotが引っかかる為、日時指定は必須です。)

その中で、一番古いIDがこちらです。

この下12桁を10進数変換すると「1000498」
つまり、498 または 499番目に投稿されたコースという事になります。
かなり古いコースのIDを引き当てることが出来ました。
ちなみにこの検索方法で1番遅く投稿されたコースのIDは
「82EE-0000-000F-529A」

これを10進数変換すると「1004186」

498〜4186番目のコースIDが確認できた(=先行体験で投稿された大体のコース数)ので、先程述べた仮説がより確信に近いものになったと思います。

3.コースIDの仕組みを利用した活用法

主な活用法について

正直一般的に使えるような活用法は無いです。このIDの仕組みを利用して色々やってるのも私くらいだと思いますし、そもそもマリオメーカー1でのIDの話なので、多くの人がプレイしているマリオメーカー2では仕組みが大きく異なります。誰に需要があるんだよって話ですが、そもそもこれまでの話も需要が皆無なので、需要等は気にせずにいくつか活用の例をあげていきます。

①投稿されたコース数の推移を確認

全世界で何番目に投稿されたコースかをIDから確認できるということは、全体で投稿されたコース数の推移を調べることができるというわけです。

実際に作ってみた例がこちらになります。

総計
各月毎の投稿数

やはり発売年のコース投稿の伸びは凄いですね。
7000万弱のコースが投稿されていることにも驚きました。
ただ、後で詳しく述べますが、これは投稿されたコース数の累計なので、実際に現存しているコース数はこれよりもかなり少ないです。
マリオメーカー1では、いいねが0のまま一定期間経ったコースは自動的に削除されるため、大部分のコースが削除されているようです。

このグラフから分かる傾向を述べていきます。
やはり発売月のコース投稿数が一番多いようです。21日しかないのに7,000,000コース投稿は凄すぎる。
2015年の12月頃は年末商戦と新パーツ追加アプデ、CX生放送が重なった結果12月頃に投稿コース数が急増してます(というある方のツイートをそのまま引用しました)。

当たり前ですが、時間が経過するに連れて投稿されるコース数が少なくなっていきます。
2020年の9月からは、各月の投稿されたコース数は5桁になっています。
それまで100,000コース以上のコースが毎月投稿されていたのも凄いことだとは思いますけどね。

詳細はこちらのリンクからご覧ください。

集計方法について詳しく説明します。
月毎の月末のコースIDを探します。
具体的には、これまたおなじみのTwitterの日時検索です。

例えば2015年の9月に投稿されたコース数を知りたい場合は、2015/09/30のコースを探します。
Twitterで
「#supermariomaker until:2015-10-01_0:00:00_jst」
と検索します。WiiUの画像投稿ツールを利用してコースを投稿した報告をしているツイートを探すというわけです(画像投稿ツールを使用してTwitterに投稿すると、必ず #Supermariomaker のタハッシュタグがつきます)。JSTと指定しないと、0時に指定してもズレてしまうので注意して下さい。

そうして最新に並び替えると、2015/09/30 23:48に投稿されたこのツイートが見つかります。

このように月末のコースIDを集めて、16進数を10進数に変換していけば推移が分かるわけです。
当然これを月毎では無く10日毎、5日毎にすればより精密な推移はわかりますが、今回はそこまでの必要性が無いと考えて月毎に集計しました。

この方法で調べると、最初の方はすぐ見つかりますが、16年、17年となる内にツイート数も当然少なくなります。
2017年頃になると知っているマリオメーカープレイヤーのツイートがかなり出てきます。その中で月末のコースとして採用したコースもあります。

そして19年の6月になるとマリオメーカー2が発売されるため、検索は困難になります。マリオメーカー2のツイートが沢山引っかかってしまうためです。いずれにせよ、どんどんユーザーが少なくなっていくため検索は難しいです。

当時、作成しようと決めてからその日の内に19年の6月までの月末のIDを見つけることができたんですが、19年の6月からから投稿サービス終了の21年の3月までの月末のコースをどうやって調べようか、方法が思いつかず途方に暮れてました。
けんさん (Twitter @Mario_Kensan) も協力してくれるとの事で、共同編集者に追加してその日は寝たんですが、起きたらなんか全部埋まっててめちゃくちゃビビりました。

当時のDM

コースIDの収集方法は至ってシンプルで、実際にマリオメーカー1でひたすらコースを漁りまくったらしいです。やばい。
DMの時刻から見るに普通に7時間程度かかったんだと思います。
それだけ、マリメ2発売からの1のコースを漁るのは難しいということですね。

②コースIDから投稿日を推測

コースIDは投稿順に並んでいるため、場合によっては投稿日を推測することも可能です。
私は「SMM1 speedruns Table / マリオメーカー1スピラン大辞典」というものを作成、編集していますが、この方法で既に削除されたコースの投稿日を推測し、記録しています。

そのシートはこちら

推測する方法について、実例を1つ挙げながら説明していきます。

BaNさんのこのスピラン。現在は削除されており、動画内でも投稿日を確認出来ません。
ただ概要欄にIDが載っているので、ここから投稿日を推測していきます。

IDは「D924-0000-030D-DA4C
IDの5〜12文字目の、「0000-030D」だけ切り取ってTwitterで検索をかけます。
この動画の投稿日が2017/06/12なので、until:2017-06-12 を付け加えて検索し、最新で並び替えます。

すると1番上にこのツイートが出て来ました。
このコースの13〜16桁は「DBBF
BaNさんのスピランは「DA4C」なので、かなり近いIDが見つかりました。
都合が良いことにこのツイートは画像付きです。投稿時間から見るに、このコースは2017/03/11に投稿されたと見ていいでしょう。

このようにしてIDから投稿日を推測します。

と説明はしましたが、恐らくこんなことする人は私くらいしかいないと思います。
私にとってはめちゃくちゃ重宝する方法ですが、一般的には需要皆無です。

③コースの削除率を調べる

今まで話してきた「投稿されたコース数」というのは当然、削除されたコースは考慮していません。ですがそれを調べることも可能です。

マリオメーカー1においてコースが削除される要因は主に3つです。

-いいねが0のまま一定期間経つと削除される。
-任天堂にコースを削除される。
-自分で削除する。

恐らく、マリオメーカー1においてダントツで多い削除要因は一つ目の、「いいねが0のまま一定期間経つと削除される」だと思います。
いいねが1つ以上貰えないと消されてしまうというハードルは高く、これまで多くのコースが消されたことでしょう。

では、どのくらい削除されているのでしょうか。それを知る手がかりが1つありました。

マリオメーカー1のWikipediaを見てみます。

これによると、

「2016年5月、任天堂は世界で720万コース作成、6億回プレイされたと発表した」
と書かれています。ここで先程触れた「投稿されたコース数の推移」の記録を見てみます。

SMM1 Uploaded Levels より
2016/04/30~2016/06/30

2016/05/31までに投稿されたコースの総数は37,543,313コース。しかしここでは720万とされています。ここで情報元を確認します。

この任天堂公式(アメリカ)のツイートを見て下さい。

もし1分に1コース遊んだとしても、14年間かかるという旨のツイートです。
そのツイートに添付されていた画像をご覧ください。

「現在 (2016/05/18) 720万コースを遊べることが出来る」という趣旨のツイートであると考えられます。

つまり、この数字が「当時残っていたコース数」という訳です。これで削除率が分かります。

ツイート時間が 2016/05/18 02:30 なので、付近のコースIDを見つけます。

Twitterで
#supermariomaker  until:2016-05-18_0:00:00_JST
と検索します。

ブックマークを共有したツイートが見つかりました。
ブックマークのリンクは1番後ろにIDがあるので、ここからコースIDを確認できます。

先程のツイート時とかなり近い投稿時間のコースが見つかりました。
これを採用します。

このIDの下12桁を10進数変換すると、「37,805,869」
実際に現存するコースは7,200,000なので
削除率 = 1-(7200000÷37805869)

ということになります。
これを計算すると、0.809553379132748

よってこの事から、投稿されたコースの81%は削除されているということになります。この数字には驚きました。

この割合が、時間が経つにつれて増えるのか減るのかは予測しづらいです。
コースが少なくなったことで1つのコースに対して遊ぶ人が増えるともとれますし、そもそもユーザーが減って遊ぶ人数も減るため、さらに削除率が高くなるとも考えられます。

とにかくこの81%という割合を、投稿サービス終了の時点で投稿されたコース数に当てはめてみます。

68,559,301×0.8096=55,505,610

よって、約5500万のコースが削除されていると予測できます。
とんでもない数ですね。
現存するコースは13,053,691コースほどしか無いという計算になります。

4.最後に

ここまでマリオメーカー1のIDに関する事を述べてきました。
IDに関連して、色々な事に触れられたと思います。

2についても興味がありますが、今のところ分かっていません。
どなたか知っている人がいれば、教えてくれると助かります。

この記事が気に入ったらサポートをしてみませんか?