fix: try to reuse existing server when converting package to server

This commit is contained in:
2026-07-06 22:41:01 +08:00
parent f3cecca1f8
commit 4b10dcc7f3
2 changed files with 10 additions and 6 deletions
+8 -5
View File
@@ -37,15 +37,18 @@ def set_lang(lang_: str):
release_resources() release_resources()
def to_server(package_or_server: str) -> str: def to_server(package_or_server: str, before: str = '') -> str:
""" """
Convert package/server to server. Convert package/server to server.
To unknown packages, consider they are a CN channel servers. To unknown packages, consider they are a CN channel servers.
""" """
# Can't distinguish different regions of oversea servers, if package_or_server == 'com.nexon.bluearchive':
# assume it's 'OVERSEA-Asia' # Can't distinguish different regions of oversea servers, but we try to reuse old value
# if package_or_server == 'com.HoYoverse.hkrpgoversea': if before in ['OVERSEA-Asia', 'OVERSEA-America', 'OVERSEA-Korea', 'OVERSEA-TWHKMO', 'OVERSEA-Global']:
# return 'OVERSEA-Asia' return before
else:
# otherwise assume it's 'OVERSEA-Asia'
return 'OVERSEA-Asia'
for key, value in VALID_SERVER.items(): for key, value in VALID_SERVER.items():
if value == package_or_server: if value == package_or_server:
+2 -1
View File
@@ -1246,7 +1246,8 @@ class Connection(ConnectionAttr):
self.package = packages[0] self.package = packages[0]
# Set config # Set config
if set_config: if set_config:
self.config.Emulator_PackageName = server_.to_server(self.package) self.config.Emulator_PackageName = server_.to_server(
self.package, before=self.config.Emulator_PackageName)
# Set server # Set server
# logger.info('Server changed, release resources') # logger.info('Server changed, release resources')
# set_server(self.package) # set_server(self.package)