💬
Rensole: 単語の類似度を使った連想ゲームを作った
単語の類似度を使った連想ゲーム Rensole を作りました。日本語・英語・中国語 に対応しているので、遊んでみてね。
単語探索ゲームとしては最近 Wordle が人気みたいですね。名前は似ていて、やることも似ていますが、正直ゲームとしてはあまり似てないと思う…。作者が雑なので、もっとサクサクとプレイできるゲームにしました。レベルが選べるし、毎日何回でもプレイできるし、ヒントもガンガン出します。
遊び方
- 単語 (表記ゆれする名詞・動詞・形容詞の原形) を入力する
- 上位 10位までの最も類似度の近い単語を毎回ヒントする
- 読み方 (ローマ字、発音記号、ピンイン) や履修学年もたまにヒントする
- 上記を手掛かりに 11回以内で答えを当てる
要素技術
要素技術から作る必要があったので開発には意外と時間が掛かりました。たとえば fastText で日本語・英語・中国語の類語辞書を作ったり、英語の発音辞書 を作ったりしました。他にも 英語の頻度順辞書 や 日本語の頻度順辞書 が必要になります。これらもだいぶ前に自作しています。
またサービス運営にはコストの最小化が必須です。昔だったら単語の類似度計算をバックエンドで実装する必要があったので、サーバ代が高くて即終了だったでしょう。今ならサーバーレスで DB を運用する方法が充実してきて安くできますが、突然の DDoS 死など心配はつきものです。そこで今回はフロントエンドで SQLite を動かすことで、確実なコストゼロを実現しています。フロントエンド で SQLite を動かす技術は 2019年に確立されていましたが、実装も進化してきて、また 2022年に主要なブラウザで使えるようになりました。もう何も怖くない。
真面目に中身を説明し始めると無駄に長くなるので、技術的な話と、ゲーム性の話に分けて、詳細はブログにまとめました。興味のある方はこちらもどうぞ。
Discussion