diff --git a/.efrocachemap b/.efrocachemap index bffb42c7..149f3598 100644 --- a/.efrocachemap +++ b/.efrocachemap @@ -432,10 +432,10 @@ "build/assets/ba_data/audio/zoeOw.ogg": "b2d705c31c9dcc1efdc71394764c3beb", "build/assets/ba_data/audio/zoePickup01.ogg": "e9366dc2d2b8ab8b0c4e2c14c02d0789", "build/assets/ba_data/audio/zoeScream01.ogg": "903e0e45ee9b3373e9d9ce20c814374e", - "build/assets/ba_data/data/langdata.json": "2d45fb57151526c2b175ae4eb3e5e6be", + "build/assets/ba_data/data/langdata.json": "917f90e60eb23ea35d6053765dbd00b9", "build/assets/ba_data/data/languages/arabic.json": "d95c590f7db91a9e8b7df4b9b58c8529", "build/assets/ba_data/data/languages/belarussian.json": "009b452aa308bf2b2f7e92d9b78ba5ff", - "build/assets/ba_data/data/languages/chinese.json": "7ff14b51d741bb3c8e7c902d85eb8dcd", + "build/assets/ba_data/data/languages/chinese.json": "a8f1d5549dbbec0600499884028669a1", "build/assets/ba_data/data/languages/chinesetraditional.json": "bea0f9c17324591b8261015cbd80a265", "build/assets/ba_data/data/languages/croatian.json": "f36e1c6f20f2ce0d1fa8adb9c3cbf509", "build/assets/ba_data/data/languages/czech.json": "3418bee44e69be13b7f72996abe96921", @@ -443,14 +443,14 @@ "build/assets/ba_data/data/languages/dutch.json": "4ba5bbcc0fecddd0aac6ee2c165d1e40", "build/assets/ba_data/data/languages/english.json": "77fb833372b208b6f15e1c8442033ac7", "build/assets/ba_data/data/languages/esperanto.json": "0e397cfa5f3fb8cef5f4a64f21cda880", - "build/assets/ba_data/data/languages/filipino.json": "1894fc331dcad7ce9cf4c180843f548f", + "build/assets/ba_data/data/languages/filipino.json": "feab6cf05b9047eb4cefabffdbbda978", "build/assets/ba_data/data/languages/french.json": "061fd0da99c8b2bd8fcfb1ad0b2b02c0", "build/assets/ba_data/data/languages/german.json": "bc656f1ada467161c23546f48d0dacc5", "build/assets/ba_data/data/languages/gibberish.json": "8eca04f0bf36f2d306dc2f7d550d8339", "build/assets/ba_data/data/languages/greek.json": "d28d1092fbb00ed857cbd53124c0dc78", "build/assets/ba_data/data/languages/hindi.json": "567e6976b3c72f891431ad7fcc62ab16", "build/assets/ba_data/data/languages/hungarian.json": "af801baffb2c06460635dfb04c34bb3e", - "build/assets/ba_data/data/languages/indonesian.json": "607ba358179185f032096ea1978e4448", + "build/assets/ba_data/data/languages/indonesian.json": "7bf2cc8a208b9bb3ac38a8ace1aff7dc", "build/assets/ba_data/data/languages/italian.json": "efddc0d1740328da9655e4bc68693ce9", "build/assets/ba_data/data/languages/korean.json": "360760d72832863e1a3451b0a514cb08", "build/assets/ba_data/data/languages/malay.json": "0212e18e54efa202c17505376e5b82fb", @@ -4163,7 +4163,6 @@ "build/assets/windows/Win32/SDL2.dll": "3937d3151ffb6544bf9657d0e45a8d0a", "build/assets/windows/Win32/libvorbis.dll": "dcfa5c5534900b7c109adc820ae57d74", "build/assets/windows/Win32/libvorbisfile.dll": "8abd2d7131857b9cc689b2857d04d018", - "build/assets/windows/Win32/msvcp140d.dll": "d172cacd2087cf34db2fb8bb3c29c337", "build/assets/windows/Win32/ogg.dll": "38a386d3a0092e7a28fce9597a9d9e5d", "build/assets/windows/Win32/python.exe": "2265052ae8452d0260e39bef170db9f7", "build/assets/windows/Win32/python312.dll": "7c7584de5a2c1ae64afcddeb4444929f", @@ -4171,25 +4170,23 @@ "build/assets/windows/Win32/python_d.exe": "4c141b8b6dc315e39a8168ef9fb9433f", "build/assets/windows/Win32/pythonw.exe": "60f972a154dd6af1b4a67a23bcd89a92", "build/assets/windows/Win32/pythonw_d.exe": "440ba78327698a2706fe7a0eb358dfe8", - "build/assets/windows/Win32/ucrtbased.dll": "bfd1180c269d3950b76f35a63655e9e1", - "build/assets/windows/Win32/vc_redist.x86.exe": "15a5f1f876503885adbdf5b3989b3718", - "build/assets/windows/Win32/vcruntime140d.dll": "865b2af4d1e26a1a8073c89acb06e599", - "build/prefab/full/linux_arm64_gui/debug/ballisticakit": "cc362af08ff384fcc487cf96f673ef90", - "build/prefab/full/linux_arm64_gui/release/ballisticakit": "c94a06a54ebbb85f96240643c7a2f119", - "build/prefab/full/linux_arm64_server/debug/dist/ballisticakit_headless": "37fc05bb550b54c16059e71c1e8f907f", - "build/prefab/full/linux_arm64_server/release/dist/ballisticakit_headless": "b486d12c19f4edb5ef55474a1beb6a73", - "build/prefab/full/linux_x86_64_gui/debug/ballisticakit": "a3dbe1f5982ba6ba3e9a891009559457", - "build/prefab/full/linux_x86_64_gui/release/ballisticakit": "46d01e73d87d765b9605258b0d56a5b7", - "build/prefab/full/linux_x86_64_server/debug/dist/ballisticakit_headless": "76b0827c8d9b5220fae350068d939ea2", - "build/prefab/full/linux_x86_64_server/release/dist/ballisticakit_headless": "491ecd5e14eedbdc5e9feae9be8e2232", - "build/prefab/full/mac_arm64_gui/debug/ballisticakit": "f7ef05466d145293c5173336bdfd6d8a", - "build/prefab/full/mac_arm64_gui/release/ballisticakit": "5b5a25c4c08b6146b778a49a2af07a6c", - "build/prefab/full/mac_arm64_server/debug/dist/ballisticakit_headless": "9dce3a7e9cc79cbdbf1999d8d28f646d", - "build/prefab/full/mac_arm64_server/release/dist/ballisticakit_headless": "582750a1bebaff7e0630216b9a9900ef", - "build/prefab/full/windows_x86_gui/debug/BallisticaKit.exe": "57da0d62619f837f58023d50f4fcf798", - "build/prefab/full/windows_x86_gui/release/BallisticaKit.exe": "731681953064a478e7d6168a64488ed0", - "build/prefab/full/windows_x86_server/debug/dist/BallisticaKitHeadless.exe": "6872e081a2413d8c1fd7899dc783c80e", - "build/prefab/full/windows_x86_server/release/dist/BallisticaKitHeadless.exe": "133188d690c4fb969cea9c8fd4957203", + "build/assets/windows/Win32/vc_redist.x86.exe": "91f13ae4b9f4dee9430a9d9b0c8b2afa", + "build/prefab/full/linux_arm64_gui/debug/ballisticakit": "367642c06e14b2aa6fa7b1fa1dcb5696", + "build/prefab/full/linux_arm64_gui/release/ballisticakit": "14adf4f94ad440dee8aef732f155122f", + "build/prefab/full/linux_arm64_server/debug/dist/ballisticakit_headless": "65cb9ff7fcb45dc5bc8ccb3a30c81f08", + "build/prefab/full/linux_arm64_server/release/dist/ballisticakit_headless": "5ff9fe2d3d8b7061c5559e054d1057bb", + "build/prefab/full/linux_x86_64_gui/debug/ballisticakit": "cadb047fc84e05035a69ae7618713494", + "build/prefab/full/linux_x86_64_gui/release/ballisticakit": "18e34e52720167aba40b215de362bb08", + "build/prefab/full/linux_x86_64_server/debug/dist/ballisticakit_headless": "fd3fc62b833feac849e091851d057e47", + "build/prefab/full/linux_x86_64_server/release/dist/ballisticakit_headless": "0d8470ea4239af9f9a52ec1431fade78", + "build/prefab/full/mac_arm64_gui/debug/ballisticakit": "05b7d86a17969d8950edd3d10268758e", + "build/prefab/full/mac_arm64_gui/release/ballisticakit": "4afef96d995be4984f00aa397cf998ec", + "build/prefab/full/mac_arm64_server/debug/dist/ballisticakit_headless": "a610a23c317c26b2138e955578ff7138", + "build/prefab/full/mac_arm64_server/release/dist/ballisticakit_headless": "e9c1ca6c0a078efbf64239878aaf287c", + "build/prefab/full/windows_x86_gui/debug/BallisticaKit.exe": "b8a19e2b943b7f7be546d54d6a10346c", + "build/prefab/full/windows_x86_gui/release/BallisticaKit.exe": "6180f44b6b280ec97d8ee6ae595d56f0", + "build/prefab/full/windows_x86_server/debug/dist/BallisticaKitHeadless.exe": "a1531a016108afe29e5b8e29e0bd775c", + "build/prefab/full/windows_x86_server/release/dist/BallisticaKitHeadless.exe": "fd1bccec899c46b1e10a961b8152bdbd", "build/prefab/lib/linux_arm64_gui/debug/libballisticaplus.a": "5c7b118a1780cbf24c8b4bf6fd30ddb0", "build/prefab/lib/linux_arm64_gui/release/libballisticaplus.a": "69a28ff5f0d1fb79a012449c90e3c0d0", "build/prefab/lib/linux_arm64_server/debug/libballisticaplus.a": "5c7b118a1780cbf24c8b4bf6fd30ddb0", @@ -4202,14 +4199,14 @@ "build/prefab/lib/mac_arm64_gui/release/libballisticaplus.a": "593606fabbdd503bab555d49b7963ad1", "build/prefab/lib/mac_arm64_server/debug/libballisticaplus.a": "07143cfbe795a2cbaa47a09daf1261b3", "build/prefab/lib/mac_arm64_server/release/libballisticaplus.a": "593606fabbdd503bab555d49b7963ad1", - "build/prefab/lib/windows/Debug_Win32/BallisticaKitGenericPlus.lib": "3b7c5191ff1a9a98dcbf99a941d4526e", - "build/prefab/lib/windows/Debug_Win32/BallisticaKitGenericPlus.pdb": "b1ccda988b9a6306ba8cc14c1ca21d35", - "build/prefab/lib/windows/Debug_Win32/BallisticaKitHeadlessPlus.lib": "9bf8844f7485df4bc1615a1c73108606", - "build/prefab/lib/windows/Debug_Win32/BallisticaKitHeadlessPlus.pdb": "e29f2a1b9e4a60cb70f431b43d975bc6", - "build/prefab/lib/windows/Release_Win32/BallisticaKitGenericPlus.lib": "54b186b0d8372d6c680a44ad86d2ea12", - "build/prefab/lib/windows/Release_Win32/BallisticaKitGenericPlus.pdb": "d770d301f537698d4a539e3922936217", - "build/prefab/lib/windows/Release_Win32/BallisticaKitHeadlessPlus.lib": "e59cdf564fb78029e95ff91d3240396d", - "build/prefab/lib/windows/Release_Win32/BallisticaKitHeadlessPlus.pdb": "68d5fd61a627cd0d3ea784b6db79750a", + "build/prefab/lib/windows/Debug_Win32/BallisticaKitGenericPlus.lib": "02a58be3ea5fcb38e9c4d41fb39e50e1", + "build/prefab/lib/windows/Debug_Win32/BallisticaKitGenericPlus.pdb": "599dadcd922f9e41ed9fd6d104b3428b", + "build/prefab/lib/windows/Debug_Win32/BallisticaKitHeadlessPlus.lib": "c556ebb50c7d1787f18575d949c9fd25", + "build/prefab/lib/windows/Debug_Win32/BallisticaKitHeadlessPlus.pdb": "c13731a3011a820f2ba4150675bdeb27", + "build/prefab/lib/windows/Release_Win32/BallisticaKitGenericPlus.lib": "0f9ab5a015991af3327d8ee6be17cd52", + "build/prefab/lib/windows/Release_Win32/BallisticaKitGenericPlus.pdb": "f32cfdf8eeaee850458f972c45f96e79", + "build/prefab/lib/windows/Release_Win32/BallisticaKitHeadlessPlus.lib": "4ad000891eb8d5559a7d0e847e227449", + "build/prefab/lib/windows/Release_Win32/BallisticaKitHeadlessPlus.pdb": "10222415bd09e10e381773c9a240cdd4", "src/assets/ba_data/python/babase/_mgen/__init__.py": "f885fed7f2ed98ff2ba271f9dbe3391c", "src/assets/ba_data/python/babase/_mgen/enums.py": "794d258d59fd17a61752843a9a0551ad", "src/ballistica/base/mgen/pyembed/binding_base.inc": "06042d31df0ff9af96b99477162e2a91", diff --git a/CHANGELOG.md b/CHANGELOG.md index 997a33e3..d7aec426 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,4 @@ -### 1.7.37 (build 22258, api 9, 2025-01-27) +### 1.7.37 (build 22259, api 9, 2025-01-28) - Bumping api version to 9. As you'll see below, there's some UI changes that will require a bit of work for any UI mods to adapt to. If your mods don't touch UI stuff at all you can simply bump your api version and call it a day. @@ -211,6 +211,17 @@ possible to take advantage of the full screen area using the `get_virtual_screen_size()` and whatnot mentioned above, it makes sense to return to a single consistent safe area. +- (build 22258) Updated the Windows redist installers to the latest versions. If + anyone is getting release builds of the game silently failing to launch, + install the bundled redist libs and try again. +- (build 22258) Removed Windows debug redist libs such as `ucrtbased.dll` and + `vcruntime140d.dll`. Technically these are not supposed to be bundled with + software anyway and should instead be installed by installing Visual Studio. I + was shipping outdated versions which was causing extra problems, so I've + decided that I should follow the rules here and remove them. This means that + if you want to run debug builds on Windows you'll need to install Visual + Studio. Most people should be fine with release builds and don't need to worry + about this. ### 1.7.36 (build 21944, api 8, 2024-07-26) - Wired up Tokens, BombSquad's new purchasable currency. The first thing these diff --git a/Makefile b/Makefile index 0f0e878e..481c0ddc 100644 --- a/Makefile +++ b/Makefile @@ -1451,5 +1451,8 @@ _windows-wsl-rebuild: env $(VISUAL_STUDIO_VERSION) @$(PCOMMAND) echo BLU BLD Built build/windows/BallisticaKit$(WINPRJ).exe. +_windows-update-dlls: env + @$(PCOMMAND) windows_update_dlls + # Tell make which of these targets don't represent files. .PHONY: _windows-wsl-build _windows-wsl-rebuild diff --git a/config/requirements.txt b/config/requirements.txt index 66d95236..680eb726 100644 --- a/config/requirements.txt +++ b/config/requirements.txt @@ -6,7 +6,7 @@ mypy==1.14.1 pbxproj==4.2.1 pdoc==15.0.1 pur==7.3.3 -pylint==3.3.3 +pylint==3.3.4 pylsp-mypy==0.7.0 pytest==8.3.4 python-daemon==3.1.2 diff --git a/src/assets/.asset_manifest_private.json b/src/assets/.asset_manifest_private.json index f552c3ce..e70ee3b7 100644 --- a/src/assets/.asset_manifest_private.json +++ b/src/assets/.asset_manifest_private.json @@ -5590,7 +5590,6 @@ "windows/Win32/SDL2.dll", "windows/Win32/libvorbis.dll", "windows/Win32/libvorbisfile.dll", - "windows/Win32/msvcp140d.dll", "windows/Win32/ogg.dll", "windows/Win32/python.exe", "windows/Win32/python312.dll", @@ -5598,9 +5597,7 @@ "windows/Win32/python_d.exe", "windows/Win32/pythonw.exe", "windows/Win32/pythonw_d.exe", - "windows/Win32/ucrtbased.dll", "windows/Win32/vc_redist.x86.exe", - "windows/Win32/vcruntime140d.dll", "windows/x64/DLLs/_asyncio.pyd", "windows/x64/DLLs/_asyncio_d.pyd", "windows/x64/DLLs/_bz2.pyd", @@ -6594,7 +6591,6 @@ "windows/x64/SDL2.dll", "windows/x64/libvorbis.dll", "windows/x64/libvorbisfile.dll", - "windows/x64/msvcp140d.dll", "windows/x64/ogg.dll", "windows/x64/python.exe", "windows/x64/python312.dll", @@ -6602,8 +6598,5 @@ "windows/x64/python_d.exe", "windows/x64/pythonw.exe", "windows/x64/pythonw_d.exe", - "windows/x64/ucrtbased.dll", - "windows/x64/vc_redist.x64.exe", - "windows/x64/vcruntime140_1d.dll", - "windows/x64/vcruntime140d.dll" + "windows/x64/vc_redist.x64.exe" ] \ No newline at end of file diff --git a/src/assets/Makefile b/src/assets/Makefile index a697e1a4..e223f8b6 100644 --- a/src/assets/Makefile +++ b/src/assets/Makefile @@ -7435,7 +7435,6 @@ EXTRAS_TARGETS_WIN_WIN32 = \ $(BUILD_DIR)/windows/Win32/SDL2.dll \ $(BUILD_DIR)/windows/Win32/libvorbis.dll \ $(BUILD_DIR)/windows/Win32/libvorbisfile.dll \ - $(BUILD_DIR)/windows/Win32/msvcp140d.dll \ $(BUILD_DIR)/windows/Win32/ogg.dll \ $(BUILD_DIR)/windows/Win32/python.exe \ $(BUILD_DIR)/windows/Win32/python312.dll \ @@ -7443,9 +7442,7 @@ EXTRAS_TARGETS_WIN_WIN32 = \ $(BUILD_DIR)/windows/Win32/python_d.exe \ $(BUILD_DIR)/windows/Win32/pythonw.exe \ $(BUILD_DIR)/windows/Win32/pythonw_d.exe \ - $(BUILD_DIR)/windows/Win32/ucrtbased.dll \ - $(BUILD_DIR)/windows/Win32/vc_redist.x86.exe \ - $(BUILD_DIR)/windows/Win32/vcruntime140d.dll + $(BUILD_DIR)/windows/Win32/vc_redist.x86.exe # Rule to copy src extras to build. $(EXTRAS_TARGETS_WIN_WIN32) : ../../.efrocachemap @@ -7530,7 +7527,6 @@ EXTRAS_TARGETS_WIN_X64 = \ $(BUILD_DIR)/windows/x64/SDL2.dll \ $(BUILD_DIR)/windows/x64/libvorbis.dll \ $(BUILD_DIR)/windows/x64/libvorbisfile.dll \ - $(BUILD_DIR)/windows/x64/msvcp140d.dll \ $(BUILD_DIR)/windows/x64/ogg.dll \ $(BUILD_DIR)/windows/x64/python.exe \ $(BUILD_DIR)/windows/x64/python312.dll \ @@ -7538,10 +7534,7 @@ EXTRAS_TARGETS_WIN_X64 = \ $(BUILD_DIR)/windows/x64/python_d.exe \ $(BUILD_DIR)/windows/x64/pythonw.exe \ $(BUILD_DIR)/windows/x64/pythonw_d.exe \ - $(BUILD_DIR)/windows/x64/ucrtbased.dll \ - $(BUILD_DIR)/windows/x64/vc_redist.x64.exe \ - $(BUILD_DIR)/windows/x64/vcruntime140_1d.dll \ - $(BUILD_DIR)/windows/x64/vcruntime140d.dll + $(BUILD_DIR)/windows/x64/vc_redist.x64.exe # Rule to copy src extras to build. $(EXTRAS_TARGETS_WIN_X64) : ../../.efrocachemap diff --git a/src/assets/ba_data/python/baenv.py b/src/assets/ba_data/python/baenv.py index 0b3325ce..e1ff90ac 100644 --- a/src/assets/ba_data/python/baenv.py +++ b/src/assets/ba_data/python/baenv.py @@ -53,7 +53,7 @@ if TYPE_CHECKING: # Build number and version of the ballistica binary we expect to be # using. -TARGET_BALLISTICA_BUILD = 22258 +TARGET_BALLISTICA_BUILD = 22259 TARGET_BALLISTICA_VERSION = '1.7.37' diff --git a/src/ballistica/shared/ballistica.cc b/src/ballistica/shared/ballistica.cc index 042a98e1..e1a9a67b 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 = 22258; +const int kEngineBuildNumber = 22259; const char* kEngineVersion = "1.7.37"; const int kEngineApiVersion = 9; diff --git a/tools/batools/staging.py b/tools/batools/staging.py index 90ee8824..0105ad51 100755 --- a/tools/batools/staging.py +++ b/tools/batools/staging.py @@ -407,7 +407,11 @@ class AssetStager: toplevelfiles += [f'python{dbgsfx}.exe'] # Include debug dlls so folks without msvc can run them. - if self.debug: + # + # UPDATE: No longer doing this as of build 22258. If people need + # to run debug builds they should do things the 'right' way and + # install VS. + if self.debug and bool(False): if self.win_platform == 'x64': toplevelfiles += [ 'msvcp140d.dll',