逆コンパイルプロジェクトに初めて貢献するには

執筆: DecompHub · 更新日 · 日本語

興味のある対象と、結果を確かめられる一つの課題から始めましょう。難しいマッチング関数だけが貢献ではありません。ビルドの再現、手順の修正、具体的な不具合報告も役立ちます。

プロジェクトを探したら、ツール、ブランチ、貢献方法はそのプロジェクトの説明に従ってください。DecompHubは作業を割り当てたり、メンテナーを代理したりしません。

自分の環境に合うか確認する

「協力できること」ではmacOS、Windows、Linuxなど利用できる環境を指定できます。これは非公開のマッチング設定であり、ビルド成功の保証ではありません。

必要なOS、コンパイラ、対象リビジョンを確認します。Super Mario 64にはLinux、macOS、コンテナの手順とバージョン別の入力要件があります。別フォークの手順では、違う対象に対するビルドになる場合があります。

作業するコミットとツールのバージョンを記録しましょう。元のゲームデータや特定の機器が必要かも事前に調べます。カタログは元のソフトウェアやアセットを提供しません。

貢献ルールを読む

CONTRIBUTING、ドキュメント、レビュー手順を探してください。GitHubの説明ではガイドラインの掲載場所を確認できます。

先にissueが必要か、指定ブランチ、書式、検証コマンド、AI生成物に関する規定があるかを読みます。他のプロジェクトのルールがそのまま通用するとは限りません。

最初の課題には、ビルド成功、一つの関数の一致、一か所の手順修正、再現可能な不具合など、明確な完了条件が向いています。

変更前の状態を残す

編集前に公式手順で検証し、コマンド、対象、ツールの版、結果を保存します。最初から失敗するなら、その問題と自分の変更を分けてください。

報告には期待した結果、実際の結果、最小限の再現手順を書きます。関連するログだけを添え、漠然と「動かない」で終わらせないことが重要です。

根拠を示せる作業を選ぶ

objdiffはローカル比較の手順を提供しています。使い慣れた別の仕組みを増やすより、選んだプロジェクトの指定ツールに合わせましょう。

小さな変更を提出する

問題、変更後の動作、検証方法を説明します。マッチングなら対象と比較手段を、手順修正なら実際に試した内容を書き、未検証の点も明示してください。

無関係なファイルの大規模整理は混ぜないようにします。静かなプロジェクトやアーカイブ済みのものは、公式に案内された後継先を確認しましょう。未掲載なら公式URLを申請できます。数値の解釈は進捗ガイドを参照してください。