N64パーフェクトダークの逆コンパイルプロジェクトの紹介です。
- 「PC版パーフェクトダークの試作品登場」を追加
目次
逆コンパイルとは
「逆コンパイル」とは、機械語からソースコードに変換する作業のことです。
ソースコードに変換することで、人間でも理解できる形式となります。
このプロジェクトではC言語に変換されており、そのソースコードをビルドすることでROMが作成されます(ビルドにはオリジナル版ROMも必要となります)。
逆コンパイルの結果、ソースコードの状態となるので、ソースコードを読むことでゲームの裏側の処理の調査等ができるようになります。
また、ソースコードをいじってビルドすることでハックロムの作成ができます。
プロジェクト
以下がN64パーフェクトダークの逆コンパイルプロジェクトのページです。
https://ryandwyer.gitlab.io/pdstatus/
プロジェクトは、Ryan Dwyer氏によって進められていて、N64パーフェクトダークの逆コンパイルは実質100%完了しています。
機能的には変わらないですが、一部の関数のバイト数が一致しないので進捗率としては97%程度となっているとのことです。
→2023/08/12現在、約99%になっています。
また、N64 VaultのDiscordの中でやりとりが行われています。
→discord.gg/Ha6Us26
興味がある方は参加してみましょう(英語)。
私も参加して最新情報をチェックしていますw
現在は、パフォーマンスの改善や機能追加等が進められています。
ハックロム
ソースコードは、GitLab上で公開されています。
ビルド方法も記載されています。
https://gitlab.com/ryandwyer/perfect-dark
以下のようなハックロムがあります。
ブランチを切り替えることで、修正版のソースコードを取得することができます。
- フレームレートの表示
Rボタン押下でフレームレートを表示する機能を追加したハックロム - パフォーマンスの改善
パフォーマンスを改善したハックロム - シミュラントの制限人数解除
シミュラントを800体まで追加できるようにしたハックロム
日本語版ハックロム
ついに日本語版もハックロムが作成できるようになりました!!
始めは、日本語版ROMのビルドに対応できていなかったのですが、直近のアップデートにより対応されました。
今までは、ハックロムツールは海外版にしか対応していなかったため、日本語版のハックロムは珍しく、これは大きな進歩です!!
コンバットプラス
以下の機能を追加したハックロムを作成しました。
- コンバットナイフの復活
→日本語版のみコンバットナイフが無効になる処理を削除
ソロ・ミッションでも使用可能、また射撃訓練もプレイ可能 - コンバットでクラシックウェポンを設定可能
→Ryan Dwyer氏が別のブランチで追加していたコードを抜き出して移植
https://gitlab.com/ryandwyer/perfect-dark/-/commit/810df0fb74dd96d966577c7fed7ed611856bdcf2 - リスポン時に視界のぼやけの回復
→Graslu00氏によって作成されたコードを追加
https://twitter.com/Graslu00/status/1584737286302105601?s=20&t=eetBXRJdiXbcB2Y3JcOTqA
ソースコードは以下です。
※「リスポン時に視界のぼやけの回復」は含まれていません
https://gitlab.com/Jonaeru/perfect-dark/-/tree/mods/classic-weapons-in-multi
「xdeltaパッチ」と「xdeltaパッチの適用方法」については、以下の記事に移動しました。
→http://pdlabo.knowhow.jp/hack-rom/pd-self-made-mod/
動画
シミュラントの制限人数解除
その1
シミュラントを100体追加してコンバットをしました。
その2
機能追加により、クラシックウェポン(ゴールデンアイ007の武器)が設定可能となったため、RC-P45等を追加してコンバット(陣取り)をしました。
また、このハックロムの問題点として、人数が多すぎて武器がなかなか取れない問題がありましたが、リスポン時にウェポン設定の1番の武器を持つようにするオプションが追加されました!
(プレイヤー、シミュラント共通)
コンバットプラス(日本語版)
- コンバットナイフの復活
- コンバットでクラシックウェポンを設定可能
- リスポン時に視界のぼやけの回復
PC版パーフェクトダークの試作品登場
Ryan Dwyer氏によるN64パーフェクトダークの逆コンパイルが実質完了したため、fgsfds氏によってPC版移植に向けてソースの改修が行われていました。
ソースコードは、GitHub上で公開されています。
https://github.com/fgsfdsfgs/perfect_dark
ついに、Windows上で起動できる段階まで進んだようです。
2023/08/11にGraslu00氏のYouTubeチャンネルにて紹介動画が投稿されました。
「Perfect Dark.exe」というファイルを実行すると、パーフェクトダークが起動しています。
PC移植版のパーフェクトダークということですね。
まだグラフィックは不完全で、フリーズしてしまう等の問題はあるようなのですが大きな進歩です!
PC版移植ということはエミュレータの制限がなくなるということで、将来的にはパフォーマンスの改善や、オンライン機能の搭載等が期待されます。
今後の更新を楽しみにしましょう!
更新履歴
- 2023/08/12
「PC版パーフェクトダークの試作品登場」を追加 - 2023/03/24
「xdeltaパッチの適用方法」と「xdeltaパッチ」を別の記事に移動したため案内を追加 - 2022/12/19
「xdeltaパッチの適用方法」を追加 - 2022/12/17
日本語版ハックロム「コンバットプラス」のxdeltaパッチの注意点(ビッグエンディアン形式であること)を追加