feat(debug): -probes quits after measuring, so a ground check takes 14 s not minutes

The ground measurement was the slowest part of every iteration: the game ran until the shell's
timeout because nothing told it to stop. -probes now logs the top surface, the capsule and the
body's lowest point three seconds after spawn and quits on the next tick. A run went from minutes
to 13.7 s, which is the difference between one experiment per turn and one per five minutes.

Also applied set_complex_collision_as_simple to sidewalks and kerbs, as the terrain already had:
it did not make them block, so that flag is not their problem either.

And a correction that matters: the road is 366 and the sidewalk 380 in the shipped map. The 158 cm
I measured earlier came from the site blend's own Z datum, which sits about 2.2 m below the map's
because the terrain was added after that blend was written. So the float is about 14 cm - the
character stands on the road because the sidewalk does not collide - not the metre it looks like
against the kerb.
This commit is contained in:
zwitschi committed 2026-11-09 18:15:17 +01:00
1 parent 1916321761
commit e50f620aa3
84 files changed
+171 -142

No files matched your search

+5 -1
View File
@@ -535,7 +535,11 @@ def build():
# which puts an invisible lid ~8 m over the whole block: the player
# walks on that box instead of the street. Force trace against the real
# triangles so the carved street corridor is actually open.
if "Terrain" in name:
# Walkable surfaces need the same treatment as the terrain: with only the
# auto-generated simple collision, a sidewalk does not block a downward trace while
# the road does - so every ground mesh that the player can stand on is switched to
# complex-as-simple, where the real triangles do the work.
if "Terrain" in name or "Sidewalk" in name or "Kerb" in name:
asset = unreal.EditorAssetLibrary.load_asset(f"/Game/Hollywood/Site/{name}")
if asset:
unreal.GigLineAssetTools.set_complex_collision_as_simple(asset, True)