初回実行
すでにインストールが完了し、エミュレーター内でゲームが起動可能で、ゲーム内設定の調整が済んでいることを前提とします。
1. WebUI を開く
ランチャーを使用している場合は自動的にウィンドウが開きます。ソースコードまたは Docker 運用の場合はブラウザで以下にアクセスします:
http://127.0.0.1:25548初回アクセス時にパスワードが要求された場合、デプロイ設定で Password がすでに設定されているか、リッスンアドレスがループバック以外に設定されており自動的にパスワードが生成されたことを意味します。自動生成されたパスワードはプロジェクトルートの password.txt に保存されています。
パスワードなしでの公網公開の禁止
WebUI はタスクの開始・停止、スクリーンショットの閲覧、設定の変更が可能です。パスワードなしで 0.0.0.0 に公開することは、アカウントの操作権限をインターネット全体に開放することと同義です。外部に公開する前に、必ずデプロイ設定で強固なパスワードを設定してください。
2. インスタンスの作成
「インスタンス」とは、独立した1つのユーザー設定ファイル + 1つのスケジューラープロセスを指します。デフォルトのインスタンス名は ap ですが、多重起動用に ap-2、ap-3 などのインスタンスを追加作成できます。
WebUI のインスタンス一覧から「新規作成」をクリックし、空白のテンプレートか既存インスタンスのコピーを選択します。コピーを選択するとタスクの有効化状態やスケジュール時刻も複製されます。
設定内容は config/<インスタンス名>.json に書き込まれます。インスタンス名に使用できる文字は英数字、アンダースコア、ハイフンのみです。名前変更を行う場合はファイル名を直接リネームせず、WebUI のエクスポート・インポート機能を利用してください。
WebUI の表示言語とゲームサーバーの設定は独立しています。前者はインターフェースの文言(zh-CN / en-US / ja-JP / zh-TW)を変更し、後者は「システム設定 → エミュレーター設定 → ゲームサーバー」でパッケージ名を選択します。
3. エミュレーターの接続
「システム設定 → エミュレーター設定」を開きます:
| 項目 | 入力内容 |
|---|---|
| エミュレーター Serial | エミュレーターの ADB アドレス(例:127.0.0.1:16384)。不明な場合は auto |
| ゲームサーバー | 通常は auto。複数クライアント導入時は手動でパッケージ名を選択 |
| ゲーム内サーバー | メンテナンス検出に使用。不明な場合は「検出を使用しない」を選択 |
| スクリーンショット方式 | まずは「最速の方式を自動選択」のままにします |
| 操作方式 | MaaTouch の使用を推奨します |
設定を保存後、ダッシュボードに戻りスクリーンショットテストをクリックします。ゲーム画面が正常に表示されれば、ADB、スクリーンショット方式、解像度の3条件がすべて成立しています。
auto の制限事項
2台以上のエミュレーターが同時に起動している場合、auto では対象のエミュレーターを特定できません。この場合は手動で Serial を入力してください。Serial の確認方法:エミュレーター付属の adb ディレクトリで adb devices を実行します。
画面が真っ暗 / スクリーンショットがタイムアウトする場合
以下の順序で原因を切り分けてください:
- エミュレーター上でゲームが実際に起動しているか(ランチャー画面ではなくゲーム本編が描画されているか)。
-
adb devicesでデバイスが認識され、状態がdeviceになっているか(offlineやunauthorizedではないか)。 - スクリーンショット方式を別の方式(例えば
DroidCast_rawからADB_ncへ)変更して再試行。 - 解像度が 1280×720 に設定されているか。タブレットモードやカスタム DPI 設定は認識異常の原因となります。
4. 最初のタスクを実行する
初回から大世界(オペレーション・サイレン)を開始せず、まずは実行サイクルが短くリスクの低いタスクで一連の動作パイプラインを検証します:
タスク一覧から「研究(科研)」を探し、「この機能を有効化」をオンにします。これら2つのタスクは燃料(石油)を消費せず、失敗時のリスクが低いため検証に適しています。
タスクの Scheduler.NextRun はデフォルトで 2020-01-01(「即座に期限到来」)に設定されています。有効化後に未来の時刻が表示されている場合は、該当フィールドを空にすることで即時実行できます。
ダッシュボードに戻り「開始」をクリックします。ログには順次以下が出力されます:設定のロード → デバイスへの接続 → スクリーンショット取得 → 研究画面への遷移 → 受取/研究開始 → 次回実行のスケジューリング。
ゲーム内の研究キューが実際に進行していること、WebUI ダッシュボードの「現在のタスク」に該当タスクが表示されていること、ログ末尾に「タスク終了」が出力されていること、次回実行時刻が適切なインターバル(研究の場合は通常数時間後)に更新されていることを確認します。
ログが「デバイスに接続中」で停止する場合
スケジューラープロセスがデバイスの制御権を取得できていません。他のプログラム(別の自動化ツールや Android Studio 等)が ADB を排他占有していないか、および Serial の指定が正しいかを確認してください。必要に応じて「エミュレーター設定」の「デバイスが検出されない場合に adb の再起動を試みる」を有効にしてください。
5. デプロイ設定 {#部署设置}
config/deploy.yaml はバックエンド自身の動作を制御します。変更を反映するにはプロセスの再起動が必要です:
| 項目 | デフォルト値 | 説明 |
|---|---|---|
WebuiHost | 0.0.0.0 | リッスンアドレス。自機のみの場合は 127.0.0.1 |
WebuiPort | 25548 | WebUI のポート番号 |
WebuiPassword | 空 | アクセスパスワード。空かつ公網リッスン時は自動生成 |
Language | zh-CN | WebUI のデフォルト言語 |
Theme | default | ライト / ダークテーマ |
OcrServerPort | 22268 | 独立 OCR サービスのポート番号 |
6. 次のステップ
- タスクの実行効率を高めたい:スケジューラーとタスク編成
- 複数アカウントを同時周回させたい:マルチインスタンスと設定管理
- 外出先からスマートフォンで確認したい:リモートアクセスとデバイスペアリング
- タスクが失敗する場合:トラブルシューティング