開発ガイド
697字程度約2分
ヒント
本ページは主に PR プロセスおよび MAA のファイルフォーマット要件について説明します。MAA の実行ロジックを変更する具体的な方法については、プロトコル文書を参照してください。
ヒント
DeepWiki に質問して、MAA プロジェクトの全体的なアーキテクチャを概要的に理解することができます。
プログラミングの仕方がわからないので、JSONファイルやドキュメントなどを少し変更したいのですが、どうすればいいですか?
「パラスちゃん」も理解できるGitHubのPull Requestの使用ガイドへようこそ(純WebサイトのPRチュートリアル)
数行のコードを少しだけ変更したいが、環境設定が面倒。純粋なWeb編集も使いにくい。どうすればよいですか?
GitHub Codespacesオンライン開発環境をご利用ください!
次のような、異なる開発環境を事前に準備しています:
空白環境(裸のLinuxコンテナ)(デフォルト)
軽量環境:ドキュメントサイトのフロントエンド開発に適している
完全環境:MAA Core関連の開発に適している(使用は推奨しません。ローカル開発を推奨します。関連環境を完全に設定。次のセクションを参照)
完全な環境セットアップ(Windows)
かなり前にフォークした場合は、まず自分のリポジトリの
Settingsの一番下で削除しますMAA メインリポジトリを開き、
Fork→Create forkをクリック自身のリポジトリの dev ブランチをクローン(サブモジュール含む)
git clone --recurse-submodules <リポジトリの git リンク> -b dev注意
Visual Studio など
--recurse-submodulesパラメータに対応していない Git GUI を使用する場合、クローン後に以下を実行:git submodule update --init事前ビルド済みサードパーティライブラリのダウンロード
Python環境が必要(インストール方法は各自検索)
(tools/maadeps-download.py はプロジェクトルートに配置)python tools/maadeps-download.py開発環境の設定
Visual Studio 2022 Communityをインストール時、C++ によるデスクトップ開発と.NET デスクトップ開発を選択必須
MAA.slnをダブルクリックで開き、Visual Studio にプロジェクトを自動ロードVS の設定
- 上部設定バーで 
RelWithDebInfox64を選択(Release ビルド/ARM プラットフォームの場合は不要) MaaWpfGui右クリック → プロパティ → デバッグ → ネイティブデバッグを有効化(C++ Core へのブレークポイント設定可能)
- 上部設定バーで 
 これで自由に
改造開発を始められます一定量の変更ごにコミット(メッセージ記入必須)
Git 未経験者は dev ブランチ直接変更ではなく新規ブランチ作成推奨:git branch your_own_branch git checkout your_own_branchこれで dev の更新影響を受けずに開発可能
開発完了後、変更をリモートリポジトリへプッシュ:
git push origin devMAA メインリポジトリ で Pull Request を提出(master ではなく dev ブランチを指定)
上流リポジトリの更新を同期する場合:
上流リポジトリを追加:
git remote add upstream https://github.com/MaaAssistantArknights/MaaAssistantArknights.git更新を取得:
git fetch upstreamリベース(推奨)またはマージ:
git rebase upstream/devまたは
git mergeステップ7、8、9、10 を繰り返し
ヒント
Visual Studio 起動後、Git 操作は「Git 変更」画面からコマンドライン不要で可能
MAAのファイルフォーマット要件
MAAは、リポジトリ内のコードとリソースファイルが美しく統一されるよう、一連のフォーマットツールを使用してメンテナンスと読み取りを容易にしています。
提出する前にフォーマットするか、またはPre-commit Hooksを使用してコードを自動フォーマットしてください。
現在有効になっているフォーマットツールは次のとおりです:
| ファイルタイプ | フォーマットツール | 
|---|---|
| C++ | clang-format | 
| Json/Yaml | Prettier | 
| Markdown | markdownlint | 
Pre-commit Hooksを使用してコードを自動フォーマット
コンピュータにPython環境とNode環境があることを確認してください。
プロジェクトのルートディレクトリで次のコマンドを実行します:
pip install pre-commit pre-commit install
pipインストール後もPre-commitを実行できない場合は、PIPインストールパスがPATHに追加されていることを確認してください。
次に、提出するたびにフォーマットツールが自動的に実行され、コード形式がスタイルガイドに準拠していることを確認します。
Visual Studioでclang-formatを有効にする
clang-format バージョン20.1.0以上をインストールします。
python -m pip install clang-format'Everything'などのツールを使用して、clang-format.exeのインストール場所を見つけます。参考までに、Anacondaを使用している場合、clang-format.exeはYourAnacondaPath/Scripts/clang-format.exeにインストールされます。
Visual Studioで、 Tools-Optionsで 'clang-format'を検索します。
clang-formatサポートを有効にするをクリックし、下のカスタムのclang-format.exeファイルを使用するを選択し、最初取得したclang-format.exeを選択します。

そうすれば、 Visual Studio は c++20 構文をサポートする clang-format を問題なく使用できます!
tools\ClangFormatter\clang-formatter.py を使用して、clang-formatを直接呼び出して書式設定することもできます。プロジェクトのルートディレクトリで
python tools\ClangFormatter\clang-formatter.py --clang-format=PATH\TO\YOUR\clang-format.exe --input=src\MaaCore
を実行するだけです。
