From e0440df3958658e55c555f68140a5f199a9480df Mon Sep 17 00:00:00 2001 From: BreakinBenny Date: Sun, 5 Oct 2025 15:56:02 +0200 Subject: [PATCH 1/5] Fortress Forever's obsoleted Encryption Key --- include/vcryptpp/VICE.h | 1 + 1 file changed, 1 insertion(+) diff --git a/include/vcryptpp/VICE.h b/include/vcryptpp/VICE.h index bba1a40ff..b047ca28e 100644 --- a/include/vcryptpp/VICE.h +++ b/include/vcryptpp/VICE.h @@ -23,6 +23,7 @@ constexpr std::string_view COUNTER_STRIKE_PROMOD = "H1aRQ0n1"; constexpr std::string_view DAY_OF_DEFEAT_SOURCE = "Wl0u5B3F"; constexpr std::string_view DYSTOPIA_1_2 = "pH3apO8w"; constexpr std::string_view DYSTOPIA_1_3 = "G8stUh3F"; +constexpr std::string_view FORTRESS_FOREVER_PRE-GREENLIGHT = "saxEWr5v"; constexpr std::string_view GOLDEN_EYE_SOURCE = "Gr3naDes"; constexpr std::string_view HALF_LIFE_2_CTF = "R1dj3axP"; constexpr std::string_view HALF_LIFE_2_DM = DEFAULT; From 02f1b7ab2ba55496d16cdf317db4860e19f19fac Mon Sep 17 00:00:00 2001 From: BreakinBenny Date: Sun, 5 Oct 2025 15:59:47 +0200 Subject: [PATCH 2/5] Update VICE.h --- lang/c/include/vcryptppc/VICE.h | 1 + 1 file changed, 1 insertion(+) diff --git a/lang/c/include/vcryptppc/VICE.h b/lang/c/include/vcryptppc/VICE.h index 2a65f0bdc..7980fbf93 100644 --- a/lang/c/include/vcryptppc/VICE.h +++ b/lang/c/include/vcryptppc/VICE.h @@ -13,6 +13,7 @@ SOURCEPP_CLSVAR_EXT(vcryptpp, vice, const char*, known_codes_counter_strike_prom SOURCEPP_CLSVAR_EXT(vcryptpp, vice, const char*, known_codes_day_of_defeat_source, "Wl0u5B3F"); SOURCEPP_CLSVAR_EXT(vcryptpp, vice, const char*, known_codes_dystopia_1_2, "pH3apO8w"); SOURCEPP_CLSVAR_EXT(vcryptpp, vice, const char*, known_codes_dystopia_1_3, "G8stUh3F"); +SOURCEPP_CLSVAR_EXT(vcryptpp, vice, const char*, known_codes_fortress_forever-pre_greenlight, "saxEWr5v"); SOURCEPP_CLSVAR_EXT(vcryptpp, vice, const char*, known_codes_golden_eye_source, "Gr3naDes"); SOURCEPP_CLSVAR_EXT(vcryptpp, vice, const char*, known_codes_half_life_2_ctf, "R1dj3axP"); SOURCEPP_CLSVAR_EXT(vcryptpp, vice, const char*, known_codes_half_life_2_dm, "x9Ke0BY7"); From 440647a2ef315fdadd3dedbe8d84b829763a62e3 Mon Sep 17 00:00:00 2001 From: BreakinBenny Date: Sun, 5 Oct 2025 16:00:36 +0200 Subject: [PATCH 3/5] Update VICE.cs --- lang/csharp/src/vcryptpp/VICE.cs | 1 + 1 file changed, 1 insertion(+) diff --git a/lang/csharp/src/vcryptpp/VICE.cs b/lang/csharp/src/vcryptpp/VICE.cs index b8e6b752b..72c65189c 100644 --- a/lang/csharp/src/vcryptpp/VICE.cs +++ b/lang/csharp/src/vcryptpp/VICE.cs @@ -28,6 +28,7 @@ public static class KnownCodes { public const string DAY_OF_DEFEAT_SOURCE = "Wl0u5B3F"; public const string DYSTOPIA_1_2 = "pH3apO8w"; public const string DYSTOPIA_1_3 = "G8stUh3F"; + public const string FORTRESS_FOREVER-PRE_GREENLIGHT = "saxEWr5v"; public const string GOLDEN_EYE_SOURCE = "Gr3naDes"; public const string HALF_LIFE_2_CTF = "R1dj3axP"; public const string HALF_LIFE_2_DM = DEFAULT; From c6bfd19f722f785e76a2e016078ef3e31ce3162e Mon Sep 17 00:00:00 2001 From: BreakinBenny Date: Sun, 5 Oct 2025 16:01:23 +0200 Subject: [PATCH 4/5] Update vcryptpp.h --- lang/python/src/vcryptpp.h | 1 + 1 file changed, 1 insertion(+) diff --git a/lang/python/src/vcryptpp.h b/lang/python/src/vcryptpp.h index dad47a224..a8a6a163d 100644 --- a/lang/python/src/vcryptpp.h +++ b/lang/python/src/vcryptpp.h @@ -53,6 +53,7 @@ inline void register_python(py::module_& m) { KnownCodes.attr("DAY_OF_DEFEAT_SOURCE") = DAY_OF_DEFEAT_SOURCE; KnownCodes.attr("DYSTOPIA_1_2") = DYSTOPIA_1_2; KnownCodes.attr("DYSTOPIA_1_3") = DYSTOPIA_1_3; + KnownCodes.attr("FORTRESS_FOREVER-PRE_GREENLIGHT") = FORTRESS_FOREVER_PRE-GREENLIGHT; KnownCodes.attr("GOLDEN_EYE_SOURCE") = GOLDEN_EYE_SOURCE; KnownCodes.attr("HALF_LIFE_2_CTF") = HALF_LIFE_2_CTF; KnownCodes.attr("HALF_LIFE_2_DM") = HALF_LIFE_2_DM; From b847eec2e95db6ed644ce6e5fa5fc0ec6b1e1fcd Mon Sep 17 00:00:00 2001 From: BreakinBenny Date: Sun, 5 Oct 2025 16:36:58 +0200 Subject: [PATCH 5/5] No hyphens in variable names! I think I'll just swap the hyphen, even if it means eventually removing the "_PRE_GREENLIGHT" bit after azzyr has dealt with updating FF to the TF2 SDK... in case we re-use the encryption. --- include/vcryptpp/VICE.h | 2 +- lang/c/include/vcryptppc/VICE.h | 2 +- lang/csharp/src/vcryptpp/VICE.cs | 2 +- lang/python/src/vcryptpp.h | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/include/vcryptpp/VICE.h b/include/vcryptpp/VICE.h index b047ca28e..c509eb176 100644 --- a/include/vcryptpp/VICE.h +++ b/include/vcryptpp/VICE.h @@ -23,7 +23,7 @@ constexpr std::string_view COUNTER_STRIKE_PROMOD = "H1aRQ0n1"; constexpr std::string_view DAY_OF_DEFEAT_SOURCE = "Wl0u5B3F"; constexpr std::string_view DYSTOPIA_1_2 = "pH3apO8w"; constexpr std::string_view DYSTOPIA_1_3 = "G8stUh3F"; -constexpr std::string_view FORTRESS_FOREVER_PRE-GREENLIGHT = "saxEWr5v"; +constexpr std::string_view FORTRESS_FOREVER_PRE_GREENLIGHT = "saxEWr5v"; constexpr std::string_view GOLDEN_EYE_SOURCE = "Gr3naDes"; constexpr std::string_view HALF_LIFE_2_CTF = "R1dj3axP"; constexpr std::string_view HALF_LIFE_2_DM = DEFAULT; diff --git a/lang/c/include/vcryptppc/VICE.h b/lang/c/include/vcryptppc/VICE.h index 7980fbf93..a31924703 100644 --- a/lang/c/include/vcryptppc/VICE.h +++ b/lang/c/include/vcryptppc/VICE.h @@ -13,7 +13,7 @@ SOURCEPP_CLSVAR_EXT(vcryptpp, vice, const char*, known_codes_counter_strike_prom SOURCEPP_CLSVAR_EXT(vcryptpp, vice, const char*, known_codes_day_of_defeat_source, "Wl0u5B3F"); SOURCEPP_CLSVAR_EXT(vcryptpp, vice, const char*, known_codes_dystopia_1_2, "pH3apO8w"); SOURCEPP_CLSVAR_EXT(vcryptpp, vice, const char*, known_codes_dystopia_1_3, "G8stUh3F"); -SOURCEPP_CLSVAR_EXT(vcryptpp, vice, const char*, known_codes_fortress_forever-pre_greenlight, "saxEWr5v"); +SOURCEPP_CLSVAR_EXT(vcryptpp, vice, const char*, known_codes_fortress_forever_pre_greenlight, "saxEWr5v"); SOURCEPP_CLSVAR_EXT(vcryptpp, vice, const char*, known_codes_golden_eye_source, "Gr3naDes"); SOURCEPP_CLSVAR_EXT(vcryptpp, vice, const char*, known_codes_half_life_2_ctf, "R1dj3axP"); SOURCEPP_CLSVAR_EXT(vcryptpp, vice, const char*, known_codes_half_life_2_dm, "x9Ke0BY7"); diff --git a/lang/csharp/src/vcryptpp/VICE.cs b/lang/csharp/src/vcryptpp/VICE.cs index 72c65189c..cf354e499 100644 --- a/lang/csharp/src/vcryptpp/VICE.cs +++ b/lang/csharp/src/vcryptpp/VICE.cs @@ -28,7 +28,7 @@ public static class KnownCodes { public const string DAY_OF_DEFEAT_SOURCE = "Wl0u5B3F"; public const string DYSTOPIA_1_2 = "pH3apO8w"; public const string DYSTOPIA_1_3 = "G8stUh3F"; - public const string FORTRESS_FOREVER-PRE_GREENLIGHT = "saxEWr5v"; + public const string FORTRESS_FOREVER_PRE_GREENLIGHT = "saxEWr5v"; public const string GOLDEN_EYE_SOURCE = "Gr3naDes"; public const string HALF_LIFE_2_CTF = "R1dj3axP"; public const string HALF_LIFE_2_DM = DEFAULT; diff --git a/lang/python/src/vcryptpp.h b/lang/python/src/vcryptpp.h index a8a6a163d..f7a9243d6 100644 --- a/lang/python/src/vcryptpp.h +++ b/lang/python/src/vcryptpp.h @@ -53,7 +53,7 @@ inline void register_python(py::module_& m) { KnownCodes.attr("DAY_OF_DEFEAT_SOURCE") = DAY_OF_DEFEAT_SOURCE; KnownCodes.attr("DYSTOPIA_1_2") = DYSTOPIA_1_2; KnownCodes.attr("DYSTOPIA_1_3") = DYSTOPIA_1_3; - KnownCodes.attr("FORTRESS_FOREVER-PRE_GREENLIGHT") = FORTRESS_FOREVER_PRE-GREENLIGHT; + KnownCodes.attr("FORTRESS_FOREVER_PRE_GREENLIGHT") = FORTRESS_FOREVER_PRE-GREENLIGHT; KnownCodes.attr("GOLDEN_EYE_SOURCE") = GOLDEN_EYE_SOURCE; KnownCodes.attr("HALF_LIFE_2_CTF") = HALF_LIFE_2_CTF; KnownCodes.attr("HALF_LIFE_2_DM") = HALF_LIFE_2_DM;