9

ファミコンの改造ゲームをたまに見かけるので、やってみたいと思います。これを達成するためにどのようなツールが使用されていますか? 私が知らないどこかにソースコードの魔法のリポジトリがありますか? 私の質問は、任意の NES ゲームを変更するためのステップ 1 は何ですか? (ステップ 1 が「頭をまっすぐにする」のようなものである場合は、ステップ 1 から 3 まで教えてください。)

ありがとうございました

4

4 に答える 4

8

あなたが話しているのは「ROMハッキング」と呼ばれるものです。

重大な法的問題があるため、ここでは注意が必要です (注: 私は弁護士ではありません): 1 つには、ゲームをハッキングするには、ハッキングしようとしているゲームの ROM イメージを見つける必要があります。これらのダウンロードを提供するサイトがありますが、リンクはしません。あなたはここで独りです。もう 1 つの問題は、ハッキングされたゲームが侵害の二次的著作物としてカウントされることです。しかし実際には、ゲーム会社は ROM のハッキング シーンをほとんど無視しています。

法的な問題は別として、これらは ROM ハッキングの必須事項です。

  • ハッキングしたいゲームの ROM イメージ (上記の警告を参照)。
  • エミュレーター。理論的には、ハックをカートリッジに書き込んで NES で再生することもできますが、それはまだ NES を持っていることを前提としているため、エミュレーターが次善の策です。エミュレーターは完全に合法であることに注意してください (そうでないのは ROM です)。NES ROM のハッキングと自作開発には、FCEUXをお勧めします。メモリ ビューアーと優れたデバッガーが組み込まれています。
  • 16 進エディタ。HexEditをお勧めします。今のところ、フリーウェアです。申し訳ありませんが、これは Windows 専用です。
  • グラフィックを編集するためのタイル エディター。YY-CHRをお勧めします。繰り返しますが、これは Windows のみです。

Romhacking.netでは、その他の便利なツールもホストしています。

于 2012-07-27T17:43:18.010 に答える
3

ROM イメージと逆アセンブラ、または古き良き 16 進エディタが必要です。ターゲットのアーキテクチャをよく知らないと難しいでしょう。これらの古いシステムでは、使用可能なわずかな量のストレージに物事が収まるように、角を曲がったコードを何度もコーディングしていました。これにより、理解するのが難しい非常に奇妙な「副作用」コードが発生します。

私のアドバイスは、最新のハードウェアを使用して最新の言語で「カバー バージョン」としてゼロからゲームを作成することです。4kb の RAM しかないことを心配する必要はありません。

于 2012-06-09T00:42:38.417 に答える
3

これは、他のコンパイル済みプログラムを変更するのと同じです。高レベルでは、次のことを行う必要があります。

  1. 既存のゲームの ROM イメージをバイナリから高水準言語 (アセンブリなど) に逆アセンブルします。
  2. アセンブリを修正する
  3. 変更されたアセンブリ言語ソースをニンテンドー ROM に再アセンブルします。

Jeff Watkins が彼の回答で述べているように、最初に逆アセンブルせずに 16 進エディターを使用して ROM を直接変更することもできますが、コンピューターの代わりにそれを行うだけで、タスクはほぼ同等です。

データ ブロック (スプライトなど) を抽出し、実際のプログラム フローを理解することについては、多くの下位レベルの問題があります。簡単に理解でき、コメントが付いた大量のコードが得られるわけではありません。

16 ビット ゲームの分解と変更に関するこの他の質問をご覧ください。

于 2012-06-09T00:43:40.270 に答える
1

また、ハードウェアをよく知っている必要があります。この wikiのような非常に優れたドキュメントを提供するインターネット リソースがあります。

幸運を!

于 2012-06-09T00:46:03.790 に答える