なろらんガチャを作ってみる
今回はガチャ機能を作ります。
前回、検索ができるようにしましたが、実際に使ってみて面倒になる時もありました。元気な時は色々と検索したり並べ替えしたりするのですが、疲れている時は正直スクロールしたり、大量の作品の中から選んだりするのも面倒になります。
なので、スクロールしたり、選んだりすることすら面倒だという人のための機能も作ります。
似たような例として、ジャムの法則というがありますね。品揃えが多ければ多いほど逆に選べなくなるというものです。
コロンビア大学のお偉い先生が、人間は選択肢の数が多すぎると選べないということをスーパーマーケットで実証したお話。
詳しくは検索してもらえればいいのですが、24種類のジャムと6種類のジャムを並べてどっちが売れるかってやったら、選択肢の少ない方のジャムがよく売れたということです。
そういう効果もあるようなので、選択肢を狭める、また吟味させない手段もあるとよさそうですね。
ここで実装するガチャは、小説のなかからランダムに1個選んで表示させるもの。
そうすると、いくつもある小説からどれを選ぶか、というものから、表示されたものを読むか読まないかという2択になります。
選択の幅が非常に狭まるので、選びやすい効果もあるんじゃないかなって思います。
--- 実装 ---
まぁ、作ると言っても前回の検索のやつを1つづつ表示させるだけで実現させます。
出てくるものはランダムにする部分を作ります。
NovelList.show( Math.floor(Math.random() * NovelList.matchingItems.length), 1);
これだけでランダムなものが出てきます。
Math.random()は0~1の数値をランダムに表示させるもので、それにListの個数を掛けると個数内のランダムな数値になります。
これを、ガチャを回すたびに動かすと、小説リストの中からランダムに作品が表示されます。
いちいち作品を捨てているわけではないので、重複されて表示されることもあります。まぁ2回同じのが表示されても困るわけでもないので無限ガチャにしておきます。
スマホだとボタンを押しにくいかもしれないのでメニューのところにボタンを用意します。
こんな感じかな。
ボタンはお遊びです。どれを押しても作品がランダムに変わります。
とりあえず出てきた作品を読むか読まないかの選択になるのと、ボタンをポチポチするだけ。PCであれば←→キーでガチャを回せるのでポテチ食べながらでもいけます。
ŧ‹"ŧ‹"(*´ч`*)ŧ‹"ŧ‹"
これで面倒な時にポチポチと回せますね。
ガチャソースは検索と同じで色々と選べます。
何回かやった感じ、日間のマイナージャンルを選ぶと高確率で読んだことのない作品が出てきます。まぁ、エタ作品も多く出るので当たりはずれは多いです。ノンジャンルはカオス。
もし、ある程度しっかりした作品を読みたい場合はランキング集計期間を長めにするといいかと思います。
気分によって変えてみるのもいいんじゃないかなって思います。
これでガチャも完了です!
ガチャ機能ある小説投稿サイトは実はあるんですよ。
ノベリズムっていうところなんですが、
”ノベリズム、ついにWEB小説最強スコップ機能実装!?
……ではなかった。
エンジニアさん5分で考えたノベリズムおもちゃ機能、よかったら試してください。”
https://twitter.com/novelismjp/status/1329686329605509123
っていうツイートもしていてなかなか面白いですよね。
あとは、PiPi's World 投稿小説っていう官能小説投稿サイトに”ランダム検索”という機能があります。これもガチャに近いですね。
なろうさんで。ガチャ実装しても普通に面白いと思うけどね。