Jump to content

乱数生成器のアルゴリズムのバグと変更


Ami
 Share

Recommended Posts

2013115日―乱数生成器のアルゴリズムを変更~スティーブからのメッセージ~

 

あなたが乱数生成器の神の怒りを買っているように感じているプレイヤーの一人だとしたら、今日からは神の落し物がより公正でバランスの取れていることに気付くことでしょう。

 

グレン(当社の技術ディレクター)が、Warframe の乱数生成器における配分の重大な不備を突き止め修復したのです。敵のドロップには重大に影響していませんでしたが、ミッション報酬のスクリプト内でランダムに生み出される「種」において計算処理の切り捨てが発生し、結果として報酬が偏ってしまうことが続いていました。中にはこれによって便宜を受けたプレイヤーもいます(欲しいものがすぐ手に入る)が、とにかく配分がひどかったのです。

 

背景 ― ドロップ品以外にも、ゲーム内では多くのランダムの数字が使われます。例えばセキュリティカメラを破壊すると火花が飛び散りますが、その粒子一つ一つの飛ぶ方向は乱数生成器によって決まります。よってゲームには視覚効果やほかのことに関し多くの乱数生成器が必要で、ゲームの進行を快適にするために、できるだけ能率的に活用された乱数生成器を実際に導入しています。ここで問題となるのは、速度と引き換えに均質化(どれだけランダムにできるか)を犠牲にしてしまうことです。

 

ドロップ用の乱数生成器の速度は遅いため公正で、決められたドロップ率を忠実に反映しています。新しく変更されたコードは以前よりずっと遅く均質化されており、武器や WARFRAME の部品などあらゆるドロップアイテムに関わってきます。

 

乱数生成器がフラストレーションをもたらし、申し訳ありません。自動化されたテストを通し、今後退行しないように尽力します。下記に張り付けた画像は、これらのテスト結果のコントラストを上げたイメージです。バグのある乱数生成器はひどい走査線状の縦縞が見えます。高速化された乱数生成器は計算処理の切り捨てエラーがなく、より優れているが未だ明確に模様が見えます。グレンの新しいコードは、配分が飛躍的に改善されています。

 

ご清聴ありがとうございました。ゲーム内で会いましょう、テンノ!

 

Er056kr.pngSmHhNzR.pngdPNh8nd.png

 

左からバグあり、高速化されたもの、修正されたもの

 

上記の画像は、各乱数生成器の技術が続けてコインを投げる様子を出力したものです。白が表で黒が裏です。戦利品のドロップテーブルが公正で配分が十分行われるには、乱数生成器の出力の様子が砂の嵐みたいに見えている必要があります(今回の取り組みがこれに当たる)。

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
 Share

×
×
  • Create New...