Grand Theft Auto 3とVice Cityは両方とも完全にリバースエンジニアリングされています。
これは、両方のゲームのファンが作成したソースコードがで利用可能になることを意味しますギルブ。コードは誰でもPCで両方のゲームをプレイするために使用できます - 他の人がそれを取ってさらに改善することを願っています。
RE3(リバースエンジニアリングGTA 3)およびREVC(リバースエンジニアリングVice City)は、今日PCで正式にプレイできるオリジナルのゲームよりも目を引く改善を大量に提供します。以下のビデオでは、作業と変更が可能になったことを示しています。
バグが修正され、デバッグメニューとカメラが利用可能です。現在のコントローラーとの即時互換性があり、島の間の荷重画面はありません。また、適切にスケーリングされたHUD、メニュー、視野のフィールドなど、ワイドスクリーンサポートがあります。 PS2バージョンからの影響も改善されています。 RE3には、PauseメニューにLiberty Cityのマップも含まれています。GTA3のすべてのオリジナルバージョンには欠けているもの。
これは、ロックスターとその親会社のTake-Twoからの報復をこれまで避けてきたビデオゲームのリバースエンジニアリングサブカルチャーのエキサイティングな開発です。
「オープンソースGTAは、おそらく私たちのGTA狂信者の多くにとって夢だった」とプロジェクトリーダー「AAP」はユーロガマーに語っています。
「私たちは長年にわたってコードをゲームに注入していましたが、もちろんそれは退屈なものであり、あなたはまだできることは限られています。」
長年にわたり、DMAデザインによって開発され、公開された2001年のアクションアドベンチャーゲームであるGTA 3を再現するための複数の試みがありましたロックスターゲーム。
そのような試みの1つは、Open WriteまたはOpenRWと呼ばれ、いくつかの積極的な開発を見ましたが、今では休眠状態に見えます。 UnityやUnrealなどのエンジンでGrand Theft Auto 3を再現したプロジェクトもあります。ただし、AAPは、元のコードをソースコードにリバースエンジニアリングすることに関心がありました。 2016年のある時点で、AAPはGTA 3コードをカジュアルにリバースエンジニアリングし始め、プレーヤーがマップを飛び回ることができるポイントに到達しました。
その後、AAPはリバースエンジニアリングの衝突と物理コードに焦点を当て、これをテストのために実際のゲームに注入しました。これがRE3プロジェクトの開始方法です。 AAPは、すべてが2018年の春に置き換えるまで、元のゲームの機能を置き換えました。
「このプロジェクトが終了するかどうかはわかりませんでした」とAAPは説明しました。 「当時はまだ一人で取り組んでいましたが、オープンソースGTAへの最も有望なルートのように思えました。」
ビデオゲームをリバースエンジニアリングするために必要なスキル、時間、エネルギーは過小評価されるべきではありません。これは、専門家にとって簡単なことではありません - 愛好家は言うまでもなく。特にゲームで明らかな間違った動作をもたらさない場合、間違いは避けられない膨大な量のコードがあります。 RE3コードにはオリジナルではないバグがほぼ間違いなくあります、とAAPは認めています。
それでも、それは驚くべき成果です。レイマンの用語で、AAPとCoがそれを管理した方法は次のとおりです。
「GTA 3とVice CityはもともとC ++で書かれていました」とAAPは説明します。 「出荷されるコンパイルされた実行可能ファイルはマシンコードにあります。したがって、一般的なタスクは、マシンコードからC ++に戻ることです。
「マシンコードは(多かれ少なかれ)アセンブリ言語と呼ばれる人間の読み取り可能なフォームにマッピングされる可能性がありますが、読むのは非常に退屈です。
「C ++に戻ることは決して単純な1:1マッピングではありませんが、過去10年ほどにわたって、このプロセスに役立つ逆コンパイラが現れました。
「だから、私たちが通常することは、ディセルティラーの出力で動作し、それを読みやすいC ++にマッサージすることです。これは非常に簡単で時々難しいことがありますが、いずれにせよ、それは多くのコードであり、間違いを犯すことになります。」
ありがたいことに、PS2およびAndroidのGTA 3のコードにはデバッグシンボルが含まれています。デバッグシンボルには、開発プロセス中にゲームをデバッグするために必要なすべての追加情報が含まれていますが、多くの場合、膨満を避けるためにリリース実行可能ファイルのために剥奪されます。なんらかの理由で、ロックスターはこれらのシンボルを残し、リバースエンジニアリングチームに大きなレッグアップを与えました。
「ゲームのシンボルがあったことは非常に幸運でした」とAAPは言います。 「PS2 [GTA] 3およびすべてのAndroidリリースには、グローバルなもの(機能とグローバル変数)の名前があります。これは巨大な助けて、私たちはそれらなしで逆転したGTAに近い場所にいるとは思わない。」
以下のビデオは、GTA 3の仮想通りに横たわっているゴミのコードを分析したAAPを示しています。密な時計です。
AAPはRE3の作業を1年間停止し、2019年春に再び拾い上げ、2019年5月にGithubに作業を推進しました。当時、約15,000行のコードが逆になっていました。
他の人は注意を払い、努力に参加しました。 2019年後半に仕事が停止した後、ハッカーがコロナウイルスのパンデミックのためにより多くの時間があることを発見したため、プロジェクトは2020年初頭に再び取り上げられました。 2020年4月、RE3チームは最初のスタンドアロン実行可能ファイルを持っていました。コアチームはわずか6人でした。
そもそもなぜGTA 3を選ぶのですか? 「それはその時代の最初のゲームであり、最小(逆のコードが少ない)であり、一般的にチームの全員が好む」とAAPは説明します。 GTA 3の後、Vice Cityは論理的な次のステップでした。結局のところ、それはGTA 3に似ており、非常に好きです。 REVCは2020年5月上旬に開始され、チームは2020年12月にそれを完了しました。
未来に目を向けると、AAPは、ゲームの物理学が高フレームレートに固定されているのを見たいと言います。別のプロジェクトでは、RenderHookがRE3に移植されたGTAにレイトレースをもたらすRenderHookを見ることができます。 「わかります...」とAAPは言います。
すでに、Wii U、Nintendo Switch、PlayStation Vitaバージョンなど、RE3からの興味深い進行中のポートスプリングをいくつか見てきました。 YouTuberからの以下のビデオモダンなヴィンテージゲーマー、RE3のWIP Nintendo Switchポートを紹介します。
「Wii Uポートは確かに驚きでした」とAAPは言います。 「Androidポートは遅かれ早かれ行う必要があると思いますが、チームの誰もAndroidの経験がないので、おそらく再びサードパーティでなければなりません。
「PS2はGTAの元のプラットフォームであるため、私が絶対に望んでいるものですが、私以外にこれをしている人はいません(少なくとも私はPS2 devkitを持っています)。PS3は私が見たい、またはしたいものでもあります。私自身ですが、私には時間がありません(少なくとも私は、再び、devkitを持っています)。」
GTAリバースエンジニアリングコミュニティでは忙しい時期です。 RE3とREVCに取り組んだPS Vitaハッカーの一部は、2004年のAndroidバージョンを取得することができましたGrand Theft Auto:San Andreasソニーのハンドヘルドで走っています(ここにありますギルブ)。これはリバースエンジニアリングのソースコードではありませんが、インスピレーションは、VITAでGTA 3とVice Cityをプレイできるようになったことから直接来たとAAPは言います。私たちが話すように、他のAndroidゲームはVitaに移植されています。
Take-TwoとRockstarが彼のプロジェクトについてAAPについて少なくとも言葉を持っていなかったのか疑問に思うのは自然なことです。 RE3はPCゲームアセットを機能させる必要があるため、GTA 3のコピーを所有する必要があります。AAPは、GitHubに、コードは教育、文書化、改造の目的でのみ使用する必要があることを強調します。 「私たちは著作権侵害や商業用途を奨励していません」とAAPは言います。
しかし、Take-TwoとRockstarは、ファンのリメイクやコードをいじくり回す他の人たちとハードラインを取ることで評判があります。チームは介入を心配していましたか?
「はい、私たちはそれについて非常に心配していて、できるだけ長くレーダーの下にとどまらそうとしました」とAAPは言います。
「スイッチポートが起こったとき、私たちは多くの注目を集めましたが、Take-Twoからは何もありませんでした。私たちはそれを彼らが気にしない(または本当に盲目である)という兆候として受けました。」
AAPとCOは事実を考慮しますスーパーマリオ64リバースエンジニアリングプロジェクトはまだ続いていますギルブ良い兆候として「任天堂はこれらの問題においてテイク・ツーと同じくらい攻撃的であるからです」。これまでのところ、とても良いです。しかし、どれくらいの間?
AAPは調べるのを待っていません。 Up Nextは、2005年のPlayStation Portable Game Liberty City StoriesのリバースエンジニアリングプロジェクトであるRelcsです。これの作業は2021年1月に始まり、終了したら、ゲームが適切なPCポートを持っていたのは初めてです。
その後?Grand Theft Auto:Vice City Stories、AAPは「おそらく今、GTAの聖なる聖杯」と表現しています。 VCSはLCSに機能を追加しましたが、Androidポートを見たことはありませんでした。このため、コードにはシンボルがありません。リバースエンジニアリング2006 PSPゲームは大きな課題です。
「時が来たら、それについて何ができるかを見るでしょう」とAAPは言います。