diff --git a/EpinelPS/gameconfig.json b/EpinelPS/gameconfig.json index 2753491..1bbe60f 100644 --- a/EpinelPS/gameconfig.json +++ b/EpinelPS/gameconfig.json @@ -2,16 +2,16 @@ // Asset Urls for game version 125.8.15 // Extracted from POST https://global-lobby.nikke-kr.com/v1/staticdatapack "StaticData": { - "Url": "https://cloud.nikke-kr.com/prdenv/126-c2e562bd11/staticdata/data/qa-241031-10b/346163/StaticData.pack", - "Version": "data/qa-241031-10b/346163", - "Salt1": "KfaSXJ3RzjtHyElAfYMQyVgkdFj/d6NSQ9UGIEhhTNU=", - "Salt2": "bMyor1Yq6S59WKle86oSMr16tGvXAVEI9pSMG7G79yc=" + "Url": "https://cloud.nikke-kr.com/prdenv/126-c5efef67ba/staticdata/data/qa-241031-10b/348030/StaticData.pack", + "Version": "data/qa-241031-10b/348030", + "Salt1": "/XEVbXNDHebPC7CTGSl1XbWZZ8rZ0TaxIR43FaOKVdY=", + "Salt2": "SE9ra6+WFkYF6PVSOWKW1/c8t8J5wVr8pfhk7jt/fII=" }, // Extracted from POST https://global-lobby.nikke-kr.com/v1/resourcehosts2 - "ResourceBaseURL": "https://cloud.nikke-kr.com/prdenv/126-b1838ddd88/{Platform}", + "ResourceBaseURL": "https://cloud.nikke-kr.com/prdenv/126-bf15712d2c/{Platform}", // Extracted from route config - "GameMinVer": "126.10.3", - "GameMaxVer": "126.10.4" + "GameMinVer": "126.12.4", + "GameMaxVer": "126.12.5" } \ No newline at end of file diff --git a/EpinelPS/gameversion.json b/EpinelPS/gameversion.json index 60b13e3..88c483f 100644 --- a/EpinelPS/gameversion.json +++ b/EpinelPS/gameversion.json @@ -1,49 +1,49 @@ { "result": { - "error_code": 0, - "error_message": "success" + "error_code": 0, + "error_message": "success" }, "version_info": { - "game_id": "16601", - "branch_id": "1", - "version_id": "0.0.0.41", - "version_name": "NIKKE.PC_Official_GL_126.10.4", - "version_status": 7, - "service_status": 0, - "build_id": "2901", - "cos_repo_files": "[{\"cdn_root\":\"https://cloud.nikke-kr.com/PC/prod/rid.48-r.02587\",\"chunk_encrypt_flag\":0,\"manifest_files\":[{\"chunks\":[{\"chunk_index\":0,\"chunk_md5\":\"dc6c0c5e50ece585750e1ac3e6e11786\",\"chunk_size\":111648,\"chunk_uncompress_md5\":\"dc6c0c5e50ece585750e1ac3e6e11786\",\"chunk_uncompress_size\":111648}],\"file_url\":\"/manifestv2/48_5937488248518528634_0.manifest\",\"manifest_md5\":\"dc6c0c5e50ece585750e1ac3e6e11786\",\"manifest_size\":111648}],\"manifest_flag\":13,\"manifest_id\":5937488248518529000,\"manifest_version\":2,\"patch_size\":93786550,\"repository_desc\":{\"zh_CN\":\"game repo\"},\"repository_id\":48,\"repository_name\":{\"en_US\":\"Game\",\"zh_CN\":\"Game\"},\"repository_size\":346004059,\"repository_type\":\"Game\",\"repository_uncompress_size\":819132426}]", - "cos_access_info": "[{\"repository_id\":48,\"repository_type\":\"Game\",\"repository_name\":\"Game\",\"repository_name_en\":\"Game\",\"description\":\"game repo\",\"cos_list\":[{\"public_cdn_domain\":\"https://cloud.nikke-kr.com\"}],\"encrytion_key\":\"158f36bf7e611c945320c399294c4a6d\",\"encrytion_algorithm_id\":6,\"manifest_encrytion_key\":\"0f448b096bb4dc5b339debdce77c4572\",\"manifest_encrytion_algorithm_id\":6,\"game_id\":16601,\"manifest_id\":5937488248518529105}]", - "key_file_info": "[{\"crc\":3446478198,\"path\":\"NIKKE\\\\game\\\\nikke.exe\"}]", - "install_script": "{\"script_content\":{\"executable\":[]}}", - "installer_size": "346004059", - "installed_size": "819132426", - "publish_time_in_unix": "1730304271", - "is_first_version_in_branch": "1", - "version_description": "[{\"lang_code\":\"en\",\"text\":\"\"},{\"lang_code\":\"ja\",\"text\":\"\"},{\"lang_code\":\"ko\",\"text\":\"\"}]", - "update_type": 0 + "game_id": "16601", + "branch_id": "1", + "version_id": "0.0.0.42", + "version_name": "NIKKE.PC_Official_GL_126.12.5", + "version_status": 7, + "service_status": 0, + "build_id": "2909", + "cos_repo_files": "[{\"cdn_root\":\"https://cloud.nikke-kr.com/PC/prod/rid.48-r.02587\",\"chunk_encrypt_flag\":0,\"manifest_files\":[{\"chunks\":[{\"chunk_index\":0,\"chunk_md5\":\"5be6802c847d22de9b098e442bf993e0\",\"chunk_size\":111584,\"chunk_uncompress_md5\":\"5be6802c847d22de9b098e442bf993e0\",\"chunk_uncompress_size\":111584}],\"file_url\":\"/manifestv2/48_5937488248518530702_0.manifest\",\"manifest_md5\":\"5be6802c847d22de9b098e442bf993e0\",\"manifest_size\":111584}],\"manifest_flag\":13,\"manifest_id\":5937488248518531000,\"manifest_version\":2,\"patch_size\":89379885,\"repository_desc\":{\"zh_CN\":\"game repo\"},\"repository_id\":48,\"repository_name\":{\"en_US\":\"Game\",\"zh_CN\":\"Game\"},\"repository_size\":346053526,\"repository_type\":\"Game\",\"repository_uncompress_size\":819204225}]", + "cos_access_info": "[{\"repository_id\":48,\"repository_type\":\"Game\",\"repository_name\":\"Game\",\"repository_name_en\":\"Game\",\"description\":\"game repo\",\"cos_list\":[{\"public_cdn_domain\":\"https://cloud.nikke-kr.com\"}],\"encrytion_key\":\"158f36bf7e611c945320c399294c4a6d\",\"encrytion_algorithm_id\":6,\"manifest_encrytion_key\":\"0f448b096bb4dc5b339debdce77c4572\",\"manifest_encrytion_algorithm_id\":6,\"game_id\":16601,\"manifest_id\":5937488248518531161}]", + "key_file_info": "[{\"crc\":956185736,\"path\":\"NIKKE\\\\game\\\\nikke.exe\"}]", + "install_script": "{\"script_content\":{\"executable\":[]}}", + "installer_size": "346053526", + "installed_size": "819204225", + "publish_time_in_unix": "1730907622", + "is_first_version_in_branch": "1", + "version_description": "[{\"lang_code\":\"en\",\"text\":\"\"},{\"lang_code\":\"ja\",\"text\":\"\"},{\"lang_code\":\"ko\",\"text\":\"\"}]", + "update_type": 0 }, "pre_version_info": null, "launcher_version_info": { - "game_id": "16701", - "branch_id": "1", - "version_id": "0.0.6.383", - "version_name": "nikke_launcher_0.0.6.383", - "version_status": 7, - "service_status": 0, - "build_id": "2904", - "cos_repo_files": "[{\"cdn_root\":\"https://cloud.nikke-kr.com/PC/prod/rid.50-r.971a3\",\"chunk_encrypt_flag\":0,\"manifest_files\":[{\"chunks\":[{\"chunk_index\":0,\"chunk_md5\":\"f0d0b21b02a62be350b7a32137623df0\",\"chunk_size\":51712,\"chunk_uncompress_md5\":\"f0d0b21b02a62be350b7a32137623df0\",\"chunk_uncompress_size\":51712}],\"file_url\":\"/manifestv2/50_5937488248518529015_0.manifest\",\"manifest_md5\":\"f0d0b21b02a62be350b7a32137623df0\",\"manifest_size\":51712}],\"manifest_flag\":13,\"manifest_id\":5937488248518529000,\"manifest_version\":2,\"patch_size\":33424650,\"repository_desc\":{\"zh_CN\":\"game repo\"},\"repository_id\":50,\"repository_name\":{\"en_US\":\"Game\",\"zh_CN\":\"Game\"},\"repository_size\":147961138,\"repository_type\":\"Game\",\"repository_uncompress_size\":388493649}]", - "cos_access_info": "[{\"repository_id\":50,\"repository_type\":\"Game\",\"repository_name\":\"Game\",\"repository_name_en\":\"Game\",\"description\":\"game repo\",\"cos_list\":[{\"public_cdn_domain\":\"https://cloud.nikke-kr.com\"}],\"encrytion_key\":\"ab00cbd5b9e6f7c4759c12d489b34b61\",\"encrytion_algorithm_id\":10,\"manifest_encrytion_key\":\"f8c65f692a6a021a688507a6e441786a\",\"manifest_encrytion_algorithm_id\":6,\"game_id\":16701,\"manifest_id\":5937488248518529095}]", - "key_file_info": "[{\"crc\":2832332300,\"path\":\"nikke_launcher.exe\"}]", - "install_script": "{\"script_content\":{\"executable\":[]}}", - "installer_size": "147961138", - "installed_size": "388493649", - "publish_time_in_unix": "1730302401", - "is_first_version_in_branch": "1", - "version_description": "[{\"lang_code\":\"en\",\"text\":\"\"},{\"lang_code\":\"ja\",\"text\":\"\"},{\"lang_code\":\"id\",\"text\":\"\"},{\"lang_code\":\"th\",\"text\":\"\"},{\"lang_code\":\"pt\",\"text\":\"\"},{\"lang_code\":\"es\",\"text\":\"\"},{\"lang_code\":\"de\",\"text\":\"\"},{\"lang_code\":\"fr\",\"text\":\"\"},{\"lang_code\":\"zh-Hans\",\"text\":\"\"},{\"lang_code\":\"zh-Hant\",\"text\":\"\"}]", - "update_type": 2 + "game_id": "16701", + "branch_id": "1", + "version_id": "0.0.6.383", + "version_name": "nikke_launcher_0.0.6.383", + "version_status": 7, + "service_status": 0, + "build_id": "2904", + "cos_repo_files": "[{\"cdn_root\":\"https://cloud.nikke-kr.com/PC/prod/rid.50-r.971a3\",\"chunk_encrypt_flag\":0,\"manifest_files\":[{\"chunks\":[{\"chunk_index\":0,\"chunk_md5\":\"f0d0b21b02a62be350b7a32137623df0\",\"chunk_size\":51712,\"chunk_uncompress_md5\":\"f0d0b21b02a62be350b7a32137623df0\",\"chunk_uncompress_size\":51712}],\"file_url\":\"/manifestv2/50_5937488248518529015_0.manifest\",\"manifest_md5\":\"f0d0b21b02a62be350b7a32137623df0\",\"manifest_size\":51712}],\"manifest_flag\":13,\"manifest_id\":5937488248518529000,\"manifest_version\":2,\"patch_size\":33424650,\"repository_desc\":{\"zh_CN\":\"game repo\"},\"repository_id\":50,\"repository_name\":{\"en_US\":\"Game\",\"zh_CN\":\"Game\"},\"repository_size\":147961138,\"repository_type\":\"Game\",\"repository_uncompress_size\":388493649}]", + "cos_access_info": "[{\"repository_id\":50,\"repository_type\":\"Game\",\"repository_name\":\"Game\",\"repository_name_en\":\"Game\",\"description\":\"game repo\",\"cos_list\":[{\"public_cdn_domain\":\"https://cloud.nikke-kr.com\"}],\"encrytion_key\":\"ab00cbd5b9e6f7c4759c12d489b34b61\",\"encrytion_algorithm_id\":10,\"manifest_encrytion_key\":\"f8c65f692a6a021a688507a6e441786a\",\"manifest_encrytion_algorithm_id\":6,\"game_id\":16701,\"manifest_id\":5937488248518529095}]", + "key_file_info": "[{\"crc\":2832332300,\"path\":\"nikke_launcher.exe\"}]", + "install_script": "{\"script_content\":{\"executable\":[]}}", + "installer_size": "147961138", + "installed_size": "388493649", + "publish_time_in_unix": "1730302401", + "is_first_version_in_branch": "1", + "version_description": "[{\"lang_code\":\"en\",\"text\":\"\"},{\"lang_code\":\"ja\",\"text\":\"\"},{\"lang_code\":\"id\",\"text\":\"\"},{\"lang_code\":\"th\",\"text\":\"\"},{\"lang_code\":\"pt\",\"text\":\"\"},{\"lang_code\":\"es\",\"text\":\"\"},{\"lang_code\":\"de\",\"text\":\"\"},{\"lang_code\":\"fr\",\"text\":\"\"},{\"lang_code\":\"zh-Hans\",\"text\":\"\"},{\"lang_code\":\"zh-Hant\",\"text\":\"\"}]", + "update_type": 2 }, "ip_2_location": { - "ip": "1.1.1.1", - "country_code": "GR" + "ip": "1.1.1.1", + "country_code": "GR" } } \ No newline at end of file diff --git a/ServerSelector/ServerSwitcher.cs b/ServerSelector/ServerSwitcher.cs index ec7052b..64f1589 100644 --- a/ServerSelector/ServerSwitcher.cs +++ b/ServerSelector/ServerSwitcher.cs @@ -7,7 +7,7 @@ namespace ServerSelector { public class ServerSwitcher { - private static int GameAssemblySodiumIntegrityFuncHint = 0x5B74E00; + private static int GameAssemblySodiumIntegrityFuncHint = 0x5B74B90; private static byte[] GameAssemblySodiumIntegrityFuncOrg = [0x40, 0x53, 0x56, 0x57, 0x41]; private static byte[] GameAssemblySodiumIntegrityFuncPatch = [0xb0, 0x01, 0xc3, 0x90, 0x90]; private const string HostsStartMarker = "# begin ServerSelector entries";