乱数調整Wiki(仮)
http://w.atwiki.jp/prng/
乱数調整Wiki(仮)
ja
2015-04-12T16:42:10+09:00
1428824530
-
第3世代/RS/野生乱数
https://w.atwiki.jp/prng/pages/38.html
通常の草むら、釣り、波乗りの場合以下の通り。
サファリゾーンはポロックの処理が入るため少し異なる。
//詳しくはそのうち…
シンクロ等は効かない。
釣りは釣れるかの判定と独立している。
[2015/02/03] kの増加について補足
[2015/04/11] 持ち物について補足
[2015/04/12] 持ち物決定部分の修正
>$$r_n\mod{100}$$ が出現スロット決定用
>$$r_{n+1}\mod{(\text{maxLv}-\text{minLv})} +(\text{minLv})$$ でレベル決定。レベル範囲なければスキップ
>$$r_{n+2}\mod25$$ で性格決定
>以下k=0からループ &bold(){(kは2ずつ増加)}
>$$r_{n+3+k}$$ をPID下位16bit
>$$r_{n+4+k}$$ をPID上位16bitとしてPID仮決定
>$$\text{PID}\mod25$$ が先ほど決めた性格と一致すればループ終了、PID決定
>$$r_{n+5+k}$$ の下位から5bitずつHABの個体値決定
>$$r_{n+6+k}$$ の下位から5bitずつSCDの個体値決定
>$$r_{n+7+k}$$ ~ $$r_{n+11+k}$$ がスキップ
>$$r_{n+12+k}\mod{100}$$ が持ち物決定用
出現スロットについては以下の通り
-くさむら
|出現|決定用|
|0|0-19|
|1|20-39|
|2|40-49|
|3|50-59|
|4|60-69|
|5|70-79|
|6|80-84|
|7|85-89|
|8|90-93|
|9|94-97|
|10|98|
|11|99|
//
-ボロのつりざお
|出現|決定用|
|0|0-69|
|1|70-99|
//
-いいつりざお
|出現|決定用|
|0|0-59|
|1|60-79|
|2|80-99|
//
-すごいつりざお
|出現|決定用|
|0|0-39|
|1|40-79|
|2|80-94|
|3|95-98|
|4|99|
//
-なみのり
|出現|決定用|
|0|0-59|
|1|60-89|
|2|90-94|
|3|95-98|
|4|99|
持ち物については以下の通り
-ふくがん無し
|持ち物|持ち物値|
|5%|95-99|
|50%|45-94|
|100%|0-99|
-ふくがん有り
|5%|80-99|
|50%|20-79|
|100%|0-99|
持ち物一覧
[[List of Pokémon by wild held item - Bulbapedia, the community-driven Pokémon encyclopedia>http://bulbapedia.bulbagarden.net/wiki/List_of_Pok%C3%A9mon_by_wild_held_item]]
2015-04-12T16:42:10+09:00
1428824530
-
第3世代/Em/野生乱数
https://w.atwiki.jp/prng/pages/40.html
[[RSの野生乱数>第3世代/RS/野生乱数]]に似ているが、細かいところでいくつか異なる。
通常の草むら、釣り、波乗りの場合以下の通り。
サファリゾーンはポロックの処理が入るため少し異なる。
釣りは釣れるかの判定と独立している。
先頭が通常ポケモンか特性シンクロの場合のみ記述。
//他の場合はそのうち…
>$$r_n\mod{100}$$ が出現スロット決定用
>$$r_{n+1}\mod{(\text{maxLv}-\text{minLv})} +(\text{minLv})$$ でレベル決定。レベル範囲なければスキップ
>シンクロが先頭の時、$$r_{n+2}$$ の最下位bitが0ならシンクロ成功で、性格はそのシンクロの性格で決定
>1ならシンクロ失敗で、$$r_{n+3}\mod25$$ で性格決定
>先頭が通常ポケモンの場合は$$r_{n+2}\mod25$$ で性格決定
>シンクロ失敗の場合のみ以下添字の()内の+1を追加
>以下k=0からループ
>$$r_{n+3(+1)+k}$$ をPID下位16bit
>$$r_{n+4(+1)+k}$$ をPID上位16bitとしてPID仮決定
>$$\text{PID}\mod25$$ が先ほど決めた性格と一致すればループ終了、PID決定
>$$r_{n+5(+1)+k}$$ はスキップ(メソッド2によるもの)
>$$r_{n+6(+1)+k}$$ の下位から5bitずつHABの個体値決定
>$$r_{n+7(+1)+k}$$ の下位から5bitずつSCDの個体値決定
出現スロットは[[RSの野生乱数>第3世代/RS/野生乱数]]と同じ。
2015-04-12T02:11:29+09:00
1428772289
-
トップページ
https://w.atwiki.jp/prng/pages/1.html
**乱数調整Wiki
ポケモンの乱数調整についてまとめる予定です。
ぼちぼち編集していきます。
理論重視にしようかなーと。
編集したい方は荒らしにならない程度にどうぞ。
管理人:[[@prng_wiki>http://twitter.com/prng_wiki]]
----
***コメント
#comment()
2013-01-07T23:12:08+09:00
1357567928
-
メニュー
https://w.atwiki.jp/prng/pages/2.html
**[[トップへ>トップページ]]
-[[乱数調整とは]]
-[[基礎知識]]
-[[第3世代]]
--[[RS>第3世代/RS]]
---[[ID調整>第3世代/RS/ID調整]]
---[[固定乱数>第3世代/RS/固定乱数]]
---[[徘徊乱数>第3世代/RS/徘徊乱数]]
---[[野生乱数>第3世代/RS/野生乱数]]
---[[孵化乱数>第3世代/RS/孵化乱数]]
--[[FRLG>第3世代/FRLG]]
---[[ID調整>第3世代/FRLG/ID調整]]
---[[固定乱数>第3世代/FRLG/固定乱数]]
---[[徘徊乱数>第3世代/FRLG/徘徊乱数]]
---[[野生乱数>第3世代/FRLG/野生乱数]]
---[[孵化乱数>第3世代/FRLG/孵化乱数]]
--[[Em>第3世代/Em]]
---[[ID調整>第3世代/Em/ID調整]]
---[[固定乱数>第3世代/Em/固定乱数]]
---[[徘徊乱数>第3世代/Em/徘徊乱数]]
---[[野生乱数>第3世代/Em/野生乱数]]
---[[孵化乱数>第3世代/Em/孵化乱数]]
-[[第4世代]]
--[[DPt>第4世代/DPt]]
---[[ID調整>第4世代/DPt/ID調整]]
---[[固定乱数>第4世代/DPt/固定乱数]]
---[[徘徊乱数>第4世代/DPt/徘徊乱数]]
---[[野生乱数>第4世代/DPt/野生乱数]]
---[[孵化乱数>第4世代/DPt/孵化乱数]]
--[[HGSS>第4世代/HGSS]]
---[[ID調整>第4世代/HGSS/ID調整]]
---[[固定乱数>第4世代/HGSS/固定乱数]]
---[[徘徊乱数>第4世代/HGSS/徘徊乱数]]
---[[野生乱数>第4世代/HGSS/野生乱数]]
---[[孵化乱数>第4世代/HGSS/孵化乱数]]
-[[第5世代]]
--[[BW>第5世代/BW]]
---[[ID調整>第5世代/BW/ID調整]]
---[[固定乱数>第5世代/BW/固定乱数]]
---[[徘徊乱数>第5世代/BW/徘徊乱数]]
---[[野生乱数>第5世代/BW/野生乱数]]
---[[孵化乱数>第5世代/BW/孵化乱数]]
--[[BW2>第5世代/BW2]]
---[[ID調整>第5世代/BW2/ID調整]]
---[[固定乱数>第5世代/BW2/固定乱数]]
---[[徘徊乱数>第5世代/BW2/徘徊乱数]]
---[[野生乱数>第5世代/BW2/野生乱数]]
---[[孵化乱数>第5世代/BW2/孵化乱数]]
----
**アクセス
|total|&counter()|
|today|&counter(today)|
|yesterday|&counter(yesterday)|
----
//
//-[[プラグイン紹介>プラグイン]]
//-[[まとめサイト作成支援ツール]]
//-[[メニュー]]
//-[[メニュー2]]
//
//----
//
//**リンク
//-[[@wiki>>http://atwiki.jp]]
//-[[@wikiご利用ガイド>>http://atwiki.jp/guide/]]
//
//**他のサービス
//-[[無料ホームページ作成>>http://atpages.jp]]
//-[[無料ブログ作成>>http://atword.jp]]
//-[[2ch型掲示板レンタル>>http://atchs.jp]]
//-[[無料掲示板レンタル>>http://atbbs.jp]]
//-[[お絵かきレンタル>>http://atpaint.jp/]]
//-[[無料ソーシャルプロフ>>http://sns.atfb.jp/]]
//
// リンクを張るには "[" 2つで文字列を括ります。
// ">" の左側に文字、右側にURLを記述するとリンクになります
//
**更新履歴
#recent(15)
&link_editmenu(text=ここを編集)
//
2012-12-26T06:35:49+09:00
1356471349
-
第3世代/RS/孵化乱数
https://w.atwiki.jp/prng/pages/42.html
タマゴの生成時と受け取り時の2段階に分かれる。
[[エメラルドの孵化乱数>第3世代/Em/孵化乱数]]と異なり、かわらずのいしの効果はない。
先親、後親は預けた順。
-生成時
ポケモンを預けてから255歩ごとに生成判定。
その時に、以下の処理を行う。
>$$r_n\times\text{0x64}\div\text{0xFFFF}$$ が両親の相性により20or50or70未満の時タマゴ生成、次に進む
>$$r_{n+1}\mod\text{0xFFFF}+1$$ で性格値下位16bitを決定
-受け取り時
タマゴを受け取ったときに以下の処理を行う。
>$$r_n$$ で性格値上位16bitを決定
>$$r_{n+1}$$ スキップ
>$$r_{n+2}$$ の下位から5bitずつHABの仮個体値決定
>$$r_{n+3}$$ の下位から5bitずつSCDの仮個体値決定
>$$r_{n+4}$$ スキップ
>$$r_{n+5}...r_{n+7}$$ 遺伝個所決定、詳しくは下で
>$$r_{n+8}$$ の最下位bitで1箇所目の遺伝親決定、0が先親、1が後親
>$$r_{n+9}$$ の最下位bitで2箇所目の遺伝親決定、0が先親、1が後親
>$$r_{n+10}$$ の最下位bitで3箇所目の遺伝親決定、0が先親、1が後親
>決定された3つの遺伝個所を1つ目から順番に上書きする(重複は後のものが優先される)
遺伝個所が重複する可能性があるので、遺伝個所は3つとは限らない。
調整するタイミングは受け取り時の最後のセリフで。
で、肝心の個体値遺伝は以下のようになっている。
>p=<0,1,2,3,4,5> &font(green){// 遺伝可能箇所、左から0~5番、中の数字0~5がHABSCDに対応}
>以下iを1から3までループ
>>i番目の遺伝個所をpの$$r_{n+4+i}\mod(7-i)$$ 番の数字で決定する
>>上で計算した&font(red){数字番の数字}をpから削除し、それより右側の数字を1つ左にずらして番号を1つ減らす
>>&color(green){// 例えば<0,1,3,4,5,->の時に遺伝個所が2番(2番の数字3に対応するS)になった場合、}
>>&color(green){// 計算した数字が3なので削除されるのは3番の4、残りは<0,1,3,5,-,->になる}
//分かり辛いw
赤字部分が遺伝個所が3箇所とは限らない原因。
[[Em孵化乱数>第3世代/Em/孵化乱数]]とはまた少し異なる。
2012-12-05T17:16:10+09:00
1354695370
-
第3世代/RS/固定乱数
https://w.atwiki.jp/prng/pages/30.html
所謂method1。
シンクロ等は効かない。
>$$r_n$$ が性格値下位16bit
>$$r_{n+1}$$ が性格値上位16bit
>$$r_{n+2}$$ の下位から5bitずつHABの個体値
>$$r_{n+3}$$ の下位から5bitずつSCDの個体値
2012-12-05T16:12:11+09:00
1354691531
-
基礎知識
https://w.atwiki.jp/prng/pages/31.html
**表ID
見えているトレーナーID。
TID。
**裏ID
見えていないID。
色違い乱数をするには知る必要がある。
SID。
**個体値
>H : HP
>A : 攻撃
>B : 防御
>C : 特攻
>D : 特防
>S : 素早
いずれも0-31(0x1F)
**性格値
32bit。
PIDと呼ばれたりも。
ここではPID下位16bitをLID、上位16bitをHIDと書くことも。
特性、性別(第4世代までは性格も)、色違いと対応がある。
第4世代までと第5世代とでは特性の対応も異なるので注意。
特性は0なら特性1、1なら特性2。
性別、性格の対応は以下に。
-第3世代、第4世代
>特性:PID最下位bit
>性別:PID下位8bit
>性格:PID mod 25
>色違い:HID xor LID xor TID xor SID < 8
-第5世代
>特性:PID上位から16bit目
>性別:PID下位8bit
>色違い:HID xor LID xor TID xor SID < 8
**性別
性格値により性別値0-255(0xFF)と対応がある。
それを元に♂♀両方の性別が存在する場合以下のように決まっている。
|♀♂比|♀|♂|
|1:7|0-30|31-255|
|1:3|0-62|63-255|
|1:1|0-126|127-255|
|3:1|0-190|191-255|
**性格
0-24との対応表を書いておく。
||性格|
|0|がんばりや|
|1|さみしがり|
|2|ゆうかん|
|3|いじっぱり|
|4|やんちゃ|
|5|ずぶとい|
|6|すなお|
|7|のんき|
|8|わんぱく|
|9|のうてんき|
|10|おくびょう|
|11|せっかち|
|12|まじめ|
|13|ようき|
|14|むじゃき|
|15|ひかえめ|
|16|おっとり|
|17|れいせい|
|18|てれや|
|19|うっかりや|
|20|おだやか|
|21|おとなしい|
|22|なまいき|
|23|しんちょう|
|24|きまぐれ|
2012-12-05T16:11:49+09:00
1354691509
-
第3世代
https://w.atwiki.jp/prng/pages/16.html
-[[RS>第3世代/RS]]
-[[FRLG>第3世代/FRLG]]
-[[Em>第3世代/Em]]
//
初期シードは0x0000XXXX
1fごとに以下の通り更新される。
>$$S_{n+1}=S_n\times\text{0x41C64E6D}+\text{0x6073}$$
1fは約1/60秒。
説明のために
>$$r_n=S_n>>16$$
とおいておく。
逆算する場合は
>$$S_{n-1}=S_n\times\text{0xEEB9EB65}+\text{0xA3561A1}$$
メソッドずれという現象が存在する。
現象としては乱数のスキップ箇所が変わるものであるが、原因・詳細は不明。
HAB-SCD決定の間にスキップが入ったり等。
よく言われているメソッドは以下。
xxxはスキップ箇所。
>method 1 : [LID][HID][HAB][SCD]
>method 2 : [LID][HID][xxx][HAB][SCD]
>method 3 : [LID][xxx][HID][HAB][SCD]
>method 4 : [LID][HID][HAB][xxx][SCD]
2012-12-05T16:11:27+09:00
1354691487
-
第3世代/FRLG/孵化乱数
https://w.atwiki.jp/prng/pages/41.html
初期シードが変わる以外[[RSの孵化乱数>第3世代/RS/孵化乱数]]と同じかと。
2012-12-02T10:01:02+09:00
1354410062
-
第3世代/Em
https://w.atwiki.jp/prng/pages/18.html
エメラルド
-[[ID調整>第3世代/Em/ID調整]]
-[[固定乱数>第3世代/Em/固定乱数]]
-[[徘徊乱数>第3世代/Em/徘徊乱数]]
-[[野生乱数>第3世代/Em/野生乱数]]
-[[孵化乱数>第3世代/Em/孵化乱数]]
初期シード0x0固定。
エメラルドの乱数は通称エメループとも。
バトルタワーのたいせんのきろくを用いてシードを保存・再開することができるため、フレーム数の大きいシードも相応の準備をすれば短時間の試行にすることができる。
2012-12-02T09:00:44+09:00
1354406444