# XD乱数調整忘れないようにするためのメモ <blockquote class="twitter-tweet"><p lang="ja" dir="ltr">XD ダークルギアの乱数調整に成功しました。(2022/2/22)<br><br>図太い 30-0-31-31-30-31<br>seed: 0xce247a06+40消費<br>強制消費1: 22+22+4 <a href="https://t.co/QHqDyRckH8">pic.twitter.com/QHqDyRckH8</a></p>&mdash; メイユール (@meilleur_pkmn) <a href="https://twitter.com/meilleur_pkmn/status/1495827577822670849?ref_src=twsrc%5Etfw">February 21, 2022</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script> 本当に極個人的なやつ。XD乱数しばらくやらなそうなので ルギアのようなNPC等不定消費なし、加えてnズレなしの乱数調整は、XDにおける最低難易度の乱数調整であり、手計算と自作のツールを交えることでいますぐバトルによるseedの特定と旧来手法による微調整の音型を最大限に享受して手間を減らすことができる。 しばらく取り組んでこの手法を身に着けたつもりだが、しばらくXD乱数調整をやらないうちに忘れてしまわないように備忘録を書き残す。 ## 狙った個体一覧 ``` 474B6D95 866A6C08 F30C866A ずぶとい プレッシャー プレッシャー - 30 0 31 31 31 30 エスパー 68 ルギア 50 181 85 165 110 174 130 30048 以外 DE79C01F 390DDB0A 9BF5390D ずぶとい プレッシャー プレッシャー - 30 0 31 31 30 31 ゴースト 68 ルギア 50 181 85 165 110 174 130 41720 以外 ``` ## 手順 こんな感じのseedまで大量消費した。![](https://i.imgur.com/BvBVCKg.jpg) ``` {"currentSeed":3642639244,"targetSeed":3732520991} PS > [System.Convert]::ToString(3642639244, 16) d91e438c ``` xdpokemonにかけてみる。強制消費1は(ロード)22+(エレベーター)22+(本来の強制消費1)4 ![](https://i.imgur.com/e2eQqKi.png) それぞれの任意消費数について ``` PS > .\XDConsumptionNavigator.exe -c 3642639244 -t $([PokemonPRNG.LCG32.GCLCG.GCLCGExtension]::Advance([ref]3642639244, 838599)) -b 12 ``` ``` 838599 -> {"generateParties":1141,"changeSetting":3,"writeReport":6,"openBag":0,"watchSteps":1} 838602 -> {"generateParties":1142,"changeSetting":1,"writeReport":0,"openBag":0,"watchSteps":0} 838603 -> {"generateParties":1141,"changeSetting":0,"writeReport":8,"openBag":0,"watchSteps":0} ``` listingオプション付けてファイルに保存しておくと良い。今回はこんな感じ ```js // 前略 { "index": 1142, "seed": 3458497030, "data": { "party": [ 2, 0 ], "hp": [ 229, 654, 352, 385 ] } } ] } ``` 3458497030 から設定1回 40 進めた 0xfb7996ae から確かに任意消費数0 ![](https://i.imgur.com/5kVYXK8.png) AB連打させるスクリプトを生成するスクリプト。-15回を目安に止まるので手動で確認してください ```ps1 for($i=0;$i-lt($count-15);$i++){Write-Output "Press B -i=450`nPress A -i=450" | Out-File -Append "$(($count-15).ToString()).txt"} ``` 最後の手持ちがこれになっていることを確認して設定変えてエンカウント。今回は持ち物もレポートも書かなくていい候補があった超ラッキーな例