From 5e93076243133a02c70a578a5028a65a60d38195 Mon Sep 17 00:00:00 2001 From: Martin Michelsen Date: Sun, 28 May 2023 10:35:37 -0700 Subject: [PATCH] fix default flags for versions with encrypted send_function_call --- src/Episode3/DataIndex.hh | 2 +- src/Version.cc | 9 ++++++--- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/src/Episode3/DataIndex.hh b/src/Episode3/DataIndex.hh index 4966e652..9f2942af 100644 --- a/src/Episode3/DataIndex.hh +++ b/src/Episode3/DataIndex.hh @@ -602,7 +602,7 @@ struct PlayerConfig { // 0x2F0 bytes long. They presumably did this because of the checksum logic. /* 0158 */ parray card_counts; // These appear to be an attempt at checksumming the card counts array, but - // the algorithm don't cover the entire array and instead reads from later + // the algorithm doesn't cover the entire array and instead reads from later // parts of this structure. This appears to be due to a copy/paste error in // the original code. The algorithm sums card_counts [0] through [19] and puts // the result in card_count_checksums[0], then sums card counts [50] through diff --git a/src/Version.cc b/src/Version.cc index 0c094118..6cbe845f 100644 --- a/src/Version.cc +++ b/src/Version.cc @@ -71,7 +71,8 @@ uint32_t flags_for_version(GameVersion version, int64_t sub_version) { return Client::Flag::NO_D6_AFTER_LOBBY; case 0x35: // GC Ep1&2 JP v1.04 (Plus) return Client::Flag::NO_D6_AFTER_LOBBY | - Client::Flag::ENCRYPTED_SEND_FUNCTION_CALL; + Client::Flag::ENCRYPTED_SEND_FUNCTION_CALL | + Client::Flag::SEND_FUNCTION_CALL_NO_CACHE_PATCH; case 0x36: // GC Ep1&2 US v1.02 (Plus) case 0x39: // GC Ep1&2 JP v1.05 (Plus) return Client::Flag::NO_D6_AFTER_LOBBY | @@ -80,11 +81,13 @@ uint32_t flags_for_version(GameVersion version, int64_t sub_version) { case 0x40: // GC Ep3 trial return Client::Flag::NO_D6_AFTER_LOBBY | Client::Flag::IS_EPISODE_3 | - Client::Flag::ENCRYPTED_SEND_FUNCTION_CALL; + Client::Flag::ENCRYPTED_SEND_FUNCTION_CALL | + Client::Flag::SEND_FUNCTION_CALL_NO_CACHE_PATCH; case 0x42: // GC Ep3 JP return Client::Flag::NO_D6_AFTER_LOBBY | Client::Flag::IS_EPISODE_3 | - Client::Flag::ENCRYPTED_SEND_FUNCTION_CALL; + Client::Flag::ENCRYPTED_SEND_FUNCTION_CALL | + Client::Flag::SEND_FUNCTION_CALL_NO_CACHE_PATCH; case 0x41: // GC Ep3 US return Client::Flag::NO_D6_AFTER_LOBBY | Client::Flag::IS_EPISODE_3 |