プレイ日記
プチコン3号ってどうやって 乱数所得してるんですか? シードIDとかの意味を調べてみたら、 いろいろな方式が出てきたので。 連続で質問してごめんなさい><
4そうだね
プレイ済み
返信[1]
親投稿
れい rei-nntnd
前おちゃめ氏と議論したんだけど。わかんね。 線形合同法じゃない。 knuthでもない。 xorshiftでもない。 検証しようとおもって3日くらい動かしてたことあるんだけどダメだった。 メルセンヌあたりの現代的なの使ってる可能性高い。 社長に質問したらスルーだった。
4そうだね
プレイ済み
返信[2]
親投稿
昔、パソコンで 時間から乱数作ってたわ。 3DSはどうですか?
3そうだね
プレイ済み
返信[3]
親投稿
さーせん。 めぐりは、RPGの レベル上げしますわね。
1そうだね
プレイ済み
返信[4]
親投稿
気になるよね。 ゲームバランス変わるし。
0そうだね
プレイ済み
返信[5]
親投稿
nobu divine-creator
めぐり先生、昔パソコンで時間から乱数作っていた|д゚)?!……そんな前からプログラミングしていたの?!(プチコンから始めたというわけじゃなかったのかー?) そして、れいさん&おちゃめさんでも分からないことってあるんですね!(プチコンには、まだまだ秘密の部分が存在していたのかー?)
0そうだね
プレイ済み
返信[6]
親投稿
れい rei-nntnd
めぐり先生は6歳だから。 余計な事いうとnobu氏消されるよ?
0そうだね
プレイ済み
返信[7]
親投稿
nobu divine-creator
6歳の昔っていうと、3歳頃? 天才児の時間感覚は、常人には理解不能…((+_+))。 (場合によっては、1年前でも昔になるのか…?)
0そうだね
プレイ済み
返信[8]
親投稿
ダニィ!? まあいいや←良くねぇよ 質問変更。(ぇ シードIDの使い方を教えてください!
1そうだね
プレイ済み
返信[9]
親投稿
れい rei-nntnd
おなじIDなら同じ乱数列が取得できる。 以上だ。 健闘を祈るっ
1そうだね
プレイ済み
返信[10]
親投稿
シード値とIDって違うの!? エントロピー情報って・・・? もう何がなんだか。
1そうだね
プレイ済み
返信[11]
親投稿
MIKI ifconfig
擬似乱数が 8 系列あって、 ID はどの系列を使うかって指定。 シード値は擬似乱数の初期値みたいなもの。 系列ごとに異なる初期値を与えられる。 エントロピーは、プチコン起動してからの時間とか、打鍵間隔や、ネットワークパケットの受信間隔とかの(擬似乱数によらない)デタラメな数値。 そのデタラメな数値をシードに使いますよってこと。
1そうだね
プレイ済み
返信[12]
親投稿
あきと SideBurnsM
シードIDというのは別々に乱数を取得する事ができるという意味です。0~7なのでプチコン3号では8つの別々な乱数を発生できると。 迷路をランダム生成したいけど、敵の配置はまた別の乱数でしたいという時にシードIDを分けて使えば実現できます。 エントロピー情報っていうのはこういう時に使う言葉なのか分かりませんが、要はカレンダーや時計の時間、プチコンが立ち上がってから何秒経っているか等(他にも色々)の情報を組み合わせて毎回同じ乱数の初期化にならないように工夫してますよという意味だと思います。
1そうだね
プレイ済み
返信[13]
親投稿
なるほど。同じ乱数を得たければ、 シード値とIDを設定すれば良いんですね♪
0そうだね
プレイ済み
返信[14]
親投稿
シードIDは0じゃないと、 おんなじ値にはならないみたいです。
0そうだね
プレイ済み
返信[15]
親投稿
MIKI ifconfig
rnd() にもシードID 指定しないと。 ヘルプ読んでみてちょ。
0そうだね
プレイ済み
返信[16]
親投稿
RND()の方のシード値ってなんなんだろう? 両方指定しないとダメなんですね。
0そうだね
プレイ済み
返信[17]
親投稿
MIKI ifconfig
シード ID だってば!! rnd(x) は rnd(0, x) つまり系列 0. randomize 0 で初期化 rnd(1, x) が系列 1. rondomize 1 で初期化 rnd(2, x) が系列 2. rondomize 2 で初期化
0そうだね
プレイ済み
返信[18]
親投稿
※ただいま混乱中… あ、なるほど、「別の乱数」って。 ああ。そう言うことか。
0そうだね
プレイ済み
返信[19]
親投稿
出来ました出来ました^^ ああ、プログラムスロットみたいに、 乱数表的なもの (多分この表現は間違ってる) を別に用意してあるんですね。
0そうだね
プレイ済み