ゲーム作るくんのサイト
ゲーム作るくん
Twitter

「このゲームはこのゲームに似ています」という情報を見ることのできるサイトを作る

なぜ作るのか

普段私は Steam でゲームを探すことが多いんですが、だんだん Steam のおすすめするゲームが枯渇してきた(一周してきた)という感覚があって、Steam とは違う方法でゲームをおすすめできないだろうか、と考えました。

どんな仕組みか

基本的には「このゲームに似てるゲームはこれですよ」というのを出そうかと思っています。

そういうのはよくあるのでは

よくあると思うので、何か違う要素を入れたいなと思いました。

具体的な差別化ポイント

ゲームの特徴を、そのゲームについて書かれたテキストを解析することによって抽出しよう、と考えています。

ジャンルをもう少し細分化したのがタグだとして、それをさらに細分化したのがゲームついて書かれたテキストに出てくる単語なんじゃないか、という考え方です。

解析手法

「日本語を形態素解析して特徴語を抽出」という、よくある方法で実装しようかと考えています。あまり複雑なことをしなくても良いかなと。

考えないといけないこと

ゲームのタイトルを一通り辞書に入れる

品質の高いデータソースを使う

一般的すぎる単語は除外する

どの品詞を使うのか決める

ゲームの場合は名詞だけでなく、形容詞、動詞なども重要だと思うので。

静的 HTML として公開したい

サーバーのスペックが低くても動くよう、静的 HTML として公開したいと考えています。

提供する情報

ゲームのタイトル

ゲームの簡単な説明

ゲームのスクショ

著作権的にゲームのスクショは載せられないため、公式 Twitter アカウントの埋め込みとか、Amazon 商品ページへのリンクとか、そういう形になってしまうかと思います。

そのゲームの特徴語

ワードクラウドか何かの描き方でそのゲームの特徴語を載せる、というイメージです。

文字の大きさでゲームの特徴を視覚的に分かりやすく表示できれば OK です。

上位 100 単語くらいで十分なんじゃないかと思いますが、1,000 個くらい出した方が面白いのかも。

そのゲームと同じ特徴語を持つゲームタイトル

雑に言うと「そのゲームと似たゲーム」ということになると思います。

それを似てる順に 10 〜 100 個くらい表示するイメージですかね。これも文字サイズで類似度表しても良いかも。

特定の単語を特徴語として持つゲームランキング

「オープンワールド」という単語を頻繁に使っているゲームはどれなのか? みたいなことが一覧で分かるページをいくつか用意しようかと。

静的 HTML だと提供するのが難しそうな情報

このあたりは、データ量が少ないのであれば(具体的にはデータ量が 5MB 程度に収まるのであれば)、すべてブラウザ側にデータをダウンロードしてしまって検索できるようにする、とかでも良いかもしれません。

ちょっと適当に見積もってみると、

ゲームタイトル 1,000 * 関連単語数 100 * 文字数 10 = 1,000,000 文字

という感じで、この程度の情報なら通信速度的にもブラウザのメモリ的にも特に問題ないと思うので、クライアント側に検索ツールを実装しようかと思います。

進め方

いきなり 1,000 タイトルのゲーム情報を集める、とかは難しいので、とりあえず自分が遊んだことのあるゲーム 100 タイトルくらいを見繕って、手作業でテキストを集めていこうかと思います。

その 100 タイトルについて出た関連度や単語が、「あ〜、たしかにこういう感じ」となったら、いったんそれで公開してみようかと。

で、微調整しながらタイトルを徐々に増やしていく、という感じですね。

ちなみに Steam には 5 万本くらいのゲームが登録されているそうで、これ全部載せるのは厳しそうなので、基準としては「日本語対応していて、日本語でレビューや紹介が書かれているゲーム」というのをターゲットにしようかなと思います。

あとは、テキスト情報が少なすぎる場合も解析は難しいので「単語が 100 個以上抽出できたゲーム」というのを基準にしようかと思います。

関連テキストが多いゲームから順番に対応していけば OK でしょう。