情報科学屋さんを目指す人のメモ

方法・手順・解説を書き残すブログ。私と同じことを繰り返さずに済むように。

まだ使えるポケモン地図「Go Radar」の仕組み調査メモ(2016年10月9日)

Go Radar (5) iPhone (750) P-GO SEARCH (22) ポケモンGO (157) ポケモンGO-ポケモン地図 (33)

ポケモン地図「P-GO SEARCH」が使えなくなった現在、「まだ使えるポケモン地図」として人気なのが「Go Radar」です

「P-GO SEARCH」や「ポケタン」など、多くのポケモン地図が利用不能になったのは、非公式APIの変更への対応の遅れが原因なのですが、ではどうして「Go Radar」はまだ使えるのか、が問題になってきます。また、「Go Radarは危険」「個人情報が抜かれる」などとも言われています。

これらの疑問について調べてみた結果を、ここにまとめておきます。

P-GO SEARCH等多くのポケモン地図アプリの仕組み:ポケモンGOの非公式APIを利用

P-GO SEARCHやその元データとなっていたSkiplaggedは、ポケモンGOアプリが内部的に使っているAPIを勝手に使用して、好きな位置について周囲のポケモン出現情報をサーチする仕組みで動作していました(本当はこんなひと言では言えない複雑で大規模な全体構造を持つのですが、根幹はやはり非公式APIの不正使用)

※P-GO SEARCHとSkiplaggedの関係と仕組みについてはこちら

そんな中、その肝心の「API」が「0.35」から「0.39」にバージョンアップしてしまったことで、ポケモン地図アプリ側の対応が必要になり、まだその対応が終わっていない(そして不正利用対策が強固になっておりなかなか突破できない)ため、軒並みAPIを利用していたポケモン地図が利用不能になってしまっている、というのが10月8日以降の状況です。

これが噂の「ハレー彗星アップデート」です。

詳細:ポケモン地図P-GO SEARCHが使えない原因「ハレー彗星」の意味と対策状況や復活見込みについて(2016年10月9日)

ポケモン地図「Go Radar」が人気

世界中の多くのポケモン地図アプリが利用不能になる中で、まだ使えると話題のアプリが「Go Radarです。

pokemon-go-go-radar-crowdsourced-data

Go Radarの仕組みについての疑問

しかし、非公式APIの解析がなかなか終わらない現状で、なぜ「Go Radar」だけがまだポケモンの位置を表示できるのかは、多くの人が疑問に思うところと思われます。

Go RadarのAppStoreにある説明文には、仕組みについて、次のように書かれています。

We track over 140,000 currently spawned Pokemon at all times using crowdsourced data from users. No login is necessary and it's completely free! 引用元

ポイントは「crowdsourced data from users」です。ここでのcrowdsourceとは、小さい作業だけれども数が多くコンピューターではやりにくい計算を、大量の人間に安価もしくは無料で処理してもらう手法のことで、crowdsourced data from usersという言い回しは、「多くのユーザーが代わりに取得および提供してくれたデータ」のような意味合いです。

となると、Go Radarに「ポケモンの発見を投稿する機能」があるような気がしてしまうのですが、そういうわけではありません。Go Radar自体に、ポケモンを見つけた場所を投稿する機能はありません

よく見かけるGo Radarの仕組みの説明に対する疑問

このGO Radarの仕組みについて調べてみると、まず「crowdsourced data from users」という文字だけから説明されている、「ユーザーが投稿している」というふんわりとした、知りたいことが書かれていない説明が目立ちます。

それを除くと、日本語情報では「Go Radarを入れているユーザーが増えれば増えるほど地図が正確になる(=Go Radarが位置情報を取得している)」や「ポケモンGOアプリに出現した情報をGo Radarがアップロードして共有している」などと説明されています。

しかし前者についてはGo Radar自体にログイン情報を入れていないこと、後者についてはGo RadarからポケモンGOのデータを抜くことができるのかという点が怪しく感じてしまいます。

Go Radarの仕組みについて納得感の高い別の説

次の文章で説明されている仕組みが、最も納得のいくものでした

It uses data harvested from iOS users who have installed the PoGo++ modified Pokemon Go.
So in essence it is using crowded sourced data WITHOUT users being able to input troll data, avoiding the main issue of most crowd sourced maps. 引用元

つまり、位置偽装や個体値表示などができる改造版のポケモンGOアプリ「Pokemon GO++(PoGo++, Pgo++)」の利用者が発見したポケモンの位置情報を吸い上げて、Go Radarが表示するポケモン位置の元データにしているという説明です。

PGO++とGo Radarの作者が一緒

というのも実は、改造版ポケモンGOアプリ「PGO++(Pokemon GO++, PoGO++などとも表記される)」と、地図アプリ「Go Radar」は同じ作者Will Cobb)のアプリなのです。

Poke Go++ is the most advanced 3rd party client I have seen to date. Developer Will Cobb has just merged his Go Radar Pokemon Go tracker into his Poke Go++ app. Cobb has somehow been able to enhance the official Pokemon Go app with his own code. 引用元

Pokemon GO++は、公式のポケモンGOアプリを改造しているアプリであるため、非公式APIの解析は不要で、本家ポケモンGOのアップデートに追従さえしていれば、ポケモンの位置情報は抜き続けることができるわけです(本物の実装に乗っかっているため)

この仕組みであれば、今回のAPIのアップデートの影響を回避できた点なども含めて、かなり納得がいきます

また逆に、ポケモンの情報に地域差が大きく、全体的に少ないのも、納得がいきます。

ここでもう一度他の説について考えてみると、確かにGO Radar自体が単純に検索機能を持っているとすれば、アカウントの情報が必要のはずなのですが、「単純に」という限定を外せば、Go Radarからのリクエストを、PGO++ユーザーにオンデマンドで肩代わりさせるなんていう手の込んだ仕組みが動作している可能性はありそうです。

どちらにせよ、Go Radarの作者が、PGO++の作者であり、PGO++ユーザーを抱えている、という点が、Go Radarだけが特別生き残ることができていることと大きな関係があるというのは見逃してはいけないポイントです。

そのため、他のアプリがおいそれとGo Radarの真似をするのは容易ではありません。GO Radarはだいぶ「特別な存在」のようです。

Go Radar に表示されるポケモンが増えるには

ここまでのことを考えると、Go Radar に表示されるポケモンの数が増えるためには、日本国内でPGO++を使う人が増える必要がありそうです。

シェア用ツイート

参考

関連

コメント(0)

新しいコメントを投稿