
ファミコン時代のRPGなのですが
たとえばドラゴンクエスト1や2
桃太郎伝説などいわゆる
「復活の呪文」を使うシステムのゲームなのですが
ドラクエ1ですと20文字
2でも60文字くらいだったと思います。
さてたったそれだけの文字数で
名前 レベル 各ステータス HPやMP
とったアイテム とっていないアイテム
話した人 話していない人・・・・・
の情報をまかないきれていたのが不思議なのですが
実際プログラムが組める人が見たら
当然の事実なのでしょうか?
プログラムの知識がまったく無い私に
うまいたとえ話などでも結構ですので
解説してくださる方いらっしゃったら
よろしくお願いします。
なお、正規プログラムやデータの
改ざんなどを意図したものではありませんので
よろしくお願い致します。
No.3ベストアンサー
- 回答日時:
はじめまして、ennkaiさん。
早速ですが、ドラクエ1と2の復活の呪文はすでに解析されていますよ。
勝手にHPのリンクを貼ってはいけないみたいなので、
「ドラクエ 復活の呪文 作成」みたいなキーワードで検索してください。HP上で、作成できるサイトが見つかります。
それを参考にすると、記憶すべき情報は、ドラクエ1の場合だと、
名前(4文字)
所持金(最大65535G)
経験値(最大65535)
まほうの鍵(最大6つ)
薬草(最大6つ)
武器(1つ)
鎧(1つ)
盾(1つ)
持ち物(8つ)
現在のHP(200くらい?)
現在のMP(100くらい?)
イベントのチェックで、
・りゅうのうろこを装備している
・ゴーレムを倒した
・ドラゴンをたおした
・ローラ姫を助けた
・虹のしずくをつかった
・死の首飾りをとった(複数個とれる?)
の6つだとすると、2の6乗で、(64通り)
とまあ、これくらいでしょうか。
復活の呪文が、20文字で、つかう文字の種類を単純に50音だとすると、パターンは50の20乗で、
9536743164062500000000000000000000
通りになります。
(組み合わせの計算や考え方が間違ってたら訂正お願いします)
名前の4文字をそのまま残したとしても、
50の16乗で、パターンは
1525878906250000000000000000
通りになります。
さらに、経験値・ゴールド・現在HPとMPに、5桁、5桁、3桁、3桁を割り当てると、
152587890625
のパターンが、残ったことになります。
これだけあれば、アイテム情報やイベント情報を記録するのに十分だと思います。
また、実際はもっと効率的な保存方法を取るでしょうから、こんなに単純じゃないでしょうね。
ちなみに、ドラクエ1のステータスはレベルにより固定されています。
名前から、成長パターンを4つにわけ、あらかじめ決められた経験値を超えると、レベルアップして、あらかじめ決められたステータスになります。
アイテムも、ロトの剣など、一部のイベントアイテムは1度しかとれませんが、これは該当する宝箱を開けるときにそのアイテムを持っていれば、宝箱の中身を空にするという命令をいれれば、保存しなくてもいいはずです。
力の種などもないので、経験値だけでステータスの保存はできます。
RPGツクールで、1度RPGを作ってみれば、そのあたりのメモリ関連の事が少しわかるかもしれませんよ。
まぁ、今は情報が増えすぎて、バックアップメモリなどに頼るようになりましたけどね。
こんばんわ ご解答ありがとうございます
おっしゃるとおりに検索したら
さっそく見つかりました!
しかし解析をされた方の根性たるや
恐ろしいですね ただただびっくりするばかりです。
1と2で文字数が三倍にもなったのなら
現在のPS2などのゲームは何文字になるのでしょうね
それも想像したら怖いですが^^
貴重なご解答ありがとうございました!
No.2
- 回答日時:
ドラクエ1の開発を描いた漫画があったのですが、そこで
「パスワードは○文字以内にしたいがどうか」?と言われ
「それだとアイテムが○種類くらいまで作れますね」といった会話があります。
わかる人には即答でわかるんですねこういうことが…
#1の方の意見にあるように、50文字使っていますから…ええと。5文字でも3億通りのパターンになりますね。
改ざん防止のデータもらくらく入れられます。
それに、取ったアイテムなどは持っていること以外で記録されていないことも多々あり、
DQ2では宝箱で取ったアイテムを売り、また取りに行くという裏技もありました。
御礼遅くなって申し訳ないです
はるか以前におっしゃっている漫画を
どこかで見た記憶はありますが
すっかり忘れてしまいました^^
20文字でも三億!ってすごいですね
参考になるお話感謝です
No.1
- 回答日時:
>ドラクエ1ですと20文字
>2でも60文字くらいだったと思います。
「あいう...ん」まで使えますから、かなりの情報量ですよ。
たった20字や60字とお思いでしょうが、多すぎます。多分改ざん防止用のデータが入ってるはずです。
「**アイテムを持っている=++村へ行った事になる」
「**を倒した = ++魔法を身に着けている」
という関連性を持たせておけば、更にぐっと情報量も少なくできます。
お礼遅くなって申し訳ありません。
たとえば相反するデータをつくっても
どこかでチェックが働いて
「復活の呪文がまちがっています」なんで
出るのでしょうか^^?
ためになる回答ありがとうございました
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Perl perlについての質問 2 2022/10/17 15:25
- C言語・C++・C# c言語 コマンドライン引数 4 2023/02/09 18:47
- その他(プログラミング・Web制作) pythonのプログラムについての質問です。 1 2023/05/26 10:31
- C言語・C++・C# c言語 プログラムのエラー 1 2023/02/11 20:31
- C言語・C++・C# [C言語] コメント文字列を無視して、数値データを読み込むプログラム部分について 5 2022/10/05 11:03
- Visual Basic(VBA) VBAにてメール作成した際、一部指定箇所のみ赤文字にしたいです。 下記の内容ですと作成されたメール本 1 2022/04/27 13:31
- Perl perlのプログラミング 部分入れ替えの方法 1 2022/10/11 22:26
- システム CSVファイルのマッピング処理の省力化 1 2022/11/24 00:01
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- 人類学・考古学 古代エジプトの文字によるコミュニケーション 7 2023/08/25 15:44
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ふわっちってすごくないですか...
-
FF4 アイテム管理
-
マリオカートはアイテム次第で...
-
SFC版の「スーパーマリオカート...
-
前回に引き続き質問です。 PS5...
-
「世界3500万人突破記念ガチャ...
-
アンドロイドスマホのSMSで特定...
-
今日Spotifyを無料版で入れたん...
-
ラインの音楽を大塚愛にしよう...
-
PS5で、ずっとオンラインの...
-
こんにちは 中1です。僕はiPhon...
-
原神でおよそ1週間チャットBAN...
-
TEKKEN-NETについて
-
「すらら花子」って誰?
-
インスタについて
-
第五人格のブラックリストについて
-
Switchで無料で配信しているテ...
-
ネトゲやってますっす 大人数チ...
-
鉄道模型のトレイン・トレイン...
-
ドラゴンボールZ3について…
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
マリオカートはアイテム次第で...
-
アイテム の意味がわかりませ...
-
googleドライブ 共有フォルダ ...
-
パラサイトイブのアイテム
-
PS2 ドラクエ8 名もなき小島 ...
-
FF10のミヘン街道・北側 ミヘ...
-
VBのPrintersコレクションにつ...
-
モンストの モンスポットのアイ...
-
Google Playで予約購入した漫画...
-
Listviewの内容を数字の降順に...
-
ボンバーマンストーリー
-
iアプリのドラクエモンスターズ
-
ロードランナーの分からないア...
-
データコンバート(続編への引...
-
JQuery UIを使用したドラッグ&...
-
見たことのないウィルスに感染
-
ディスガイア2でアイテムを強...
-
このビビアンのアイテムが用途...
-
みんゴル3
-
FF7 クラウド 究極リミット技...
おすすめ情報