Files
MaaAssistantArknights/docs/ja-jp/develop/development.md
MistEO a5b6f17e83 feat(PC): 支持 PC 端明日方舟 (#15407)
* feat(controller): 集成 MaaWin32ControlUnit 支持 Win32 窗口截图与控制

- 提取公共滑动插值逻辑到 SwipeHelper.hpp,重构 Minitouch/PlayTools 控制器
- 新增 Win32ControlUnitLoader 动态加载 MaaWin32ControlUnit.dll
- 新增 Win32Controller 实现 ControllerAPI,适配 touch_down/move/up 接口
- 添加 AsstAsyncAttachWindow 公开 API 用于绑定 Win32 窗口
- 添加 Win32 截图/输入方式的类型定义和枚举常量

* feat(api): 增加同步版本的 AsstAttachWindow 接口

模仿 AsstConnect 实现同步绑定 Win32 窗口的接口,方便简单场景下直接调用。
该接口标记为 deprecated,建议使用异步版本 AsstAsyncAttachWindow。

* fix: can build MaaCore

* feat: 完成整体适配

* feat(ci): 添加 MaaFramework Win32ControlUnit 下载步骤

使用 robinraju/release-downloader 从 MaaFramework 最新 release 下载
win-x64 版本并提取 MaaWin32ControlUnit 到构建产物中

* docs: 添加 Win32Controller 调试所需 MaaWin32ControlUnit 的说明

在开发文档的环境配置步骤中说明调试 Win32Controller 需要手动下载
MaaWin32ControlUnit.dll,并欢迎社区贡献自动下载脚本

* fix(i18n): 修改 UseAttachWindowWarning 措辞为"仅供尝鲜"

* fix: 小细节修复

* ci: fix maafw filename

* feat: PC 移至连接配置

* feat: 调整描述

* chore: 调整 PC 在连接配置中的顺序

* feat: 设置指引和开始唤醒界面 PC 选项绑定

---------

Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2026-01-18 21:17:59 +08:00

8.5 KiB
Raw Blame History

order, icon
order icon
1 iconoir:developer

開発ガイド

::: tip 本ページは主に PR プロセスおよび MAA のファイルフォーマット要件について説明します。MAA の実行ロジックを変更する具体的な方法については、プロトコル文書を参照してください。 :::

::: tip DeepWiki に質問して、MAA プロジェクトの全体的なアーキテクチャを概要的に理解することができます。 :::

プログラミングの仕方がわからないので、JSONファイルやドキュメントなどを少し変更したいのですが、どうすればいいですか

「パラスちゃん」も理解できるGitHubのPull Requestの使用ガイドへようこそ純WebサイトのPRチュートリアル

数行のコードを少しだけ変更したいが、環境設定が面倒。純粋なWeb編集も使いにくい。どうすればよいですか

GitHub Codespacesオンライン開発環境をご利用ください!

次のような、異なる開発環境を事前に準備しています:

  • 空白環境裸のLinuxコンテナデフォルト

    Open in GitHub Codespaces

  • 軽量環境:ドキュメントサイトのフロントエンド開発に適している

    Open in GitHub Codespaces

  • 完全環境MAA Core関連の開発に適している使用は推奨しません。ローカル開発を推奨します。関連環境を完全に設定。次のセクションを参照

    Open in GitHub Codespaces

完全な環境セットアップWindows

  1. かなり前にフォークした場合は、まず自分のリポジトリの Settings の一番下で削除します

  2. MAA メインリポジトリを開き、ForkCreate fork をクリック

  3. 自身のリポジトリの dev ブランチをクローン(サブモジュール含む)

    git clone --recurse-submodules <リポジトリの git リンク> -b dev
    

    ::: warning Visual Studio など --recurse-submodules パラメータに対応していない Git GUI を使用する場合、クローン後に以下を実行:

    git submodule update --init
    

    :::

  4. 事前ビルド済みサードパーティライブラリのダウンロード

    Python環境が必要インストール方法は各自検索
    tools/maadeps-download.py はプロジェクトルートに配置)

    python tools/maadeps-download.py
    
  5. 開発環境の設定

    • CMake をダウンロードしてインストール
    • Visual Studio 2026 Community をインストール時、C++ によるデスクトップ開発.NET デスクトップ開発 を選択必須
  6. cmake プロジェクト設定を実行

    mkdir -p build
    cmake -G "Visual Studio 18 2026" -B build -DBUILD_WPF_GUI=ON -DBUILD_DEBUG_DEMO=ON
    
  7. build/MAA.slnx をダブルクリックで開き、Visual Studio にプロジェクトを自動ロード

  8. VS の設定

    • 上部設定バーで Debug x64 を選択
    • MaaWpfGui 右クリック → スタートアップ プロジェクトに設定
    • F5 キーを押して実行

    ::: tip Win32ControllerWindows ウィンドウ制御)関連機能をデバッグする場合は、MaaFramework Releases から対応プラットフォームのアーカイブをダウンロードし、bin ディレクトリ内の MaaWin32ControlUnit.dll を MAA の DLL と同じディレクトリ(例:build/bin/Debug)に配置してください。自動ダウンロードスクリプトの PR 歓迎! :::

  9. これで自由に 改造 開発を始められます

  10. 一定量の変更ごにコミット(メッセージ記入必須)
    Git 未経験者は dev ブランチ直接変更ではなく新規ブランチ作成推奨:

git branch your_own_branch
git checkout your_own_branch

これで dev の更新影響を受けずに開発可能

  1. 開発完了後、変更をリモートリポジトリへプッシュ:

    git push origin dev
    
  2. MAA メインリポジトリ で Pull Request を提出master ではなく dev ブランチを指定)

  3. 上流リポジトリの更新を同期する場合:

    1. 上流リポジトリを追加:

      git remote add upstream https://github.com/MaaAssistantArknights/MaaAssistantArknights.git
      
    2. 更新を取得:

      git fetch upstream
      
    3. リベース(推奨)またはマージ:

      git rebase upstream/dev
      

      または

      git merge
      
    4. ステップ8、9、10、11 を繰り返し

::: tip Visual Studio 起動後、Git 操作は「Git 変更」画面からコマンドライン不要で可能 :::

MAAのファイルフォーマット要件

MAAは、リポジトリ内のコードとリソースファイルが美しく統一されるよう、一連のフォーマットツールを使用してメンテナンスと読み取りを容易にしています。

提出する前にフォーマットするか、またはPre-commit Hooksを使用してコードを自動フォーマットしてください。

現在有効になっているフォーマットツールは次のとおりです:

ファイルタイプ フォーマットツール
C++ clang-format
Json/Yaml Prettier
Markdown markdownlint

Pre-commit Hooksを使用してコードを自動フォーマット

  1. コンピュータにPython環境とNode環境があることを確認してください。

  2. プロジェクトのルートディレクトリで次のコマンドを実行します:

    pip install pre-commit
    pre-commit install
    

pipインストール後もPre-commitを実行できない場合は、PIPインストールパスがPATHに追加されていることを確認してください。

次に、提出するたびにフォーマットツールが自動的に実行され、コード形式がスタイルガイドに準拠していることを確認します。

Visual Studioでclang-formatを有効にする

  1. clang-format バージョン20.1.0以上をインストールします。

    python -m pip install clang-format
    
  2. 'Everything'などのツールを使用して、clang-format.exeのインストール場所を見つけます。参考までに、Anacondaを使用している場合、clang-format.exeはYourAnacondaPath/Scripts/clang-format.exeにインストールされます。

  3. Visual Studioで、 Tools-Optionsで 'clang-format'を検索します。

  4. clang-formatサポートを有効にする をクリックし、下の カスタムのclang-format.exeファイルを使用する を選択し、最初取得した clang-format.exe を選択します。

Visual Studioでclang-formatを有効にする

そうすれば、 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

を実行するだけです。