diff --git a/.efrocachemap b/.efrocachemap index 1a134371..a6f8eac5 100644 --- a/.efrocachemap +++ b/.efrocachemap @@ -421,7 +421,7 @@ "build/assets/ba_data/audio/zoeOw.ogg": "74befe45a8417e95b6a2233c51992a26", "build/assets/ba_data/audio/zoePickup01.ogg": "48ab8cddfcde36a750856f3f81dd20c8", "build/assets/ba_data/audio/zoeScream01.ogg": "2b468aedfa8741090247f04eb9e6df55", - "build/assets/ba_data/data/langdata.json": "582c633a37b78e3326e20d2a5b8969a0", + "build/assets/ba_data/data/langdata.json": "a8147a30aac3fd2c4bfbc60da738821e", "build/assets/ba_data/data/languages/arabic.json": "5c27239be3d4f8daefd9f3bd7e99ff8d", "build/assets/ba_data/data/languages/belarussian.json": "0a2b0ae82298cec42764558b5b49e4dd", "build/assets/ba_data/data/languages/chinese.json": "fcd59e90c12e8106ce418b65b97b3db6", @@ -430,12 +430,12 @@ "build/assets/ba_data/data/languages/czech.json": "15be4fd59895135bad0265f79b362d5b", "build/assets/ba_data/data/languages/danish.json": "8e57db30c5250df2abff14a822f83ea7", "build/assets/ba_data/data/languages/dutch.json": "b0900d572c9141897d53d6574c471343", - "build/assets/ba_data/data/languages/english.json": "b7a0d185b50957f731db80897313a055", + "build/assets/ba_data/data/languages/english.json": "5bc58c53dddf71088f5cbe862c4a320b", "build/assets/ba_data/data/languages/esperanto.json": "0e397cfa5f3fb8cef5f4a64f21cda880", "build/assets/ba_data/data/languages/filipino.json": "5d28e03d97a3626e790481401ee894a4", "build/assets/ba_data/data/languages/french.json": "ee2a81129519d7030a617308da8c9195", "build/assets/ba_data/data/languages/german.json": "eaf3f1bf633566de133c61f4f5377e62", - "build/assets/ba_data/data/languages/gibberish.json": "217a21b35406d1e97954b5c2dbb2c936", + "build/assets/ba_data/data/languages/gibberish.json": "1b448b3a3cfdc30cef31dc3d899f8d21", "build/assets/ba_data/data/languages/greek.json": "ad3c0d38f34d809824892d6f22808dbf", "build/assets/ba_data/data/languages/hindi.json": "bb3548531daf7bc7fee4a28d48228c32", "build/assets/ba_data/data/languages/hungarian.json": "6b08fea24b72cc805ed0dc59e11c4cd6", @@ -456,7 +456,7 @@ "build/assets/ba_data/data/languages/thai.json": "1d665629361f302693dead39de8fa945", "build/assets/ba_data/data/languages/turkish.json": "270c07e826bf799246906ac919d78545", "build/assets/ba_data/data/languages/ukrainian.json": "76ad64cb4911c8d5a3e4815b865ce5bd", - "build/assets/ba_data/data/languages/venetian.json": "c0aceb82c26a9361421479d01edaa388", + "build/assets/ba_data/data/languages/venetian.json": "96e7607b0aa79b7eb48cac8df77e8e65", "build/assets/ba_data/data/languages/vietnamese.json": "7e40fcd270b34c1e836ba51a2c6cbce7", "build/assets/ba_data/data/maps/big_g.json": "1dd301d490643088a435ce75df971054", "build/assets/ba_data/data/maps/bridgit.json": "6aea74805f4880cc11237c5734a24422", @@ -4038,26 +4038,26 @@ "build/assets/windows/Win32/ucrtbased.dll": "2def5335207d41b21b9823f6805997f1", "build/assets/windows/Win32/vc_redist.x86.exe": "b08a55e2e77623fe657bea24f223a3ae", "build/assets/windows/Win32/vcruntime140d.dll": "865b2af4d1e26a1a8073c89acb06e599", - "build/prefab/full/linux_arm64_gui/debug/ballisticakit": "9a3a53a5a5894ed950c3d45c68d15372", - "build/prefab/full/linux_arm64_gui/release/ballisticakit": "c57a8d0742c9465ada46a01b62ad75ba", - "build/prefab/full/linux_arm64_server/debug/dist/ballisticakit_headless": "738d3996ff299bde2857df59dde0f5f4", - "build/prefab/full/linux_arm64_server/release/dist/ballisticakit_headless": "f989d6393056783307de70a2bdfa098b", - "build/prefab/full/linux_x86_64_gui/debug/ballisticakit": "5fe35efb6f34e13392575b8a0b7469cc", - "build/prefab/full/linux_x86_64_gui/release/ballisticakit": "b3b64e3df4ea39091e75e95a40efab0a", - "build/prefab/full/linux_x86_64_server/debug/dist/ballisticakit_headless": "a523863d1dc98162536c43a2ec77975c", - "build/prefab/full/linux_x86_64_server/release/dist/ballisticakit_headless": "00bacc4b6d42688712813966df7d6a42", - "build/prefab/full/mac_arm64_gui/debug/ballisticakit": "92b9c2787b61f3f2972253ab9be6309a", - "build/prefab/full/mac_arm64_gui/release/ballisticakit": "5f1c8cdcdd6ce276d039d36b3734f507", - "build/prefab/full/mac_arm64_server/debug/dist/ballisticakit_headless": "fef789ff0160ea56366a2463b3c6c39c", - "build/prefab/full/mac_arm64_server/release/dist/ballisticakit_headless": "8ec6e4ecef744cb6fa64f3617ec49a2c", - "build/prefab/full/mac_x86_64_gui/debug/ballisticakit": "6e00380f58d4ff96c618b454b94d7c3c", - "build/prefab/full/mac_x86_64_gui/release/ballisticakit": "bb2fac09a8e572721b48b22cd2718417", - "build/prefab/full/mac_x86_64_server/debug/dist/ballisticakit_headless": "98e7ef0bf26e9df1088fe22da0a4286b", - "build/prefab/full/mac_x86_64_server/release/dist/ballisticakit_headless": "68cf87da69fa5d004c18e9661179b88e", - "build/prefab/full/windows_x86_gui/debug/BallisticaKit.exe": "509ed7a3ec78263793c20b8e4fe24cdb", - "build/prefab/full/windows_x86_gui/release/BallisticaKit.exe": "af01eab4ab71cc0cb27cfdd6579efce2", - "build/prefab/full/windows_x86_server/debug/dist/BallisticaKitHeadless.exe": "7b1567efe48e0f174ca1fe6d12cce83f", - "build/prefab/full/windows_x86_server/release/dist/BallisticaKitHeadless.exe": "a6e4ba2782551897e24b7f31937df01c", + "build/prefab/full/linux_arm64_gui/debug/ballisticakit": "41f83778b832c4295b5459ca6d13d6b9", + "build/prefab/full/linux_arm64_gui/release/ballisticakit": "ab7dbe15ae191849468ed62f9a8ae79f", + "build/prefab/full/linux_arm64_server/debug/dist/ballisticakit_headless": "b14522369209e042b38d36e6c007f64e", + "build/prefab/full/linux_arm64_server/release/dist/ballisticakit_headless": "c39f80aa05cc4508e6df7599bfe7b669", + "build/prefab/full/linux_x86_64_gui/debug/ballisticakit": "ed0bfecdf788b80800323e3685062c38", + "build/prefab/full/linux_x86_64_gui/release/ballisticakit": "b92635ecf6df8d1fd5c870640394f066", + "build/prefab/full/linux_x86_64_server/debug/dist/ballisticakit_headless": "52528d0d6ca85a5ebaafa6e953e25e5f", + "build/prefab/full/linux_x86_64_server/release/dist/ballisticakit_headless": "4d9822529c3efb5e49fde73ae53007dd", + "build/prefab/full/mac_arm64_gui/debug/ballisticakit": "059d77ed7f8b8c4d6394ac95f6de5f63", + "build/prefab/full/mac_arm64_gui/release/ballisticakit": "bc462ec34202f3317fb8e98dd297cdcd", + "build/prefab/full/mac_arm64_server/debug/dist/ballisticakit_headless": "66f62748034f9c105859037a01c7c748", + "build/prefab/full/mac_arm64_server/release/dist/ballisticakit_headless": "51e5ad7bef454833ee6d1674103e0d2b", + "build/prefab/full/mac_x86_64_gui/debug/ballisticakit": "5ed5efa3e93808704f62238773f0492c", + "build/prefab/full/mac_x86_64_gui/release/ballisticakit": "da51445201ad9fb5d61e25156bb4156b", + "build/prefab/full/mac_x86_64_server/debug/dist/ballisticakit_headless": "1541c01b889833ddf895056bbd214d02", + "build/prefab/full/mac_x86_64_server/release/dist/ballisticakit_headless": "037e940f6c8af36948e18c559a54565b", + "build/prefab/full/windows_x86_gui/debug/BallisticaKit.exe": "e5cd0ab3d97a8716312b83743d0ba229", + "build/prefab/full/windows_x86_gui/release/BallisticaKit.exe": "46be095ba226e8bec842388403c0784e", + "build/prefab/full/windows_x86_server/debug/dist/BallisticaKitHeadless.exe": "eca0060562ab4d4e839e2e6eded99ec8", + "build/prefab/full/windows_x86_server/release/dist/BallisticaKitHeadless.exe": "84599fb32d088aa2734e3fad23500f1e", "build/prefab/lib/linux_arm64_gui/debug/libballisticaplus.a": "24c1641a1bef7c56d8b3805fbd01ac30", "build/prefab/lib/linux_arm64_gui/release/libballisticaplus.a": "3da37afad8903a3c24c38fb698a19ce1", "build/prefab/lib/linux_arm64_server/debug/libballisticaplus.a": "24c1641a1bef7c56d8b3805fbd01ac30", diff --git a/CHANGELOG.md b/CHANGELOG.md index 25da2adf..ebb32fc1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,15 @@ -### 1.7.35 (build 21848, api 8, 2024-05-08) +### 1.7.35 (build 21849, api 8, 2024-05-08) - Fixed an issue where the engine would block at exit on some version of Linux until Ctrl-D was pressed in the calling terminal. +- V2 accounts have been around for a while now, so the old V1 device login + button is no longer visible in the account panel. It is currently possible to + bring it back by checking 'Show Deprecated Login Types' in advanced settings, + but please consider this a warning to upgrade/migrate your account to V2 if + you have not done so yet. +- The 'Sign in with a BombSquad account' option is now simply 'Sign In' on many + builds cases since it is the one and only option. So tidy! When other options + such as Google Play or Game Center are available it is instead called 'Sign in + with an email address'. - Reworked the 'Enter Code' dialog into a 'Send Info' dialog. The `sendinfo` command is 99% of the reason for 'Enter Code' existing, so this simplifies things for that use case and hopefully clarifies its purpose so I can spend diff --git a/src/assets/ba_data/python/baenv.py b/src/assets/ba_data/python/baenv.py index 0301e787..3582b04a 100644 --- a/src/assets/ba_data/python/baenv.py +++ b/src/assets/ba_data/python/baenv.py @@ -52,7 +52,7 @@ if TYPE_CHECKING: # Build number and version of the ballistica binary we expect to be # using. -TARGET_BALLISTICA_BUILD = 21848 +TARGET_BALLISTICA_BUILD = 21849 TARGET_BALLISTICA_VERSION = '1.7.35' diff --git a/src/assets/ba_data/python/bauiv1lib/account/settings.py b/src/assets/ba_data/python/bauiv1lib/account/settings.py index df7ec57f..787ab523 100644 --- a/src/assets/ba_data/python/bauiv1lib/account/settings.py +++ b/src/assets/ba_data/python/bauiv1lib/account/settings.py @@ -96,9 +96,10 @@ class AccountSettingsWindow(bui.Window): # Always want to show our web-based v2 login option. self._show_sign_in_buttons.append('V2Proxy') - # Legacy v1 device accounts are currently always available - # (though we need to start phasing them out at some point). - self._show_sign_in_buttons.append('Device') + # Legacy v1 device accounts available only if the user + # has explicitly enabled deprecated login types. + if bui.app.config.resolve('Show Deprecated Login Types'): + self._show_sign_in_buttons.append('Device') top_extra = 15 if uiscale is bui.UIScale.SMALL else 0 super().__init__( @@ -207,8 +208,8 @@ class AccountSettingsWindow(bui.Window): self._refresh_tickets_text() self._refresh_account_name_text() - def _get_sign_in_text(self) -> bui.Lstr: - return bui.Lstr(resource=self._r + '.signInText') + # def _get_sign_in_text(self) -> bui.Lstr: + # return bui.Lstr(resource=self._r + '.signInText') def _refresh(self) -> None: # pylint: disable=too-many-statements @@ -698,8 +699,10 @@ class AccountSettingsWindow(bui.Window): # TODO: Add translation strings for these. v2labeltext: bui.Lstr | str = ( - 'Sign in with an email/password' + 'Sign in with an email address' if show_game_center_sign_in_button + or show_google_play_sign_in_button + or show_device_sign_in_button # else bui.Lstr(resource=self._r + '.signInWithV2Text') else bui.Lstr(resource=self._r + '.signInText') ) diff --git a/src/assets/ba_data/python/bauiv1lib/settings/advanced.py b/src/assets/ba_data/python/bauiv1lib/settings/advanced.py index 133c5c53..2a6ccc4d 100644 --- a/src/assets/ba_data/python/bauiv1lib/settings/advanced.py +++ b/src/assets/ba_data/python/bauiv1lib/settings/advanced.py @@ -1,5 +1,6 @@ # Released under the MIT License. See LICENSE for details. # +# pylint: disable=too-many-lines """UI functionality for advanced settings.""" from __future__ import annotations @@ -90,7 +91,7 @@ class AdvancedSettingsWindow(bui.Window): self._scroll_width = self._width - (100 + 2 * x_inset) self._scroll_height = self._height - 115.0 self._sub_width = self._scroll_width * 0.95 - self._sub_height = 870.0 + self._sub_height = 912.0 if self._show_always_use_internal_keyboard: self._sub_height += 62 @@ -489,6 +490,19 @@ class AdvancedSettingsWindow(bui.Window): maxwidth=430, ) + v -= 42 + self._show_deprecated_login_types_check_box = ConfigCheckBox( + parent=self._subcontainer, + position=(50, v), + size=(self._sub_width - 100, 30), + configkey='Show Deprecated Login Types', + displayname=bui.Lstr( + resource=f'{self._r}.showDeprecatedLoginTypesText' + ), + scale=1.0, + maxwidth=430, + ) + v -= 42 self._disable_camera_shake_check_box = ConfigCheckBox( parent=self._subcontainer, @@ -840,6 +854,8 @@ class AdvancedSettingsWindow(bui.Window): sel_name = 'KickIdlePlayers' elif sel == self._show_demos_when_idle_check_box.widget: sel_name = 'ShowDemosWhenIdle' + elif sel == self._show_deprecated_login_types_check_box.widget: + sel_name = 'ShowDeprecatedLoginTypes' elif sel == self._show_game_ping_check_box.widget: sel_name = 'ShowPing' elif sel == self._disable_camera_shake_check_box.widget: @@ -888,6 +904,7 @@ class AdvancedSettingsWindow(bui.Window): def _restore_state(self) -> None: # pylint: disable=too-many-branches + # pylint: disable=too-many-statements try: assert bui.app.classic is not None sel_name = bui.app.ui_v1.window_states.get(type(self), {}).get( @@ -911,6 +928,8 @@ class AdvancedSettingsWindow(bui.Window): sel = self._kick_idle_players_check_box.widget elif sel_name == 'ShowDemosWhenIdle': sel = self._show_demos_when_idle_check_box.widget + elif sel_name == 'ShowDeprecatedLoginTypes': + sel = self._show_deprecated_login_types_check_box.widget elif sel_name == 'ShowPing': sel = self._show_game_ping_check_box.widget elif sel_name == 'DisableCameraShake': diff --git a/src/ballistica/base/support/app_config.cc b/src/ballistica/base/support/app_config.cc index ca21e754..d7ee21c0 100644 --- a/src/ballistica/base/support/app_config.cc +++ b/src/ballistica/base/support/app_config.cc @@ -237,6 +237,8 @@ void AppConfig::SetupEntries() { BoolEntry("Disable Camera Gyro", false); bool_entries_[BoolID::kShowDemosWhenIdle] = BoolEntry("Show Demos When Idle", false); + bool_entries_[BoolID::kShowDeprecatedLoginTypes] = + BoolEntry("Show Deprecated Login Types", false); // Now add everything to our name map and make sure all is kosher. CompleteMap(float_entries_); diff --git a/src/ballistica/base/support/app_config.h b/src/ballistica/base/support/app_config.h index f170c23b..7bb24b6a 100644 --- a/src/ballistica/base/support/app_config.h +++ b/src/ballistica/base/support/app_config.h @@ -75,6 +75,7 @@ class AppConfig { kDisableCameraShake, kDisableCameraGyro, kShowDemosWhenIdle, + kShowDeprecatedLoginTypes, kLast // Sentinel. }; diff --git a/src/ballistica/shared/ballistica.cc b/src/ballistica/shared/ballistica.cc index a8492899..b8301138 100644 --- a/src/ballistica/shared/ballistica.cc +++ b/src/ballistica/shared/ballistica.cc @@ -39,7 +39,7 @@ auto main(int argc, char** argv) -> int { namespace ballistica { // These are set automatically via script; don't modify them here. -const int kEngineBuildNumber = 21848; +const int kEngineBuildNumber = 21849; const char* kEngineVersion = "1.7.35"; const int kEngineApiVersion = 8;