[表示 : 全て 最新50 1-99 101- 2ch.scのread.cgiへ]
Update time : 07/24 13:01 / Filesize : 40 KB / Number-of Response : 129
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

【ゲームで、この処理ってどーやってんの?】



29 名前:1 [2018/05/31(木) 09:15:43.81 ID:N+l2Be6d.net]
>>27
スレチですが。

乱数関係だと。

一定の確率で複数の分岐処理を扱う時。

1番最初は
select case 0to0.2
〜case 0.6to0.7みたく直接数字書いたけど、もっと楽にできないかと考えました。

で、分岐させたい数の配列t(n)を作り、
その中に確率の大小を入れ(合計が100にならなくても良い)
、t(n)の値の合計sumを出し、それを使ってt2(n)に0.0〜1.0の範囲として割り振る。
例えば3つの分岐で、1つめが45、2つめが90、3つめが15だとすると、合計150なので、1は30%、2は60%、3は10%
なので、0.3,0.6,0.1となり、t2(0)は0.0と0.3
t(1)は0.3と0.9、t2(2)は0.9と1.0の開始値と終了値を格納。
ここらへんは、ちょっと冗長。終了値だけで事足りそう。

で、乱数を出し、
n回だけ繰り返してそれがどの範囲かの番号を返す。

その後それぞれの処理へ。

要約すると、、、
t(n)にそれぞれの当たり確率を適当な整数で示せば、その内のどれに当たるかを返してくれる関数。

分岐の確率を手書きしなくて済むことと、合計100にしなくても良くなった瞬間でした。






[ 続きを読む ] / [ 携帯版 ]

全部読む 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](*・∀・)<40KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef