@@ -22,23 +22,28 @@ const std::vector<std::string> patch_library_functions = {
2222 *
2323 * Original: gconnect.ubi.com0000
2424 * New: conf.farcry2.online0
25+ * New: conf.longweep.net000
2526 *
2627 * Original: onlineconfigservice.ubi.com
2728 * New: conf.farcry2.online:3074000
29+ * New: conf.longweep.net0000000000
2830 *
2931 * Original: stun.apac.ubi.com00
3032 * New: stun.farcry2.online
33+ * New: stun.longweep.net00
3134 *
3235 * Original: stun.emea.ubi.com00
3336 * New: stun.farcry2.online
37+ * New: stun.longweep.net00
3438 *
3539 * Original: stun.ncsa.ubi.com00
3640 * New: stun.farcry2.online
41+ * New: stun.longweep.net00
3742 */
38- const std::string patch_endpoint_config_host = " conf.farcry2.online " ;
43+ const std::string patch_endpoint_config_host = " conf.longweep.net " ; // conf.farcry2.online
3944const constexpr uint16_t patch_endpoint_config_port = 3074 ;
40- const std::string patch_endpoint_onlineconfig = patch_endpoint_config_host + " :" + std::to_string(patch_endpoint_config_port).append(3 , 0x00 );
41- const std::string patch_endpoint_stun_host = " stun.farcry2.online " ;
45+ const std::string patch_endpoint_onlineconfig = patch_endpoint_config_host + " :" + std::to_string(patch_endpoint_config_port).append(10 , 0x00 );
46+ const std::string patch_endpoint_stun_host = " stun.longweep.net " ; // stun.farcry2.online
4247
4348// RSA root public key (4096 bits)
4449const std::string patch_agora_root_public_key (
@@ -114,9 +119,10 @@ const std::vector<FileEntry> files = {
114119 { // Retail (GOG is identical)
115120 {
116121 { " 7b82f20088e5c046a99fcaed65dc8bbb8202fd622a69737be83e00686b172d53" ,
117- " cf77f414a045e98d769c0193402b2f4c2a5e52bf6eb964efb901ce3b266f8bc1 " }
122+ " 1b67228b4bf03a55e22a6af4ef3eebfa46340c46d03d9ef98afdd516180f67a0 " }
118123 },
119124 {
125+ { " cf77f414a045e98d769c0193402b2f4c2a5e52bf6eb964efb901ce3b266f8bc1" }, // Hash for Retail version 0.2.1.
120126 { " 7d71c70809b7153b8e30628a981b096eb6837d024c48eaefbadb64bb21dbdf60" }, // Hash for Retail version 0.2.0.
121127 { " ada22369c47a00b4279a70e9bf90355877e4e500410c23ff8c1e5852e4158ff6" }, // Hash for Retail version 0.1.17.
122128 { " 9bfb6cf3be83af54a3625df887bf6a3aeacb13dd32a683a282c4fc4f03a4d50f" }, // Hash for Retail version 0.1.16.
@@ -221,13 +227,15 @@ const std::vector<FileEntry> files = {
221227 {
222228 // Steam
223229 { " 6353936a54aa841350bb30ff005727859cdef1aa10c209209b220b399e862765" ,
224- " bc5122bb07248861677c1a35fef25cff4912a51714126c5f02505b52d4351383 " },
230+ " 27ee74c951b4b885074ec687e9d5662ad85081e8a6ec1fadc4254f38df1d00ac " },
225231
226232 // Uplay and Epic Games
227233 { " b7219dcd53317b958c8a31c9241f6855cab660a122ce69a0d88cf4c356944e92" ,
228- " 24f52200e9e42a4c8428aabd205b8ad791fa59171848b30d0a59a842cfe0ab9e " }
234+ " f118a4376310a75c13b7edab3d992b33b86dc9b16532957030a462a97c67d7d9 " }
229235 },
230236 {
237+ { " bc5122bb07248861677c1a35fef25cff4912a51714126c5f02505b52d4351383" }, // Hash for Steam version 0.2.1.
238+ { " 24f52200e9e42a4c8428aabd205b8ad791fa59171848b30d0a59a842cfe0ab9e" }, // Hash for Uplay version 0.2.1.
231239 { " 31c0784efadfd6b526379eba24be939f79a4c93ac0f1e1e8565243ff38319f4e" }, // Hash for Steam version 0.2.0.
232240 { " 5b03e1da81f19abc7e5b9750daae89b28591087228fb104673b8078f2e29b98c" }, // Hash for Uplay version 0.2.0.
233241 { " 7af71319ef055fcc2193862ea43cf63dca92a957eb1c19c3956c72faaaf94804" }, // Hash for Steam version 0.1.17.
@@ -350,9 +358,10 @@ const std::vector<FileEntry> files = {
350358 { // Retail (GOG is identical)
351359 {
352360 { " c175d2a1918d3e6d4120a2f6e6254bd04907a5ec10d3c1dfac28100d6fbf9ace" ,
353- " b671face0db269fd6e269d75db3996f55a5371d839a2aaca121439edc701f277 " }
361+ " 615de4bb48abe35fdbf868f78ad39488b718f7512502865d14fd3626f5b19ac6 " }
354362 },
355363 {
364+ { " b671face0db269fd6e269d75db3996f55a5371d839a2aaca121439edc701f277" }, // Hash for Retail version 0.2.1.
356365 { " ed008348873b2f4f9e25ecb144aabb243b005711d9cd59841f65874c90349325" }, // Hash for Retail version 0.1.17.
357366 { " 26a9f3a1cf1880df79e395006b0fb595767c10b0265283e4e9928353d30f1e79" }, // Hash for Retail version 0.1.16.
358367 { " 418b8393f912bb6cdede77360914fc32979964aab1950d240f15ceb35ad80da0" }, // Hash for Retail version 0.1.14.
@@ -477,13 +486,15 @@ const std::vector<FileEntry> files = {
477486 {
478487 // Steam (R2 is identical)
479488 { " 5cd5d7b6e6e0b1d25843fdee3e9a743ed10030e89ee109b121109f4a146a062e" ,
480- " 66273498444f82cc2c0ef01c0fca539034abb397a3fbcefbb595b3df0c135e8c " },
489+ " afa839b4fdc37949be401fe46a4c819fe882ebc29b681bfdf012146549da134e " },
481490
482491 // Uplay
483492 { " 948a8626276a6689c0125f2355b6a820c104f20dee36977973b39964a82f2703" ,
484- " 19a8f132b6dbfd7173f3e3ea5a2d084a03bbb9aa189ce4237aeb80effea0abe8 " }
493+ " 241e3659baa8f07c813d38ea177ec0ab58d584cb23c1609da9b20f4da6565901 " }
485494 },
486495 {
496+ { " 66273498444f82cc2c0ef01c0fca539034abb397a3fbcefbb595b3df0c135e8c" }, // Hash for Steam version 0.2.1.
497+ { " 19a8f132b6dbfd7173f3e3ea5a2d084a03bbb9aa189ce4237aeb80effea0abe8" }, // Hash for Uplay version 0.2.1.
487498 { " 18902ffab0a8227d762d0ea0bbc0ea780e52ac81b25fd6a95f41a926c9e07929" }, // Hash for Steam version 0.1.17.
488499 { " 97dcbe2f34e21bc68560acacd4febba956abb76d3b136fcae5fdbbac5527b183" }, // Hash for Uplay version 0.1.17.
489500 { " db5cfd6e70ea8abe54c221aff028132ec581684755a687e21aad7173cd57856c" }, // Hash for Steam version 0.1.16.
0 commit comments