news 2026/9/13 18:22:56

MAA 信用收支全解析:拜访好友、信用商店购物與借助戰賺信用的完整設定指南

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
MAA 信用收支全解析:拜访好友、信用商店购物與借助戰賺信用的完整設定指南

MAA 信用收支全解析:拜访好友、信用商店购物與借助戰賺信用的完整設定指南

【免费下载链接】MaaAssistantArknights《明日方舟》小助手,全日常一键长草!| A one-click tool for the daily tasks of Arknights, supporting all clients.项目地址: https://gitcode.com/GitHub_Trending/ma/MaaAssistantArknights

本篇指南以 MaaAssistantArknights 的「信用收支」功能(Mall 任務)為核心,完整講解自動拜訪好友獲取信用點、借助戰通關OF-1賺取額外信用,以及在信用交易所按「優先購買/黑名單」規則自動購物的完整流程。讀者讀完後將能掌握 GUI 與接口層的全部設定參數、關鍵字比對規則的底層原理,以及任務鏈的真實執行順序。

功能總覽:信用收支的三個環節

在《明日方舟》中,信用點是每日從信用交易所換取養成資源的核心貨幣,而信用點的獲取與消耗分散在多個介面中。MAA 的「信用收支」(Credit Store / Mall)任務把這條鏈路串成一個全自動流程,共分三個環節:

  1. 自動拜訪好友:前往好友介面逐一拜訪,獲取每日拜訪獎勵的信用點。
  2. 借助戰賺信用:使用助戰幹員通關一次火藍之心OF-1關卡,隔日結算時可獲得額外的信用獎勵。
  3. 信用交易所購物:前往信用交易所,依「優先購買」與「黑名單」規則自動購入商品。

三個環節由介面任務MallTask統一調度,任務鏈類型為"Mall"(見 MallTask.h),對應的任務說明文件位於 docs/zh-tw/manual/introduction/credit.md。

拜訪好友:信用點的穩定來源

拜訪好友是信用點最基礎的來源。在 MAA 中,這一步由MallTask內部的ProcessTask執行,起始任務為VisitBegin(見 MallTask.cpp),並註冊了ScreenshotTaskPlugin以在拜訪過程中截圖輔助狀態識別。

該環節可通過參數visit_friends控制開關,預設為true

bool visit_friends = params.get("visit_friends", true); m_visit_task_ptr->set_enable(visit_friends);

引用自 MallTask.cpp。也就是說,在不做任何設定的情況下,MAA 每次執行信用收支任務都會自動拜訪好友;若你希望關閉拜訪(例如好友已清空),將visit_friends設為false即可。

從執行順序上,拜訪任務排在整個任務鏈的最前面,且set_ignore_error(true)(見 MallTask.cpp),即使拜訪過程出現異常也不會中斷後續的購物流程。

借助戰賺信用:OF-1 關卡自動挑戰

信用點除了每日拜訪外,還可通過「借助戰」的方式增加:在火藍之心活動的OF-1關卡中使用助戰幹員通關一次,翌日信用結算時即可獲得額外信用。MAA 將這個過程完全自動化。

觸發條件與注意事項

  • 確認OF-1關卡已解鎖;若尚未解鎖,借助戰任務將無法正常執行。
  • 關卡選擇為「目前/上次」時不會執行借助戰任務:因為 MAA 需要透過關卡導航(StageNavigationTask)定位到指定的OF-1,若用戶將出戰介面的關卡模式設定為「目前/上次」,任務會被跳過。
  • 借助戰功能預設為關閉,需透過credit_fight參數開啟:
bool credit_fight = params.get("credit_fight", false); m_credit_fight_task_ptr->set_enable(credit_fight);

引用自 MallTask.cpp。

底層執行鏈

借助戰功能由CreditFightTask實現(見 CreditFightTask.cpp),它是一個PackageTask,內部按順序組合了五個子任務:

  1. StageBegin:進入出戰介面,並限制GoLastBattle(「上次作戰」)次數為 0,確保不會誤入上次關卡;
  2. StageNavigationTask:關卡導航,定位OF-1
  3. NotUsePrts+Stop:關閉代理指揮(PRTS),確保以手動/助戰方式真實通關;
  4. CopilotTask:載入作業OF-1_credit_fight.json執行自動戰鬥;
  5. Copilot@WaitUntilEndOfAction-Bypass:等待戰鬥結束(重試上限 40 次)。

編隊選擇與舊參數遷移

借助戰必須選擇一支編隊,通過formation_index參數指定:

int formation_index = params.get("formation_index", 0); if (!params.contains("formation_index") && params.contains("select_formation")) { // `select_formation` has been deprecated since v5.23.3; Please use 'formation_index' formation_index = params.get("select_formation", 0); }

引用自 MallTask.cpp。

請注意:舊版參數select_formation自 v5.23.3 起已廢棄,請改用formation_index。編隊索引從 0 開始,對應遊戲內編隊列表的順序。

CreditFightTask::set_params中,會載入作業並設定support_unit_usage = 3(使用助戰幹員)與formation = true(使用編隊),作業檔路徑為資源目錄下的copilot/OF-1_credit_fight.json(見 CreditFightTask.cpp)。這意味著即使你沒有強力輸出幹員,也能藉助好友的助戰幹員穩定通關。

信用交易所購物:優先購買與黑名單

信用交易所的商品每天隨機刷新,MAA 支援「關鍵字比對」來自動決定買什麼、不買什麼。購物環節由CreditShoppingTask實現,並拆分成三個獨立的購物子任務(見 MallTask.cpp):

子任務作用參數來源
shopping_first優先購買(白名單)buy_first
shopping常規購物(黑名單過濾)blacklistonly_buy_discountreserve_max_credit
shopping_force信用溢出時強制購物force_shopping_if_credit_full

關鍵字比對規則

優先購買(buy_first)與黑名單(blacklist)都是關鍵字比對,而不是精確全名比對。例如填入,會比對到名稱中包含「碳」的所有商品,如碳素

這背後的實作原理是「子字串包含」匹配:CreditShopImageAnalyzer::match_required_index對 OCR 識別出的商品名與規則關鍵字逐個做find(子字串查找),只要關鍵字出現在商品名的任意位置即視為命中(見 CreditShopImageAnalyzer.cpp)。比對前還會經由OcrConfig::process_equivalence_class做「字符等價類」歸一化處理(見 OcrConfig.cpp),降低 OCR 識別差異(如全形/半形、易混淆字符)造成的誤判。

因此實務上:

  • 想買所有「碳」系列材料,填即可,無需逐一列出碳素碳素組等;
  • 想排除某類商品,把關鍵字填入黑名單即可;
  • 關鍵字越短,命中的商品越多;請避免使用過於通用的單字(如)以免誤買。

分隔符號規則

「優先購買」與「黑名單」的輸入在 GUI 中支援以分號分隔多個關鍵字,且英文半形;與中文全形均可使用,MAA 會在解析時統一處理,不需要刻意切換輸入法。

低信用保護:低於 300 停止購買

遊戲內信用點上限為 300,溢出部分無法累積。MAA 提供「信用點數低於 300 時停止購買商品」選項(對應參數reserve_max_credit),開啟後購物邏輯會先識別當前信用點數,一旦低於或等於 300 就停止購買,避免把信用點花到見底。

但有一條例外規則:即使信用點數低於 300,優先購買(白名單)商品仍然會照常購買。從源碼可以清楚看到這條設計:reserve_max_credit只對非白名單(黑名單購物)分支生效(見 CreditShoppingTask.cpp),而優先購買任務本身則完全不啟用該限制(MallTask.cpp)。

預設值說明:reserve_max_credit預設為false,即預設不會提前停止購物。

完整參數對照表

以下參數與 AsstMallTask.cs 中的 JSON 屬性一一對應,同時也適用於接口層(如 Python / C / C++ 接口)傳入的paramsJSON:

JSON 參數類型預設值說明
visit_friendsbooltrue是否拜訪好友獲取信用點
shoppingbooltrue是否執行信用商店購物(整體開關)
buy_firststring[][]優先購買關鍵字(白名單)
blackliststring[][]黑名單關鍵字
only_buy_discountboolfalse只購買折扣商品;未打折的白名單商品仍會購買
reserve_max_creditboolfalse信用點低於 300 時停止購買(白名單除外)
force_shopping_if_credit_fullboolfalse信用溢出時強制購物、無視黑名單
credit_fightboolfalse是否借助戰打OF-1賺信用
formation_indexint0借助戰使用的編隊索引(v5.23.3 起取代select_formation

需要特別區分兩組容易混淆的開關:

  • reserve_max_credit(低於 300 停止)與force_shopping_if_credit_full(溢出時強制買)看似相反,但可以同時開啟:前者防止信用點過低,後者防止信用點溢出浪費,兩者組合即「在 300 點附近維持動態平衡」。
  • only_buy_discount開啟後,未打折商品一律不買,但白名單(優先購買)中的商品即使未打折仍會購買——這是刻意設計的例外,確保高價值商品不會因沒打折而錯過(見 CreditShoppingTask.h 的註釋說明)。

購物執行細節:從識別到結算

CreditShoppingTask::credit_shopping的完整執行流程(見 CreditShoppingTask.cpp)如下:

  1. 商品識別CreditShopImageAnalyzer先透過多目標模板匹配定位所有商品圖示,再以 OCR 讀取每個商品的品名與售價(見 CreditShopImageAnalyzer.cpp 的analyze()三段式分析:商品識別 → 是否購買 → 售罄判定)。
  2. 買前複核:點擊前會先對商品名再做一次 OCR 複核(verify_commodity_name),避免動畫或列表偏移導致盲點錯商品。
  3. 容錯點擊:單一商品最多嘗試點擊 4 次(clickCount <= 3),每次點擊後執行CreditShop-BuyIt流程確認是否成功進入購買。
  4. 金錢檢測:若點擊失敗數次判定為無法購買,直接跳過;接著執行CreditShop-NoMoney檢測,偵測到「龍門幣不足」即停止購物。
  5. 信用結算:依設定讀取當前信用點數(credit_ocr,見 CreditShoppingTask.cpp),決定是否觸發停止條件或繼續購物。

這套「識別 → 複核 → 點擊 → 驗證」的循環,正是 MAA 能在不同解析度、不同動畫狀態下穩定購物的關鍵。

常見問題與注意事項

  • OF-1 未解鎖:借助戰任務需要OF-1已解鎖才能執行;若活動復刻或關卡未開放,建議關閉credit_fight
  • 關卡選擇為「目前/上次」:此模式下 MAA 不會執行借助戰任務,請改回指定關卡模式。
  • 誤買商品:檢查黑名單關鍵字是否過短,並注意關鍵字是「子字串包含」匹配——會同時命中碳素
  • 信用點見底:開啟reserve_max_credit後可保留至少 300 信用點;若連優先購買都不希望花費,需手動調整優先購買清單,因為低於 300 時白名單商品仍會照買。
  • 編隊參數報廢:舊參數select_formation自 v5.23.3 起被formation_index取代,請及時更新配置以免被忽略並觸發警告日誌。

總結

MAA 的「信用收支」功能將「拜訪好友 → 借助戰通關 → 商店購物」三個日常環節串成單一任務鏈(Mall),並透過buy_firstblacklist的關鍵字比對、reserve_max_credit的低信用保護、only_buy_discountforce_shopping_if_credit_full的溢出控制,實現了靈活可調的信用管理策略。理解其子字串匹配規則與各參數的預設值與例外邏輯,能幫助你在不同養成階段精準控制信用點的收支平衡,將這條「長草」鏈路徹底自動化。

【免费下载链接】MaaAssistantArknights《明日方舟》小助手,全日常一键长草!| A one-click tool for the daily tasks of Arknights, supporting all clients.项目地址: https://gitcode.com/GitHub_Trending/ma/MaaAssistantArknights

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/13 18:20:27

YASA实战:用Python对多导睡眠图进行自动睡眠分期与事件检测

简介&#xff1a;面向睡眠科研与脑电数据分析人员的 YASA 睡眠分析工具箱资源包&#xff0c;定位为可直接安装使用的 Python 源码项目。YASA 支持多导睡眠图自动分期、纺锤波/慢波/快速眼动事件检测、伪影剔除&#xff0c;以及频谱、相位幅度耦合与 1/f 斜率等分析&#xff0c;…

作者头像 李华
网站建设 2026/9/13 18:16:58

基于RC6与位平面分解的图像加密技术解析

1. 项目概述&#xff1a;基于RC6与位平面分解的图像加密系统 最近在整理图像安全领域的实验项目时&#xff0c;重新审视了基于RC6算法结合位平面分解的加密方案。这个方案在保护医疗影像、证件扫描件等敏感图片时表现出色——加密后的图像不仅视觉上完全混乱&#xff0c;还能抵…

作者头像 李华
网站建设 2026/9/13 18:15:51

Capacity Plan: [Team/Project]

Capacity Plan: [Team/Project] 【免费下载链接】knowledge-work-plugins Open source repository of plugins primarily intended for knowledge workers to use in Claude Cowork 项目地址: https://gitcode.com/GitHub_Trending/kn/knowledge-work-plugins Period: […

作者头像 李华