アーカイブドキュメントDQ DQのデータ等
1. SFC版DQ1のステータス決定ルーチン
2. FC版DQ2の仲間の名前決定ルーチン

1. SFC版DQ1のステータス決定ルーチン

DQ1の勇者が名前で強さが変わるのは有名な話だと思います。
公式ガイドブックにも計算式が載っているので試した人も多いコトでしょう。
でもSFC版だと微妙に間違ってるのをDQ1(SFC版)強さ判断プログラム作成中に気付いたので、メモしておきます。

(1) まず名前を数字に変換

勇者の名前を一文字ずつ数字に変換して、全て足します。
対応表は以下の通りです。
SFC版DQ1 勇者の名前文字変換表
文字          
             
 
 
数字0123456789101112131415
例: 「ゆうしゃ」なら「ゆ: 15」+「う: 13」+「し: 6」+「ゃ: 10」= 44 となります。

(2) 合計を16で割る

上記の表で求めた合計の数字を16で割り、その余りを求めます。
なお、名前が3文字以下の場合は自動的に余りが「15」となります。
求めた余りの数で、下記表から初期ステータス&成長タイプがわかります。
「A」が成長が早く、「B」が成長が遅いタイプです。
SFC版DQ1 成長タイプ判別表
余り0123456789101112131415
ちから6767676767676767
BABABABABABABABA
すばやさ6565656565656565
BBAABBAABBAABBAA
みのまもり3232323232323232
BBAABBAABBAABBAA
最大HP15151616151513131515141415151515
AABBAABBAABBAABB
LV3の最大MP4444444444444444
ABABABABABABABAB
例: 「ゆうしゃ」なら44 ÷ 16 = 2 余り 12 となります。
余りが12の場合はちから: 6(Bタイプ)、すばやさ: 6(Bタイプ)、みのまもり: 3(Bタイプ)、最大HP: 15(Aタイプ)、レベル3の最大MP: 4(Aタイプ)の勇者になります。
ゆうしゃ
レベル:1
ちから:6Bタイプ
すばやさ:6Bタイプ
みのまもり:3Bタイプ
さいだいHP:15Aタイプ
さいだいMP:0Aタイプ
Ex:0
 勇者「ゆうしゃ」のステータス
「アルス」なら3文字以下なので、自動的に余り 15 となります。
余りが15の場合はちから: 7(Aタイプ)、すばやさ: 5(Aタイプ)、みのまもり: 2(Aタイプ)、最大HP: 15(Bタイプ)、レベル3の最大MP: 4(Bタイプ)の勇者になります。
アルス
レベル:1
ちから:7Aタイプ
すばやさ:5Aタイプ
みのまもり:2Aタイプ
さいだいHP:15Bタイプ
さいだいMP:0Bタイプ
Ex:0
 勇者「アルス」のステータス

(3) しかし罠があった

上記が公式ガイドブックの解説です。
素直に考えると「これで、勝ったも同然!」なんですが、微妙に罠が潜んでいます。
例えば勇者の名前を「ガボ」にした場合はどうなるでしょうか?
「ガ」「ボ」だから2文字で、3文字以下なので余りは15
それとも「カ: 2」+「゛: 15」+「ホ: 10」+「゛: 15」= 42 ÷ 16 = 2 余り 10
この場合は後者で、FC版と同じような文字の数え方で余りは12となります。
勇者「ガボ」のステータス
そうなると「パパス」=「ハ: 6」+「゜: 14」+「ハ: 6」+「゜: 14」+「ス: 9」= 46 ÷ 16 = 2 余り 14
と考えられるのですが、実際は4文字目までしか判定に使っていません。
したがって「パパス」=「ハ: 6」+「゜: 14」+「ハ: 6」+「゜: 14」= 40 ÷ 16 = 2 余り 8 となります。
勇者「パパス」のステータス
同様に「ルイーダ」=「ル: 5」+「イ: 14」+「ー: 3」+「タ: 12」= 34 ÷ 16 = 2 余り 2 となります。
勇者「ルイーダ」のステータス
手計算で好みのキャラを作るも良し、プログラム使うのも良し…でしょう。
ところで手持ちの公式ガイドブックが初版なんですが、第2刷以降は訂正されてたり…しないよね?

(4) 参考資料

ドラゴンクエストI・II 公式ガイドブック エニックス刊 ISBN4-87025-741-6
より「名前による成長の変化」


2. FC版DQ2の仲間の名前決定ルーチン

DQ2をやっていればローレシアの王子の名前でサマルトリアの王子とムーンブルクの王女の名前が変わるのは当たり前のコトだと思います。
スタスタさんのトコで解説してましたが、気にせず解説してしまいます。(オイ)

(1) まず名前を数字に変換

ローレシアの王子の名前を一文字ずつ数字に変換して、全て足します。
2文字以上の名前の場合はその足した数から1引きます。
対応表は以下の通りです。
FC版DQ2 ローレシアの王子の名前文字変換表
文字
数字434445464748495051525354555657
文字
数字5859606162636412345678
文字
数字91011121314151617181920212223
文字        
数字24252627281314        
例: 「ろらん」なら「ろ: 21」+「ら: 17」+「ん: 24」- 1 = 61 となります。

(2) 合計を63以下になるまで64を引く

上記の表で求めた数が64以上なら、63以下になるまで64を引き続けます。
その63以下になった数と下記表からサマルトリアの王子とムーンブルクの王女がわかります。
FC版DQ2 サマ王子・ムン王女名前判別表
サマルトリアの王子

ムーンブルクの王女
トンヌラすけさんパウロランドカインアーサーコナンクッキー
アイリン435159311192735
マリア445260412202836
ナナ455361513212937
あきな465462614223038
プリン475563715233139
まいこ48560816243240
リンダ49571917253341
サマンサ505821018263442
例: 「ろらん」なら 61 なので、サマ王子「パウロ」、ムン王女「ナナ」となります。
なまえLVHPMP
 ろらん502400
 パウロ45200160
 ナナ35180210
 「ろらん」と仲間たち

(3) 逆算してみる

ローレシアの王子の名前を決めてる時は計算するなり、プログラムを使うなりで良いと思います。
…が、逆にサマ王子とムン王女の名前を狙い撃ちしたい場合は逆算する必要があります。
例: サマ王子「クッキー」、ムン王女「プリン」したい場合は合計の数字が 39 になります。
  1文字で 39 になる文字は無いので、計算結果で 39 になるような文字を選びます。
  簡単なのは 「39 = x + y - 1」 となるような2文字を選ぶコトでしょうか。
  「ろ: 21」+「る: 19」- 1 = 39 となるので、ローレシアの王子「ろる」だと望みのパーティになるハズです。
なまえLVHPMP
 ろる502400
 クッキー45200160
 プリン35180210
 「ろる」と仲間たち

(4) 逆算用プログラム

この計算が面倒なので、これもプログラムにしてみたいと思います。
数学がダメな理系(爆)ですが、「組み合わせ」で行けば良いくらいはわかります。
以下、ローレシアの王子が3文字の場合に望みの仲間の名前を導き出せるプログラムのソース(Perl)です。

ま、結果は組み合わせの数字が出るだけなんですけどね。
※下記はサマ王子が「クッキー」、ムン王女が「プリン」となる「39」の場合の組み合わせ。

この結果を文字に置換して…と思ってたんですが、4文字対応にするとムチャクチャ重くなる。
マルチスレッド対応も考えましたが、なかなか難しそうなので断念。
ステキプログラマーの方、後はよろしくお願い致します。(爆)

(5) 参考資料

ファミリーコンピュータMagazine増刊 合本 ドラゴンクエストII 悪霊の神々 必勝ガイド
より「超ウルトラ技50+1 Part3」の特別技「ひとりめの名前であとのふたりの名前もわかる!」


[スットン共和国] / [国連G対策センター] / アーカイブドキュメントDQ