From 7c574ceaf5ed425be3efd0b297ef4477f2f12900 Mon Sep 17 00:00:00 2001 From: SarContDeli <48789988+SaiCateDoan@users.noreply.github.com> Date: Sat, 31 Aug 2024 10:59:44 +0800 Subject: [PATCH 01/14] Fix: ldopengl screenshot reverse color (#4136) --- module/device/method/ldopengl.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/module/device/method/ldopengl.py b/module/device/method/ldopengl.py index 9fa00ad03..1393f3674 100644 --- a/module/device/method/ldopengl.py +++ b/module/device/method/ldopengl.py @@ -247,7 +247,7 @@ class LDOpenGLImpl: img = ctypes.cast(img_ptr, ctypes.POINTER(ctypes.c_ubyte * (height * width * 3))).contents - image = np.ctypeslib.as_array(img).reshape((height, width, 3)) + image = np.ctypeslib.as_array(img).copy().reshape((height, width, 3)) return image @staticmethod From 7935e91d618f00d272d1685eec8226921cab3809 Mon Sep 17 00:00:00 2001 From: SarContDeli <48789988+SaiCateDoan@users.noreply.github.com> Date: Mon, 2 Sep 2024 22:52:28 +0800 Subject: [PATCH 02/14] Fix: ldopengl screenshot reverse color (#4136) (#4147) --- module/device/method/ldopengl.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/module/device/method/ldopengl.py b/module/device/method/ldopengl.py index 9fa00ad03..1393f3674 100644 --- a/module/device/method/ldopengl.py +++ b/module/device/method/ldopengl.py @@ -247,7 +247,7 @@ class LDOpenGLImpl: img = ctypes.cast(img_ptr, ctypes.POINTER(ctypes.c_ubyte * (height * width * 3))).contents - image = np.ctypeslib.as_array(img).reshape((height, width, 3)) + image = np.ctypeslib.as_array(img).copy().reshape((height, width, 3)) return image @staticmethod From 42bda736c07321a7e28c815614de2cdf5bd090f9 Mon Sep 17 00:00:00 2001 From: LmeSzinc <37934724+LmeSzinc@users.noreply.github.com> Date: Mon, 2 Sep 2024 23:40:38 +0800 Subject: [PATCH 03/14] Fix: Goto B8 using boss fleet (fixed #4127) --- campaign/event_20240815_cn/b2.py | 4 ++-- campaign/event_20240815_cn/d2.py | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/campaign/event_20240815_cn/b2.py b/campaign/event_20240815_cn/b2.py index 4f1e563c4..b6a690c64 100644 --- a/campaign/event_20240815_cn/b2.py +++ b/campaign/event_20240815_cn/b2.py @@ -85,8 +85,8 @@ class Campaign(CampaignBase): # Handle giant boss at A8 logger.info('B2 before boss') grid = SelectedGrids([B6, C7]).sort('weight', 'cost')[0] - self.goto(grid) - self.goto(B8) + self.fleet_boss.goto(grid) + self.fleet_boss.goto(B8) def clear_boss(self): self.before_boss() diff --git a/campaign/event_20240815_cn/d2.py b/campaign/event_20240815_cn/d2.py index 5fac5e519..efa7e7ab1 100644 --- a/campaign/event_20240815_cn/d2.py +++ b/campaign/event_20240815_cn/d2.py @@ -94,8 +94,8 @@ class Campaign(CampaignBase): # Handle giant boss at A8 logger.info('B2 before boss') grid = SelectedGrids([B6, C7]).sort('weight', 'cost')[0] - self.goto(grid) - self.goto(B8) + self.fleet_boss.goto(grid) + self.fleet_boss.goto(B8) def clear_boss(self): self.before_boss() From 3a62c83a20a6d893ed22f170c27d948cfad249a5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=9C=9E=E9=A3=9B?= Date: Tue, 3 Sep 2024 22:02:08 +0800 Subject: [PATCH 04/14] docs: update game configs --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index beef95d01..dbb66b328 100644 --- a/README.md +++ b/README.md @@ -84,6 +84,7 @@ GUI development, thanks **[@18870](https://github.com/18870)** , say HURRAY. | 剧情自动播放 | 开启 | | 剧情自动播放速度调整 | 特快 | | 待机模式设置 - 启用待机模式 | 关 | +| 其他设置 - 显示触屏特效 | 关 | | 其他设置 - 重复角色获得提示 | 关 | | 其他设置 - 快速更换二次确认界面 | 关 | | 其他设置 - 展示结算角色 | 关 | From ade9ed8411fd3dde362e68ba3f667f771d135b82 Mon Sep 17 00:00:00 2001 From: LmeSzinc <37934724+LmeSzinc@users.noreply.github.com> Date: Mon, 9 Sep 2024 23:36:07 +0800 Subject: [PATCH 05/14] Revert "docs: update game configs" This reverts commit 3a62c83a --- README.md | 1 - 1 file changed, 1 deletion(-) diff --git a/README.md b/README.md index dbb66b328..beef95d01 100644 --- a/README.md +++ b/README.md @@ -84,7 +84,6 @@ GUI development, thanks **[@18870](https://github.com/18870)** , say HURRAY. | 剧情自动播放 | 开启 | | 剧情自动播放速度调整 | 特快 | | 待机模式设置 - 启用待机模式 | 关 | -| 其他设置 - 显示触屏特效 | 关 | | 其他设置 - 重复角色获得提示 | 关 | | 其他设置 - 快速更换二次确认界面 | 关 | | 其他设置 - 展示结算角色 | 关 | From f5fa5b69018f9c24c2be6d376ee0d473db694136 Mon Sep 17 00:00:00 2001 From: LmeSzinc <37934724+LmeSzinc@users.noreply.github.com> Date: Mon, 9 Sep 2024 23:38:34 +0800 Subject: [PATCH 06/14] Fix: Limit swipe times in retirement_get_common_rarity_cv (#4116) --- module/retire/retirement.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/module/retire/retirement.py b/module/retire/retirement.py index 85c7ded53..29c3186df 100644 --- a/module/retire/retirement.py +++ b/module/retire/retirement.py @@ -500,7 +500,10 @@ class Retirement(Enhancement, QuickRetireSettingHandler): if button is not None: return button - while RETIRE_CONFIRM_SCROLL.appear(main=self): + for _ in range(7): + if not RETIRE_CONFIRM_SCROLL.appear(main=self): + logger.info('Scroll bar disappeared, stop') + break RETIRE_CONFIRM_SCROLL.next_page(main=self) button = self.retirement_get_common_rarity_cv_in_page() if button is not None: From 904cd0d070ec427f7a94a5e3215c4bebf4a89c4d Mon Sep 17 00:00:00 2001 From: guoh064 <50830808+guoh064@users.noreply.github.com> Date: Mon, 9 Sep 2024 23:42:55 +0800 Subject: [PATCH 07/14] Fix: wrong campaing_main_15 enemy filter (#4144) --- campaign/campaign_main/campaign_15_base.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/campaign/campaign_main/campaign_15_base.py b/campaign/campaign_main/campaign_15_base.py index eb2de0733..6e723b7bb 100644 --- a/campaign/campaign_main/campaign_15_base.py +++ b/campaign/campaign_main/campaign_15_base.py @@ -43,7 +43,7 @@ class W15GridInfo(GridInfo): class CampaignBase(CampaignBase_): - ENEMY_FILTER = '1T > 1L > 1E > 1M > 2T > 2L > 2E > 2M > 3T > 3L > 3E > 3M' + ENEMY_FILTER = '1L > 1M > 1E > 2L > 3L > 2M > 2E > 1C > 2C > 3M > 3E > 3C' def map_data_init(self, map_): super().map_data_init(map_) From 34acf7ed3a7ec9923cce0084aa520c7f97ebd657 Mon Sep 17 00:00:00 2001 From: guoh064 <50830808+guoh064@users.noreply.github.com> Date: Mon, 9 Sep 2024 23:44:48 +0800 Subject: [PATCH 08/14] Add: mask for ui_white_main (#4145) --- assets/mask/MASK_MAIN_WHITE.png | Bin 0 -> 8046 bytes module/handler/sensitive_info.py | 3 ++- 2 files changed, 2 insertions(+), 1 deletion(-) create mode 100644 assets/mask/MASK_MAIN_WHITE.png diff --git a/assets/mask/MASK_MAIN_WHITE.png b/assets/mask/MASK_MAIN_WHITE.png new file mode 100644 index 0000000000000000000000000000000000000000..289e1923c842fc427b3103601deb7b9821845f6c GIT binary patch literal 8046 zcmeHM4Nwzj8eV?<;YXB1s?wufLv2gXO*UZ@l05=g5+s&j259lG%4T;1J0{tfEF__& z;x8iB3XXpjtF78=9raM0vsbJ_0lmBS#5rxfK~&CO2O0I$N?VmMwFH8x~nqdpyups2%Pe*=x=hL>>#VvnXmvrV| z_Y$ua{pNI1IwzH_rng3wWbMDZZqMBE`BUi_?9g`=F?2y`@dDSyDeKlWR78B$^8ImV zQ7frCQ&&TTH(_TNPdRnt(ntW^Pu~OGsGZq=G*fcHR6yv~mA>ZMC5#_z=GRMCZhJvFBpN8&@u^ zuixEtU{!g|;jqIi;rjvCZno{aE}C&=+vEj}uD{()JX_m-=Sp$Oxr4H=ZkG8SFiq>w zEc)`>oTigGoeiav{HJc&{_zWOb$x;GBf!3fHy_UHgv4jo|u(T z%XC!zSk`cGW^7}7S~R={Ct)*6AkM;`PU!LD9;@aITrQ1hsEYgha&18g)U;E zmmdoHvbgff_56yMT-(#1eDaU{@1C*!J|HxyqjI{ca`#rlO#j+fAUrM~sxA(XMlzP+sA#rJ`z3mG8ZdHQsmWG!NX zVvV%eWw8NqLr_AJ%SMn(X%05hd5l#px?Oup1T&Oclq1)pdRq#e&!iRE>8zrRY_e!6 zsiH(liNOgj8~|8oj(}Yjv(a+)}k@p56ebuyz{8#F!XGv@WJl zCQ1y36YP`;&(x%LLx3x_D4*kOxJ2S~I>pX7F>BA0NL4D81eHl-G6Yy44!4yfT!_^X z!$WjoXlMs%XKWn9T45fOFtP=lS|kGVa8G;|n_k}wZ*_FD0Qiu&2%AJIMkN-Dq_2mA z(-s1d?tr{{II_VWAjza1Y=NDmwS}~mi|GqNk-h%50=rpAhax4knYI8^2Uu0wZ^_v@ zy`k5Gry!59*aR;?c0WswF?q=97aKn#q|-ML;NFYd&$=gf!5CQS^|*#53;6JK8nuXD zAE#K7p>Sa+SCR@7O~)fLR7D~fEjJ-XjFcmCg#x26Dh{PEc^@d9)xi-~lIEcRxR?Pr zG(pHrCaD6EVg!m{n2bbJ@su1PsW?hTV{#LvB>O22JQM|>jPXX5iJ)ji zj>Rbu%p_MJN~IJ;BR8syav5cm$6*2#MdGQf-9mtJG8Q6_me{O$!URt^KFgp}i)3Qd zbH`vNI1_LHJ-}Eg*6Hv}Wiu8!iz9eGrSUSkRHcZM#>Xq;lq!|S=r!8z09xcxrKq?& z2)-~lNC!|$@Ja;$f(OV3PqEVk$J(=5)~pusLBYId@3bB?6h&}^hTv!bipnq?RpF>K zTPDS&Qd}PYD^!W2ee79^F}Vk`=GzBO=qh>|;{fZsgy6U<#GeR@Lu+SDb zL3X9!APQ+ph!bFSO_BM8HID}SN4H>m?lWG*fDr_$kf|sHC;*6oRHBH=q?9A^3R4`W zFe+#%(ItjnbO&qVoP?d8l?QkPTmgX!T){7Pmnyb@G|qgQuLGbAK~+c}%0!axWF`EL z(UWb0I_GQS!ev&I@#iw?D0YPCWbedV&u9jP^zYhC6d6K3+n(`kP zxUcom#=yWoPrIMCxcRkj!&*h|s2y`;0ANpTc@TJ;R0m$*67a=EG86zoCD2%K?H3AO z{P|@9QSdT8x8KO)lKaf1YqyuY`c`1NxGWrk+MMFL9&?Y8Z`=VZ4C3M~D4#CA^YG^4 zHN=fMx`QB_r*^?`KS49($}b65Twp;Aja literal 0 HcmV?d00001 diff --git a/module/handler/sensitive_info.py b/module/handler/sensitive_info.py index ac9f435b7..347ea0db3 100644 --- a/module/handler/sensitive_info.py +++ b/module/handler/sensitive_info.py @@ -5,6 +5,7 @@ from module.ui.assets import PLAYER_CHECK from module.ui.page import MAIN_GOTO_CAMPAIGN_WHITE, MAIN_GOTO_FLEET MASK_MAIN = Mask('./assets/mask/MASK_MAIN.png') +MASK_MAIN_WHITE = Mask('./assets/mask/MASK_MAIN_WHITE.png') MASK_PLAYER = Mask('./assets/mask/MASK_PLAYER.png') @@ -21,7 +22,7 @@ def handle_sensitive_image(image): if MAIN_GOTO_FLEET.match(image, offset=(30, 30)): image = MASK_MAIN.apply(image) if MAIN_GOTO_CAMPAIGN_WHITE.match(image, offset=(30, 30)): - image = MASK_MAIN.apply(image) + image = MASK_MAIN_WHITE.apply(image) return image From b1f64fb5b88bee845b64599a8a83a7bfd15fa00e Mon Sep 17 00:00:00 2001 From: mackerel-12138 <41133329+mackerel-12138@users.noreply.github.com> Date: Tue, 10 Sep 2024 00:16:59 +0800 Subject: [PATCH 09/14] Add: enable maa OnePushConfig (#4156) --- submodule/AlasMaaBridge/module/config/argument/args.json | 5 ++--- submodule/AlasMaaBridge/module/config/argument/argument.yaml | 2 +- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/submodule/AlasMaaBridge/module/config/argument/args.json b/submodule/AlasMaaBridge/module/config/argument/args.json index ab3157105..9f042e728 100644 --- a/submodule/AlasMaaBridge/module/config/argument/args.json +++ b/submodule/AlasMaaBridge/module/config/argument/args.json @@ -64,10 +64,9 @@ "display": "hide" }, "OnePushConfig": { - "type": "input", + "type": "textarea", "value": "provider: null", - "mode": "yaml", - "display": "hide" + "mode": "yaml" } }, "Optimization": { diff --git a/submodule/AlasMaaBridge/module/config/argument/argument.yaml b/submodule/AlasMaaBridge/module/config/argument/argument.yaml index eccd53c28..88b4c54df 100644 --- a/submodule/AlasMaaBridge/module/config/argument/argument.yaml +++ b/submodule/AlasMaaBridge/module/config/argument/argument.yaml @@ -27,9 +27,9 @@ Error: value: false display: hide OnePushConfig: + type: textarea mode: yaml value: 'provider: null' - display: hide Optimization: WhenTaskQueueEmpty: value: stay_there From e1bb483aaafa293a14e2faec7c9baadb236e1a01 Mon Sep 17 00:00:00 2001 From: LmeSzinc <37934724+LmeSzinc@users.noreply.github.com> Date: Tue, 10 Sep 2024 00:23:40 +0800 Subject: [PATCH 10/14] Fix: [ALAS] Limit pool size when using run_in_executor() --- module/device/connection.py | 9 ++++++++- module/device/method/nemu_ipc.py | 16 +++++++++++++++- 2 files changed, 23 insertions(+), 2 deletions(-) diff --git a/module/device/connection.py b/module/device/connection.py index a0a6636e5..6610000d4 100644 --- a/module/device/connection.py +++ b/module/device/connection.py @@ -715,7 +715,12 @@ class Connection(ConnectionAttr): serial_list (list[str]): """ import asyncio + from concurrent.futures import ThreadPoolExecutor ev = asyncio.new_event_loop() + pool = ThreadPoolExecutor( + max_workers=len(serial_list), + thread_name_prefix='adb_brute_force_connect', + ) def _connect(serial): msg = self.adb_client.connect(serial) @@ -723,10 +728,12 @@ class Connection(ConnectionAttr): return msg async def connect(): - tasks = [ev.run_in_executor(None, _connect, serial) for serial in serial_list] + tasks = [ev.run_in_executor(pool, _connect, serial) for serial in serial_list] await asyncio.gather(*tasks) ev.run_until_complete(connect()) + pool.shutdown(wait=False) + ev.close() @Config.when(DEVICE_OVER_HTTP=True) def adb_connect(self): diff --git a/module/device/method/nemu_ipc.py b/module/device/method/nemu_ipc.py index cdb159f48..0fde50d51 100644 --- a/module/device/method/nemu_ipc.py +++ b/module/device/method/nemu_ipc.py @@ -275,11 +275,25 @@ class NemuIpcImpl: def __exit__(self, exc_type, exc_val, exc_tb): self.disconnect() + if has_cached_property(self, '_ev'): + self._ev.close() + del_cached_property(self, '_ev') + if has_cached_property(self, '_pool'): + self._pool.shutdown(wait=False) + del_cached_property(self, '_pool') @cached_property def _ev(self): return asyncio.new_event_loop() + @cached_property + def _pool(self): + from concurrent.futures import ThreadPoolExecutor + return ThreadPoolExecutor( + max_workers=1, + thread_name_prefix='NemuIpc', + ) + async def ev_run_async(self, func, *args, timeout=0.15, **kwargs): """ Args: @@ -294,7 +308,7 @@ class NemuIpcImpl: func_wrapped = partial(func, *args, **kwargs) # Increased timeout for slow PCs # Default screenshot interval is 0.2s, so a 0.15s timeout would have a fast retry without extra time costs - result = await asyncio.wait_for(self._ev.run_in_executor(None, func_wrapped), timeout=timeout) + result = await asyncio.wait_for(self._ev.run_in_executor(self._pool, func_wrapped), timeout=timeout) return result def ev_run_sync(self, func, *args, **kwargs): From 4b07f5068cbb20a55ebbd86bb79bd7feaa41a197 Mon Sep 17 00:00:00 2001 From: LmeSzinc <37934724+LmeSzinc@users.noreply.github.com> Date: Tue, 10 Sep 2024 01:02:31 +0800 Subject: [PATCH 11/14] Fix: Reset map_cat_attack_timer after handling retirement --- module/retire/retirement.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/module/retire/retirement.py b/module/retire/retirement.py index 29c3186df..1bd429ac1 100644 --- a/module/retire/retirement.py +++ b/module/retire/retirement.py @@ -348,6 +348,7 @@ class Retirement(Enhancement, QuickRetireSettingHandler): self._retire_handler(mode='one_click_retire') self._unable_to_enhance = False self.interval_reset(IN_RETIREMENT_CHECK) + self.map_cat_attack_timer.reset() return True elif self.config.Retirement_RetireMode == 'enhance': if self.appear_then_click(RETIRE_APPEAR_3, offset=(20, 20), interval=3): @@ -367,16 +368,19 @@ class Retirement(Enhancement, QuickRetireSettingHandler): logger.info('Too few spare docks, retire next time') self._unable_to_enhance = True self.interval_reset(DOCK_CHECK) + self.map_cat_attack_timer.reset() return True else: if self.appear_then_click(RETIRE_APPEAR_1, offset=(20, 20), interval=3): self.interval_clear(IN_RETIREMENT_CHECK) self.interval_reset([AUTO_SEARCH_MAP_OPTION_OFF, AUTO_SEARCH_MAP_OPTION_ON]) + self.map_cat_attack_timer.reset() return False if self.appear(IN_RETIREMENT_CHECK, offset=(20, 20), interval=10): self._retire_handler() self._unable_to_enhance = False self.interval_reset(IN_RETIREMENT_CHECK) + self.map_cat_attack_timer.reset() return True return False From e78100e0215e9ad0d312f2ad20688c1901995435 Mon Sep 17 00:00:00 2001 From: mackerel-12138 <41133329+mackerel-12138@users.noreply.github.com> Date: Wed, 11 Sep 2024 01:14:59 +0800 Subject: [PATCH 12/14] Add: Sarkaz roguelike (#4159) * add Sarkaz Roguelike * add Sarkaz Roguelike --- config/template.maa.json | 2 +- submodule/AlasMaaBridge/module/config/argument/args.json | 7 ++++++- .../AlasMaaBridge/module/config/argument/argument.yaml | 6 +++--- submodule/AlasMaaBridge/module/config/config_generated.py | 4 ++-- submodule/AlasMaaBridge/module/config/i18n/en-US.json | 7 ++++++- submodule/AlasMaaBridge/module/config/i18n/ja-JP.json | 7 ++++++- submodule/AlasMaaBridge/module/config/i18n/zh-CN.json | 7 ++++++- submodule/AlasMaaBridge/module/config/i18n/zh-TW.json | 7 ++++++- submodule/AlasMaaBridge/module/handler/handler.py | 6 +++++- 9 files changed, 41 insertions(+), 12 deletions(-) diff --git a/config/template.maa.json b/config/template.maa.json index 86bb4023a..23a15567d 100644 --- a/config/template.maa.json +++ b/config/template.maa.json @@ -227,7 +227,7 @@ "ServerUpdate": "04:00" }, "MaaRoguelike": { - "Theme": "Sami", + "Theme": "Sarkaz", "Mode": 0, "StartsCount": 9999999, "InvestmentsCount": 9999999, diff --git a/submodule/AlasMaaBridge/module/config/argument/args.json b/submodule/AlasMaaBridge/module/config/argument/args.json index 9f042e728..a04dfc952 100644 --- a/submodule/AlasMaaBridge/module/config/argument/args.json +++ b/submodule/AlasMaaBridge/module/config/argument/args.json @@ -952,7 +952,8 @@ "option": [ "Phantom", "Mizuki", - "Sami" + "Sami", + "Sarkaz" ] }, "Mode": { @@ -980,6 +981,10 @@ "type": "select", "value": "指挥分队", "option": [ + "魂灵护送分队", + "博闻广记分队", + "蓝图测绘分队", + "因地制宜分队", "永恒狩猎分队", "生活至上分队", "科学主义分队", diff --git a/submodule/AlasMaaBridge/module/config/argument/argument.yaml b/submodule/AlasMaaBridge/module/config/argument/argument.yaml index 88b4c54df..d0df371a8 100644 --- a/submodule/AlasMaaBridge/module/config/argument/argument.yaml +++ b/submodule/AlasMaaBridge/module/config/argument/argument.yaml @@ -151,8 +151,8 @@ MaaMall: MaaRoguelike: Theme: - value: Sami - option: [ Phantom, Mizuki, Sami ] + value: Sarkaz + option: [ Phantom, Mizuki, Sami, Sarkaz ] Mode: value: 0 option: [ 0, 1, 4 ] @@ -161,7 +161,7 @@ MaaRoguelike: StopWhenInvestmentFull: false Squad: value: 指挥分队 - option: [ 永恒狩猎分队, 生活至上分队, 科学主义分队, 特训分队, 心胜于物分队, 物尽其用分队, 以人为本分队, 指挥分队, 集群分队, 后勤分队, 矛头分队, 突击战术分队, 堡垒战术分队, 远程战术分队, 破坏战术分队, 研究分队, 高规格分队 ] + option: [ 魂灵护送分队, 博闻广记分队, 蓝图测绘分队, 因地制宜分队, 永恒狩猎分队, 生活至上分队, 科学主义分队, 特训分队, 心胜于物分队, 物尽其用分队, 以人为本分队, 指挥分队, 集群分队, 后勤分队, 矛头分队, 突击战术分队, 堡垒战术分队, 远程战术分队, 破坏战术分队, 研究分队, 高规格分队 ] Roles: value: 取长补短 option: [ 先手必胜, 稳扎稳打, 取长补短, 随心所欲 ] diff --git a/submodule/AlasMaaBridge/module/config/config_generated.py b/submodule/AlasMaaBridge/module/config/config_generated.py index 4aa7e6a7a..fff36ce6e 100644 --- a/submodule/AlasMaaBridge/module/config/config_generated.py +++ b/submodule/AlasMaaBridge/module/config/config_generated.py @@ -99,12 +99,12 @@ class GeneratedConfig: MaaMall_BlackList = '碳 > 家具 > 加急许可' # Group `MaaRoguelike` - MaaRoguelike_Theme = 'Sami' # Phantom, Mizuki, Sami + MaaRoguelike_Theme = 'Sarkaz' # Phantom, Mizuki, Sami, Sarkaz MaaRoguelike_Mode = 0 # 0, 1, 4 MaaRoguelike_StartsCount = 9999999 MaaRoguelike_InvestmentsCount = 9999999 MaaRoguelike_StopWhenInvestmentFull = False - MaaRoguelike_Squad = '指挥分队' # 永恒狩猎分队, 生活至上分队, 科学主义分队, 特训分队, 心胜于物分队, 物尽其用分队, 以人为本分队, 指挥分队, 集群分队, 后勤分队, 矛头分队, 突击战术分队, 堡垒战术分队, 远程战术分队, 破坏战术分队, 研究分队, 高规格分队 + MaaRoguelike_Squad = '指挥分队' # 魂灵护送分队, 博闻广记分队, 蓝图测绘分队, 因地制宜分队, 永恒狩猎分队, 生活至上分队, 科学主义分队, 特训分队, 心胜于物分队, 物尽其用分队, 以人为本分队, 指挥分队, 集群分队, 后勤分队, 矛头分队, 突击战术分队, 堡垒战术分队, 远程战术分队, 破坏战术分队, 研究分队, 高规格分队 MaaRoguelike_Roles = '取长补短' # 先手必胜, 稳扎稳打, 取长补短, 随心所欲 MaaRoguelike_CoreChar = None MaaRoguelike_Support = 'no_use' # no_use, friend_support, nonfriend_support diff --git a/submodule/AlasMaaBridge/module/config/i18n/en-US.json b/submodule/AlasMaaBridge/module/config/i18n/en-US.json index b8b9ef95f..c3bb6ba62 100644 --- a/submodule/AlasMaaBridge/module/config/i18n/en-US.json +++ b/submodule/AlasMaaBridge/module/config/i18n/en-US.json @@ -513,7 +513,8 @@ "help": "MaaRoguelike.Theme.help", "Phantom": "Phantom", "Mizuki": "Mizuki", - "Sami": "Sami" + "Sami": "Sami", + "Sarkaz": "Sarkaz" }, "Mode": { "name": "MaaRoguelike.Mode.name", @@ -537,6 +538,10 @@ "Squad": { "name": "MaaRoguelike.Squad.name", "help": "MaaRoguelike.Squad.help", + "魂灵护送分队": "Soul Escort (Sarkaz)", + "博闻广记分队": "Well-Informed (Sarkaz)", + "蓝图测绘分队": "Blueprint Surveying (Sarkaz)", + "因地制宜分队": "Adapting To Local Conditions (Sarkaz)", "永恒狩猎分队": "Eternal Hunting (Sami)", "生活至上分队": "Life Prioritizing (Sami)", "科学主义分队": "Scientific Thinking (Sami)", diff --git a/submodule/AlasMaaBridge/module/config/i18n/ja-JP.json b/submodule/AlasMaaBridge/module/config/i18n/ja-JP.json index 8c8c7d6df..a92851e17 100644 --- a/submodule/AlasMaaBridge/module/config/i18n/ja-JP.json +++ b/submodule/AlasMaaBridge/module/config/i18n/ja-JP.json @@ -513,7 +513,8 @@ "help": "MaaRoguelike.Theme.help", "Phantom": "Phantom", "Mizuki": "Mizuki", - "Sami": "Sami" + "Sami": "Sami", + "Sarkaz": "Sarkaz" }, "Mode": { "name": "MaaRoguelike.Mode.name", @@ -537,6 +538,10 @@ "Squad": { "name": "MaaRoguelike.Squad.name", "help": "MaaRoguelike.Squad.help", + "魂灵护送分队": "魂灵护送分队", + "博闻广记分队": "博闻广记分队", + "蓝图测绘分队": "蓝图测绘分队", + "因地制宜分队": "因地制宜分队", "永恒狩猎分队": "永恒狩猎分队", "生活至上分队": "生活至上分队", "科学主义分队": "科学主义分队", diff --git a/submodule/AlasMaaBridge/module/config/i18n/zh-CN.json b/submodule/AlasMaaBridge/module/config/i18n/zh-CN.json index 53cc3e50d..9d6a6c4c3 100644 --- a/submodule/AlasMaaBridge/module/config/i18n/zh-CN.json +++ b/submodule/AlasMaaBridge/module/config/i18n/zh-CN.json @@ -513,7 +513,8 @@ "help": "需在集成战略界面手动将对应主题添加到终端", "Phantom": "傀影与猩红血钻", "Mizuki": "水月与深蓝之树", - "Sami": "探索者的银凇止境" + "Sami": "探索者的银凇止境", + "Sarkaz": "萨卡兹的无终奇语" }, "Mode": { "name": "策略", @@ -537,6 +538,10 @@ "Squad": { "name": "开局分队", "help": "", + "魂灵护送分队": "魂灵护送分队(萨卡兹)", + "博闻广记分队": "博闻广记分队(萨卡兹)", + "蓝图测绘分队": "蓝图测绘分队(萨卡兹)", + "因地制宜分队": "因地制宜分队(萨卡兹)", "永恒狩猎分队": "永恒狩猎分队(萨米)", "生活至上分队": "生活至上分队(萨米)", "科学主义分队": "科学主义分队(萨米)", diff --git a/submodule/AlasMaaBridge/module/config/i18n/zh-TW.json b/submodule/AlasMaaBridge/module/config/i18n/zh-TW.json index 4836778f9..c98c13b96 100644 --- a/submodule/AlasMaaBridge/module/config/i18n/zh-TW.json +++ b/submodule/AlasMaaBridge/module/config/i18n/zh-TW.json @@ -513,7 +513,8 @@ "help": "MaaRoguelike.Theme.help", "Phantom": "Phantom", "Mizuki": "Mizuki", - "Sami": "Sami" + "Sami": "Sami", + "Sarkaz": "Sarkaz" }, "Mode": { "name": "MaaRoguelike.Mode.name", @@ -537,6 +538,10 @@ "Squad": { "name": "MaaRoguelike.Squad.name", "help": "MaaRoguelike.Squad.help", + "魂灵护送分队": "魂灵护送分队", + "博闻广记分队": "博闻广记分队", + "蓝图测绘分队": "蓝图测绘分队", + "因地制宜分队": "因地制宜分队", "永恒狩猎分队": "永恒狩猎分队", "生活至上分队": "生活至上分队", "科学主义分队": "科学主义分队", diff --git a/submodule/AlasMaaBridge/module/handler/handler.py b/submodule/AlasMaaBridge/module/handler/handler.py index 73298269d..4e9f8dd91 100644 --- a/submodule/AlasMaaBridge/module/handler/handler.py +++ b/submodule/AlasMaaBridge/module/handler/handler.py @@ -458,7 +458,11 @@ class AssistantHandler: self.config.MaaRoguelike_Theme != "Sami" and self.config.MaaRoguelike_Squad in ["永恒狩猎分队", "生活至上分队", "科学主义分队", - "特训分队"]): + "特训分队"]) or ( + self.config.MaaRoguelike_Theme != "Sarkaz" and self.config.MaaRoguelike_Squad in ["魂灵护送分队", + "博闻广记分队", + "蓝图测绘分队", + "因地制宜分队"]): args["squad"] = "指挥分队" if self.config.MaaRoguelike_CoreChar: From 0554f026ce1260221dea9e5402764383823a6905 Mon Sep 17 00:00:00 2001 From: mackerel-12138 <41133329+mackerel-12138@users.noreply.github.com> Date: Wed, 11 Sep 2024 01:15:14 +0800 Subject: [PATCH 13/14] Fix: fix maa closedown (#4165) --- submodule/AlasMaaBridge/module/handler/handler.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/submodule/AlasMaaBridge/module/handler/handler.py b/submodule/AlasMaaBridge/module/handler/handler.py index 4e9f8dd91..7d42afb97 100644 --- a/submodule/AlasMaaBridge/module/handler/handler.py +++ b/submodule/AlasMaaBridge/module/handler/handler.py @@ -106,7 +106,7 @@ class AssistantHandler: 所有其他回调处理函数应遵循同样格式, 在需要使用的时候加入callback_list, 可以被随时移除,或在任务结束时自动清空。 - 参数的详细说明见https://github.com/MaaAssistantArknights/MaaAssistantArknights/blob/master/docs/3.2-回调信息协议.md + 参数的详细说明见https://github.com/MaaAssistantArknights/MaaAssistantArknights/blob/master/docs/zh-cn/protocol/callback-schema.md Args: m (Message): 消息类型 @@ -207,7 +207,9 @@ class AssistantHandler: def startup(self): self.connect() if self.config.Scheduler_NextRun.strftime('%H:%M') == self.config.Scheduler_ServerUpdate: - self.maa_start('CloseDown', {}) + self.maa_start('CloseDown', { + "client_type": self.config.MaaEmulator_PackageName + }) self.maa_start('StartUp', { "client_type": self.config.MaaEmulator_PackageName, From 9350273533fc26ce41455b401c29d4c5a4722039 Mon Sep 17 00:00:00 2001 From: LmeSzinc <37934724+LmeSzinc@users.noreply.github.com> Date: Wed, 11 Sep 2024 01:42:47 +0800 Subject: [PATCH 14/14] Upd: [TW] EXP_INFO_CF (#4164) --- assets/tw/guild/EXP_INFO_CF.png | Bin 5630 -> 6079 bytes module/guild/assets.py | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/assets/tw/guild/EXP_INFO_CF.png b/assets/tw/guild/EXP_INFO_CF.png index e0cac548639b07fc4015c25ac61666ccace513cb..adb02e49f7e4eb8d49cb0053b1956a01cd0775ab 100644 GIT binary patch delta 883 zcmeyTy{bjD-&G$YmAf3~<-A{XU3@EP9u=>^J*87^0F|Dj1 z-fK(!Kl}E!m~64BVh7uCy*PURdeS2qfF)%bRtUJC+pMl{(`lsoFH8R=OD)z{va6!Y8&jR2XN#{K0kW6nvSG6#^O4jj6{^w)8jih43oQsBTPkoNm0 z#a?_52AMg(LG%ItBe4u1lQCvXh5yW|Hnm!yeDW)-?i^iJjs4uy@(*J8y4+trNd0_ssT<640~;*UhZI;_e?y@p*r9|C#V+ zaB#9dzy4{5-=xQi$HhMbEsW5KUhv-3o_WsIr7d9jr8fDS?yLR%#W2bE08pN3#{x}D zxlOm@_TQ-Y;{!$KX|sa&Kg%a4=Pv`Q2gYvthrHR(*Lnigay;ld_AP3E`d)Kh9*~qa z+lRw%F65v7YNi8}Whv0Se_gT!82-R`c)RD%@8r2E_oKp+!xlqQ;;uRywVAdYK%GGO zWGmI>Po^kFRdcxdDmuj`l2i6-fp;<5^6H-&6{f0 zlR$yk4&&&Q1+Hu`#T@v46IYO9$%3=DfLB^XQANii}o{7E)rVqjok zG1yRlyhA8(mbJMvBSV9K*aF4IPkW-;*%%lYc`~o++k!N0VB%$9I3TcxvCU_V12aPd z1KUMz1_mYxk0bgE7#SQGn!m7ul)s2$U=TRqpkKoe)Wjs=-R2R`2xb{AU;hrQ!kOhm zzcK@ZLW5#1GcyB&beb~5SFlMh*0p>!U|`7E%*2~{X}imn4(}sZT^N8yJKK35xnyDh r^w0*5$pYMpatC(213LTve`bdB*W?;!$sM@@