diff --git a/.efrocachemap b/.efrocachemap index b1f754da..719098f5 100644 --- a/.efrocachemap +++ b/.efrocachemap @@ -4135,16 +4135,16 @@ "assets/build/windows/x64/vc_redist.x64.exe": "https://files.ballistica.net/cache/ba1/ea/19/8b8787d81abcdce158ba608cd24f", "assets/build/windows/x64/vcruntime140_1d.dll": "https://files.ballistica.net/cache/ba1/11/d8/ff6344b429b00c24d9a1930d4338", "assets/build/windows/x64/vcruntime140d.dll": "https://files.ballistica.net/cache/ba1/20/33/0825e11e6518f87ece3009309933", - "build/prefab/linux-server/debug/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/25/53/7faeb52e734e393cf99fea8eccdc", - "build/prefab/linux-server/release/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/47/6a/741bc0838174e53dea8af25d2f6e", - "build/prefab/linux/debug/ballisticacore": "https://files.ballistica.net/cache/ba1/12/49/18248eac92473bd3b961beadcda4", - "build/prefab/linux/release/ballisticacore": "https://files.ballistica.net/cache/ba1/3e/8a/ca68ced1f85746893def0bbe73c7", - "build/prefab/mac-server/debug/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/1c/09/d8ee3fdc0b76d138174834efed2e", - "build/prefab/mac-server/release/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/02/97/fbf3c622030669bbea505987c248", - "build/prefab/mac/debug/ballisticacore": "https://files.ballistica.net/cache/ba1/a9/ec/5f8354b927730c69fe5a681a2ce8", - "build/prefab/mac/release/ballisticacore": "https://files.ballistica.net/cache/ba1/74/8a/b8ae2692dec40600576346298373", - "build/prefab/windows-server/debug/dist/ballisticacore_headless.exe": "https://files.ballistica.net/cache/ba1/59/b6/425b5784fb985c2af8bdce7860d7", - "build/prefab/windows-server/release/dist/ballisticacore_headless.exe": "https://files.ballistica.net/cache/ba1/4b/3f/6d5a31e33396bc71b5cbb86a8346", - "build/prefab/windows/debug/BallisticaCore.exe": "https://files.ballistica.net/cache/ba1/d8/72/f20cfe9a9e6acc8f1f70ae30e64b", - "build/prefab/windows/release/BallisticaCore.exe": "https://files.ballistica.net/cache/ba1/56/aa/58e96b30c8fb93e456165be58ae2" + "build/prefab/linux-server/debug/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/4d/d2/45d06a8dfcde71da3200fd4d2821", + "build/prefab/linux-server/release/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/38/87/34f9bf38be66b158c9a53536dc41", + "build/prefab/linux/debug/ballisticacore": "https://files.ballistica.net/cache/ba1/26/59/925cf3b362cde408b96f78fd7b54", + "build/prefab/linux/release/ballisticacore": "https://files.ballistica.net/cache/ba1/ec/ad/0650df6bd220bc24ace2817098e8", + "build/prefab/mac-server/debug/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/12/89/ec265516675eccf129704a350730", + "build/prefab/mac-server/release/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/0b/72/2afc2855b5f258849c7dc3fda768", + "build/prefab/mac/debug/ballisticacore": "https://files.ballistica.net/cache/ba1/02/3b/5c9c860eee9be52abe1991534470", + "build/prefab/mac/release/ballisticacore": "https://files.ballistica.net/cache/ba1/fb/24/e19eca2f233d1f368e19cd3aa2ff", + "build/prefab/windows-server/debug/dist/ballisticacore_headless.exe": "https://files.ballistica.net/cache/ba1/db/fa/5c3fb5069c67a71808927e0bd09e", + "build/prefab/windows-server/release/dist/ballisticacore_headless.exe": "https://files.ballistica.net/cache/ba1/b3/32/09227cb81f307f0b30978c97b383", + "build/prefab/windows/debug/BallisticaCore.exe": "https://files.ballistica.net/cache/ba1/ea/4d/df0cc0ef2649bd8e3fb8ffd658ba", + "build/prefab/windows/release/BallisticaCore.exe": "https://files.ballistica.net/cache/ba1/69/23/69b46627e812ff279bf761daf309" } \ No newline at end of file diff --git a/.idea/dictionaries/ericf.xml b/.idea/dictionaries/ericf.xml index 9299712b..d50ebee8 100644 --- a/.idea/dictionaries/ericf.xml +++ b/.idea/dictionaries/ericf.xml @@ -419,6 +419,7 @@ cwdg cxxabi cyaml + cycledelay cygwinccompiler darwiin darwiinremote @@ -2145,6 +2146,7 @@ vtype vval waaah + waittime wanttype wasdead wavenum diff --git a/CHANGELOG.md b/CHANGELOG.md index 03b82f89..7a613136 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,5 @@ +### 1.5.12 (20087) + ### 1.5.11 (20083) - Fixed a freeze in the local network browser. diff --git a/Makefile b/Makefile index 79ede417..6519cb8a 100644 --- a/Makefile +++ b/Makefile @@ -327,7 +327,7 @@ build/prefab/linux-server/release/README.txt: \ build/prefab/linux-server/release/dist/ballisticacore_headless: .efrocachemap @tools/snippets efrocache_get $@ -PREFAB_WINDOWS_PLATFORM = x64 +PREFAB_WINDOWS_PLATFORM = Win32 RUN_PREFAB_WINDOWS_DEBUG = cd build/prefab/windows/debug && ./BallisticaCore.exe diff --git a/assets/.asset_manifest_private.json b/assets/.asset_manifest_private.json index d782cc5a..b2e11385 100644 --- a/assets/.asset_manifest_private.json +++ b/assets/.asset_manifest_private.json @@ -5665,11 +5665,13 @@ "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/python37.dll", "windows/Win32/pythonw.exe", "windows/Win32/vc_redist.x86.exe", + "windows/Win32/vcruntime140d.dll", "windows/x64/DLLs/_asyncio.pyd", "windows/x64/DLLs/_bz2.pyd", "windows/x64/DLLs/_ctypes.pyd", diff --git a/assets/.asset_manifest_public.json b/assets/.asset_manifest_public.json index be327ba4..87802e0c 100644 --- a/assets/.asset_manifest_public.json +++ b/assets/.asset_manifest_public.json @@ -24,7 +24,6 @@ "ba_data/python/ba/__pycache__/_freeforallsession.cpython-37.opt-1.pyc", "ba_data/python/ba/__pycache__/_gameactivity.cpython-37.opt-1.pyc", "ba_data/python/ba/__pycache__/_gameresults.cpython-37.opt-1.pyc", - "ba_data/python/ba/__pycache__/_gamesettings.cpython-37.opt-1.pyc", "ba_data/python/ba/__pycache__/_gameutils.cpython-37.opt-1.pyc", "ba_data/python/ba/__pycache__/_general.cpython-37.opt-1.pyc", "ba_data/python/ba/__pycache__/_hooks.cpython-37.opt-1.pyc", @@ -47,6 +46,7 @@ "ba_data/python/ba/__pycache__/_score.cpython-37.opt-1.pyc", "ba_data/python/ba/__pycache__/_servermode.cpython-37.opt-1.pyc", "ba_data/python/ba/__pycache__/_session.cpython-37.opt-1.pyc", + "ba_data/python/ba/__pycache__/_settings.cpython-37.opt-1.pyc", "ba_data/python/ba/__pycache__/_stats.cpython-37.opt-1.pyc", "ba_data/python/ba/__pycache__/_store.cpython-37.opt-1.pyc", "ba_data/python/ba/__pycache__/_team.cpython-37.opt-1.pyc", @@ -81,7 +81,6 @@ "ba_data/python/ba/_freeforallsession.py", "ba_data/python/ba/_gameactivity.py", "ba_data/python/ba/_gameresults.py", - "ba_data/python/ba/_gamesettings.py", "ba_data/python/ba/_gameutils.py", "ba_data/python/ba/_general.py", "ba_data/python/ba/_hooks.py", @@ -104,6 +103,7 @@ "ba_data/python/ba/_score.py", "ba_data/python/ba/_servermode.py", "ba_data/python/ba/_session.py", + "ba_data/python/ba/_settings.py", "ba_data/python/ba/_stats.py", "ba_data/python/ba/_store.py", "ba_data/python/ba/_team.py", diff --git a/assets/Makefile b/assets/Makefile index 69839ee2..4d3ec9ce 100644 --- a/assets/Makefile +++ b/assets/Makefile @@ -166,7 +166,6 @@ SCRIPT_TARGETS_PY_PUBLIC = \ build/ba_data/python/ba/_freeforallsession.py \ build/ba_data/python/ba/_gameactivity.py \ build/ba_data/python/ba/_gameresults.py \ - build/ba_data/python/ba/_gamesettings.py \ build/ba_data/python/ba/_gameutils.py \ build/ba_data/python/ba/_general.py \ build/ba_data/python/ba/_hooks.py \ @@ -189,6 +188,7 @@ SCRIPT_TARGETS_PY_PUBLIC = \ build/ba_data/python/ba/_score.py \ build/ba_data/python/ba/_servermode.py \ build/ba_data/python/ba/_session.py \ + build/ba_data/python/ba/_settings.py \ build/ba_data/python/ba/_stats.py \ build/ba_data/python/ba/_store.py \ build/ba_data/python/ba/_team.py \ @@ -397,7 +397,6 @@ SCRIPT_TARGETS_PYC_PUBLIC = \ build/ba_data/python/ba/__pycache__/_freeforallsession.cpython-37.opt-1.pyc \ build/ba_data/python/ba/__pycache__/_gameactivity.cpython-37.opt-1.pyc \ build/ba_data/python/ba/__pycache__/_gameresults.cpython-37.opt-1.pyc \ - build/ba_data/python/ba/__pycache__/_gamesettings.cpython-37.opt-1.pyc \ build/ba_data/python/ba/__pycache__/_gameutils.cpython-37.opt-1.pyc \ build/ba_data/python/ba/__pycache__/_general.cpython-37.opt-1.pyc \ build/ba_data/python/ba/__pycache__/_hooks.cpython-37.opt-1.pyc \ @@ -420,6 +419,7 @@ SCRIPT_TARGETS_PYC_PUBLIC = \ build/ba_data/python/ba/__pycache__/_score.cpython-37.opt-1.pyc \ build/ba_data/python/ba/__pycache__/_servermode.cpython-37.opt-1.pyc \ build/ba_data/python/ba/__pycache__/_session.cpython-37.opt-1.pyc \ + build/ba_data/python/ba/__pycache__/_settings.cpython-37.opt-1.pyc \ build/ba_data/python/ba/__pycache__/_stats.cpython-37.opt-1.pyc \ build/ba_data/python/ba/__pycache__/_store.cpython-37.opt-1.pyc \ build/ba_data/python/ba/__pycache__/_team.cpython-37.opt-1.pyc \ @@ -736,11 +736,6 @@ build/ba_data/python/ba/__pycache__/_gameresults.cpython-37.opt-1.pyc: \ @echo Compiling script: $^ @rm -rf $@ && PYTHONHASHSEED=1 $(TOOLS_DIR)/snippets compile_python_files $^ && chmod 444 $@ -build/ba_data/python/ba/__pycache__/_gamesettings.cpython-37.opt-1.pyc: \ - build/ba_data/python/ba/_gamesettings.py - @echo Compiling script: $^ - @rm -rf $@ && PYTHONHASHSEED=1 $(TOOLS_DIR)/snippets compile_python_files $^ && chmod 444 $@ - build/ba_data/python/ba/__pycache__/_gameutils.cpython-37.opt-1.pyc: \ build/ba_data/python/ba/_gameutils.py @echo Compiling script: $^ @@ -851,6 +846,11 @@ build/ba_data/python/ba/__pycache__/_session.cpython-37.opt-1.pyc: \ @echo Compiling script: $^ @rm -rf $@ && PYTHONHASHSEED=1 $(TOOLS_DIR)/snippets compile_python_files $^ && chmod 444 $@ +build/ba_data/python/ba/__pycache__/_settings.cpython-37.opt-1.pyc: \ + build/ba_data/python/ba/_settings.py + @echo Compiling script: $^ + @rm -rf $@ && PYTHONHASHSEED=1 $(TOOLS_DIR)/snippets compile_python_files $^ && chmod 444 $@ + build/ba_data/python/ba/__pycache__/_stats.cpython-37.opt-1.pyc: \ build/ba_data/python/ba/_stats.py @echo Compiling script: $^ @@ -20030,11 +20030,13 @@ EXTRAS_TARGETS_WIN_WIN32 = \ build/windows/Win32/SDL2.dll \ build/windows/Win32/libvorbis.dll \ build/windows/Win32/libvorbisfile.dll \ + build/windows/Win32/msvcp140d.dll \ build/windows/Win32/ogg.dll \ build/windows/Win32/python.exe \ build/windows/Win32/python37.dll \ build/windows/Win32/pythonw.exe \ - build/windows/Win32/vc_redist.x86.exe + build/windows/Win32/vc_redist.x86.exe \ + build/windows/Win32/vcruntime140d.dll # Rule to copy src extras to build. $(EXTRAS_TARGETS_WIN_WIN32) : ../.efrocachemap diff --git a/assets/src/ba_data/python/ba/__init__.py b/assets/src/ba_data/python/ba/__init__.py index d257eca7..44ed439e 100644 --- a/assets/src/ba_data/python/ba/__init__.py +++ b/assets/src/ba_data/python/ba/__init__.py @@ -56,9 +56,8 @@ from ba._error import ( from ba._freeforallsession import FreeForAllSession from ba._gameactivity import GameActivity from ba._gameresults import GameResults -from ba._gamesettings import (Setting, IntSetting, FloatSetting, ChoiceSetting, - BoolSetting, IntChoiceSetting, - FloatChoiceSetting) +from ba._settings import (Setting, IntSetting, FloatSetting, ChoiceSetting, + BoolSetting, IntChoiceSetting, FloatChoiceSetting) from ba._lang import Lstr, setlanguage, get_valid_languages from ba._map import Map, getmaps from ba._session import Session diff --git a/assets/src/ba_data/python/ba/_general.py b/assets/src/ba_data/python/ba/_general.py index 7b4b87c9..82cc917b 100644 --- a/assets/src/ba_data/python/ba/_general.py +++ b/assets/src/ba_data/python/ba/_general.py @@ -188,9 +188,10 @@ class _WeakCall: """ def __init__(self, *args: Any, **keywds: Any) -> None: - """ - Instantiate a WeakCall; pass a callable as the first - arg, followed by any number of arguments or keywords. + """Instantiate a WeakCall. + + Pass a callable as the first arg, followed by any number of + arguments or keywords. # Example: wrap a method call with some positional and # keyword args: @@ -240,9 +241,10 @@ class _Call: """ def __init__(self, *args: Any, **keywds: Any): - """ - Instantiate a Call; pass a callable as the first - arg, followed by any number of arguments or keywords. + """Instantiate a Call. + + Pass a callable as the first arg, followed by any number of + arguments or keywords. # Example: wrap a method call with 1 positional and 1 keyword arg: mycall = ba.Call(myobj.dostuff, argval1, namedarg=argval2) diff --git a/assets/src/ba_data/python/ba/_gamesettings.py b/assets/src/ba_data/python/ba/_settings.py similarity index 100% rename from assets/src/ba_data/python/ba/_gamesettings.py rename to assets/src/ba_data/python/ba/_settings.py diff --git a/docs/ba_module.md b/docs/ba_module.md index 488ff5a7..90607238 100644 --- a/docs/ba_module.md +++ b/docs/ba_module.md @@ -1,5 +1,5 @@ -

last updated on 2020-06-23 for Ballistica version 1.5.10 build 20084

+

last updated on 2020-06-24 for Ballistica version 1.5.12 build 20088

This page documents the Python classes and functions in the 'ba' module, which are the ones most relevant to modding in Ballistica. If you come across something you feel should be included here or could be better explained, please let me know. Happy modding!


@@ -1214,8 +1214,10 @@ when done.

<constructor>

ba.Call(*args: Any, **keywds: Any)

-

Instantiate a Call; pass a callable as the first -arg, followed by any number of arguments or keywords.

+

Instantiate a Call.

+ +

Pass a callable as the first arg, followed by any number of +arguments or keywords.

# Example: wrap a method call with 1 positional and 1 keyword arg:
 mycall = ba.Call(myobj.dostuff, argval1, namedarg=argval2)
@@ -5756,8 +5758,10 @@ self.t = ba.Timer(0.3, say_it, repeat=True)

<constructor>

ba.WeakCall(*args: Any, **keywds: Any)

-

Instantiate a WeakCall; pass a callable as the first -arg, followed by any number of arguments or keywords.

+

Instantiate a WeakCall.

+ +

Pass a callable as the first arg, followed by any number of +arguments or keywords.

# Example: wrap a method call with some positional and
 # keyword args:
diff --git a/tools/efrotools/code.py b/tools/efrotools/code.py
index a7518aa1..ea3b4d53 100644
--- a/tools/efrotools/code.py
+++ b/tools/efrotools/code.py
@@ -856,7 +856,7 @@ def clioncode(projroot: Path, full: bool, verbose: bool) -> None:
     # reason too.
     # So for now let's try blowing away caches, launching the gui
     # temporarily, and then kicking off inspections after that. Sigh.
-    print('Clearing clion caches...', flush=True)
+    print('Clearing CLion caches...', flush=True)
     subprocess.run('rm -rf ~/Library/Caches/CLion*', shell=True, check=True)
 
     # Note: I'm assuming this project needs to be open when the GUI
@@ -866,7 +866,11 @@ def clioncode(projroot: Path, full: bool, verbose: bool) -> None:
     process = subprocess.Popen(str(clionbin))
 
     # Wait a moment and ask it nicely to die.
-    time.sleep(120)
+    waittime = 120
+    while waittime > 0:
+        print(f'Waiting for {waittime} more seconds.')
+        time.sleep(10)
+        waittime -= 10
 
     # Seems killing it via applescript is more likely to leave it
     # in a working state for offline inspections than TERM signal..
diff --git a/tools/stage_assets b/tools/stage_assets
index 8aed0567..d412ee20 100755
--- a/tools/stage_assets
+++ b/tools/stage_assets
@@ -281,12 +281,14 @@ def _sync_windows_extras(cfg: Config) -> None:
     elif cfg.win_type == 'winserver':
         toplevelfiles += ['python.exe']
 
-    # Include debug dlls for x64 so folks without msvc can run them.
-    # (seems win32 doesn't have the same set so ignoring that for now)
-    if cfg.debug and cfg.win_platform == 'x64':
-        toplevelfiles += [
-            'msvcp140d.dll', 'vcruntime140d.dll', 'vcruntime140_1d.dll'
-        ]
+    # Include debug dlls so folks without msvc can run them.
+    if cfg.debug:
+        if cfg.win_platform == 'x64':
+            toplevelfiles += [
+                'msvcp140d.dll', 'vcruntime140d.dll', 'vcruntime140_1d.dll'
+            ]
+        else:
+            toplevelfiles += ['msvcp140d.dll', 'vcruntime140d.dll']
 
     # Include the runtime redistributables in release builds.
     if not cfg.debug: