diff --git a/.efrocachemap b/.efrocachemap index f331743e..dc12c592 100644 --- a/.efrocachemap +++ b/.efrocachemap @@ -4056,26 +4056,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": "96ba5c40a9216f4efed502e29a0bc762", - "build/prefab/full/linux_arm64_gui/release/ballisticakit": "bbe152b83087e223b9f9f0336d4f03d3", - "build/prefab/full/linux_arm64_server/debug/dist/ballisticakit_headless": "c22b27747e16c1dfa7e7a43264555cd5", - "build/prefab/full/linux_arm64_server/release/dist/ballisticakit_headless": "06b779dfd042cb832e4546b177b333a7", - "build/prefab/full/linux_x86_64_gui/debug/ballisticakit": "a18464f5e02af14e3b34ccb2154fb1de", - "build/prefab/full/linux_x86_64_gui/release/ballisticakit": "56d0b3ff53e9d4ac46c8ef2aa4d729b6", - "build/prefab/full/linux_x86_64_server/debug/dist/ballisticakit_headless": "7d00156ec8e56af0d8a39ea7eb20f6fd", - "build/prefab/full/linux_x86_64_server/release/dist/ballisticakit_headless": "b933746e1b64608aab7e6bf8ebf32a8d", - "build/prefab/full/mac_arm64_gui/debug/ballisticakit": "824515c2fc33e06c7ecb866a2818a546", - "build/prefab/full/mac_arm64_gui/release/ballisticakit": "d0a8783b736e196cfaaefbb62271e337", - "build/prefab/full/mac_arm64_server/debug/dist/ballisticakit_headless": "741f777205eddf8a2500625e3ba18ee6", - "build/prefab/full/mac_arm64_server/release/dist/ballisticakit_headless": "01697d3e58c63d3f23c74720f7738da6", - "build/prefab/full/mac_x86_64_gui/debug/ballisticakit": "a86b1855a709c6b654195a8a0e308057", - "build/prefab/full/mac_x86_64_gui/release/ballisticakit": "9567d63a4c02d393a8110953f1c2e9b5", - "build/prefab/full/mac_x86_64_server/debug/dist/ballisticakit_headless": "7199a245c7e946222125f0e8640285a0", - "build/prefab/full/mac_x86_64_server/release/dist/ballisticakit_headless": "a5e0788917285460f40d1beacabd0ca2", - "build/prefab/full/windows_x86_gui/debug/BallisticaKit.exe": "4cc6912cd58e026baa523d8081411506", - "build/prefab/full/windows_x86_gui/release/BallisticaKit.exe": "754fed064c8a87448617ef7b9c3479cb", - "build/prefab/full/windows_x86_server/debug/dist/BallisticaKitHeadless.exe": "047c6dcda71e7c4e0c4ffa5f1aac5bfa", - "build/prefab/full/windows_x86_server/release/dist/BallisticaKitHeadless.exe": "56976efa146ae9972dd6ba53ec75d451", + "build/prefab/full/linux_arm64_gui/debug/ballisticakit": "abab400c9116a3825a5bb90d31ebe3b7", + "build/prefab/full/linux_arm64_gui/release/ballisticakit": "5641927c9074dc4e759d3761a42dd3cc", + "build/prefab/full/linux_arm64_server/debug/dist/ballisticakit_headless": "113eb282e6f5d7a082f8dfc2f19db078", + "build/prefab/full/linux_arm64_server/release/dist/ballisticakit_headless": "cdee95f3c6bc21f7ff3016ff3c719178", + "build/prefab/full/linux_x86_64_gui/debug/ballisticakit": "a20fb4fd648a6e66bc5395f48796a5b8", + "build/prefab/full/linux_x86_64_gui/release/ballisticakit": "be599ec099f2a1f4109ceda6a05a8c62", + "build/prefab/full/linux_x86_64_server/debug/dist/ballisticakit_headless": "f22486755f0c0f2b106926d5a9ee97c9", + "build/prefab/full/linux_x86_64_server/release/dist/ballisticakit_headless": "ca382a4fa963a50af3675c811526ba76", + "build/prefab/full/mac_arm64_gui/debug/ballisticakit": "00f392858c451a8d395c7cd7958f7af7", + "build/prefab/full/mac_arm64_gui/release/ballisticakit": "1f66a8a8f8d8041667a4b6cb71baffbd", + "build/prefab/full/mac_arm64_server/debug/dist/ballisticakit_headless": "c4153466b51a30b444d2350156a9fbb7", + "build/prefab/full/mac_arm64_server/release/dist/ballisticakit_headless": "91c3c980de79faee6854c1c88408bd0c", + "build/prefab/full/mac_x86_64_gui/debug/ballisticakit": "143bfda2b349f5505068dd874802413f", + "build/prefab/full/mac_x86_64_gui/release/ballisticakit": "293cb9525c241d1dda224461db34b631", + "build/prefab/full/mac_x86_64_server/debug/dist/ballisticakit_headless": "6dc3c9f9637d3f4e16d0a9093a59b1e7", + "build/prefab/full/mac_x86_64_server/release/dist/ballisticakit_headless": "bbce1ea501fc419f6d83882b2c283eb0", + "build/prefab/full/windows_x86_gui/debug/BallisticaKit.exe": "cceac583899afd4e97e4fd7dea2611fb", + "build/prefab/full/windows_x86_gui/release/BallisticaKit.exe": "6ad184e11ae0b85137b37bbf2a75b331", + "build/prefab/full/windows_x86_server/debug/dist/BallisticaKitHeadless.exe": "a1b15a12b361ba60cead3f8045bbd545", + "build/prefab/full/windows_x86_server/release/dist/BallisticaKitHeadless.exe": "1949706b21961783d428034b03982521", "build/prefab/lib/linux_arm64_gui/debug/libballisticaplus.a": "dc8d1e0f82fe799cbbacfd89bbf04498", "build/prefab/lib/linux_arm64_gui/release/libballisticaplus.a": "c6be3757c2ee85a7f4f8a66d327a24a0", "build/prefab/lib/linux_arm64_server/debug/libballisticaplus.a": "dc8d1e0f82fe799cbbacfd89bbf04498", @@ -4092,14 +4092,14 @@ "build/prefab/lib/mac_x86_64_gui/release/libballisticaplus.a": "856a05aadbe4b75baee3048296aa8eef", "build/prefab/lib/mac_x86_64_server/debug/libballisticaplus.a": "c5eb4a9161b68775876c4d19bff1cc1b", "build/prefab/lib/mac_x86_64_server/release/libballisticaplus.a": "856a05aadbe4b75baee3048296aa8eef", - "build/prefab/lib/windows/Debug_Win32/BallisticaKitGenericPlus.lib": "767e7b15de08ffe850d3bbc7def2fab2", - "build/prefab/lib/windows/Debug_Win32/BallisticaKitGenericPlus.pdb": "d482806656749efd090c6c28c124eecf", - "build/prefab/lib/windows/Debug_Win32/BallisticaKitHeadlessPlus.lib": "07abac6aa3c528bd594bdf5b53e9c823", - "build/prefab/lib/windows/Debug_Win32/BallisticaKitHeadlessPlus.pdb": "b16b8780811a583824491b80a45b839d", - "build/prefab/lib/windows/Release_Win32/BallisticaKitGenericPlus.lib": "33806447e8ab2bd3a55509d8a5d8b64c", - "build/prefab/lib/windows/Release_Win32/BallisticaKitGenericPlus.pdb": "786967e43a719120d339de9cd791e58b", - "build/prefab/lib/windows/Release_Win32/BallisticaKitHeadlessPlus.lib": "70162e33973c253efdc386e421c50ebe", - "build/prefab/lib/windows/Release_Win32/BallisticaKitHeadlessPlus.pdb": "4ab0adfd6cc8934f0340d4bb6c73b78d", + "build/prefab/lib/windows/Debug_Win32/BallisticaKitGenericPlus.lib": "f297a236664bf55b81f19e5c69d81b64", + "build/prefab/lib/windows/Debug_Win32/BallisticaKitGenericPlus.pdb": "9eb9f987869a87ab1280d70c8069df6a", + "build/prefab/lib/windows/Debug_Win32/BallisticaKitHeadlessPlus.lib": "f269cab8edb50101fff358735255151d", + "build/prefab/lib/windows/Debug_Win32/BallisticaKitHeadlessPlus.pdb": "2631845123a868a98ef1156c786d1cff", + "build/prefab/lib/windows/Release_Win32/BallisticaKitGenericPlus.lib": "a5f59a9cd23e6b3ec18834a169d6a6e0", + "build/prefab/lib/windows/Release_Win32/BallisticaKitGenericPlus.pdb": "35b984001137f4bde7dc7bf4576da320", + "build/prefab/lib/windows/Release_Win32/BallisticaKitHeadlessPlus.lib": "cf974280198d48a836b0f433ebf84b68", + "build/prefab/lib/windows/Release_Win32/BallisticaKitHeadlessPlus.pdb": "97260251b62485cc95da5b41aa90f9ca", "src/assets/ba_data/python/babase/_mgen/__init__.py": "f885fed7f2ed98ff2ba271f9dbe3391c", "src/assets/ba_data/python/babase/_mgen/enums.py": "28323912b56ec07701eda3d41a6a4101", "src/ballistica/base/mgen/pyembed/binding_base.inc": "72bfed2cce8ff19741989dec28302f3f", diff --git a/CHANGELOG.md b/CHANGELOG.md index 33340738..bcb97511 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,4 @@ -### 1.7.28 (build 21588, api 8, 2023-11-13) +### 1.7.28 (build 21596, api 8, 2023-11-14) - Turning off ticket continues on all platforms. I'll be moving the game towards a new monetization scheme mostly based on cosmetics and this has always felt a diff --git a/src/assets/ba_data/python/baenv.py b/src/assets/ba_data/python/baenv.py index 2ec6cb9b..006b75f0 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 = 21588 +TARGET_BALLISTICA_BUILD = 21596 TARGET_BALLISTICA_VERSION = '1.7.28' diff --git a/src/ballistica/core/platform/apple/core_platform_apple.cc b/src/ballistica/core/platform/apple/core_platform_apple.cc index 5d7fbeaf..aa9f72d0 100644 --- a/src/ballistica/core/platform/apple/core_platform_apple.cc +++ b/src/ballistica/core/platform/apple/core_platform_apple.cc @@ -4,6 +4,7 @@ #include "ballistica/core/platform/apple/core_platform_apple.h" #if BA_XCODE_BUILD +#include #include #endif @@ -37,11 +38,30 @@ auto CorePlatformApple::GetDeviceV1AccountUUIDPrefix() -> std::string { auto CorePlatformApple::DoGetDeviceName() -> std::string { #if BA_OSTYPE_MACOS && BA_XCODE_BUILD - // Ask swift for a pretty name if possible. - auto val = BallisticaKit::CocoaFromCpp::getDeviceName(); - if (val) { - return val.get(); + +#pragma clang diagnostic push +#pragma GCC diagnostic ignored "-Wdeprecated-declarations" + + CFStringRef machineName = CSCopyMachineName(); + if (machineName != nullptr) { + char buffer[256]; + std::string out; + if (CFStringGetCString(machineName, buffer, sizeof(buffer), + kCFStringEncodingUTF8)) { + out = buffer; + } + CFRelease(machineName); + return out; } + +#pragma clang diagnostic pop + + // FIXME - This code currently hangs if there is an apostrophe in the + // device name. Should hopefully be fixed in Swift 5.10. + // https://github.com/apple/swift/issues/69870 + + // Ask swift for a pretty name if possible. + // return BallisticaKit::CocoaFromCpp::getDeviceName(); #elif BA_OSTYPE_IOS_TVOS && BA_XCODE_BUILD return BallisticaKit::UIKitFromCpp::getDeviceName(); #endif @@ -442,6 +462,21 @@ auto CorePlatformApple::GetLocale() -> std::string { #endif } +auto CorePlatformApple::CanShowBlockingFatalErrorDialog() -> bool { + if (g_buildconfig.xcode_build() && g_buildconfig.ostype_macos()) { + return true; + } + return false; +} + +void CorePlatformApple::BlockingFatalErrorDialog(const std::string& message) { +#if BA_XCODE_BUILD && BA_OSTYPE_MACOS + BallisticaKit::CocoaFromCpp::blockingFatalErrorDialog(message); +#else + CorePlatform::BlockingFatalErrorDialog(message); +#endif +} + } // namespace ballistica::core #endif // BA_OSTYPE_MACOS || BA_OSTYPE_IOS_TVOS diff --git a/src/ballistica/core/platform/apple/core_platform_apple.h b/src/ballistica/core/platform/apple/core_platform_apple.h index 8fe4972a..2fd3894f 100644 --- a/src/ballistica/core/platform/apple/core_platform_apple.h +++ b/src/ballistica/core/platform/apple/core_platform_apple.h @@ -59,6 +59,8 @@ class CorePlatformApple : public CorePlatform { auto DoGetDeviceName() -> std::string override; auto DoGetDeviceDescription() -> std::string override; auto GetOSVersionString() -> std::string override; + auto CanShowBlockingFatalErrorDialog() -> bool override; + void BlockingFatalErrorDialog(const std::string& message) override; protected: auto DoGetDataDirectoryMonolithicDefault() -> std::string override; diff --git a/src/ballistica/shared/ballistica.cc b/src/ballistica/shared/ballistica.cc index 60cb55c9..22603f36 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 = 21588; +const int kEngineBuildNumber = 21596; const char* kEngineVersion = "1.7.28"; const int kEngineApiVersion = 8;