From 518a1a5744616b1747d0f99ddc6e30c0b46eab14 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20=C5=BD=C3=A1=C4=8Dek?= Date: Fri, 6 Nov 2026 12:37:08 +0100 Subject: [PATCH] Add civilian traffic variants, farm tractors and UI scaling; record Workshop 0.0.143 --- CHANGELOG.md | 7 +- .../Scripts/Game/ERR/00_Core/ERR_AdminMenu.c | 2 + .../Game/ERR/00_Core/ERR_AdminMenuView.c | 13 + .../Game/ERR/00_Core/ERR_AdminService.c | 2 +- .../Game/ERR/10_AI/ERR_CivilianTraffic.c | 6 +- .../Game/ERR/10_AI/ERR_GarageVehicles.c | 73 +- .../Game/ERR/10_AI/ERR_ParkedCarCatalog.c | 21 +- addons/core/UI/layouts/ERR/AdminMenu.layout | 18 +- docs/civilian-traffic.md | 2 +- docs/configuration.md | 15 + docs/evidence/review-1.9-2026-11-06/README.md | 74 ++ .../external-addons-inputs.json | 851 ++++++++++++++++ .../review-1.9-2026-11-06/final-console.log | 792 +++++++++++++++ docs/evidence/review-1.9-2026-11-06/final.log | 68 ++ .../launch-source-sha256.json | 724 ++++++++++++++ .../review-1.9-2026-11-06/launch-source.json | 45 + .../review-1.9-2026-11-06/native-probe.c.txt | 172 ++++ .../production-source-comparison.json | 30 + .../review-1.9-2026-11-06/publication.json | 12 + .../repository-check.log | 941 ++++++++++++++++++ .../review-1.9-2026-11-06/runner.json | 34 + .../review-1.9-2026-11-06/t601-diagnostic.log | 374 +++++++ .../review-1.9-2026-11-06/ui-baseline.log | 246 +++++ tests/test_admin_menu_sources.py | 4 +- tests/test_admin_panel_fit.py | 34 + tests/test_garage_vehicle_lifecycle.py | 4 +- tests/test_garage_vehicle_rules.py | 23 +- tools/check.py | 2 +- ui/admin_menu/pages/VehiclesPage.layout.in | 2 +- ui/admin_menu/shell.layout.in | 16 +- 30 files changed, 4563 insertions(+), 44 deletions(-) create mode 100644 docs/evidence/review-1.9-2026-11-06/README.md create mode 100644 docs/evidence/review-1.9-2026-11-06/external-addons-inputs.json create mode 100644 docs/evidence/review-1.9-2026-11-06/final-console.log create mode 100644 docs/evidence/review-1.9-2026-11-06/final.log create mode 100644 docs/evidence/review-1.9-2026-11-06/launch-source-sha256.json create mode 100644 docs/evidence/review-1.9-2026-11-06/launch-source.json create mode 100644 docs/evidence/review-1.9-2026-11-06/native-probe.c.txt create mode 100644 docs/evidence/review-1.9-2026-11-06/production-source-comparison.json create mode 100644 docs/evidence/review-1.9-2026-11-06/publication.json create mode 100644 docs/evidence/review-1.9-2026-11-06/repository-check.log create mode 100644 docs/evidence/review-1.9-2026-11-06/runner.json create mode 100644 docs/evidence/review-1.9-2026-11-06/t601-diagnostic.log create mode 100644 docs/evidence/review-1.9-2026-11-06/ui-baseline.log create mode 100644 tests/test_admin_panel_fit.py diff --git a/CHANGELOG.md b/CHANGELOG.md index 42152aa8..c486fd2e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,11 @@ # Changelog -Latest published Workshop version: **0.0.142** +Latest published Workshop version: **0.0.143** + +## 2026-11-06 — Rural traffic and menu scaling + +- Added V2101 variants to civilian traffic and occasional DLC tractors beside farm buildings. +- Kept the mission administration panel within the screen at larger UI scales. ## 2026-11-06 — More parked cars diff --git a/addons/core/Scripts/Game/ERR/00_Core/ERR_AdminMenu.c b/addons/core/Scripts/Game/ERR/00_Core/ERR_AdminMenu.c index d256832b..fee6f723 100644 --- a/addons/core/Scripts/Game/ERR/00_Core/ERR_AdminMenu.c +++ b/addons/core/Scripts/Game/ERR/00_Core/ERR_AdminMenu.c @@ -69,6 +69,7 @@ class ERR_AdminMenu : ChimeraMenuBase button.m_OnClicked.Insert(OnButton); m_Buttons.Insert(button); } + ERR_AdminMenuView.FitPanel(GetRootWidget()); m_Ready = false; m_Age = 0; m_Poll = 0; GetGame().GetInputManager().AddActionListener(UIConstants.MENU_ACTION_BACK, EActionTrigger.PRESSED, OnBack); m_Bound = true; @@ -89,6 +90,7 @@ class ERR_AdminMenu : ChimeraMenuBase override void OnMenuUpdate(float tDelta) { super.OnMenuUpdate(tDelta); + ERR_AdminMenuView.FitPanel(GetRootWidget()); if (!m_Controller || m_Controller != GetGame().GetPlayerController() || !m_Mode || m_Mode != GetGame().GetGameMode() || ERR_MissionRules.Terminal(m_Mode.Phase())) { Close(); return; } m_Age += tDelta; m_Poll += tDelta; m_ClickDelay = Math.Max(0, m_ClickDelay - tDelta); diff --git a/addons/core/Scripts/Game/ERR/00_Core/ERR_AdminMenuView.c b/addons/core/Scripts/Game/ERR/00_Core/ERR_AdminMenuView.c index b7833236..b565d8cf 100644 --- a/addons/core/Scripts/Game/ERR/00_Core/ERR_AdminMenuView.c +++ b/addons/core/Scripts/Game/ERR/00_Core/ERR_AdminMenuView.c @@ -1,6 +1,19 @@ // Widget presentation only. No settings writes, authorization or transport here. class ERR_AdminMenuView { + // Preserve the requested UI scale until the fixed panel would leave the viewport. + static void FitPanel(Widget root) + { + if (!root || !GetGame() || !GetGame().GetWorkspace()) return; + ScaleWidget scale = ScaleWidget.Cast(root.FindAnyWidget("PanelScale")); + if (!scale) return; + float width, height; root.GetScreenSize(width, height); + float panelWidth = GetGame().GetWorkspace().DPIScale(1220); + float panelHeight = GetGame().GetWorkspace().DPIScale(760); + if (width <= 0 || height <= 0 || panelWidth <= 0 || panelHeight <= 0) return; + float fit = Math.Min(1, Math.Min(width * 0.96 / panelWidth, height * 0.96 / panelHeight)); + if (Math.AbsFloat(scale.GetScale() - fit) > 0.001) scale.SetScale(fit); + } static bool ShowPage(Widget root, int page) { int group = ERR_AdminMenuPages.Group(page); diff --git a/addons/core/Scripts/Game/ERR/00_Core/ERR_AdminService.c b/addons/core/Scripts/Game/ERR/00_Core/ERR_AdminService.c index ab9ce74b..8ad6a96d 100644 --- a/addons/core/Scripts/Game/ERR/00_Core/ERR_AdminService.c +++ b/addons/core/Scripts/Game/ERR/00_Core/ERR_AdminService.c @@ -205,7 +205,7 @@ class ERR_AdminService if (key == "garageChancePercent") return "Parking-site selection chance (0-100%). Default 70%; applies to suitable garages and residential yards. Next round."; if (key == "garageRadiusMetres") return "Spawn radius (250-1500 metres). Distance around players; default 1000 m. Next round."; if (key == "garageSpawnIntervalSeconds") return "Time between spawns (5-60 seconds). Default 5 s. Increase to spread out spawning. Next round."; - if (key == "garageVehicleCount") return "0..24 unclaimed cars in garages and residential yards; default 16. Used vehicles stay. Optional Rally cars and bikes. Applies next round."; + if (key == "garageVehicleCount") return "0..24 unclaimed cars in garages and residential yards; default 16. Used vehicles stay. Optional Rally cars, farm tractors and bikes. Next round."; if (key == "civilianTrafficCount") return "Set 0..6 civilian cars (default 3). Zero disables new traffic. Unclaimed cars retire only far from all players and out of sight; player-entered cars are preserved."; if (key == "showAllSites") return "0 disabled (default), 1 enabled. Show prepared sites at their positions as question marks; recovered intel identifies their types. Applies immediately to everyone."; if (key == "selfEpinephrine") return "0 disabled (default), 1 enabled. Unconscious players can press Space to use a carried epinephrine injector. Applies immediately; consumes the item and keeps its normal medical effect."; diff --git a/addons/core/Scripts/Game/ERR/10_AI/ERR_CivilianTraffic.c b/addons/core/Scripts/Game/ERR/10_AI/ERR_CivilianTraffic.c index 01a8082a..29501d3a 100644 --- a/addons/core/Scripts/Game/ERR/10_AI/ERR_CivilianTraffic.c +++ b/addons/core/Scripts/Game/ERR/10_AI/ERR_CivilianTraffic.c @@ -82,6 +82,7 @@ class ERR_CivilianTraffic { protected ERR_GameMode m_Mode; protected ref array m_Cars = {}; + protected ref ERR_ParkedCarCatalog m_Catalog = new ERR_ParkedCarCatalog(); protected float m_Next; protected float m_NextSpawn; protected int m_Serial; @@ -205,7 +206,10 @@ class ERR_CivilianTraffic m_PlayerCursor = m_PlayerCursor % observers.Count(); vector centre = observers[m_PlayerCursor++]; if (!Plan(centre, observers, actors, route, angles)) return false; - ResourceName prefab = CarPrefab(Math.RandomInt(0, 3)); + m_Catalog.Find(false); + // Keep the transport van in traffic; premium Rally cars stay in parked pools. + ResourceName prefab = CarPrefab(2); + if (Math.RandomInt(0, 5) != 0) prefab = m_Catalog.RoadPrefabs[Math.RandomInt(0, m_Catalog.RoadPrefabs.Count())]; array required = {prefab, DriverPrefab(), ERR_ConvoyResources.GroupPrefab(), ERR_Resources.MoveWaypoint()}; foreach (ResourceName name : required) { Resource loaded = Resource.Load(name); if (!loaded || !loaded.IsValid()) return false; } // Loading can take time: check every observer again immediately before spawn. diff --git a/addons/core/Scripts/Game/ERR/10_AI/ERR_GarageVehicles.c b/addons/core/Scripts/Game/ERR/10_AI/ERR_GarageVehicles.c index 1a1a3b60..591fab10 100644 --- a/addons/core/Scripts/Game/ERR/10_AI/ERR_GarageVehicles.c +++ b/addons/core/Scripts/Game/ERR/10_AI/ERR_GarageVehicles.c @@ -24,14 +24,29 @@ class ERR_GarageVehicleRules || path.EndsWith("/house_village_e_1i06.et") || path.EndsWith("/house_village_e_1i06_brown.et") || path.EndsWith("/house_village_e_1i06_white.et"); } - static vector YardOffset(vector low, vector high, int side) + static bool Farm(string path) + { + path.ToLower(); + return path.EndsWith("/barn_e_01.et") || path.EndsWith("/barn_e_01_old.et") + || path.EndsWith("/barn_e_01_white.et") || path.EndsWith("/barn_e_02.et") + || path.EndsWith("/barn_e_03_closed.et") || path.EndsWith("/barn_e_03_open.et") + || path.EndsWith("/cowshed_e_01_short.et") || path.EndsWith("/cowshed_e_01_long.et"); + } + static bool FarmEnvelope(vector low, vector high) + { + return ERR_ForceRules.FiniteVector(low) && ERR_ForceRules.FiniteVector(high) + && low[0] >= -1.45 && high[0] <= 1.45 && low[2] >= -2.95 && high[2] <= 2.95 + && low[1] >= -0.3 && high[1] <= 3.1 + && high[0] > low[0] && high[1] > low[1] && high[2] > low[2]; + } + static vector YardOffset(vector low, vector high, int side, float clearance = 3) { vector centre = (low + high) * 0.5; centre[1] = 0; - // Three metres from the wall leaves almost two metres beside the car. - if (side == 0) centre[0] = low[0] - 3; - else if (side == 1) centre[0] = high[0] + 3; - else if (side == 2) centre[2] = low[2] - 3; - else centre[2] = high[2] + 3; + // Separate farm clearance leaves room beside a taller, wider tractor. + if (side == 0) centre[0] = low[0] - clearance; + else if (side == 1) centre[0] = high[0] + clearance; + else if (side == 2) centre[2] = low[2] - clearance; + else centre[2] = high[2] + clearance; return centre; } } @@ -42,6 +57,7 @@ class ERR_GarageSite bool Selected; float NextTry; bool Yard; + bool Farm; int Side; } class ERR_ParkedVehicle @@ -121,8 +137,10 @@ class ERR_GarageVehicles } // Sample both ends/sides and roof, not just the hidden centre of a garage. // Open doors and windows can reveal a bay; no distance alone proves it hidden. - protected bool Hidden(vector position, vector angles, array actors, IEntity ignored = null) + protected bool Hidden(vector position, vector angles, array actors, IEntity ignored = null, bool farm = false) { + float halfWidth = 1.1, halfLength = 2.5, roofStep = 1.3; + if (farm) { halfWidth = 1.5; halfLength = 3; roofStep = 2.5; } vector matrix[4]; Math3D.AnglesToMatrix(angles, matrix); foreach (IEntity actor : actors) { @@ -135,7 +153,7 @@ class ERR_GarageVehicles { TraceParam ray = new TraceParam(); ray.Start = actor.GetOrigin() + "0 1.7 0"; - ray.End = position + matrix[0] * (x * 1.1) + matrix[2] * (z * 2.5) + Vector(0, 0.5 + height * 1.3, 0); + ray.End = position + matrix[0] * (x * halfWidth) + matrix[2] * (z * halfLength) + Vector(0, 0.5 + height * roofStep, 0); ray.Flags = TraceFlags.WORLD | TraceFlags.ENTS; ray.LayerMask = TRACE_LAYER_CAMERA; ray.ExcludeArray = excluded; float fraction = GetGame().GetWorld().TraceMove(ray, null); @@ -150,12 +168,14 @@ class ERR_GarageVehicles if (m_Sites.Count() >= 2048) return false; if (!entity.GetPrefabData()) return true; string prefab = entity.GetPrefabData().GetPrefabName(); - bool yard = ERR_GarageVehicleRules.Yard(prefab); + bool farm = !m_Cars.Tractors.IsEmpty() && ERR_GarageVehicleRules.Farm(prefab); + bool yard = farm || ERR_GarageVehicleRules.Yard(prefab); if (!yard && !ERR_GarageVehicleRules.Garage(prefab)) return true; foreach (ERR_GarageSite site : m_Sites) if (site.Garage == entity) return true; ERR_GarageSite added = new ERR_GarageSite(); added.Garage = entity; - added.Yard = yard; added.Side = Math.RandomInt(0, 4); - added.Selected = Math.RandomInt(0, 100) < m_GarageChance; + added.Yard = yard; added.Farm = farm; added.Side = Math.RandomInt(0, 4); + int chance = m_GarageChance; if (farm) chance = Math.Min(chance, 15); + added.Selected = Math.RandomInt(0, 100) < chance; m_Sites.Insert(added); return true; } @@ -215,7 +235,7 @@ class ERR_GarageVehicles if (!parked.Entity) { parked.Site.Consumed = true; m_Parked.Remove(index); return; } if (InUse(parked)) { Claim(index); return; } if (!known || !ERR_CivilianTrafficRules.Far(parked.Entity.GetOrigin(), observers, m_CleanupRadius) - || !Hidden(parked.Entity.GetOrigin(), parked.Entity.GetYawPitchRoll(), actors, parked.Entity)) { parked.HiddenSince = -1; return; } + || !Hidden(parked.Entity.GetOrigin(), parked.Entity.GetYawPitchRoll(), actors, parked.Entity, parked.Site.Farm)) { parked.HiddenSince = -1; return; } if (parked.HiddenSince < 0) parked.HiddenSince = now; if (!ERR_CivilianTrafficRules.CleanupDue(now, parked.HiddenSince)) return; // Recheck occupancy immediately before deletion. Claimed cars are no longer @@ -230,18 +250,20 @@ class ERR_GarageVehicles foreach (ERR_ParkedVehicle parked : m_Parked) if (parked.Site == site) return true; return false; } - protected bool YardGround(vector position, vector transform[4]) + protected bool YardGround(vector position, vector transform[4], bool farm = false) { SCR_AIWorld world = SCR_AIWorld.Cast(GetGame().GetAIWorld()); if (!world || !world.GetRoadNetworkManager()) return false; BaseRoad road; float distance; world.GetRoadNetworkManager().GetClosestRoad(position, road, distance, skipNavlinks: true); if (road && (!ERR_ForceRules.Finite(distance) || distance < road.GetWidth() * 0.5 + 4)) return false; + float halfWidth = 1.1, halfLength = 2.5; + if (farm) { halfWidth = 1.5; halfLength = 3; } float ground = SCR_TerrainHelper.GetTerrainY(position); for (int x = -1; x <= 1; x++) for (int z = -1; z <= 1; z++) { - vector sample = position + transform[0] * (x * 1.1) + transform[2] * (z * 2.5); + vector sample = position + transform[0] * (x * halfWidth) + transform[2] * (z * halfLength); if (!ERR_Actors.DryGround(sample) || Math.AbsFloat(SCR_TerrainHelper.GetTerrainY(sample) - ground) > 0.18) return false; } return true; @@ -262,7 +284,8 @@ class ERR_GarageVehicles vector low, high; site.Garage.GetBounds(low, high); if (!ERR_ForceRules.FiniteVector(low) || !ERR_ForceRules.FiniteVector(high) || (high - low).Length() > 40) continue; int side = site.Side; site.Side = (site.Side + 1) % 4; - offset = ERR_GarageVehicleRules.YardOffset(low, high, side); + float clearance = 3; if (site.Farm) clearance = 4; + offset = ERR_GarageVehicleRules.YardOffset(low, high, side, clearance); angles[1] = 0; angles[2] = 0; if (side >= 2) angles[0] = angles[0] + 90; } @@ -274,7 +297,7 @@ class ERR_GarageVehicles if (site.Yard) { position = ERR_Actors.Ground(position) + "0 0.08 0"; - if (!YardGround(position, transform)) return; + if (!YardGround(position, transform, site.Farm)) return; } else { @@ -284,10 +307,11 @@ class ERR_GarageVehicles if (!ERR_ForceRules.Finite(fraction) || fraction >= 1 || floor.TraceNorm[1] < 0.98) return; position = vector.Lerp(floor.Start, floor.End, fraction) + "0 0.08 0"; } - if (ChimeraWorldUtils.TryGetWaterSurfaceSimple(GetGame().GetWorld(), position) || !Clear(position, transform) || !Hidden(position, angles, actors)) return; + if (ChimeraWorldUtils.TryGetWaterSurfaceSimple(GetGame().GetWorld(), position) || !Clear(position, transform, null, site.Farm) || !Hidden(position, angles, actors, null, site.Farm)) return; m_Pending = site; m_Position = position; m_Angles = angles; m_Prefab = m_Cars.Prefabs[Math.RandomInt(0, m_Cars.Prefabs.Count())]; - m_PendingBike = m_Spawned % 4 == 3 && m_BikeCandidate < m_Bikes.Prefabs.Count(); + if (site.Farm) m_Prefab = m_Cars.Tractors[0]; + m_PendingBike = !site.Farm && m_Spawned % 4 == 3 && m_BikeCandidate < m_Bikes.Prefabs.Count(); if (m_PendingBike) m_Prefab = m_Bikes.Prefabs[m_BikeCandidate]; m_Stage = 1; return; } @@ -306,10 +330,10 @@ class ERR_GarageVehicles } ERR_GarageSite site = m_Pending; m_Pending = null; if (!site.Garage || site.Consumed || !ERR_Actors.Alive(site.Garage) || !Nearby(m_Position, observers, m_SpawnRadius) - || !ERR_CivilianTrafficRules.Far(m_Position, observers, 35) || !Hidden(m_Position, m_Angles, actors)) return; + || !ERR_CivilianTrafficRules.Far(m_Position, observers, 35) || !Hidden(m_Position, m_Angles, actors, null, site.Farm)) return; vector transform[4]; Math3D.AnglesToMatrix(m_Angles, transform); - if (site.Yard && !YardGround(m_Position, transform)) return; - if (!Clear(m_Position, transform)) return; + if (site.Yard && !YardGround(m_Position, transform, site.Farm)) return; + if (!Clear(m_Position, transform, null, site.Farm)) return; m_NextSpawn = Now() + m_SpawnInterval; IEntity entity = ERR_Actors.Spawn(m_Prefab, m_Position, m_Angles); Vehicle vehicle = Vehicle.Cast(entity); @@ -321,7 +345,9 @@ class ERR_GarageVehicles if (seat.GetType() == ECompartmentType.TURRET) armed = true; if (seat.GetType() == ECompartmentType.PILOT && seat.IsCompartmentAccessible() && !seat.GetOccupant()) driver = true; } - if (!driver || armed || !ERR_GarageVehicleRules.Envelope(low, high) || !Clear(m_Position, transform, entity)) + bool fits = ERR_GarageVehicleRules.Envelope(low, high); + if (site.Farm) fits = ERR_GarageVehicleRules.FarmEnvelope(low, high); + if (!driver || armed || !fits || !Clear(m_Position, transform, entity, site.Farm)) { ERR_Actors.DeleteSpawned(entity); if (m_PendingBike) m_BikeCandidate++; return; } @@ -357,11 +383,12 @@ class ERR_GarageVehicles } // Filled oriented body volume includes furniture, doors, other vehicles and // players. The garage itself is deliberately NOT excluded from collision. - protected bool Clear(vector position, vector transform[4], IEntity ignored = null) + protected bool Clear(vector position, vector transform[4], IEntity ignored = null, bool farm = false) { TraceOBB body = new TraceOBB(); body.Start = position; body.End = position + "0 0.01 0"; body.Mins = "-1.1 0.12 -2.5"; body.Maxs = "1.1 2 2.5"; + if (farm) { body.Mins = "-1.5 0.12 -3"; body.Maxs = "1.5 3.2 3"; } for (int i = 0; i < 3; i++) body.Mat[i] = transform[i]; body.Flags = TraceFlags.WORLD | TraceFlags.ENTS | TraceFlags.OCEAN; body.Exclude = ignored; diff --git a/addons/core/Scripts/Game/ERR/10_AI/ERR_ParkedCarCatalog.c b/addons/core/Scripts/Game/ERR/10_AI/ERR_ParkedCarCatalog.c index 6e56a45a..c1186797 100644 --- a/addons/core/Scripts/Game/ERR/10_AI/ERR_ParkedCarCatalog.c +++ b/addons/core/Scripts/Game/ERR/10_AI/ERR_ParkedCarCatalog.c @@ -3,6 +3,8 @@ class ERR_ParkedCarCatalog { ref array Prefabs = {}; + ref array RoadPrefabs = {}; + ref array Tractors = {}; protected bool m_Checked; static bool Candidate(string path, bool rally) { @@ -13,27 +15,40 @@ class ERR_ParkedCarCatalog if (rally) return path.Contains("_rally_0"); return !path.Contains("_rally"); } - void Find() + static bool MovingCandidate(string path) + { + path.ToLower(); + // T601 remains usable as a parked car; native AI did not start it in 1.9.0.37. + return Candidate(path, false) && !path.Contains("/t601/"); + } + void Find(bool includeRally = true) { if (m_Checked) return; m_Checked = true; Prefabs.Insert(ERR_CivilianTraffic.CarPrefab(0)); Prefabs.Insert(ERR_CivilianTraffic.CarPrefab(1)); + RoadPrefabs.Copy(Prefabs); SearchResourcesFilter filter = new SearchResourcesFilter(); filter.fileExtensions = {"et"}; filter.recursive = true; filter.rootPath = "$" + GameProject.GetAddonID("58D0FB3206B6F859") + ":Prefabs/Vehicles/Wheeled"; ResourceDatabase.SearchResources(filter, AddRoad); array loaded = {}; GameProject.GetLoadedAddons(loaded); - if (!loaded.Contains("6566A2D70498DA6B")) return; + if (!includeRally || !loaded.Contains("6566A2D70498DA6B")) return; filter.rootPath = "$" + GameProject.GetAddonID("6566A2D70498DA6B") + ":Prefabs/Vehicles/Wheeled"; ResourceDatabase.SearchResources(filter, AddRally); } protected void AddRoad(ResourceName resource, string path = "") { - if (Candidate(resource, false) && Prefabs.Count() < 64 && !Prefabs.Contains(resource)) Prefabs.Insert(resource); + if (Candidate(resource, false) && Prefabs.Count() < 64 && !Prefabs.Contains(resource)) + { + Prefabs.Insert(resource); + if (MovingCandidate(resource)) RoadPrefabs.Insert(resource); + } } protected void AddRally(ResourceName resource, string path = "") { if (Candidate(resource, true) && Prefabs.Count() < 64 && !Prefabs.Contains(resource)) Prefabs.Insert(resource); + string lower = resource; lower.ToLower(); + if (lower.EndsWith("/z7211/z7211_red_civ.et") && Tractors.IsEmpty()) Tractors.Insert(resource); } } diff --git a/addons/core/UI/layouts/ERR/AdminMenu.layout b/addons/core/UI/layouts/ERR/AdminMenu.layout index 7e21b292..b2bf207e 100644 --- a/addons/core/UI/layouts/ERR/AdminMenu.layout +++ b/addons/core/UI/layouts/ERR/AdminMenu.layout @@ -2,9 +2,17 @@ FrameWidgetClass { Name "ERR_AdminRoot" Slot FrameWidgetSlot { Anchor 0 0 1 1 OffsetLeft 0 OffsetTop 0 OffsetRight 0 OffsetBottom 0 } { ImageWidgetClass { Name "DimBackground" Slot FrameWidgetSlot { Anchor 0 0 1 1 OffsetLeft 0 OffsetTop 0 OffsetRight 0 OffsetBottom 0 } Color 0 0 0 0.65 } - FrameWidgetClass { - Name "Panel" Slot FrameWidgetSlot { Anchor 0.5 0.5 0.5 0.5 PositionX 0 OffsetLeft 0 PositionY 0 OffsetTop 0 SizeX 1220 OffsetRight -1220 SizeY 760 OffsetBottom -760 Alignment 0.5 0.5 } + ScaleWidgetClass { + Name "PanelScale" "Scale Mode" "User defined" + Slot FrameWidgetSlot { Anchor 0 0 1 1 OffsetLeft 0 OffsetTop 0 OffsetRight 0 OffsetBottom 0 } { + SizeLayoutWidgetClass { + Name "PanelSize" AllowWidthOverride 1 WidthOverride 1220 AllowHeightOverride 1 HeightOverride 760 + Slot AlignableSlot { HorizontalAlign 1 VerticalAlign 1 } + { + FrameWidgetClass { + Name "Panel" Slot LayoutSlot { HorizontalAlign 3 VerticalAlign 3 } + { ImageWidgetClass { Name "PanelBackground" Slot FrameWidgetSlot { Anchor 0 0 1 1 OffsetLeft 0 OffsetTop 0 OffsetRight 0 OffsetBottom 0 } Color 0.035 0.05 0.065 0.98 } TextWidgetClass { Name "Title" Slot FrameWidgetSlot { Anchor 0 0 0 0 PositionX 28 OffsetLeft 28 PositionY 20 OffsetTop 20 SizeX 990 OffsetRight -1018 SizeY 44 OffsetBottom -64 } Color 0.9 0.92 0.94 1 Text "Co10 Escape Reintroduced" "Font Size" 32 "Min Font Size" 32 FontProperties FontProperties { Font "{3E7733BAC8C831F6}UI/Fonts/RobotoCondensed/RobotoCondensed_Regular.fnt" } } ButtonWidgetClass : "{75C912A1C89BE6C2}UI/layouts/WidgetLibrary/Buttons/WLib_ButtonText.layout" { Name "Close" Slot FrameWidgetSlot { Anchor 0 0 0 0 PositionX 1064 OffsetLeft 1064 PositionY 24 OffsetTop 24 SizeX 128 OffsetRight -1192 SizeY 42 OffsetBottom -66 } components { SCR_ButtonTextComponent "{5548F0143AE99095}" { m_sText "Close" } } } @@ -162,7 +170,7 @@ ButtonWidgetClass : "{DA43C77A0D1E59F8}UI/layouts/ERR/AdminValue.layout" { Name ButtonWidgetClass : "{75C912A1C89BE6C2}UI/layouts/WidgetLibrary/Buttons/WLib_ButtonText.layout" { Name "Apply_garageSpawnIntervalSeconds" Slot FrameWidgetSlot { Anchor 0 0 0 0 PositionX 220 OffsetLeft 220 PositionY 308 OffsetTop 308 SizeX 100 OffsetRight -320 SizeY 32 OffsetBottom -340 } components { SCR_ButtonTextComponent "{5548F0143AE99095}" { m_sText "Apply" } } } TextWidgetClass { Name "Saved_garageSpawnIntervalSeconds" Slot FrameWidgetSlot { Anchor 0 0 0 0 PositionX 28 OffsetLeft 28 PositionY 344 OffsetTop 344 SizeX 456 OffsetRight -484 SizeY 28 OffsetBottom -372 } Color 0.9 0.92 0.94 1 Text "Waiting for server" "Font Size" 14 "Min Font Size" 14 Wrap 1 FontProperties FontProperties { Font "{3E7733BAC8C831F6}UI/Fonts/RobotoCondensed/RobotoCondensed_Regular.fnt" } } TextWidgetClass { Name "Help_garageSpawnIntervalSeconds" Slot FrameWidgetSlot { Anchor 0 0 0 0 PositionX 28 OffsetLeft 28 PositionY 372 OffsetTop 372 SizeX 456 OffsetRight -484 SizeY 28 OffsetBottom -400 } Color 0.9 0.92 0.94 1 Text "Default 5 s. Increase to spread out spawning. Next round." "Font Size" 14 "Min Font Size" 14 Wrap 1 FontProperties FontProperties { Font "{3E7733BAC8C831F6}UI/Fonts/RobotoCondensed/RobotoCondensed_Regular.fnt" } } -TextWidgetClass { Name "GarageSettingsNote" Slot FrameWidgetSlot { Anchor 0 0 0 0 PositionX 508 OffsetLeft 508 PositionY 284 OffsetTop 284 SizeX 456 OffsetRight -964 SizeY 110 OffsetBottom -394 } Color 0.9 0.92 0.94 1 Text "Parking settings apply next round. Used vehicles stay. Garages and clear residential yards fill gradually while hidden. Rally cars join when the DLC is loaded." "Font Size" 18 "Min Font Size" 18 Wrap 1 FontProperties FontProperties { Font "{3E7733BAC8C831F6}UI/Fonts/RobotoCondensed/RobotoCondensed_Regular.fnt" } } +TextWidgetClass { Name "GarageSettingsNote" Slot FrameWidgetSlot { Anchor 0 0 0 0 PositionX 508 OffsetLeft 508 PositionY 284 OffsetTop 284 SizeX 456 OffsetRight -964 SizeY 110 OffsetBottom -394 } Color 0.9 0.92 0.94 1 Text "Parking settings apply next round. Used vehicles stay. Garages and clear yards fill while hidden. Rally adds cars and occasional farm tractors." "Font Size" 18 "Min Font Size" 18 Wrap 1 FontProperties FontProperties { Font "{3E7733BAC8C831F6}UI/Fonts/RobotoCondensed/RobotoCondensed_Regular.fnt" } } } } FrameWidgetClass { "Is Visible" 0 Name "TelemetryPage" Slot FrameWidgetSlot { Anchor 0 0 0 0 PositionX 220 OffsetLeft 220 PositionY 160 OffsetTop 160 SizeX 1000 OffsetRight -1220 SizeY 486 OffsetBottom -646 } { TextWidgetClass { Name "TelemetryHeading" Slot FrameWidgetSlot { Anchor 0 0 0 0 PositionX 28 OffsetLeft 28 PositionY 10 OffsetTop 10 SizeX 936 OffsetRight -964 SizeY 32 OffsetBottom -42 } Color 0.9 0.92 0.94 1 Text "Mission statistics" "Font Size" 18 "Min Font Size" 18 Wrap 1 FontProperties FontProperties { Font "{3E7733BAC8C831F6}UI/Fonts/RobotoCondensed/RobotoCondensed_Regular.fnt" } } @@ -1263,5 +1271,9 @@ TextWidgetClass { Name "SarkaSettingsHelp" Slot FrameWidgetSlot { Anchor 0 0 0 0 TextWidgetClass { Name "Feedback" Slot FrameWidgetSlot { Anchor 0 0 0 0 PositionX 248 OffsetLeft 248 PositionY 670 OffsetTop 670 SizeX 936 OffsetRight -1184 SizeY 70 OffsetBottom -740 } Color 0.9 0.92 0.94 1 Text "" "Font Size" 17 "Min Font Size" 17 Wrap 1 FontProperties FontProperties { Font "{3E7733BAC8C831F6}UI/Fonts/RobotoCondensed/RobotoCondensed_Regular.fnt" } } } } + } + } } } +} +} diff --git a/docs/civilian-traffic.md b/docs/civilian-traffic.md index aac71840..712102b3 100644 --- a/docs/civilian-traffic.md +++ b/docs/civilian-traffic.md @@ -1,6 +1,6 @@ # Civilian road traffic -Unarmed civilians drive ordinary S105 cars and S1203 vans along the terrain's roads. This is ambient life, separate from enemy convoys and VirtualHQ: drivers receive no enemy loadouts, intelligence or pursuit orders. +Unarmed civilians drive ordinary S105 and V2101 cars and S1203 vans along the terrain's roads. The street-car catalog is discovered once per traffic service, with an 80% car / 20% van selection. Rally cars and tractors are excluded from moving traffic. T601 cars remain in the parked pool: native AI failed to start them on two test routes in 1.9.0.37. This is ambient life, separate from enemy convoys and VirtualHQ: drivers receive no enemy loadouts, intelligence or pursuit orders. The admin menu's **Mission → Civilian vehicles** page has **Civilian traffic (0–6 cars)**. The default is 3. Set 0 to stop new traffic; existing unclaimed cars retire only when the normal distance and visibility checks allow it. The same setting is available as `/esc mission traffic set N` and `mission.civilianTrafficCount` in the unified server `Escapists.json`. Old configurations receive the default automatically. diff --git a/docs/configuration.md b/docs/configuration.md index 6500905d..67e62402 100644 --- a/docs/configuration.md +++ b/docs/configuration.md @@ -449,3 +449,18 @@ Vehicles have 30–80% fuel and no AI crew. Entering a vehicle permanently prese An untouched vehicle can be retired only when it is at least 1,400 metres from every known observer (or the configured spawn radius plus 400 metres, whichever is larger) and hidden for a sampled 60-second grace period. Returning nearby, gaining visibility or losing observer information cancels that grace period. Retirement frees a nearby slot for the players' new area; an unused parking site can become eligible again on a later visit. Unclaimed cars are maintained one at a time. The discovery cache is capped at 16,384 cells and 2,048 garage/yard anchors per round. Vehicles still incur ordinary physics and replication costs. Validation: [DLC car fit, optional loading and native yard placement](evidence/garage-dlc-yards-2026-11-06/README.md), [menu settings and round persistence](evidence/garage-vehicles-2026-10-30/menu/report.json), [nearby garage spawning and retention](evidence/garage-vehicles-2026-10-30/nearby/report.json), plus production-method observer, lifecycle, settings and menu tests. + + +### Farm tractors and interface scaling (1.9) + +When Rally is loaded, the parked-vehicle service can also place a Tozer tractor +beside intact native barns and cowsheds. Farm sites use at most a 15% selection +chance (or the configured parking chance if lower), share the garage/yard limit, +and never put tractors in residential garages. Farm placement uses four metres +of wall clearance, a larger dry/flat footprint, taller visibility samples and a +larger collision envelope. Used tractors receive the same permanent claim +protection as cars. Normal DLC driver restrictions remain in effect. + +The administration menu keeps the selected UI scale while its panel fits, then +reduces only that panel enough to remain inside the viewport with a small margin. +It does not change the player's saved interface scale or other game UI. diff --git a/docs/evidence/review-1.9-2026-11-06/README.md b/docs/evidence/review-1.9-2026-11-06/README.md new file mode 100644 index 00000000..7e26fff2 --- /dev/null +++ b/docs/evidence/review-1.9-2026-11-06/README.md @@ -0,0 +1,74 @@ +# Reforger 1.9 mission review + +Requested: apply civilian vehicle variety (3), check ACE repacking (1), AI +spawning/dormancy (4), and UI scaling (5). Tested with installed 1.9.0.37. + +## Changes + +- Moving civilian traffic discovers ordinary S105/V2101 variants once, with + 80% car / 20% existing S1203 van selection. The native catalog contained 19 + moving-car entries. Rally cars and tractors remain outside moving traffic. +- T601 stays in the parked pool. Two native road locations left its original + AI driver seated without starting the engine; the diagnostic recorded engine + off, handbrake on and negligible movement. V2101 drove on those tests. No + speculative engine or vanilla prefab override was added. +- Optional Rally Z7211 civilian tractors can appear beside supported barns and + cowsheds. Farm selection is capped at 15%, shares the existing parked fleet + limit, and uses wider ground/collision and taller visibility checks. Existing + claim and distant cleanup rules remain in use. No new DLC dependency. +- The admin panel shrinks only when necessary to fit the viewport, without + changing the user's saved UI scale. Baseline 150% scale clipped vertically; + final native measurements fit at 75%, 100%, 125% and 150%. + +## Checks without changes + +Installed ACE Magazine Repack 1.4.3 already handles inventory drag/drop through +its `SCR_InventoryMenuUI.MoveItemToStorageSlot` override and server-side ammo +transfer. It checks matching magazine wells and available capacity. This is a +source inspection, not a new multiplayer ACE/RHS interoperability test. No +duplicate repacking implementation was added. + +Site squads, patrols and related groups already request queued native spawning. +Town garrisons instead create one actor per background callback, with mission +placement and exclusion checks. Convoys and aircraft have explicit AI activity +requirements. The isolated native world reported partial fill and dormancy +enabled with an active AI limit of 128; its zero active count is not a production +load measurement. No priority or global dormancy change was made. Native group +despawn/recreation can reset inventory and health, so further optimization needs +to preserve the mission's finite ammunition, casualties and crew continuity. + +Official context: [1.9 changelog](https://reforger.armaplatform.com/news/changelog-november-4-2026), +[September modding update](https://reforger.armaplatform.com/news/modding-update-sept-24-2026), +[October modding update](https://reforger.armaplatform.com/news/modding-update-oct-21-2026). + +## Evidence and limits + +`final.log` records both original S105/V2101 drivers travelling over 100 metres, +native tractor placement through production Plan/Pending ground, visibility and +collision checks, and UI geometry. The fixture supplies a stationary observer +and a spawned native barn; it forces that barn's selection to exercise placement. +It does not test random farm frequency or multiplayer observers. UI measurements +use the 501x225 Workbench game viewport, not manual controller/TV usability. + +`runner.json` reports `smoke-completed`, unchanged source/external inputs and +confirmed cleanup. `production-source-comparison.json` verifies all changed +production scripts/layout match the tested snapshot. The test-only probe and +launch manifests are included. Tests used hidden, muted Gamescope and a disposable +Proton prefix; the normal mission startup was suppressed in the fixture. + +The strict runner still exits nonzero because the complete log contains resource +errors: external localization references, legacy vehicle prefab fields, a DLC +ownership request failure, and fixture path-only resource lookups. There are no +Game script compilation errors or VM exceptions in the final run. Tractor resource +and seat checks passed, but live client DLC entitlement/driver access is unqualified. +This is not a clean-all-engine-logs or dedicated multiplayer certification. + +`repository-check.log` records the full passing repository validator. After the +final T601 exclusion, catalog rules, traffic, garage lifecycle, panel fit and menu +source tests passed again. `ui-baseline.log` and `t601-diagnostic.log` preserve the +earlier failures that informed the changes. Other exploratory runs included a +test-only API typo and observer-fixture failure; neither changed production logic. + +Workbench subsequently confirmed successful upload of 0.0.143 at 12:35:36 on +2026-11-06. See `publication.json`; the changelog version was recorded with +`tools/workshop_changelog.py --published` before committing this release. diff --git a/docs/evidence/review-1.9-2026-11-06/external-addons-inputs.json b/docs/evidence/review-1.9-2026-11-06/external-addons-inputs.json new file mode 100644 index 00000000..cae3fc13 --- /dev/null +++ b/docs/evidence/review-1.9-2026-11-06/external-addons-inputs.json @@ -0,0 +1,851 @@ +{ + "1337C0DE5DABBEEF": { + "path": "/home/jakub/.local/share/Steam/steamapps/compatdata/1874880/pfx/drive_c/users/steamuser/Documents/My Games/ArmaReforger/addons/RHS-ContentPack01_1337C0DE5DABBEEF", + "title": "RHS: Status Quo - Content Pack 01", + "version": "0.16.5236", + "files": { + "ServerData.json": { + "stat": [ + 47, + 916830, + 209, + 1791217537263294562, + 1791217537263294562 + ], + "sha256": "191c50eba8ec43670d1adf9c600b4eaa1eccce659b8572a4f10ead4e7abe612e" + }, + "addon.gproj": { + "stat": [ + 47, + 32064141, + 335, + 1791217514094252612, + 1791217536463650049 + ], + "sha256": "65197c50ff6e906a5732564e8b440d80ef1cdbcffead9eb388e1e2b56c1322bc" + }, + "addon.gproj_0.16.5236_manifest.json": { + "stat": [ + 47, + 32064122, + 362, + 1791217492996283583, + 1791217492996283583 + ], + "sha256": "17b87e0976ac2da1032f1661a884f6d59b56c00823b2fcfdc2a698ea8bcc92cc" + }, + "data.pak": { + "stat": [ + 47, + 32064165, + 1992950655, + 1791217529019417115, + 1791217536749658990 + ], + "sha256": "6f03d41961efe91af0060c0362c8a65c31d34c4f0ba173a4ddc8eb8ee965c4cb" + }, + "data.pak_0.16.5236_manifest.json": { + "stat": [ + 47, + 32064123, + 232639, + 1791217493181289432, + 1791217493181289432 + ], + "sha256": "e1b26dacd2d4054b748824f737693975b07bc9ff383b5e973a8915f58c01591e" + }, + "data001.pak": { + "stat": [ + 47, + 32064187, + 1992538370, + 1791217526882350163, + 1791217537231674056 + ], + "sha256": "6426f25d25633e9d3e34fd064e56a02230f5c7b85176dd73d8914eeb772ef8c8" + }, + "data001.pak_0.16.5236_manifest.json": { + "stat": [ + 47, + 32064126, + 349868, + 1791217493712306218, + 1791217493712306218 + ], + "sha256": "027b0a089cf9c9b099ea8f06a4bfb025a383de718df13df71313089215655d12" + }, + "data002.pak": { + "stat": [ + 47, + 32064182, + 1992467294, + 1791217529310426228, + 1791217537064668837 + ], + "sha256": "5596b2bf81be625ae76e4a22e2d802e730c9fe4ae127c7fa713dd002d45b899d" + }, + "data002.pak_0.16.5236_manifest.json": { + "stat": [ + 47, + 32064125, + 332026, + 1791217493496299390, + 1791217493496299390 + ], + "sha256": "a918a87020efea578db5698f03698d07b3b7f3ebb2c5804202766e6e6d2c8021" + }, + "data003.pak": { + "stat": [ + 47, + 32064138, + 364877149, + 1791217516523025099, + 1791217536462650018 + ], + "sha256": "ba633b5025f357a37f74f2484b8cfe0d51a88b1e732fdf95d982e9d17b66828e" + }, + "data003.pak_0.16.5236_manifest.json": { + "stat": [ + 47, + 32064121, + 96448, + 1791217492872279662, + 1791217492872279662 + ], + "sha256": "ceca6220d153deaf4cd4ea9aecb4d1a9db63e4f4f950deb2acfc03cbe52ae431" + }, + "meta": { + "stat": [ + 47, + 911092, + 8188, + 1791217537260674963, + 1791217537260674963 + ], + "sha256": "ab21fee89c49e2622f33c3f614b4a0b8671985a9d3bc138baaec92bb4574bb33" + }, + "resourceDatabase.rdb": { + "stat": [ + 47, + 32064190, + 567385, + 1791217514761969753, + 1791217537232674088 + ], + "sha256": "a71a5e6639ad4c44787eed5916dc4e153886326382d05c20cef179fd8c532fcb" + }, + "resourceDatabase.rdb_0.16.5236_manifest.json": { + "stat": [ + 47, + 32064127, + 368, + 1791217493836310139, + 1791217493836310139 + ], + "sha256": "d0a77a21db87a11b0a67e3adca189e4868c2f348d918fd04af6b8a6bb5b9fb31" + }, + "thumbnail.png": { + "stat": [ + 47, + 32064168, + 18180, + 1791217514094761493, + 1791217536749658990 + ], + "sha256": "4c70bf384375f069cab9ed719f3865441fd363a010495e7b465f3ae83ed887c3" + }, + "thumbnail.png_0.16.5236_manifest.json": { + "stat": [ + 47, + 32064124, + 366, + 1791217493307293415, + 1791217493307293415 + ], + "sha256": "d0e233b32d3d41ac44ea127ea5eb028b97a63555f7867278a7a6f5e8e1df7255" + } + } + }, + "595F2BF2F44836FB": { + "path": "/home/jakub/.local/share/Steam/steamapps/compatdata/1874880/pfx/drive_c/users/steamuser/Documents/My Games/ArmaReforger/addons/RHS-StatusQuo_595F2BF2F44836FB", + "title": "RHS: Status Quo", + "version": "0.16.5237", + "files": { + "ServerData.json": { + "stat": [ + 47, + 910012, + 3022, + 1791300979137534085, + 1791300979137534085 + ], + "sha256": "94bcd198ec248f7e1317838378d902fe8e098d052a4cb9575a68029d8f3ae21a" + }, + "addon.gproj": { + "stat": [ + 47, + 32244359, + 1101, + 1791300968688283305, + 1791300979087532885 + ], + "sha256": "51fda0afde5ebcd4dc88c6c9451d960b67aceaee437f02f1cc80aef724e3779c" + }, + "addon.gproj_0.16.5237_manifest.json": { + "stat": [ + 47, + 32244348, + 364, + 1791300967569256451, + 1791300967569256451 + ], + "sha256": "c67690023c7ecfda231509b46545febea451145a060277b8178c14ebaebb82b8" + }, + "data.pak": { + "stat": [ + 47, + 32244356, + 203465487, + 1791300978292513803, + 1791300979065532357 + ], + "sha256": "dcceaad42c6ac6ffaef277a2e7ec799a1b4f1d5c27e885d83728245c52a82e9e" + }, + "data.pak_0.16.5237_manifest.json": { + "stat": [ + 47, + 32244347, + 1414398, + 1791300967419252851, + 1791300967419252851 + ], + "sha256": "973213b9295b25179f079ff0e01baa7f49418d1f24bedba331930177b6c60496" + }, + "meta": { + "stat": [ + 47, + 902077, + 12812, + 1792584948525389732, + 1792584948525389732 + ], + "sha256": "35a3f1e3c74b73b57235ec5ae2fe4a798740501272afdbf06cf2b3b3e3680eb4" + }, + "resourceDatabase.rdb": { + "stat": [ + 47, + 32244362, + 826592, + 1791300968575280593, + 1791300979087532885 + ], + "sha256": "b7977b6dad5dcf8b140a860dc425184cc04ba24b310124184c6bad232109bc03" + }, + "resourceDatabase.rdb_0.16.5237_manifest.json": { + "stat": [ + 47, + 32244349, + 368, + 1791300967709259811, + 1791300967709259811 + ], + "sha256": "0296f06bb84669527e3580aa4e2fc053ee27ee39a8c9bb1bd87762e9b7f8fdc7" + }, + "thumbnail.png": { + "stat": [ + 47, + 32244353, + 18180, + 1791300968572481488, + 1791300978991147498 + ], + "sha256": "4c70bf384375f069cab9ed719f3865441fd363a010495e7b465f3ae83ed887c3" + }, + "thumbnail.png_0.16.5237_manifest.json": { + "stat": [ + 47, + 32244346, + 366, + 1791300966985242436, + 1791300966985242436 + ], + "sha256": "d0e233b32d3d41ac44ea127ea5eb028b97a63555f7867278a7a6f5e8e1df7255" + } + } + }, + "5E389BB9F58B79A6": { + "path": "/home/jakub/.local/share/Steam/steamapps/compatdata/1874880/pfx/drive_c/users/steamuser/Documents/My Games/ArmaReforger/addons/SpaceCore_5E389BB9F58B79A6", + "title": "WCS_SpaceCore", + "version": "8.3.0", + "files": { + "ServerData.json": { + "stat": [ + 47, + 919166, + 197, + 1791905536676880291, + 1791905536676880291 + ], + "sha256": "7590c843333aec0f90fb2663dab5f0f764fac6baa96cda65038d15777e18b581" + }, + "addon.gproj": { + "stat": [ + 47, + 33588062, + 2957, + 1791905535812995569, + 1791905536666241292 + ], + "sha256": "2db2e318e6f45bede0d1173d77af03314f888aedfb31bc767d569ccfb6e70a34" + }, + "addon.gproj_8.4.0_manifest.json": { + "stat": [ + 47, + 33588053, + 364, + 1791905535321183833, + 1791905535321183833 + ], + "sha256": "67d15a8e8623130546332c6d6433314cbdf38e034a66330b9c7a739a94731e21" + }, + "data.pak": { + "stat": [ + 47, + 33588059, + 25392053, + 1791905536569237148, + 1791905536663241163 + ], + "sha256": "0e783e0179a90d2764361c1833824b64b0d0270a09716599ff593a318f0f14cd" + }, + "data.pak_8.4.0_manifest.json": { + "stat": [ + 47, + 33588052, + 31209, + 1791905535162177040, + 1791905535162177040 + ], + "sha256": "6719a69faacb0cd291b816ff2f26ce87c54fdda3d3718897d64d143d97e887cf" + }, + "meta": { + "stat": [ + 47, + 918678, + 2338, + 1791905536675241676, + 1791905536675241676 + ], + "sha256": "ac0338fc8260380e7b399b73e24b2c963420694a3fd9eaa0c0acf93baec938bd" + }, + "resourceDatabase.rdb": { + "stat": [ + 47, + 33588065, + 23196, + 1791905536041214598, + 1791905536667241335 + ], + "sha256": "f8e7de8778bec66ba13e1ebe7f1ddb29667cc9738e0ccf3f977180ff7e05d449" + }, + "resourceDatabase.rdb_8.4.0_manifest.json": { + "stat": [ + 47, + 33588054, + 366, + 1791905535503191610, + 1791905535503191610 + ], + "sha256": "730c5097d76cde9084a700a426f917569dda13b553dc88aaaf2ee876e3607fa1" + }, + "thumbnail.png": { + "stat": [ + 47, + 33588068, + 689401, + 1791905535814204899, + 1791905536667241335 + ], + "sha256": "8da2e133303f21bb16a2abd25d5bd6c2a4a6f5eccedae74a98358db485a170d1" + }, + "thumbnail.png_8.4.0_manifest.json": { + "stat": [ + 47, + 33588055, + 368, + 1791905535684199344, + 1791905535684199344 + ], + "sha256": "5aaa5989b5f44b48ff03082a0d4004ae71420db6eebeb56282af7d98f36c7000" + } + } + }, + "5E524E4FEECCA92B": { + "path": "/home/jakub/.local/share/Steam/steamapps/compatdata/1874880/pfx/drive_c/users/steamuser/Documents/My Games/ArmaReforger/addons/BMP-1IFV_5E524E4FEECCA92B", + "title": "WCS_BMP-1", + "version": "8.3.0", + "files": { + "ServerData.json": { + "stat": [ + 47, + 918673, + 193, + 1791902411944955262, + 1791902411944955262 + ], + "sha256": "66d9aadb7bc9f87ec89f252ab0fc418b3164108ea06ba4702a873ab98cd2bce3" + }, + "addon.gproj": { + "stat": [ + 47, + 33574555, + 2900, + 1791902410577627717, + 1791902411894052339 + ], + "sha256": "ad44151140adf62e99eaa639984c2b9c400be17481e934186d61c307b5221259" + }, + "addon.gproj_8.4.0_manifest.json": { + "stat": [ + 47, + 33574548, + 364, + 1791902409731031220, + 1791902409731031220 + ], + "sha256": "3065c7c353cb7623ee85f83d462d4dac37c92efad1a0255f2661470e6cedfd0f" + }, + "data.pak": { + "stat": [ + 47, + 33574558, + 120024479, + 1791902411497121011, + 1791902411928073379 + ], + "sha256": "7accd95e940856220f8e65f7b73c63385e73b5804da811761c7eeac9408abcb8" + }, + "data.pak_8.4.0_manifest.json": { + "stat": [ + 47, + 33574549, + 29851, + 1791902409891034290, + 1791902409891034290 + ], + "sha256": "95ffd8ab723c92c027f847e552dae12fce3448ce2187ba5ef5e548f3e6a3fa0b" + }, + "gallery0_776x436.jpg": { + "stat": [ + 47, + 23106914, + 64588, + 1788720671481676966, + 1788720671481676966 + ], + "sha256": "63649f5239059dd12234250b8c8e313b14ca134e30e4309fbd1eb45f92e77097" + }, + "gallery1_776x436.jpg": { + "stat": [ + 47, + 23106915, + 47808, + 1788720671495639547, + 1788720671495639547 + ], + "sha256": "81f89b026a1bf341f8cd3bb19facd67e8d0f56073c924e026983836fee6bfb4c" + }, + "meta": { + "stat": [ + 47, + 918496, + 2928, + 1791902411943073667, + 1791902411943073667 + ], + "sha256": "dd115af27f420e89401e532ace686df8f13976d437bbcf6ba4f57af4ad9e73d0" + }, + "resourceDatabase.rdb": { + "stat": [ + 47, + 33574561, + 19326, + 1791902410661049065, + 1791902411933073476 + ], + "sha256": "f0ad9d9f9339fd946be962e93543c696992b30159cc9d4cf7cadec5f87967d6e" + }, + "resourceDatabase.rdb_8.4.0_manifest.json": { + "stat": [ + 47, + 33574550, + 366, + 1791902410064037609, + 1791902410064037609 + ], + "sha256": "f66140ac6ccf012f21e3ff1919b4981b3fd06c42f7efc53d666b70705dfe9b4a" + }, + "thumbnail.png": { + "stat": [ + 47, + 33574564, + 708338, + 1791902410579047492, + 1791902411934073495 + ], + "sha256": "103a98bf476d510ab3081abb371170ae6cf65aea65b9095636d651170a5b0038" + }, + "thumbnail.png_8.4.0_manifest.json": { + "stat": [ + 47, + 33574551, + 368, + 1791902410190040027, + 1791902410190040027 + ], + "sha256": "5bf1e0f8794a4e2e862658a10071360df63ed6a440ee2ca5514afbc2e97e375e" + } + } + }, + "629B2BA37EFFD577": { + "path": "/home/jakub/.local/share/Steam/steamapps/compatdata/1874880/pfx/drive_c/users/steamuser/Documents/My Games/ArmaReforger/addons/WCS_Armaments_629B2BA37EFFD577", + "title": "WCS_Armaments", + "version": "8.3.0", + "files": { + "ServerData.json": { + "stat": [ + 47, + 920134, + 197, + 1791902409425068465, + 1791902409425068465 + ], + "sha256": "6bddc06413108d624039e3ec7566ada8242b579a09b0bafe894877282e2a95f8" + }, + "addon.gproj": { + "stat": [ + 47, + 33574250, + 2926, + 1791902402861114545, + 1791902409412025099 + ], + "sha256": "e6ffcf559a2e7898848349c090300ea8eca8cb2e13ecef456a108bcc82efc8b1" + }, + "addon.gproj_8.4.0_manifest.json": { + "stat": [ + 47, + 33574239, + 364, + 1791902401264868815, + 1791902401264868815 + ], + "sha256": "ba8f2b36575408f11b2107fc4b0f9449c9dc057629ebf894c7bdbc77f53cbc1f" + }, + "data.pak": { + "stat": [ + 47, + 33574247, + 441631740, + 1791902407839994936, + 1791902409400024869 + ], + "sha256": "e18ab4bb3f390dd6116d8c7e686fe21349c6c993a77b7ea6361d4027d7683788" + }, + "data.pak_8.4.0_manifest.json": { + "stat": [ + 47, + 33574235, + 298655, + 1791902401137866379, + 1791902401137866379 + ], + "sha256": "c0a4abb0dbd590b845af29dd9cd8c4b28beba961052138da894d57230e27c171" + }, + "meta": { + "stat": [ + 47, + 919170, + 2505, + 1791902409423025310, + 1791902409423025310 + ], + "sha256": "7f3d6fb9d09d3f0a435eb10f711d63408fe7d0ec5b62f6723ee7da97d1e0c289" + }, + "resourceDatabase.rdb": { + "stat": [ + 47, + 33574256, + 195796, + 1791902403029902666, + 1791902409414025137 + ], + "sha256": "92f6c40aeebab4c2148173ff61d4312340111a2e7b675b9e4bbced2814ed2154" + }, + "resourceDatabase.rdb_8.4.0_manifest.json": { + "stat": [ + 47, + 33574243, + 368, + 1791902401530873916, + 1791902401530873916 + ], + "sha256": "65ecf9dae6a8b3c864965b392b83ea520bc1f2910b4fdc83c3cfe16282647454" + }, + "thumbnail.png": { + "stat": [ + 47, + 33574253, + 689544, + 1791902402861899444, + 1791902409413025118 + ], + "sha256": "ccd771dba7f3f222e9733e688e6dd9e4c5edae2accdd80a6876241094e23f3dd" + }, + "thumbnail.png_8.4.0_manifest.json": { + "stat": [ + 47, + 33574240, + 368, + 1791902401396871347, + 1791902401396871347 + ], + "sha256": "e58ef73e4a794e56ecd04bfd84940ec539e5ca481d6b69ffb20f9fedcd3c2e77" + } + } + }, + "65930CB4CD0237B2": { + "path": "/home/jakub/.local/share/Steam/steamapps/compatdata/1874880/pfx/drive_c/users/steamuser/Documents/My Games/ArmaReforger/addons/ParachuteFramework_65930CB4CD0237B2", + "title": "Parachute Framework", + "version": "1.2.0", + "files": { + "ServerData.json": { + "stat": [ + 47, + 23608865, + 764, + 1788881939235881733, + 1788881939235881733 + ], + "sha256": "ec665641799be1f97100937ce87c894a88bee99526fac0695303c339121e8bd1" + }, + "addon.gproj": { + "stat": [ + 47, + 23608826, + 124, + 1788881938831871187, + 1788881938831871187 + ], + "sha256": "183fbb521382a95ad33af9efc547147a80241bd536a29d124c93064b5ae5e8bc" + }, + "addon.gproj_1.2.0_manifest.json": { + "stat": [ + 47, + 23608818, + 362, + 1788881938288857014, + 1788881938288857014 + ], + "sha256": "5030f4430dbd237d93fbcc49ab5c667241b803f1beee4060498e882ea85c9d7f" + }, + "data.pak": { + "stat": [ + 47, + 23608829, + 5048302, + 1788881939131386944, + 1788881939131386944 + ], + "sha256": "ccb22523ba0040cb9d9206a7ab0ae7e5b4411b1704bde39e3e4a7953416e3042" + }, + "data.pak_1.2.0_manifest.json": { + "stat": [ + 47, + 23608820, + 4696, + 1788881938426860616, + 1788881938426860616 + ], + "sha256": "168504d70f88650b0e7acbdcc80ef384ee5b90e2f044839f837b1220b767afcb" + }, + "meta": { + "stat": [ + 47, + 23608819, + 5088, + 1788881955440304751, + 1788881955440304751 + ], + "sha256": "178156f61a332f596dc3783c4d02b0ab5d50a47d4aa1572395760d0fe062500b" + }, + "resourceDatabase.rdb": { + "stat": [ + 47, + 23608835, + 3188, + 1788881939082877739, + 1788881939082877739 + ], + "sha256": "0994a4b1fcfacdd8d8f69759ba6bde878d633545e380a5774a05e4cac3b6b2c4" + }, + "resourceDatabase.rdb_1.2.0_manifest.json": { + "stat": [ + 47, + 23608822, + 364, + 1788881938690867507, + 1788881938690867507 + ], + "sha256": "6a0793ea2080ae22fac1efd6d3da3ddb3100fd0b60869098e5572be66318c883" + }, + "thumbnail.png": { + "stat": [ + 47, + 23608832, + 2255011, + 1788881939194880662, + 1788881939194880662 + ], + "sha256": "715ac1bf4b6abefb2726cc4c61e903e63ae3a2bfec1e8a85be6cb81eb308407a" + }, + "thumbnail.png_1.2.0_manifest.json": { + "stat": [ + 47, + 23608821, + 370, + 1788881938560864114, + 1788881938560864114 + ], + "sha256": "2bd7127d58adee39c3aa1e2212436499b10adf4fe2faa0b3ed5fcadbfaaae768" + } + } + }, + "BADC0DEDABBEDA5E": { + "path": "/home/jakub/.local/share/Steam/steamapps/compatdata/1874880/pfx/drive_c/users/steamuser/Documents/My Games/ArmaReforger/addons/RHS-ContentPack02_BADC0DEDABBEDA5E", + "title": "RHS: Status Quo - Content Pack 02", + "version": "0.16.5236", + "files": { + "ServerData.json": { + "stat": [ + 47, + 911088, + 209, + 1791217577175957552, + 1791217577175957552 + ], + "sha256": "344a5ceec8c8c98aad2ac5831febebd0facb93ddd02422ad24060ecd09bd9d7e" + }, + "addon.gproj": { + "stat": [ + 47, + 32064850, + 336, + 1791217562080448337, + 1791217577146066199 + ], + "sha256": "6ebd73d663ed6dbf981cd8bc7d19cfd5bcd3c9dec3b9a706fa331d992ef200b4" + }, + "addon.gproj_0.16.5236_manifest.json": { + "stat": [ + 47, + 32064829, + 362, + 1791217554184202802, + 1791217554184202802 + ], + "sha256": "72d988d5881efdf7d8781b2dc978a0243e1a3d587ced56563299855724137232" + }, + "data.pak": { + "stat": [ + 47, + 32064844, + 1992510440, + 1791217570711716195, + 1791217577146066199 + ], + "sha256": "b67a44100a378580fd85b20009cb3ec0080809c676a8b5a1cb742e9b38ecc6c6" + }, + "data.pak_0.16.5236_manifest.json": { + "stat": [ + 47, + 32064827, + 173766, + 1791217553936195082, + 1791217553936195082 + ], + "sha256": "993b2ae337e9ac1739ae8ec463059046d4c04478150741d2b2f7cc6bf69936f7" + }, + "data001.pak": { + "stat": [ + 47, + 32064836, + 238642257, + 1791217563390489027, + 1791217577146066199 + ], + "sha256": "0fdef61ed28e54cf79586d11fcc06784e419df64e8a3a189f28bdc165a40b182" + }, + "data001.pak_0.16.5236_manifest.json": { + "stat": [ + 47, + 32064826, + 29970, + 1791217553778190164, + 1791217553778190164 + ], + "sha256": "f2e6ba88d0c10dc3270ff36c0782ec18d3b556b9d66905b88c28674abfad4020" + }, + "meta": { + "stat": [ + 47, + 910016, + 7720, + 1791217577173916383, + 1791217577173916383 + ], + "sha256": "f15f5ef2900d28a101f6a2e7ce9e59d97c12bcf22413b11d8f81915a95b1c0b1" + }, + "resourceDatabase.rdb": { + "stat": [ + 47, + 32064847, + 113129, + 1791217562363457128, + 1791217577146066199 + ], + "sha256": "cd6d683ab9b1bcb46936e113311e9ea68875a4411e4341c9761d961544c544d1" + }, + "resourceDatabase.rdb_0.16.5236_manifest.json": { + "stat": [ + 47, + 32064828, + 368, + 1791217554060198943, + 1791217554060198943 + ], + "sha256": "e0ff6ea4509dd43f625f774a23a9a829356ac2a8244d02199fa639684139f3f8" + }, + "thumbnail.png": { + "stat": [ + 47, + 32064853, + 18180, + 1791217562080448337, + 1791217577146066199 + ], + "sha256": "4c70bf384375f069cab9ed719f3865441fd363a010495e7b465f3ae83ed887c3" + }, + "thumbnail.png_0.16.5236_manifest.json": { + "stat": [ + 47, + 32064831, + 366, + 1791217554308206661, + 1791217554308206661 + ], + "sha256": "d0e233b32d3d41ac44ea127ea5eb028b97a63555f7867278a7a6f5e8e1df7255" + } + } + } +} diff --git a/docs/evidence/review-1.9-2026-11-06/final-console.log b/docs/evidence/review-1.9-2026-11-06/final-console.log new file mode 100644 index 00000000..26796082 --- /dev/null +++ b/docs/evidence/review-1.9-2026-11-06/final-console.log @@ -0,0 +1,792 @@ +--------------------------------------------- +Log Z:\home\jakub\devel\escapistsrereintroduced\.local\review-1.9\native7\logs\logs_2026-11-06_12-04-20\console.log started at 2026-11-06 12:04:20 (2026-11-06 11:04:20 UTC) + +12:04:20.126 ENGINE : FileSystem: Adding relative directory 'Z:\home\jakub\devel\escapistsrereintroduced\.local\review-1.9\native7\logs\logs_2026-11-06_12-04-20' to filesystem under name logs +12:04:20.127 ENGINE : FileSystem: Adding relative directory 'Z:\home\jakub\devel\escapistsrereintroduced\.local\review-1.9\native7\profile' to filesystem under name profile +12:04:20.127 ENGINE : FileSystem: Current working directory: 'Z:\home\jakub\.local\share\Steam\steamapps\common\Arma Reforger Tools\Workbench\' +12:04:20.128 PROFILING : Workbench Create Engine took: 8.566400 ms +12:04:21.149 INIT : INIT : Workbench Init Engine +12:04:21.149 ENGINE : Initializing engine, version 193322 +12:04:21.149 ENGINE : CLI Params: -gproj Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/source7/addons/core/addon.gproj -addonsDir Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/source7/addons -profile Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7 -logconsole -wbModule WorldEditor -load Worlds/ERR_Everon.ent -plugin ERR_ValidateWorldPlugin -errPlay 1 -errSmoke 0 -errSmokeOutcome normal-escape-route -noThrow -disableCrashReporter +12:04:21.163 ENGINE : Addon dirs: +12:04:21.163 ENGINE : dir: 'Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/source7/addons/core/' +12:04:21.163 ENGINE : dir: 'Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/source7/addons' +12:04:21.163 ENGINE : dir: './addons' +12:04:21.163 ENGINE : dir: 'Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons' +12:04:21.163 ENGINE : Available addons: +12:04:21.163 ENGINE : gproj: 'Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/source7/addons/core/addon.gproj' guid: '2528466DE220D91C' +12:04:21.163 ENGINE : gproj: './addons/core/core.gproj' guid: '5614BBCCBB55ED1C' (packed) +12:04:21.163 ENGINE : gproj: 'Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ArmaReforger/ArmaReforger.gproj' guid: '58D0FB3206B6F859' (packed) +12:04:21.163 ENGINE : gproj: 'Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ERRI_1337C0DE5DABBEEF/addon.gproj' guid: '1337C0DE5DABBEEF' (packed) +12:04:21.163 ENGINE : gproj: 'Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ERRI_595F2BF2F44836FB/addon.gproj' guid: '595F2BF2F44836FB' (packed) +12:04:21.163 ENGINE : gproj: 'Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ERRI_5E389BB9F58B79A6/addon.gproj' guid: '5E389BB9F58B79A6' (packed) +12:04:21.163 ENGINE : gproj: 'Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ERRI_5E524E4FEECCA92B/addon.gproj' guid: '5E524E4FEECCA92B' (packed) +12:04:21.163 ENGINE : gproj: 'Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ERRI_629B2BA37EFFD577/addon.gproj' guid: '629B2BA37EFFD577' (packed) +12:04:21.163 ENGINE : gproj: 'Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ERRI_65930CB4CD0237B2/addon.gproj' guid: '65930CB4CD0237B2' (packed) +12:04:21.163 ENGINE : gproj: 'Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ERRI_BADC0DEDABBEDA5E/addon.gproj' guid: 'BADC0DEDABBEDA5E' (packed) +12:04:21.163 ENGINE : gproj: 'Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/RallyDLC/RallyDLC.gproj' guid: '6566A2D70498DA6B' (packed) +12:04:21.163 ENGINE : FileSystem: Adding relative directory 'Z:\home\jakub\devel\escapistsrereintroduced\.local\review-1.9\source7\addons\core' to filesystem under name ERR_Core +12:04:21.164 ENGINE : FileSystem: Adding package 'Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ERRI_65930CB4CD0237B2/' (pak count: 1) to filesystem under name Parachutes +12:04:21.165 ENGINE : FileSystem: Adding package 'Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ERRI_5E524E4FEECCA92B/' (pak count: 1) to filesystem under name WCS_BMP-1 +12:04:21.166 ENGINE : FileSystem: Adding package 'Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ERRI_5E389BB9F58B79A6/' (pak count: 1) to filesystem under name WCS_SpaceCore +12:04:21.168 ENGINE : FileSystem: Adding package 'Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ERRI_629B2BA37EFFD577/' (pak count: 1) to filesystem under name WCS_Armaments +12:04:21.173 ENGINE : FileSystem: Adding package 'Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ERRI_595F2BF2F44836FB/' (pak count: 1) to filesystem under name RHS_Core +12:04:21.174 ENGINE : FileSystem: Adding package 'Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ERRI_BADC0DEDABBEDA5E/' (pak count: 2) to filesystem under name RHS_Content_02 +12:04:21.179 ENGINE : FileSystem: Adding package 'Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ERRI_1337C0DE5DABBEEF/' (pak count: 4) to filesystem under name RHS_Content_01 +12:04:21.190 ENGINE : FileSystem: Adding package 'Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/RallyDLC/' (pak count: 2) to filesystem under name RallyDLC +12:04:21.299 ENGINE : FileSystem: Adding package 'Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ArmaReforger/' (pak count: 15) to filesystem under name ArmaReforger +12:04:21.302 ENGINE : FileSystem: Adding package './addons/core/' (pak count: 2) to filesystem under name core +12:04:21.302 ENGINE : CPU vendor : AuthenticAMD +12:04:21.302 ENGINE : CPU type : 2 +12:04:21.302 ENGINE : CPU name : AMD Ryzen 7 3800XT 8-Core Processor +12:04:21.302 ENGINE : CPU cache info : L1 [Inst 32KB, Data 32KB], L2 [Unif 512KB], L3 [Unif 16384KB] +12:04:21.302 ENGINE : CPU count logical : 16 +12:04:21.302 ENGINE : CPU count physical : 8 +12:04:21.302 ENGINE : CPU features : mmx sse sse2 sse3 ssse3 sse4_1 sse4_2 popcnt aesni pclmulqdq osxsave avx sha avx2 +12:04:21.302 RESOURCES : ResourceDB: loading cache (id=0 name=ERR_Core path=Z:\home\jakub\devel\escapistsrereintroduced\.local\review-1.9\source7\addons\core/resourceDatabase.rdb) +12:04:21.303 RESOURCES : ResourceDB: loading cache (id=1 name=Parachutes path=Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ERRI_65930CB4CD0237B2/resourceDatabase.rdb) +12:04:21.303 RESOURCES : ResourceDB: loading cache (id=2 name=WCS_BMP-1 path=Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ERRI_5E524E4FEECCA92B/resourceDatabase.rdb) +12:04:21.304 RESOURCES : ResourceDB: loading cache (id=3 name=WCS_SpaceCore path=Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ERRI_5E389BB9F58B79A6/resourceDatabase.rdb) +12:04:21.305 RESOURCES : ResourceDB: loading cache (id=4 name=WCS_Armaments path=Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ERRI_629B2BA37EFFD577/resourceDatabase.rdb) +12:04:21.307 RESOURCES : ResourceDB: loading cache (id=5 name=RHS_Core path=Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ERRI_595F2BF2F44836FB/resourceDatabase.rdb) +12:04:21.315 RESOURCES : ResourceDB: loading cache (id=6 name=RHS_Content_02 path=Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ERRI_BADC0DEDABBEDA5E/resourceDatabase.rdb) +12:04:21.317 RESOURCES : ResourceDB: loading cache (id=7 name=RHS_Content_01 path=Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ERRI_1337C0DE5DABBEEF/resourceDatabase.rdb) +12:04:21.322 RESOURCES : ResourceDB: loading cache (id=8 name=RallyDLC path=Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/RallyDLC/resourceDatabase.rdb) +12:04:21.328 RESOURCES : ResourceDB: loading cache (id=9 name=ArmaReforger path=Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ArmaReforger/resourceDatabase.rdb) +12:04:21.460 RESOURCES : ResourceDB: loading cache (id=10 name=core path=./addons/core/resourceDatabase.rdb) +12:04:21.461 RESOURCES : ResourceDB: loading cache (id=11 name=profile path=Z:\home\jakub\devel\escapistsrereintroduced\.local\review-1.9\native7\profile/resourceDatabase.rdb) +12:04:21.461 RESOURCES : ResourceDB: loading cache (id=12 name=logs path=Z:\home\jakub\devel\escapistsrereintroduced\.local\review-1.9\native7\logs\logs_2026-11-06_12-04-20/resourceDatabase.rdb) +12:04:21.624 RESOURCES : RESOURCES : ResourceDB: full scan +12:04:21.629 RESOURCES : RESOURCES : scanning... +12:04:21.629 RESOURCES : RESOURCES : scanning @"ERR_Core" +12:04:21.647 RESOURCES : RESOURCES : scanning @"Parachutes" +12:04:21.650 RESOURCES : RESOURCES : scanning @"WCS_BMP-1" +12:04:21.653 RESOURCES : RESOURCES : scanning @"WCS_SpaceCore" +12:04:21.655 RESOURCES : RESOURCES : scanning @"WCS_Armaments" +12:04:21.660 RESOURCES : RESOURCES : scanning @"RHS_Core" +12:04:21.672 RESOURCES : RESOURCES : scanning @"RHS_Content_02" +12:04:21.676 RESOURCES : RESOURCES : scanning @"RHS_Content_01" +12:04:21.683 RESOURCES : RESOURCES : scanning @"RallyDLC" +12:04:21.690 RESOURCES : RESOURCES : scanning @"ArmaReforger" +12:04:21.882 RESOURCES : RESOURCES : scanning @"core" +12:04:21.886 RESOURCES : RESOURCES : scanning @"profile" +12:04:21.886 RESOURCES : RESOURCES : scanning @"logs" +12:04:21.887 RESOURCES : RESOURCES : processing meta-files... +12:04:21.952 RESOURCES : 118377 meta-files cached, 0 loaded again +12:04:21.952 RESOURCES : RESOURCES : processing files... +12:04:21.953 INIT : Workbench startup +12:04:21.953 INIT : Workbench Init Engine +12:04:21.953 RESOURCES : ResourceDB: full scan +12:04:21.953 RESOURCES : processing files... +12:04:21.953 RESOURCES (W): resource not registered: @"$RHS_Core:system/thermal/thermalProfileTreeCrownDefault.conf". Setting null GUID +12:04:21.965 RESOURCES (W): resource not registered: @"$logs:external-addons-inputs.json". Setting null GUID +12:04:21.965 RESOURCES (W): resource not registered: @"$logs:launch-source-sha256.json". Setting null GUID +12:04:21.965 RESOURCES (W): resource not registered: @"$logs:launch-source.json". Setting null GUID +12:04:21.965 RESOURCES : RESOURCES : processing folders... +12:04:21.972 RESOURCES : RESOURCES : creating GUID-item mapping... +12:04:21.987 RESOURCES : RESOURCES : building tree... +12:04:22.036 PROFILING : ResourceDB: full scan took: 411.885300 ms +12:04:22.037 RESOURCES : ResourceDB: saving cache (id=0 name=ERR_Core path=Z:\home\jakub\devel\escapistsrereintroduced\.local\review-1.9\source7\addons\core/resourceDatabase.rdb) +12:04:22.039 RESOURCES : ResourceDB: written 38137/38137 bytes +12:04:22.039 RESOURCES : ResourceDB: cache successfully saved +12:04:22.039 RESOURCES : ResourceDB: saving cache (id=11 name=profile path=Z:\home\jakub\devel\escapistsrereintroduced\.local\review-1.9\native7\profile/resourceDatabase.rdb) +12:04:22.040 RESOURCES : ResourceDB: written 51/51 bytes +12:04:22.040 RESOURCES : ResourceDB: cache successfully saved +12:04:22.040 RESOURCES : ResourceDB: saving cache (id=12 name=logs path=Z:\home\jakub\devel\escapistsrereintroduced\.local\review-1.9\native7\logs\logs_2026-11-06_12-04-20/resourceDatabase.rdb) +12:04:22.042 RESOURCES : ResourceDB: written 208/208 bytes +12:04:22.042 RESOURCES : ResourceDB: cache successfully saved +12:04:22.042 ENGINE : GameProject load +12:04:22.042 ENGINE : Loaded addons: +12:04:22.042 ENGINE : gproj: './addons/core/core.gproj' guid: '5614BBCCBB55ED1C' +12:04:22.042 ENGINE : gproj: 'Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ArmaReforger/ArmaReforger.gproj' guid: '58D0FB3206B6F859' +12:04:22.042 ENGINE : gproj: 'Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/RallyDLC/RallyDLC.gproj' guid: '6566A2D70498DA6B' +12:04:22.042 ENGINE : gproj: 'Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ERRI_1337C0DE5DABBEEF/addon.gproj' guid: '1337C0DE5DABBEEF' +12:04:22.042 ENGINE : gproj: 'Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ERRI_BADC0DEDABBEDA5E/addon.gproj' guid: 'BADC0DEDABBEDA5E' +12:04:22.042 ENGINE : gproj: 'Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ERRI_595F2BF2F44836FB/addon.gproj' guid: '595F2BF2F44836FB' +12:04:22.042 ENGINE : gproj: 'Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ERRI_629B2BA37EFFD577/addon.gproj' guid: '629B2BA37EFFD577' +12:04:22.042 ENGINE : gproj: 'Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ERRI_5E389BB9F58B79A6/addon.gproj' guid: '5E389BB9F58B79A6' +12:04:22.042 ENGINE : gproj: 'Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ERRI_5E524E4FEECCA92B/addon.gproj' guid: '5E524E4FEECCA92B' +12:04:22.042 ENGINE : gproj: 'Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ERRI_65930CB4CD0237B2/addon.gproj' guid: '65930CB4CD0237B2' +12:04:22.042 ENGINE : gproj: 'Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/source7/addons/core/addon.gproj' guid: '2528466DE220D91C' +12:04:22.044 ENGINE : GameProject load +12:04:22.044 INIT : GameProject load project data @"Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ERRI_595F2BF2F44836FB/addon.gproj" +12:04:22.044 RESOURCES (E): Wrong GUID/name for resource @"{0AFDD005CD669892}Language/rhs_localization.st" in property "StringTableSource" +12:04:22.044 INIT : GameProject load project data @"Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ERRI_629B2BA37EFFD577/addon.gproj" +12:04:22.044 RESOURCES (E): Wrong GUID/name for resource @"{41FA2A08B6971D4C}Language/wcs_armament_localization.st" in property "StringTableSource" +12:04:22.045 INIT : GameProject load project data @"Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ERRI_5E389BB9F58B79A6/addon.gproj" +12:04:22.045 RESOURCES (E): Wrong GUID/name for resource @"{84270E09F7A4A7A0}Language/wcs_spacecore_localization.st" in property "StringTableSource" +12:04:22.045 INIT : GameProject load project data @"Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/addons/ERRI_5E524E4FEECCA92B/addon.gproj" +12:04:22.045 RESOURCES (E): Wrong GUID/name for resource @"{E50E557B468C7073}Language/wcs_bmp1_localization.st" in property "StringTableSource" +12:04:22.046 ENGINE : Loading custom engine user config '$profile:.save/app1874910_user76561198020202999/settings/ReforgerEngineSettings.conf' +12:04:22.046 ENGINE : No Enfusion settings file loaded. Continuing with defaults +12:04:22.135 RENDER : (OK) Adapter 'AMD Radeon RX 6950 XT (RADV NAVI21)' supports feature level 12_0 +12:04:22.136 RENDER : Basic screen setup: +12:04:22.136 RENDER : Back buffer format : TEXFMT_R8G8B8A8_SRGB (29) +12:04:22.136 RENDER : MSAA : none +12:04:22.146 RENDER : AMD AGS library initialized, version 6.1.0 x DLL 6.1.0 +12:04:22.146 RENDER : Extendeded AMD info for AMD Radeon RX 6950 XT (RADV NAVI21) (primary device) +12:04:22.146 RENDER : * architecture RDNA2, 80 CUs, 40 WGPs (for RDNA), 64 ROPs +12:04:22.146 RENDER : * core clocks 2000 MHz, memory 1124 MHz +12:04:22.146 RENDER : * TFlops 20.5, memory bandwidth (562.0 GB/s) +12:04:22.146 RENDER : AMD AGS correctly initialized +12:04:22.147 RENDER : GPU_ATI (0x1002) (AMD Radeon RX 6950 XT (RADV NAVI21)) with 1 GPU detected, VRAM 16128MB (fast 0MB), shared 64362MB, driver version 99.19.02-230831a-396538C-AMD-Software-Adrenalin-Edition +12:04:22.147 RENDER : Detected output devices: +12:04:22.147 RENDER : * 1 device/s connected to AMD Radeon RX 6950 XT (RADV NAVI21): +12:04:22.147 RENDER : Generic Non-PnP Monitor (\\.\DISPLAY1), 1280x720 (offset 0x0), 30Hz +12:04:22.147 RENDER : Concurrent frames limit 2 +12:04:22.212 RENDER : DX12 device successfully created by AMD AGS library +12:04:22.212 RENDER : * user markers not supported in this version AMD SW +12:04:22.212 RENDER : Graphics device features +12:04:22.212 RENDER : Needed: +12:04:22.212 RENDER : * Highest supported shader model: 6.8 (6.0 needed) +12:04:22.212 RENDER : Optional: +12:04:22.212 RENDER : * Allow tearing (VSYNC) : 1 +12:04:22.212 RENDER : * 16 bits : 1 +12:04:22.212 RENDER : * Resource heap tier : 3 +12:04:22.212 RENDER : * Persistent heaps (DRED) : 1 +12:04:22.212 RENDER : * DRED 1.2 is supported by compiler +12:04:22.231 RENDER : Main RT format setup. +12:04:22.231 RENDER : Main RT format for quality 0 : TEXFMT_R11G11B10_FLOAT (26) +12:04:22.231 RENDER : Main RT format for quality 1 : TEXFMT_R16G16B16A16_FLOAT (10) +12:04:22.233 ENGINE : Job system settings: coreCount=16, shortJobContextCount=16, shortJobThreadCount=15, longJobThreadCount=16 +12:04:22.261 PROFILING : Settings changed took: 0.012300 ms +12:04:22.524 AUDIO : Endpoint: Speakers (PulseAudio Output) +12:04:22.524 AUDIO : Format: Channels: 2, Sample rate: 48kHz, Avg. bytes: 384kB, Sample bits: 32, Block align: 8B +12:04:22.524 AUDIO : Audio client: +12:04:22.524 AUDIO : Format: Channels: 2, Sample rate: 48kHz, Buffer size: 1536B, Frame: 512 +12:04:22.526 RENDER : RENDER : Reload shaders +12:04:22.526 RENDER : Enfusion shader version 37 +12:04:22.526 INIT : INIT : ShaderListReload +12:04:22.526 PROFILING : ShaderListReload took: 0.000400 ms +12:04:22.767 RENDER : Loaded 4592 newer shader binaries +12:04:22.767 PROFILING : Reload shaders took: 240.376400 ms +12:04:22.767 ENGINE : Initializing inputs. +12:04:22.779 RENDER : Super resolution method available: AMD FSR 1 +12:04:22.779 NETWORK : Initializing networking. +12:04:22.779 NETWORK : Using new GameRplScheduler. +12:04:22.780 SCRIPT : SCRIPT : Initializing scripts +12:04:22.780 SCRIPT : SCRIPT : ScriptProjectManager init +12:04:25.351 PROFILING : ScriptProjectManager init took: 2571.143100 ms +12:04:25.384 PROFILING : Initializing scripts took: 2604.070500 ms +12:04:25.400 ENGINE : Enfusion engine successfully created. +12:04:25.400 PROFILING : Workbench Init Engine took: 4250.669300 ms +12:04:25.400 INIT : INIT : Workbench Create Game +12:04:25.426 GUI : Using default language (en_us) +12:04:25.426 GUI : Loading 'en_us' localization file. +12:04:25.426 INIT : INIT : Loading StringTable +12:04:25.450 PROFILING : Loading StringTable took: 23.682100 ms +12:04:25.450 SCRIPT : SCRIPT : Compiling GameLib scripts +12:04:25.502 SCRIPT : Module: Workbench; loaded 18x files; 36x classes; used 125K of static memory; defines: "ENF_WB,WORKBENCH,PLATFORM_WINDOWS,ENABLE_DIAG,ENF_ENABLE_RPLCOMPONENT_IN_GAMECODE"; CRC32: 90ce0460 +12:04:25.502 SCRIPT : Module: GameLib; loaded 513x files; 704x classes; used 887K of static memory; defines: "ENF_WB,WORKBENCH,PLATFORM_WINDOWS,ENABLE_DIAG,ENF_ENABLE_RPLCOMPONENT_IN_GAMECODE"; CRC32: 35487d81 +12:04:25.502 PROFILING : Compiling GameLib scripts took: 52.404600 ms +12:04:25.502 SCRIPT : SCRIPT : Compiling Game scripts +12:04:26.376 INIT : Workbench Create Game +12:04:26.376 SCRIPT : Compiling Game scripts +12:04:26.376 SCRIPT (W): @"Scripts/Game/Parachutes/ParachuteDeployed.c,7": Pointer type 'Physics' can only be used with local variables +12:04:26.903 SCRIPT (W): @"Scripts/Game/Editor/Components/EditableEntity/SCR_EditableEntityComponent.c,787": 'GetPlayerPlatformKind' is obsolete +12:04:26.903 SCRIPT (W): @"Scripts/Game/Editor/Components/EditableEntity/SCR_EditableEntityComponent.c,788": 'GetPlayerPlatformId' is obsolete +12:04:27.263 SCRIPT (W): @"Scripts/Game/ERR/00_Core/ERR_SiteService.c,363": 'GetCompartmentType' is obsolete: Use GetType() on the compartment instance directly. +12:04:27.282 SCRIPT (W): @"Scripts/Game/Workshop/SCR_AddonManager.c,876": 'GetRefCount' is obsolete: Will be removed +12:04:27.319 SCRIPT (W): @"Scripts/Game/Campaign/SCR_PlayerProfileManagerComponent.c,142": 'PlayerData' is obsolete +12:04:27.435 SCRIPT (W): @"Scripts/Game/Components/Magazines/SCR_MagazineComponent.c,134": Variable 'prefabPath' is not used +12:04:27.451 SCRIPT (W): @"Scripts/Game/UI/Backend/CareerBackend.c,159": 'GetDSSession' is obsolete +12:04:27.451 SCRIPT (W): @"Scripts/Game/UI/Backend/CareerBackend.c,162": 'RoomID' is obsolete +12:04:27.451 SCRIPT (W): @"Scripts/Game/UI/Backend/CareerBackend.c,197": 'GetDSSession' is obsolete +12:04:27.451 SCRIPT (W): @"Scripts/Game/UI/Backend/CareerBackend.c,201": 'RoomID' is obsolete +12:04:27.475 SCRIPT (W): @"Scripts/Game/ERR/00_Core/ERR_NativeVehicleSecurityProbe.c,77": 'GetCompartmentType' is obsolete: Use GetType() on the compartment instance directly. +12:04:27.486 SCRIPT (W): @"Scripts/Game/ERR/00_Core/ERR_CasualtyGroundSupport.c,21": 'GetBoneIndex' is obsolete: Use GetAnimation().GetBoneIndex() instead +12:04:27.552 SCRIPT (W): @"Scripts/Game/DataCollection/SCR_DataCollectorComponent.c,481": 'GetStorage' is obsolete +12:04:27.552 SCRIPT (W): @"Scripts/Game/DataCollection/SCR_DataCollectorComponent.c,483": 'GetOnlineWritePrivilege' is obsolete +12:04:27.553 SCRIPT (W): @"Scripts/Game/Utilities/SCR_PlayerIdentityUtils.c,20": 'GetPlayerIdentityId' is obsolete +12:04:27.584 SCRIPT (W): @"Scripts/Game/ERR/00_Core/ERR_NativeVehicleSecurityProbe.c,186": 'GetCompartmentType' is obsolete: Use GetType() on the compartment instance directly. +12:04:27.606 SCRIPT (W): @"Scripts/Game/ERR/00_Core/ERR_ExtractionService.c,311": 'GetCompartmentType' is obsolete: Use GetType() on the compartment instance directly. +12:04:27.606 SCRIPT (W): @"Scripts/Game/ERR/00_Core/ERR_ExtractionService.c,323": 'GetCompartmentType' is obsolete: Use GetType() on the compartment instance directly. +12:04:27.608 SCRIPT (W): @"Scripts/Game/UI/Menu/MainMenuUI.c,643": 'GetNotifyCount' is obsolete: Will be substitued by Notification Api. +12:04:27.608 SCRIPT (W): @"Scripts/Game/UI/Menu/MainMenuUI.c,645": 'GetNotifyItem' is obsolete: Will be substitued by Notification Api. +12:04:27.635 SCRIPT (W): @"Scripts/Game/ERR/00_Core/ERR_NativeTransportProbe.c,138": 'GetCompartmentType' is obsolete: Use GetType() on the compartment instance directly. +12:04:27.669 SCRIPT (W): @"Scripts/Game/DataCollection/PlayerData/SCR_PlayerData.c,210": 'PlayerData' is obsolete +12:04:28.046 SCRIPT : Module: WorkbenchGame; loaded 187x files; 692x classes; used 2796K of static memory; defines: "ENF_WB,WORKBENCH,PLATFORM_WINDOWS,ENABLE_DIAG,ENF_ENABLE_RPLCOMPONENT_IN_GAMECODE"; CRC32: 53d2bfa5 +12:04:28.054 SCRIPT : Module: Game; loaded 6913x files; 14314x classes; used 44459K of static memory; defines: "ENF_WB,WORKBENCH,PLATFORM_WINDOWS,ENABLE_DIAG,ENF_ENABLE_RPLCOMPONENT_IN_GAMECODE,ENABLE_BASE_DESTRUCTION,BUDGET_OPTIMIZATION_CHECKS,SHOW_DISCLAIMER,DEBUG,RESPAWN_TIMER_COMPONENT_DEBUG,GAME_MODE_DEBUG,DEBUG_CONFIGURABLE_DIALOGS,DISABLE_WEAPON_SWITCHING,SCRIPTED_AIM_MODIFIER_DEBUG,WCS_DEFINES_ARMAMENTS,WCS_DEFINES_SPACECORE"; CRC32: 19e5830d +12:04:28.111 PROFILING : Compiling Game scripts took: 2608.883700 ms +12:04:28.117 INIT : Creating game instance(ArmaReforgerScripted), version 1.9.0.37 built 2026-10-27 15:39:59 UTC. +12:04:28.172 ENGINE : Game successfully created. +12:04:28.173 PROFILING : Workbench Create Game took: 2772.529600 ms +12:04:28.180 DEFAULT : Using thumbnail cache directory: C:/users/steamuser/AppData/Local/Temp/Arma Reforger Workbench/Projects/ERR_Core/thumbnails +12:04:28.937 INIT : INIT : Workbench Reload Game +12:04:28.938 ENGINE : Game destroyed. +12:04:28.943 GUI : Using default language (en_us) +12:04:28.943 GUI : Loading 'en_us' localization file. +12:04:28.943 INIT : INIT : Loading StringTable +12:04:28.953 PROFILING : Loading StringTable took: 9.815000 ms +12:04:28.953 INIT : Creating game instance(ArmaReforgerScripted), version 1.9.0.37 built 2026-10-27 15:39:59 UTC. +12:04:28.964 INIT : Workbench Reload Game +12:04:28.964 DEFAULT (E): Failed to request DLC ownership information. +12:04:28.964 SCRIPT : Unable to register a script command due keyword duplicity: ban +12:04:28.965 SCRIPT : Unable to register a script command due keyword duplicity: kick +12:04:28.965 ENGINE : Game successfully created. +12:04:28.965 ENGINE : Game successfully initialized. +12:04:28.965 PROFILING : Workbench Reload Game took: 28.105500 ms +12:04:29.600 WORLD : WORLD : Entities load '$ERR_Core:Worlds/ERR_Everon.ent' +12:04:29.817 PROFILING : Entities load took: 217.244300 ms +12:04:29.818 WORLD : WORLD : CreateEntities +12:04:29.823 WORLD : WORLD : NotifyBeforeEntitiesCreated +12:04:29.823 PROFILING : NotifyBeforeEntitiesCreated took: 0.003500 ms +12:04:29.824 WORLD : WORLD : Wait for preloading data +12:04:29.824 PROFILING : Wait for preloading data took: 0.002200 ms +12:04:29.932 ENTITY : Create entity @"ENTITY:2" ('Eden', GenericTerrainEntity) at <0.000000 0.000000 0.000000> @"{5AD924374E8C7AF6}Prefabs/World/Game/Eden/GenericTerrain_Eden.et" +12:04:29.932 PROFILING : PROFILING : Terrain load +12:04:31.513 PROFILING : Terrain load took: 1580.121000 ms +12:04:33.516 WORLD : CreateEntities +12:04:33.516 ENTITY : Create entity @"ENTITY:135137" ('StaticModelEntity','Assets/Structures/Infrastructure/Towers/TransmitterTower_01/TransmitterTower_01_small.xob') at <1931.796021 81.777000 5138.725098> @"{6A004A8F0571D456}Prefabs/Structures/Infrastructure/Towers/TransmitterTower_01/TransmitterTower_01_small.et" +12:04:33.517 ENTITY : CreateComponent 'ScriptedRadioComponent' +12:04:33.517 DEFAULT (W): World doesn't contain RadioManagerEntity to support any BaseRadioComponent. +12:04:35.614 WORLD : WORLD : Wait for preloading data +12:04:35.625 PROFILING : Wait for preloading data took: 11.337300 ms +12:04:39.998 WORLD : WORLD : NotifyBeforeEntitiesInitialized +12:04:39.998 PROFILING : NotifyBeforeEntitiesInitialized took: 0.005600 ms +12:04:40.409 WORLD : InitEntities 'world' +12:04:40.410 ENTITY : Init entity @"ENTITY:2305843009213693953" ('Reintroduced', ERR_GameMode) at <60.452000 1.000000 213.136002> @"{978E045E53EF36C8}Prefabs/ERR/GameMode.et" +12:04:40.410 SCRIPT : Reintroduced [config]: using $profile:Escapists.json; legacy files retained but no longer used. +12:04:40.412 WORLD : WORLD : NotifyEntitiesInitialized +12:04:40.412 TERRAIN : TERRAIN : Initializing road networks... +12:04:40.415 PROFILING : Initializing road networks... took: 2.546500 ms +12:04:40.415 PROFILING : NotifyEntitiesInitialized took: 2.890200 ms +12:04:40.417 WORLD (W): Leaf 4200 Ents 2204 [-687.000000,-432.000000] - [37.000000,100.000000] +12:04:40.417 WORLD : World statistics: +12:04:40.417 WORLD : Leafs 4261 +12:04:40.417 WORLD : Leafs with entities 3367 +12:04:40.418 WORLD : Avg ents/leaf 93 +12:04:40.418 WORLD : Leafs with items 1311 +12:04:40.418 WORLD : Leaf items 7213 (ss 2388 occ 1321 li 3504) +12:04:40.418 WORLD : Max items/Leaf 38 +12:04:40.418 WORLD : Avg items/leaf 5 +12:04:40.418 WORLD : Total entities 314700 +12:04:40.418 WORLD : Static entities 286425 +12:04:40.418 WORLD : Dynamic entities 27909 +12:04:40.419 WORLD : Features entities 212 +12:04:40.419 WORLD : NoLink entities 154 +12:04:40.419 WORLD : Max ents/leaf 2204 +12:04:40.419 WORLD : Max static ents/leaf 2201 +12:04:40.419 WORLD : Max dynamic ents/leaf 139 +12:04:40.419 PROFILING : CreateEntities took: 10599.458300 ms +12:04:40.566 PROFILING : * WorldEditor: LoadWorld: 10969.913300 ms +12:04:40.824 AUDIO : Endpoint: Speakers (PulseAudio Output) +12:04:40.824 AUDIO : Format: Channels: 2, Sample rate: 48kHz, Avg. bytes: 384kB, Sample bits: 32, Block align: 8B +12:04:40.825 AUDIO : Audio client: +12:04:40.825 AUDIO : Format: Channels: 2, Sample rate: 48kHz, Buffer size: 1536B, Frame: 512 +12:04:41.280 TERRAIN : Loading tile map config (worlds/Eden/Eden/tileMap.conf) +12:04:41.280 TERRAIN : Loading minimap config (worlds/Eden/Eden/miniMap.conf) +12:04:41.281 TERRAIN : The default minimap texture ('worlds/Eden/EdenRasterized.edds') not found. Trying 'worlds/Eden/Eden.edds'... +12:04:41.282 TERRAIN : The default minimap texture ('worlds/Eden/Eden.edds') not found. Skipping... +12:04:41.367 SCRIPT : ERR VALIDATION: prison terrain=211.344, radio terrain=159.656, extraction terrain=65.1562 +12:04:41.367 SCRIPT : ERR TERRAIN: x=6084 z=7154 y=211.531 +12:04:41.368 SCRIPT : ERR TERRAIN: x=6084 z=7157 y=211.516 +12:04:41.368 SCRIPT : ERR TERRAIN: x=6084 z=7160 y=211.5 +12:04:41.368 SCRIPT : ERR TERRAIN: x=6084 z=7163 y=211.453 +12:04:41.368 SCRIPT : ERR TERRAIN: x=6084 z=7166 y=211.406 +12:04:41.368 SCRIPT : ERR TERRAIN: x=6087 z=7154 y=211.438 +12:04:41.368 SCRIPT : ERR TERRAIN: x=6087 z=7157 y=211.438 +12:04:41.368 SCRIPT : ERR TERRAIN: x=6087 z=7160 y=211.422 +12:04:41.368 SCRIPT : ERR TERRAIN: x=6087 z=7163 y=211.391 +12:04:41.369 SCRIPT : ERR TERRAIN: x=6087 z=7166 y=211.344 +12:04:41.369 SCRIPT : ERR TERRAIN: x=6090 z=7154 y=211.344 +12:04:41.369 SCRIPT : ERR TERRAIN: x=6090 z=7157 y=211.344 +12:04:41.369 SCRIPT : ERR TERRAIN: x=6090 z=7160 y=211.344 +12:04:41.369 SCRIPT : ERR TERRAIN: x=6090 z=7163 y=211.328 +12:04:41.369 SCRIPT : ERR TERRAIN: x=6090 z=7166 y=211.281 +12:04:41.369 SCRIPT : ERR TERRAIN: x=6093 z=7154 y=211.25 +12:04:41.369 SCRIPT : ERR TERRAIN: x=6093 z=7157 y=211.281 +12:04:41.369 SCRIPT : ERR TERRAIN: x=6093 z=7160 y=211.25 +12:04:41.370 SCRIPT : ERR TERRAIN: x=6093 z=7163 y=211.234 +12:04:41.370 SCRIPT : ERR TERRAIN: x=6093 z=7166 y=211.188 +12:04:41.370 SCRIPT : ERR TERRAIN: x=6096 z=7154 y=211.156 +12:04:41.370 SCRIPT : ERR TERRAIN: x=6096 z=7157 y=211.172 +12:04:41.370 SCRIPT : ERR TERRAIN: x=6096 z=7160 y=211.156 +12:04:41.370 SCRIPT : ERR TERRAIN: x=6096 z=7163 y=211.141 +12:04:41.370 SCRIPT : ERR TERRAIN: x=6096 z=7166 y=211.094 +12:04:41.391 SCRIPT : ERR SITE CANDIDATE: position=<6090,211.344,7160> elevationRange=0.640625 +12:04:43.901 INIT : INIT : Workbench Reload Game +12:04:43.903 ENGINE : Game destroyed. +12:04:43.909 GUI : Using default language (en_us) +12:04:43.909 GUI : Loading 'en_us' localization file. +12:04:43.909 INIT : INIT : Loading StringTable +12:04:43.930 PROFILING : Loading StringTable took: 20.876600 ms +12:04:43.930 INIT : Creating game instance(ArmaReforgerScripted), version 1.9.0.37 built 2026-10-27 15:39:59 UTC. +12:04:43.942 SCRIPT : Unable to register a script command due keyword duplicity: ban +12:04:43.942 SCRIPT : Unable to register a script command due keyword duplicity: kick +12:04:43.942 ENGINE : Game successfully created. +12:04:43.942 ENGINE : Game successfully initialized. +12:04:43.943 PROFILING : Workbench Reload Game took: 41.472400 ms +12:04:43.945 DEFAULT (W): LogiLED: Cannot initialize! (service not running or no compatible device detected) +12:04:44.001 PLATFORM : Save data from container 'settings' have been loaded +12:04:44.096 PLATFORM : Save data from container 'sessions' have been loaded +12:04:44.194 DEFAULT : [SaveGameManager] Starting new playthrough nr.0 '' for mission '{B6C516F86302C679}Worlds/ERR_Everon.ent'. +12:04:44.200 WORLD : WORLD : Game::LoadEntities +12:04:44.200 WORLD : WORLD : Initializing world systems @"{6A58ADD30913F600}Configs/Systems/RallySystems.conf" +12:04:44.201 NETWORK : Enabled lag compensation, 29 frames with 100 FPS and 280 ms rewind limits. +12:04:44.201 WORLD : Game::LoadEntities +12:04:44.201 WORLD : Initializing world systems @"{6A58ADD30913F600}Configs/Systems/RallySystems.conf" +12:04:44.201 WORLD (W): Requesting creation of abstract system SCR_RaceSystem, but abstract systems cannot be created. +12:04:44.202 WORLD : WORLD : CreateEntities +12:04:44.202 WORLD : WORLD : CreateEntities +12:04:44.202 WORLD : WORLD : NotifyBeforeEntitiesCreated +12:04:44.208 RESOURCES : Loaded mission headers from 11 addon(s)! +12:04:44.208 PROFILING : NotifyBeforeEntitiesCreated took: 6.186500 ms +12:04:44.208 WORLD : WORLD : Wait for preloading data +12:04:44.208 PROFILING : Wait for preloading data took: 0.000300 ms +12:04:46.273 WORLD : CreateEntities +12:04:46.273 WORLD : CreateEntities +12:04:46.273 ENTITY : Create entity @"ENTITY:135137" ('StaticModelEntity','Assets/Structures/Infrastructure/Towers/TransmitterTower_01/TransmitterTower_01_small.xob') at <1931.796021 81.777000 5138.725098> @"{6A004A8F0571D456}Prefabs/Structures/Infrastructure/Towers/TransmitterTower_01/TransmitterTower_01_small.et" +12:04:46.273 ENTITY : CreateComponent 'ScriptedRadioComponent' +12:04:46.273 DEFAULT (W): World doesn't contain RadioManagerEntity to support any BaseRadioComponent. +12:04:47.080 ENTITY : Create entity @"ENTITY:191608" ('GameEntity','Assets/Structures/BuildingsParts/Lights/LampTower_01.xob') at <1080.213013 10.776751 6018.347168> +12:04:47.080 ENTITY : CreateComponent 'Hierarchy' +12:04:47.080 ENTITY (W): Invalid PivotID 'socket_light_04' in Hierarchy component ('@"ENTITY:191608" ('GameEntity','Assets/Structures/BuildingsParts/Lights/LampTower_01.xob') at <1080.213013 10.776751 6018.347168>') +12:04:47.080 ENTITY : Create entity @"ENTITY:191610" ('GameEntity','Assets/Structures/BuildingsParts/Lights/LampTower_01.xob') at <1082.185913 10.778749 6018.331055> +12:04:47.080 ENTITY : CreateComponent 'Hierarchy' +12:04:47.080 ENTITY (W): Invalid PivotID 'socket_light_04' in Hierarchy component ('@"ENTITY:191610" ('GameEntity','Assets/Structures/BuildingsParts/Lights/LampTower_01.xob') at <1082.185913 10.778749 6018.331055>') +12:04:47.080 ENTITY : Create entity @"ENTITY:191612" ('GameEntity','Assets/Structures/BuildingsParts/Lights/LampTower_01.xob') at <1084.190918 10.790751 6018.334961> +12:04:47.080 ENTITY : CreateComponent 'Hierarchy' +12:04:47.080 ENTITY (W): Invalid PivotID 'socket_light_04' in Hierarchy component ('@"ENTITY:191612" ('GameEntity','Assets/Structures/BuildingsParts/Lights/LampTower_01.xob') at <1084.190918 10.790751 6018.334961>') +12:04:47.086 ENTITY : Create entity @"ENTITY:191875" ('GameEntity','Assets/Structures/BuildingsParts/Lights/LampTower_01.xob') at <4425.594727 9.981750 11029.402344> +12:04:47.086 ENTITY : CreateComponent 'Hierarchy' +12:04:47.086 ENTITY (W): Invalid PivotID 'socket_light_04' in Hierarchy component ('@"ENTITY:191875" ('GameEntity','Assets/Structures/BuildingsParts/Lights/LampTower_01.xob') at <4425.594727 9.981750 11029.402344>') +12:04:47.086 ENTITY : Create entity @"ENTITY:191877" ('GameEntity','Assets/Structures/BuildingsParts/Lights/LampTower_01.xob') at <4426.584473 9.983749 11031.109375> +12:04:47.086 ENTITY : CreateComponent 'Hierarchy' +12:04:47.086 ENTITY (W): Invalid PivotID 'socket_light_04' in Hierarchy component ('@"ENTITY:191877" ('GameEntity','Assets/Structures/BuildingsParts/Lights/LampTower_01.xob') at <4426.584473 9.983749 11031.109375>') +12:04:47.086 ENTITY : Create entity @"ENTITY:191879" ('GameEntity','Assets/Structures/BuildingsParts/Lights/LampTower_01.xob') at <4427.572266 9.995750 11032.853516> +12:04:47.086 ENTITY : CreateComponent 'Hierarchy' +12:04:47.086 ENTITY (W): Invalid PivotID 'socket_light_04' in Hierarchy component ('@"ENTITY:191879" ('GameEntity','Assets/Structures/BuildingsParts/Lights/LampTower_01.xob') at <4427.572266 9.995750 11032.853516>') +12:04:47.090 ENTITY : Create entity @"ENTITY:192133" ('GameEntity','Assets/Structures/BuildingsParts/Lights/LampTower_01.xob') at <10009.946289 10.470250 1551.986084> +12:04:47.090 ENTITY : CreateComponent 'Hierarchy' +12:04:47.090 ENTITY (W): Invalid PivotID 'socket_light_04' in Hierarchy component ('@"ENTITY:192133" ('GameEntity','Assets/Structures/BuildingsParts/Lights/LampTower_01.xob') at <10009.946289 10.470250 1551.986084>') +12:04:47.090 ENTITY : Create entity @"ENTITY:192135" ('GameEntity','Assets/Structures/BuildingsParts/Lights/LampTower_01.xob') at <10009.430664 10.472250 1550.081421> +12:04:47.090 ENTITY : CreateComponent 'Hierarchy' +12:04:47.090 ENTITY (W): Invalid PivotID 'socket_light_04' in Hierarchy component ('@"ENTITY:192135" ('GameEntity','Assets/Structures/BuildingsParts/Lights/LampTower_01.xob') at <10009.430664 10.472250 1550.081421>') +12:04:47.090 ENTITY : Create entity @"ENTITY:192137" ('GameEntity','Assets/Structures/BuildingsParts/Lights/LampTower_01.xob') at <10008.926758 10.484250 1548.140869> +12:04:47.090 ENTITY : CreateComponent 'Hierarchy' +12:04:47.090 ENTITY (W): Invalid PivotID 'socket_light_04' in Hierarchy component ('@"ENTITY:192137" ('GameEntity','Assets/Structures/BuildingsParts/Lights/LampTower_01.xob') at <10008.926758 10.484250 1548.140869>') +12:04:49.020 WORLD : WORLD : Wait for preloading data +12:04:49.024 PROFILING : Wait for preloading data took: 3.606400 ms +12:04:50.245 ENTITY : Create entity @"ENTITY:2305843009213693956" ('Factions', SCR_FactionManager) at <0.000000 0.000000 0.000000> @"{5414041A15DC4B54}Prefabs/ERR/FactionManager.et" +12:04:50.245 RESOURCES : GetResourceObject @"{CC22252205B0DEEE}Prefabs/Vehicles/Wheeled/S105/S105_rally_WCS_M134_M261.et" +12:04:50.245 WORLD : Entity prefab load @"{CC22252205B0DEEE}Prefabs/Vehicles/Wheeled/S105/S105_rally_WCS_M134_M261.et" +12:04:50.245 RESOURCES : GetResourceObject @"{59769013F69B1DE9}Prefabs/Vehicles/Wheeled/S105/S105_rally_WCS.et" +12:04:50.245 WORLD : Entity prefab load @"{59769013F69B1DE9}Prefabs/Vehicles/Wheeled/S105/S105_rally_WCS.et" +12:04:50.245 RESOURCES : GetResourceObject @"{5555DCAFADB8CE2A}Prefabs/Vehicles/Wheeled/S105/S105_rally.et" +12:04:50.245 WORLD : Entity prefab load @"{5555DCAFADB8CE2A}Prefabs/Vehicles/Wheeled/S105/S105_rally.et" +12:04:50.245 WORLD (E): Unknown keyword/data 'Pacejka' at offset 939(0x3ab) +12:04:50.245 WORLD (E): Unknown keyword/data 'ClutchUncoupleRpm' at offset 1320(0x528) +12:04:50.245 WORLD (E): Unknown keyword/data 'ClutchCoupleRpm' at offset 1346(0x542) +12:04:50.245 WORLD (E): Unknown keyword/data 'Pacejka' at offset 1251(0x4e3) +12:04:50.245 WORLD (E): Unknown keyword/data 'ClutchUncoupleRpm' at offset 1670(0x686) +12:04:50.245 WORLD (E): Unknown keyword/data 'ClutchCoupleRpm' at offset 1697(0x6a1) +12:04:50.267 RESOURCES : GetResourceObject @"{828E8711567C3242}Prefabs/Vehicles/Tracked/BMP1/BMP1P_FIA_Desert.et" +12:04:50.267 WORLD : Entity prefab load @"{828E8711567C3242}Prefabs/Vehicles/Tracked/BMP1/BMP1P_FIA_Desert.et" +12:04:50.267 RESOURCES : GetResourceObject @"{BF0050432603DD9E}Prefabs/Vehicles/Tracked/BMP1/BMP1P_FIA.et" +12:04:50.267 WORLD : Entity prefab load @"{BF0050432603DD9E}Prefabs/Vehicles/Tracked/BMP1/BMP1P_FIA.et" +12:04:50.267 RESOURCES : GetResourceObject @"{3868E03D9A4AF186}Prefabs/Vehicles/Tracked/BMP1/BMP1P_Base.et" +12:04:50.267 WORLD : Entity prefab load @"{3868E03D9A4AF186}Prefabs/Vehicles/Tracked/BMP1/BMP1P_Base.et" +12:04:50.267 RESOURCES : GetResourceObject @"{1DC01AAACFFA8B63}Prefabs/Vehicles/Tracked/BMP1/BMP1_Base.et" +12:04:50.267 WORLD : Entity prefab load @"{1DC01AAACFFA8B63}Prefabs/Vehicles/Tracked/BMP1/BMP1_Base.et" +12:04:50.267 WORLD (E): Unknown keyword/data 'm_aWheels' at offset 31979(0x7ceb) +12:04:50.267 WORLD (E): Unknown keyword/data 'Pacejka' at offset 45708(0xb28c) +12:04:50.267 WORLD (E): Unknown keyword/data 'ClutchFeedbackRpm' at offset 47045(0xb7c5) +12:04:50.267 WORLD (E): Unknown keyword/data 'ClutchUncoupleRpm' at offset 47074(0xb7e2) +12:04:50.267 WORLD (E): Unknown keyword/data 'ClutchCoupleRpm' at offset 47100(0xb7fc) +12:04:50.460 RESOURCES : GetResourceObject @"{1DF4C30C130D8FAD}Prefabs/Vehicles/Wheeled/K4386/K4386_Armed_Camo.et" +12:04:50.460 WORLD : Entity prefab load @"{1DF4C30C130D8FAD}Prefabs/Vehicles/Wheeled/K4386/K4386_Armed_Camo.et" +12:04:50.460 RESOURCES : GetResourceObject @"{AB5DE68E3E654FCA}Prefabs/Vehicles/Wheeled/K4386/K4386_Armed.et" +12:04:50.460 WORLD : Entity prefab load @"{AB5DE68E3E654FCA}Prefabs/Vehicles/Wheeled/K4386/K4386_Armed.et" +12:04:50.460 RESOURCES : GetResourceObject @"{863A65C2E3330F2F}Prefabs/Vehicles/Wheeled/K4386/K4386_Base.et" +12:04:50.460 WORLD : Entity prefab load @"{863A65C2E3330F2F}Prefabs/Vehicles/Wheeled/K4386/K4386_Base.et" +12:04:50.460 WORLD (E): Unknown keyword/data 'Pacejka' at offset 30372(0x76a4) +12:04:50.460 WORLD (E): Unknown keyword/data 'ClutchFeedbackRpm' at offset 31503(0x7b0f) +12:04:50.460 WORLD (E): Unknown keyword/data 'ClutchUncoupleRpm' at offset 31531(0x7b2b) +12:04:50.460 WORLD (E): Unknown keyword/data 'ClutchCoupleRpm' at offset 31557(0x7b45) +12:04:50.461 RESOURCES : GetResourceObject @"{DD20465C217BB8BF}Prefabs/Vehicles/Wheeled/K17/APC_K17_unarmed_camoExpo.et" +12:04:50.462 WORLD : Entity prefab load @"{DD20465C217BB8BF}Prefabs/Vehicles/Wheeled/K17/APC_K17_unarmed_camoExpo.et" +12:04:50.462 RESOURCES : GetResourceObject @"{3B899AC9449C35F0}Prefabs/Vehicles/Wheeled/K17/APC_K17_unarmed.et" +12:04:50.462 WORLD : Entity prefab load @"{3B899AC9449C35F0}Prefabs/Vehicles/Wheeled/K17/APC_K17_unarmed.et" +12:04:50.462 RESOURCES : GetResourceObject @"{8C271634056DAD5A}Prefabs/Vehicles/Wheeled/K17/APC_K17_base.et" +12:04:50.462 WORLD : Entity prefab load @"{8C271634056DAD5A}Prefabs/Vehicles/Wheeled/K17/APC_K17_base.et" +12:04:50.462 WORLD (E): Unknown keyword/data 'Pacejka' at offset 43124(0xa874) +12:04:50.462 WORLD (E): Unknown keyword/data 'ClutchFeedbackRpm' at offset 44146(0xac72) +12:04:50.462 WORLD (E): Unknown keyword/data 'ClutchUncoupleRpm' at offset 44174(0xac8e) +12:04:50.462 WORLD (E): Unknown keyword/data 'ClutchCoupleRpm' at offset 44200(0xaca8) +12:04:50.698 WORLD : WORLD : NotifyBeforeEntitiesInitialized +12:04:50.698 PROFILING : NotifyBeforeEntitiesInitialized took: 0.041400 ms +12:04:53.997 WORLD : InitEntities 'world' +12:04:53.997 ENTITY : Init entity @"ENTITY:2305843009213693953" ('Reintroduced', ERR_GameMode) at <60.452000 1.000000 213.136002> @"{978E045E53EF36C8}Prefabs/ERR/GameMode.et" +12:04:53.997 SCRIPT : Reintroduced [loading]: respawn animation and preparation display attached to Escape +12:04:54.023 WORLD : WORLD : NotifyEntitiesInitialized +12:04:54.023 TERRAIN : TERRAIN : Initializing road networks... +12:04:54.028 PROFILING : Initializing road networks... took: 4.518500 ms +12:04:54.028 DEFAULT : DEFAULT : WorldVolumesCollection +12:04:54.040 PROFILING : WorldVolumesCollection took: 12.377700 ms +12:04:54.040 INIT : INIT : SoundWorldInit +12:04:54.053 PROFILING : SoundWorldInit took: 12.323800 ms +12:04:54.053 PROFILING : NotifyEntitiesInitialized took: 29.457900 ms +12:04:54.054 WORLD : World statistics: +12:04:54.054 WORLD : Leafs 4261 +12:04:54.054 WORLD : Leafs with entities 3204 +12:04:54.054 WORLD : Avg ents/leaf 94 +12:04:54.054 WORLD : Leafs with items 1311 +12:04:54.054 WORLD : Leaf items 7252 (ss 2388 occ 1321 li 3543) +12:04:54.054 WORLD : Max items/Leaf 38 +12:04:54.054 WORLD : Avg items/leaf 5 +12:04:54.054 WORLD : Total entities 307610 +12:04:54.054 WORLD : Static entities 282259 +12:04:54.054 WORLD : Dynamic entities 19898 +12:04:54.054 WORLD : Features entities 5 +12:04:54.054 WORLD : NoLink entities 5448 +12:04:54.054 WORLD : Max ents/leaf 1317 +12:04:54.054 WORLD : Max static ents/leaf 1223 +12:04:54.054 WORLD : Max dynamic ents/leaf 118 +12:04:54.054 PROFILING : CreateEntities took: 9852.296500 ms +12:04:54.054 PROFILING : CreateEntities took: 9852.476100 ms +12:04:54.062 WORLD : WORLD : Wait for preloading data around camera +12:04:54.062 PROFILING : Wait for preloading data around camera took: 0.000700 ms +12:04:54.062 WORLD : WORLD : EOnActivate +12:04:54.069 PROFILING : EOnActivate took: 7.114600 ms +12:04:54.070 PROFILING : Game::LoadEntities took: 9869.388700 ms +12:04:54.370 DEFAULT : Entered offline game state. +12:04:58.242 SCRIPT : Map load time: 2249ms +12:04:58.244 NETWORK : Player connected: connectionID=2147483646 +12:04:58.244 NETWORK : ### Connecting player: connectionID=2147483646, Name= +12:04:58.244 NETWORK : ### Creating player: PlayerId=1, Name=jakub +12:04:58.247 RESOURCES : GetResourceObject @"{225E51284CC95CFA}Prefabs/Characters/Core/DefaultPlayerControllerMP.et" +12:04:58.247 WORLD : Entity prefab load @"{225E51284CC95CFA}Prefabs/Characters/Core/DefaultPlayerControllerMP.et" +12:04:58.248 RESOURCES : GetResourceObject @"{6E2BB64764E3BE9B}Prefabs/Characters/Core/DefaultPlayerController.et" +12:04:58.248 WORLD : Entity prefab load @"{6E2BB64764E3BE9B}Prefabs/Characters/Core/DefaultPlayerController.et" +12:04:58.248 WORLD (E): Unknown keyword/data 'm_HardLandingVelocity' at offset 133(0x85) +12:04:58.248 WORLD (E): Unknown keyword/data 'm_DeathLandingVelocity' at offset 163(0xa3) +12:04:58.252 ENTITY : SpawnEntityPrefab @"{225E51284CC95CFA}Prefabs/Characters/Core/DefaultPlayerControllerMP.et" +12:04:58.252 ENTITY : Create entity @"ENTITY:4611686018427388637" ('SCR_PlayerController') at <0.000000 0.000000 0.000000> +12:04:58.252 ENTITY : EntityPrefabUse @"{225E51284CC95CFA}Prefabs/Characters/Core/DefaultPlayerControllerMP.et" +12:04:58.252 SCRIPT (W): Notification data in 'SCR_NotificationsLogDisplay' has duplicate notification info key: 'EDITOR_PERCEIVED_FACTION_PUNISHMENT_KILLING_SET'. There should only be one of each key! +12:04:58.252 SCRIPT (W): Notification data in 'SCR_NotificationsLogDisplay' has duplicate notification info key: 'EDITOR_PERCEIVED_FACTION_TYPE_DISABLED'. There should only be one of each key! +12:04:58.254 SCRIPT (W): Can't open config file "" +12:04:58.259 WORLD : InitEntities 'world' +12:04:58.260 ENTITY : Init entity @"ENTITY:4611686018427388637" ('SCR_PlayerController') at <0.000000 0.000000 0.000000> @"{225E51284CC95CFA}Prefabs/Characters/Core/DefaultPlayerControllerMP.et" +12:04:58.260 GUI : WidgetManager: CrateWidgets @"{3C9DCDD76AB83157}UI/layouts/HUD/HUDLayouts/HUDManager_Root.layout" +12:04:58.260 SCRIPT (W): Slot_WeaponInfo Has no Content! +12:04:58.260 SCRIPT (W): Slot_Chat Has no Content! +12:04:58.260 SCRIPT (W): Slot_VON Has no Content! +12:04:58.260 SCRIPT (W): Slot_AvailableActions Has no Content! +12:04:58.260 SCRIPT (W): Slot_Vehicle Has no Content! +12:04:58.261 SCRIPT (W): Slot_GameVersion Has no Content! +12:04:58.261 SCRIPT (W): Slot_Notifications Has no Content! +12:04:58.261 SCRIPT (W): Slot_Hints Has no Content! +12:04:58.273 ENTITY : SpawnEntityPrefab @"{59EF8ECAE1DCD417}Prefabs/Editor/Modes/EditorModeEdit.et" +12:04:58.273 ENTITY : Create entity @"ENTITY:4611686018427388640" ('SCR_EditorModeEntity') at <0.000000 0.000000 0.000000> +12:04:58.273 ENTITY : EntityPrefabUse @"{59EF8ECAE1DCD417}Prefabs/Editor/Modes/EditorModeEdit.et" +12:04:58.274 SCRIPT (W): SCR_EntityCatalogManagerComponent.GetFilteredEditorPrefabsOfAllFactions: Detected that {259EE7B78C51B624}UAZ469.et is present in at least two different faction entity catalogs! Since this may cause issues, such as dupliacted entries in build mode, one of them will be discarded! This is only supported for items. Other things require creation of faction specific variants. +12:04:58.274 SCRIPT (W): SCR_EntityCatalogManagerComponent.GetFilteredEditorPrefabsOfAllFactions: Detected that {DF5CCB7C0FF049F4}Mi8MT_unarmed_transport.et is present in at least two different faction entity catalogs! Since this may cause issues, such as dupliacted entries in build mode, one of them will be discarded! This is only supported for items. Other things require creation of faction specific variants. +12:04:58.275 SCRIPT (W): SCR_EntityCatalogManagerComponent.GetFilteredEditorPrefabsOfAllFactions: Detected that {DF5CCB7C0FF049F4}Mi8MT_unarmed_transport.et is present in at least two different faction entity catalogs! Since this may cause issues, such as dupliacted entries in build mode, one of them will be discarded! This is only supported for items. Other things require creation of faction specific variants. +12:04:58.278 NETWORK : ### Updating player: PlayerId=1, Name=jakub, rplIdentity=0xFFFFFFFE, IdentityId=00000000-0000-0000-0000-000000000000 +12:04:58.278 SCRIPT (W): Ban Settings could not be loaded from BE Storage: Relying on default config +12:04:58.279 NETWORK : Players connecting: 0 +12:04:58.279 NETWORK : Players connected: 1 / 1 +12:04:58.304 DEFAULT : Using autosave directory: C:/users/steamuser/AppData/Local/Temp/Arma Reforger Workbench/Projects/ERR_Core/autosaves +12:04:58.305 PROFILING : Workbench startup took: 38230.777100 ms +12:04:58.395 WORLD : Frame start +12:04:58.395 SCRIPT : ScenarioFramework: Available tasks are empty, no new tasks will be generated. +12:04:58.406 WORLD : UpdateEntities +12:04:58.406 WORLD : Frame +12:04:58.406 SCRIPT : SCR_BaseGameMode::OnGameStateChanged = GAME +12:04:58.544 WORLD : UpdateEntities +12:04:58.544 WORLD : PostFrame +12:04:58.544 GUI : WidgetManager: CrateWidgets @"{D89BBA18F99053D6}UI/layouts/HUD/Chat/ChatHud.layout" +12:04:58.544 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:04:58.613 RESOURCES : GetResourceObject @"{20A6917D2114E29A}UI/layouts/HUD/Hint/HintInfoDisplay.layout" +12:04:58.613 GUI : Layout load @"{20A6917D2114E29A}UI/layouts/HUD/Hint/HintInfoDisplay.layout" +12:04:58.613 GUI : Widget prefab @"{EA1CC57D868E94F9}UI/layouts/HUD/Hint/Hint.layout" +12:04:58.614 GUI (W): Overridden prefab member (GUID: '{661AB14E0F471C66}' type: ButtonWidgetClass) no longer exists in prefab +12:04:58.756 RENDER : RENDER : ObjectsHeightMap::Build +12:04:58.756 RENDER : RENDER : MeshOccupancyGridManager::GenerateAllForWorld +12:04:58.798 PROFILING : MeshOccupancyGridManager::GenerateAllForWorld took: 41.050200 ms +12:04:58.806 PROFILING : ObjectsHeightMap::Build took: 49.482400 ms +12:05:00.548 ENTITY : SpawnEntityPrefab @"{939AC713213C2BA1}Prefabs/Vehicles/Wheeled/Z7211/Z7211_red_CIV.et" +12:05:00.548 WORLD : InitEntities 'world' +12:05:00.548 ENTITY : Init entity @"ENTITY:4611686018427388643" ('Vehicle','Assets/Vehicles/Wheeled/Z7211/Z7211_base.xob') at <4788.000000 28.593750 11528.000000> @"{939AC713213C2BA1}Prefabs/Vehicles/Wheeled/Z7211/Z7211_red_CIV.et" +12:05:00.549 SCRIPT (W): AUDIO: SCR_HitZoneStateSignal: No HitZone found +12:05:00.549 SCRIPT (W): AUDIO: SCR_HitZoneStateSignal: No HitZone found +12:05:02.474 SCRIPT : ERR REVIEW TRACTOR: prefab={939AC713213C2BA1}Prefabs/Vehicles/Wheeled/Z7211/Z7211_red_CIV.et low=<-1.10021,0.263591,-2.60995> high=<1.10381,2.69422,1.49574> driver=1 +12:05:02.477 RESOURCES (E): Wrong GUID for resource @"{0000000000000000}Prefabs/Structures/Agriculture/Barn/Barn_E_01/Barn_E_01.et" in property "prefab" +12:05:02.548 SCRIPT : ERR REVIEW BARN: exists=1 low=<-7.56165,-3.95,-5.43061> high=<7.55593,12.0565,5.33792> alive=1 sites=1 +12:05:02.555 SCRIPT : ERR REVIEW CATALOG: moving=19 tractors=0 +12:05:02.659 SCRIPT : ERR REVIEW AI: partial=1 dormancy=1 limit=128 active=0 +12:05:02.724 SCRIPT : ERR REVIEW FARM VETO: side=0 pos=<4776.44,28.6175,11528> ground=1 clear=1 hidden=1 distance=111.562 +12:05:02.724 SCRIPT : ERR REVIEW FARM VETO: side=1 pos=<4799.56,28.1314,11528> ground=1 clear=1 hidden=0 distance=88.4439 +12:05:02.724 SCRIPT : ERR REVIEW FARM VETO: side=2 pos=<4788,28.5238,11518.6> ground=1 clear=1 hidden=0 distance=100.447 +12:05:02.725 SCRIPT : ERR REVIEW FARM VETO: side=3 pos=<4788,28.555,11537.3> ground=1 clear=1 hidden=0 distance=100.438 +12:05:02.978 RESOURCES (E): Wrong GUID for resource @"{0000000000000000}UI/layouts/ERR/AdminMenu.layout" in property "(null)" +12:05:02.984 GUI : WidgetManager: CrateWidgets @"{AE761C0439D25FB8}UI/layouts/ERR/AdminMenu.layout" +12:05:02.984 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.984 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.985 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.985 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.986 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.986 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.986 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.987 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.987 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.987 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.988 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.988 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.989 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.989 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.990 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.990 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.991 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.991 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.992 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.992 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.992 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.993 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.994 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.994 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.994 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.995 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.995 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.996 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.996 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.996 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.997 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.997 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.997 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.998 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.998 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.999 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.999 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:02.999 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.000 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.000 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.000 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.001 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.001 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.002 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.003 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.003 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.003 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.004 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.005 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.481 SCRIPT : ERR REVIEW UI: dpi=0.75 panel=155.188,53.125 190.625x118.75 root=501x225 fits=1 +12:05:03.485 RESOURCES (E): Wrong GUID for resource @"{0000000000000000}UI/layouts/ERR/AdminMenu.layout" in property "(null)" +12:05:03.486 GUI : WidgetManager: CrateWidgets @"{AE761C0439D25FB8}UI/layouts/ERR/AdminMenu.layout" +12:05:03.486 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.486 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.487 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.487 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.487 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.487 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.488 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.488 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.488 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.489 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.489 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.489 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.489 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.490 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.490 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.491 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.491 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.491 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.492 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.492 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.492 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.492 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.493 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.493 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.493 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.494 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.494 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.494 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.495 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.495 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.495 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.495 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.496 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.496 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.496 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.497 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.497 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.498 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.498 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.498 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.499 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.499 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.499 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.500 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.501 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.501 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.502 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.502 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.503 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.980 SCRIPT : ERR REVIEW UI: dpi=1 panel=123.417,33.3333 254.167x158.333 root=501x225 fits=1 +12:05:03.984 RESOURCES (E): Wrong GUID for resource @"{0000000000000000}UI/layouts/ERR/AdminMenu.layout" in property "(null)" +12:05:03.985 GUI : WidgetManager: CrateWidgets @"{AE761C0439D25FB8}UI/layouts/ERR/AdminMenu.layout" +12:05:03.985 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.986 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.986 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.986 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.987 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.987 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.987 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.987 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.988 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.988 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.988 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.989 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.989 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.989 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.990 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.990 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.990 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.991 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.991 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.991 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.992 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.992 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.992 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.993 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.993 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.993 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.993 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.994 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.994 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.994 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.995 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.995 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.995 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.995 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.996 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.996 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.996 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.997 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.997 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.997 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.997 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.998 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.998 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.998 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:03.999 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.000 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.000 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.001 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.001 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.476 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:05:04.476 SCRIPT : ERR REVIEW TRAFFIC: prefab={AD80FB47D868C775}Prefabs/Vehicles/Wheeled/S105/S105_green.et ready=1 travelled=0.00569952 seated=1 +12:05:04.476 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:05:04.476 SCRIPT : ERR REVIEW TRAFFIC: prefab={1689340AD95AE7F4}Prefabs/Vehicles/Wheeled/V2101/V2101_red.et ready=1 travelled=0.0133654 seated=1 +12:05:04.483 SCRIPT : ERR REVIEW UI: dpi=1.25 panel=91.6458,13.5417 317.708x197.917 root=501x225 fits=1 +12:05:04.487 RESOURCES (E): Wrong GUID for resource @"{0000000000000000}UI/layouts/ERR/AdminMenu.layout" in property "(null)" +12:05:04.488 GUI : WidgetManager: CrateWidgets @"{AE761C0439D25FB8}UI/layouts/ERR/AdminMenu.layout" +12:05:04.488 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.489 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.489 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.489 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.489 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.490 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.490 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.490 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.491 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.491 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.491 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.491 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.492 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.492 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.493 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.493 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.493 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.494 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.494 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.494 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.495 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.495 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.495 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.496 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.496 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.496 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.497 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.497 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.497 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.497 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.498 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.498 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.498 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.499 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.499 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.499 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.500 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.500 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.500 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.501 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.501 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.501 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.502 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.502 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.503 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.504 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.504 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.505 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.506 SCRIPT (W): EditBoxFilterComponent used on invalid widget type. +12:05:04.985 SCRIPT : ERR REVIEW UI: dpi=1.5 panel=77.1316,4.50001 346.737x216 root=501x225 fits=1 +12:05:06.478 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=1 throttle=0 rpm=0 handbrake=0 gear=1 auto=0 +12:05:06.478 SCRIPT : ERR REVIEW TRAFFIC: prefab={AD80FB47D868C775}Prefabs/Vehicles/Wheeled/S105/S105_green.et ready=1 travelled=0.00704209 seated=1 +12:05:06.478 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=0 brake=1 throttle=0 rpm=0 handbrake=0 gear=1 auto=0 +12:05:06.478 SCRIPT : ERR REVIEW TRAFFIC: prefab={1689340AD95AE7F4}Prefabs/Vehicles/Wheeled/V2101/V2101_red.et ready=1 travelled=0.0133654 seated=1 +12:05:08.478 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=1 brake=0 throttle=1 rpm=3246.92 handbrake=0 gear=0 auto=0 +12:05:08.478 SCRIPT : ERR REVIEW TRAFFIC: prefab={AD80FB47D868C775}Prefabs/Vehicles/Wheeled/S105/S105_green.et ready=1 travelled=0.00163775 seated=1 +12:05:08.478 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=1 rpm=3954.5 handbrake=0 gear=0 auto=0 +12:05:08.478 SCRIPT : ERR REVIEW TRAFFIC: prefab={1689340AD95AE7F4}Prefabs/Vehicles/Wheeled/V2101/V2101_red.et ready=1 travelled=0.00907271 seated=1 +12:05:10.480 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=1 brake=0 throttle=0.33464 rpm=2310.32 handbrake=0 gear=0 auto=0 +12:05:10.481 SCRIPT : ERR REVIEW TRAFFIC: prefab={AD80FB47D868C775}Prefabs/Vehicles/Wheeled/S105/S105_green.et ready=1 travelled=4.84767 seated=1 +12:05:10.481 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=1 rpm=800 handbrake=0 gear=2 auto=0 +12:05:10.481 SCRIPT : ERR REVIEW TRAFFIC: prefab={1689340AD95AE7F4}Prefabs/Vehicles/Wheeled/V2101/V2101_red.et ready=1 travelled=4.69306 seated=1 +12:05:12.483 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=1 brake=1 throttle=0 rpm=885.045 handbrake=0 gear=0 auto=0 +12:05:12.483 SCRIPT : ERR REVIEW TRAFFIC: prefab={AD80FB47D868C775}Prefabs/Vehicles/Wheeled/S105/S105_green.et ready=1 travelled=8.86798 seated=1 +12:05:12.483 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=1 throttle=0 rpm=1202.04 handbrake=0 gear=2 auto=0 +12:05:12.484 SCRIPT : ERR REVIEW TRAFFIC: prefab={1689340AD95AE7F4}Prefabs/Vehicles/Wheeled/V2101/V2101_red.et ready=1 travelled=6.00958 seated=1 +12:05:14.486 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=1 brake=0 throttle=1 rpm=5529.07 handbrake=0 gear=2 auto=0 +12:05:14.487 SCRIPT : ERR REVIEW TRAFFIC: prefab={AD80FB47D868C775}Prefabs/Vehicles/Wheeled/S105/S105_green.et ready=1 travelled=9.19322 seated=1 +12:05:14.487 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=1 rpm=5672.38 handbrake=0 gear=0 auto=0 +12:05:14.487 SCRIPT : ERR REVIEW TRAFFIC: prefab={1689340AD95AE7F4}Prefabs/Vehicles/Wheeled/V2101/V2101_red.et ready=1 travelled=5.18172 seated=1 +12:05:16.487 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=1 brake=0 throttle=0.3326 rpm=2475.74 handbrake=0 gear=2 auto=0 +12:05:16.488 SCRIPT : ERR REVIEW TRAFFIC: prefab={AD80FB47D868C775}Prefabs/Vehicles/Wheeled/S105/S105_green.et ready=1 travelled=12.9666 seated=1 +12:05:16.488 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=1 rpm=1805.71 handbrake=0 gear=2 auto=0 +12:05:16.488 SCRIPT : ERR REVIEW TRAFFIC: prefab={1689340AD95AE7F4}Prefabs/Vehicles/Wheeled/V2101/V2101_red.et ready=1 travelled=4.11791 seated=1 +12:05:18.388 ENTITY : SpawnEntityPrefab @"{939AC713213C2BA1}Prefabs/Vehicles/Wheeled/Z7211/Z7211_red_CIV.et" +12:05:18.388 WORLD : InitEntities 'world' +12:05:18.388 ENTITY : Init entity @"ENTITY:4611686018427388884" ('Vehicle','Assets/Vehicles/Wheeled/Z7211/Z7211_base.xob') at <4776.438477 28.617500 11527.954102> @"{939AC713213C2BA1}Prefabs/Vehicles/Wheeled/Z7211/Z7211_red_CIV.et" +12:05:18.388 SCRIPT (W): AUDIO: SCR_HitZoneStateSignal: No HitZone found +12:05:18.388 SCRIPT (W): AUDIO: SCR_HitZoneStateSignal: No HitZone found +12:05:18.389 SCRIPT : ERR REVIEW FARM: prefab={939AC713213C2BA1}Prefabs/Vehicles/Wheeled/Z7211/Z7211_red_CIV.et position=<4776.44,28.6175,11528> anchor={99F6E8E52B71B137}Prefabs/Structures/Agriculture/Barn/Barn_E_01/Barn_E_01.et +12:05:18.390 SCRIPT : ERR SMOKE PASS: native farm tractor placement with production ground, visibility and collision checks +12:05:18.491 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=1 brake=0 throttle=1 rpm=4305.6 handbrake=0 gear=2 auto=0 +12:05:18.491 SCRIPT : ERR REVIEW TRAFFIC: prefab={AD80FB47D868C775}Prefabs/Vehicles/Wheeled/S105/S105_green.et ready=1 travelled=21.0339 seated=1 +12:05:18.492 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.0103609 rpm=5343.62 handbrake=0 gear=2 auto=0 +12:05:18.492 SCRIPT : ERR REVIEW TRAFFIC: prefab={1689340AD95AE7F4}Prefabs/Vehicles/Wheeled/V2101/V2101_red.et ready=1 travelled=18.4669 seated=1 +12:05:20.495 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=1 brake=0 throttle=1 rpm=2873.13 handbrake=0 gear=3 auto=0 +12:05:20.496 SCRIPT : ERR REVIEW TRAFFIC: prefab={AD80FB47D868C775}Prefabs/Vehicles/Wheeled/S105/S105_green.et ready=1 travelled=35.9355 seated=1 +12:05:20.496 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0.255199 throttle=0 rpm=3955.39 handbrake=0 gear=3 auto=0 +12:05:20.496 SCRIPT : ERR REVIEW TRAFFIC: prefab={1689340AD95AE7F4}Prefabs/Vehicles/Wheeled/V2101/V2101_red.et ready=1 travelled=41.4843 seated=1 +12:05:22.498 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=1 brake=0 throttle=0.989265 rpm=3571.92 handbrake=0 gear=3 auto=0 +12:05:22.498 SCRIPT : ERR REVIEW TRAFFIC: prefab={AD80FB47D868C775}Prefabs/Vehicles/Wheeled/S105/S105_green.et ready=1 travelled=53.6067 seated=1 +12:05:22.498 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0 rpm=3913.37 handbrake=0 gear=3 auto=0 +12:05:22.498 SCRIPT : ERR REVIEW TRAFFIC: prefab={1689340AD95AE7F4}Prefabs/Vehicles/Wheeled/V2101/V2101_red.et ready=1 travelled=65.0457 seated=1 +12:05:24.501 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=1 brake=0 throttle=0.751357 rpm=3711.13 handbrake=0 gear=3 auto=0 +12:05:24.501 SCRIPT : ERR REVIEW TRAFFIC: prefab={AD80FB47D868C775}Prefabs/Vehicles/Wheeled/S105/S105_green.et ready=1 travelled=73.613 seated=1 +12:05:24.501 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0.250001 throttle=0 rpm=3889.15 handbrake=0 gear=3 auto=0 +12:05:24.502 SCRIPT : ERR REVIEW TRAFFIC: prefab={1689340AD95AE7F4}Prefabs/Vehicles/Wheeled/V2101/V2101_red.et ready=1 travelled=88.506 seated=1 +12:05:26.501 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=1 brake=0 throttle=0.599024 rpm=3836.51 handbrake=0 gear=3 auto=0 +12:05:26.501 SCRIPT : ERR REVIEW TRAFFIC: prefab={AD80FB47D868C775}Prefabs/Vehicles/Wheeled/S105/S105_green.et ready=1 travelled=93.9692 seated=1 +12:05:26.501 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=1 rpm=2827.64 handbrake=0 gear=3 auto=0 +12:05:26.501 SCRIPT : ERR REVIEW TRAFFIC: prefab={1689340AD95AE7F4}Prefabs/Vehicles/Wheeled/V2101/V2101_red.et ready=1 travelled=103.199 seated=1 +12:05:28.503 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=1 brake=0 throttle=0.615298 rpm=4266.23 handbrake=0 gear=4 auto=0 +12:05:28.504 SCRIPT : ERR REVIEW TRAFFIC: prefab={AD80FB47D868C775}Prefabs/Vehicles/Wheeled/S105/S105_green.et ready=1 travelled=114.633 seated=1 +12:05:28.504 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.678276 rpm=5294.77 handbrake=0 gear=2 auto=0 +12:05:28.504 SCRIPT : ERR REVIEW TRAFFIC: prefab={1689340AD95AE7F4}Prefabs/Vehicles/Wheeled/V2101/V2101_red.et ready=1 travelled=106.427 seated=1 +12:05:28.504 SCRIPT : ERR SMOKE PASS: S105 and V2101 street-car families driven over 100m by original native AI drivers +12:05:28.723 SCRIPT : ERR SMOKE COMPLETE: 1.9 review vehicles and UI measurements diff --git a/docs/evidence/review-1.9-2026-11-06/final.log b/docs/evidence/review-1.9-2026-11-06/final.log new file mode 100644 index 00000000..c46b7035 --- /dev/null +++ b/docs/evidence/review-1.9-2026-11-06/final.log @@ -0,0 +1,68 @@ +12:05:02.474 SCRIPT : ERR REVIEW TRACTOR: prefab={939AC713213C2BA1}Prefabs/Vehicles/Wheeled/Z7211/Z7211_red_CIV.et low=<-1.10021,0.263591,-2.60995> high=<1.10381,2.69422,1.49574> driver=1 +12:05:02.548 SCRIPT : ERR REVIEW BARN: exists=1 low=<-7.56165,-3.95,-5.43061> high=<7.55593,12.0565,5.33792> alive=1 sites=1 +12:05:02.555 SCRIPT : ERR REVIEW CATALOG: moving=19 tractors=0 +12:05:02.659 SCRIPT : ERR REVIEW AI: partial=1 dormancy=1 limit=128 active=0 +12:05:02.724 SCRIPT : ERR REVIEW FARM VETO: side=0 pos=<4776.44,28.6175,11528> ground=1 clear=1 hidden=1 distance=111.562 +12:05:02.724 SCRIPT : ERR REVIEW FARM VETO: side=1 pos=<4799.56,28.1314,11528> ground=1 clear=1 hidden=0 distance=88.4439 +12:05:02.724 SCRIPT : ERR REVIEW FARM VETO: side=2 pos=<4788,28.5238,11518.6> ground=1 clear=1 hidden=0 distance=100.447 +12:05:02.725 SCRIPT : ERR REVIEW FARM VETO: side=3 pos=<4788,28.555,11537.3> ground=1 clear=1 hidden=0 distance=100.438 +12:05:03.481 SCRIPT : ERR REVIEW UI: dpi=0.75 panel=155.188,53.125 190.625x118.75 root=501x225 fits=1 +12:05:03.980 SCRIPT : ERR REVIEW UI: dpi=1 panel=123.417,33.3333 254.167x158.333 root=501x225 fits=1 +12:05:04.476 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:05:04.476 SCRIPT : ERR REVIEW TRAFFIC: prefab={AD80FB47D868C775}Prefabs/Vehicles/Wheeled/S105/S105_green.et ready=1 travelled=0.00569952 seated=1 +12:05:04.476 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:05:04.476 SCRIPT : ERR REVIEW TRAFFIC: prefab={1689340AD95AE7F4}Prefabs/Vehicles/Wheeled/V2101/V2101_red.et ready=1 travelled=0.0133654 seated=1 +12:05:04.483 SCRIPT : ERR REVIEW UI: dpi=1.25 panel=91.6458,13.5417 317.708x197.917 root=501x225 fits=1 +12:05:04.985 SCRIPT : ERR REVIEW UI: dpi=1.5 panel=77.1316,4.50001 346.737x216 root=501x225 fits=1 +12:05:06.478 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=1 throttle=0 rpm=0 handbrake=0 gear=1 auto=0 +12:05:06.478 SCRIPT : ERR REVIEW TRAFFIC: prefab={AD80FB47D868C775}Prefabs/Vehicles/Wheeled/S105/S105_green.et ready=1 travelled=0.00704209 seated=1 +12:05:06.478 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=0 brake=1 throttle=0 rpm=0 handbrake=0 gear=1 auto=0 +12:05:06.478 SCRIPT : ERR REVIEW TRAFFIC: prefab={1689340AD95AE7F4}Prefabs/Vehicles/Wheeled/V2101/V2101_red.et ready=1 travelled=0.0133654 seated=1 +12:05:08.478 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=1 brake=0 throttle=1 rpm=3246.92 handbrake=0 gear=0 auto=0 +12:05:08.478 SCRIPT : ERR REVIEW TRAFFIC: prefab={AD80FB47D868C775}Prefabs/Vehicles/Wheeled/S105/S105_green.et ready=1 travelled=0.00163775 seated=1 +12:05:08.478 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=1 rpm=3954.5 handbrake=0 gear=0 auto=0 +12:05:08.478 SCRIPT : ERR REVIEW TRAFFIC: prefab={1689340AD95AE7F4}Prefabs/Vehicles/Wheeled/V2101/V2101_red.et ready=1 travelled=0.00907271 seated=1 +12:05:10.480 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=1 brake=0 throttle=0.33464 rpm=2310.32 handbrake=0 gear=0 auto=0 +12:05:10.481 SCRIPT : ERR REVIEW TRAFFIC: prefab={AD80FB47D868C775}Prefabs/Vehicles/Wheeled/S105/S105_green.et ready=1 travelled=4.84767 seated=1 +12:05:10.481 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=1 rpm=800 handbrake=0 gear=2 auto=0 +12:05:10.481 SCRIPT : ERR REVIEW TRAFFIC: prefab={1689340AD95AE7F4}Prefabs/Vehicles/Wheeled/V2101/V2101_red.et ready=1 travelled=4.69306 seated=1 +12:05:12.483 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=1 brake=1 throttle=0 rpm=885.045 handbrake=0 gear=0 auto=0 +12:05:12.483 SCRIPT : ERR REVIEW TRAFFIC: prefab={AD80FB47D868C775}Prefabs/Vehicles/Wheeled/S105/S105_green.et ready=1 travelled=8.86798 seated=1 +12:05:12.483 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=1 throttle=0 rpm=1202.04 handbrake=0 gear=2 auto=0 +12:05:12.484 SCRIPT : ERR REVIEW TRAFFIC: prefab={1689340AD95AE7F4}Prefabs/Vehicles/Wheeled/V2101/V2101_red.et ready=1 travelled=6.00958 seated=1 +12:05:14.486 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=1 brake=0 throttle=1 rpm=5529.07 handbrake=0 gear=2 auto=0 +12:05:14.487 SCRIPT : ERR REVIEW TRAFFIC: prefab={AD80FB47D868C775}Prefabs/Vehicles/Wheeled/S105/S105_green.et ready=1 travelled=9.19322 seated=1 +12:05:14.487 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=1 rpm=5672.38 handbrake=0 gear=0 auto=0 +12:05:14.487 SCRIPT : ERR REVIEW TRAFFIC: prefab={1689340AD95AE7F4}Prefabs/Vehicles/Wheeled/V2101/V2101_red.et ready=1 travelled=5.18172 seated=1 +12:05:16.487 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=1 brake=0 throttle=0.3326 rpm=2475.74 handbrake=0 gear=2 auto=0 +12:05:16.488 SCRIPT : ERR REVIEW TRAFFIC: prefab={AD80FB47D868C775}Prefabs/Vehicles/Wheeled/S105/S105_green.et ready=1 travelled=12.9666 seated=1 +12:05:16.488 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=1 rpm=1805.71 handbrake=0 gear=2 auto=0 +12:05:16.488 SCRIPT : ERR REVIEW TRAFFIC: prefab={1689340AD95AE7F4}Prefabs/Vehicles/Wheeled/V2101/V2101_red.et ready=1 travelled=4.11791 seated=1 +12:05:18.389 SCRIPT : ERR REVIEW FARM: prefab={939AC713213C2BA1}Prefabs/Vehicles/Wheeled/Z7211/Z7211_red_CIV.et position=<4776.44,28.6175,11528> anchor={99F6E8E52B71B137}Prefabs/Structures/Agriculture/Barn/Barn_E_01/Barn_E_01.et +12:05:18.390 SCRIPT : ERR SMOKE PASS: native farm tractor placement with production ground, visibility and collision checks +12:05:18.491 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=1 brake=0 throttle=1 rpm=4305.6 handbrake=0 gear=2 auto=0 +12:05:18.491 SCRIPT : ERR REVIEW TRAFFIC: prefab={AD80FB47D868C775}Prefabs/Vehicles/Wheeled/S105/S105_green.et ready=1 travelled=21.0339 seated=1 +12:05:18.492 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.0103609 rpm=5343.62 handbrake=0 gear=2 auto=0 +12:05:18.492 SCRIPT : ERR REVIEW TRAFFIC: prefab={1689340AD95AE7F4}Prefabs/Vehicles/Wheeled/V2101/V2101_red.et ready=1 travelled=18.4669 seated=1 +12:05:20.495 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=1 brake=0 throttle=1 rpm=2873.13 handbrake=0 gear=3 auto=0 +12:05:20.496 SCRIPT : ERR REVIEW TRAFFIC: prefab={AD80FB47D868C775}Prefabs/Vehicles/Wheeled/S105/S105_green.et ready=1 travelled=35.9355 seated=1 +12:05:20.496 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0.255199 throttle=0 rpm=3955.39 handbrake=0 gear=3 auto=0 +12:05:20.496 SCRIPT : ERR REVIEW TRAFFIC: prefab={1689340AD95AE7F4}Prefabs/Vehicles/Wheeled/V2101/V2101_red.et ready=1 travelled=41.4843 seated=1 +12:05:22.498 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=1 brake=0 throttle=0.989265 rpm=3571.92 handbrake=0 gear=3 auto=0 +12:05:22.498 SCRIPT : ERR REVIEW TRAFFIC: prefab={AD80FB47D868C775}Prefabs/Vehicles/Wheeled/S105/S105_green.et ready=1 travelled=53.6067 seated=1 +12:05:22.498 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0 rpm=3913.37 handbrake=0 gear=3 auto=0 +12:05:22.498 SCRIPT : ERR REVIEW TRAFFIC: prefab={1689340AD95AE7F4}Prefabs/Vehicles/Wheeled/V2101/V2101_red.et ready=1 travelled=65.0457 seated=1 +12:05:24.501 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=1 brake=0 throttle=0.751357 rpm=3711.13 handbrake=0 gear=3 auto=0 +12:05:24.501 SCRIPT : ERR REVIEW TRAFFIC: prefab={AD80FB47D868C775}Prefabs/Vehicles/Wheeled/S105/S105_green.et ready=1 travelled=73.613 seated=1 +12:05:24.501 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0.250001 throttle=0 rpm=3889.15 handbrake=0 gear=3 auto=0 +12:05:24.502 SCRIPT : ERR REVIEW TRAFFIC: prefab={1689340AD95AE7F4}Prefabs/Vehicles/Wheeled/V2101/V2101_red.et ready=1 travelled=88.506 seated=1 +12:05:26.501 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=1 brake=0 throttle=0.599024 rpm=3836.51 handbrake=0 gear=3 auto=0 +12:05:26.501 SCRIPT : ERR REVIEW TRAFFIC: prefab={AD80FB47D868C775}Prefabs/Vehicles/Wheeled/S105/S105_green.et ready=1 travelled=93.9692 seated=1 +12:05:26.501 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=1 rpm=2827.64 handbrake=0 gear=3 auto=0 +12:05:26.501 SCRIPT : ERR REVIEW TRAFFIC: prefab={1689340AD95AE7F4}Prefabs/Vehicles/Wheeled/V2101/V2101_red.et ready=1 travelled=103.199 seated=1 +12:05:28.503 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=1 brake=0 throttle=0.615298 rpm=4266.23 handbrake=0 gear=4 auto=0 +12:05:28.504 SCRIPT : ERR REVIEW TRAFFIC: prefab={AD80FB47D868C775}Prefabs/Vehicles/Wheeled/S105/S105_green.et ready=1 travelled=114.633 seated=1 +12:05:28.504 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.678276 rpm=5294.77 handbrake=0 gear=2 auto=0 +12:05:28.504 SCRIPT : ERR REVIEW TRAFFIC: prefab={1689340AD95AE7F4}Prefabs/Vehicles/Wheeled/V2101/V2101_red.et ready=1 travelled=106.427 seated=1 +12:05:28.504 SCRIPT : ERR SMOKE PASS: S105 and V2101 street-car families driven over 100m by original native AI drivers +12:05:28.723 SCRIPT : ERR SMOKE COMPLETE: 1.9 review vehicles and UI measurements diff --git a/docs/evidence/review-1.9-2026-11-06/launch-source-sha256.json b/docs/evidence/review-1.9-2026-11-06/launch-source-sha256.json new file mode 100644 index 00000000..61bdca48 --- /dev/null +++ b/docs/evidence/review-1.9-2026-11-06/launch-source-sha256.json @@ -0,0 +1,724 @@ +{ + "addons/core/AI/BehaviorTrees/ERR/MortarRapidFire.bt": "16b263bcb2fb3ae361367a600753a829425620d2e6b350a891c51fba47437ab6", + "addons/core/AI/BehaviorTrees/ERR/MortarRapidFire.bt.meta": "f2a44ece28891240e6bfa1d01af29428adcadbe82c80e287eb33cd5e58f1f90a", + "addons/core/Assets/Items/ERR_Atlas/AtlasCover.emat": "0a536cd31d1917965ab36d33e273a881be384eb8b863eb5da03d1666e141d45a", + "addons/core/Assets/Items/ERR_Atlas/AtlasCover.emat.meta": "9f4d59cd6d103547e3e494baf7cc8fce70f31f87c66fe6d26b70011bbd27e38b", + "addons/core/Assets/Items/ERR_Atlas/AtlasPaper.emat": "88a2c1061c01eb96ce8a0f753bd3e89e1d7af01471ccc4abb4774a7aa9a532fb", + "addons/core/Assets/Items/ERR_Atlas/AtlasPaper.emat.meta": "e0093b7df155499444f93a1148a07f66cc755489192db17c81f4035d17378efb", + "addons/core/Assets/Items/ERR_Atlas/AtlasPrint.emat": "9877c5b175c5f30dd80bea36c711b21ab38219aa7075adf9ae79932e1d4c76bc", + "addons/core/Assets/Items/ERR_Atlas/AtlasPrint.emat.meta": "33a9eaa49871813f2e8537f071ea0f5a4422eb08d536355a47314b6b6d845b19", + "addons/core/Assets/Items/ERR_Atlas/AtlasTurn.agf": "48dc42771b7e44994839dfabe9b007c23e37bd9be900196c757f42351e5c6b04", + "addons/core/Assets/Items/ERR_Atlas/AtlasTurn.agf.meta": "c081aec31c927c0c374dcc0f8eb3eaec498f71cb0e2ac746879b926f8dc7d00e", + "addons/core/Assets/Items/ERR_Atlas/AtlasTurn.agr": "8ec57b278c9d63324d00f7af62abf75230c5ef631d1cc070661585ee235c8a1f", + "addons/core/Assets/Items/ERR_Atlas/AtlasTurn.agr.meta": "b045e26f86116703d1b3599fdf747b413cc0064d8101eff659ded0355eff31fe", + "addons/core/Assets/Items/ERR_Atlas/AtlasWire.emat": "372247aac7b84ddf6c66e276d03321d22496e65726f55e490ee7287a90151318", + "addons/core/Assets/Items/ERR_Atlas/AtlasWire.emat.meta": "ea10c7bd630b31febf511fb28a42cc73597fcc1e3010597dc074c651813ede94", + "addons/core/Assets/Items/ERR_Atlas/ERR_Atlas.fbx": "03a654900103878223ab5c4a42e71d17022ca4885ced71b99c67d8c91652b5fc", + "addons/core/Assets/Items/ERR_Atlas/ERR_Atlas.txo": "9838bcb2e4ff1cd649586535ca7d5ad2497e6118cdfb76b8aadabded9cafb938", + "addons/core/Assets/Items/ERR_Atlas/ERR_Atlas.xob": "a4602d65e84cec1b23b6b09b5bc5847cbd52efe82925986c6eaf1c43bec1ac78", + "addons/core/Assets/Items/ERR_Atlas/ERR_Atlas.xob.meta": "04f4039be7950ca393ea74469898dabcfec4dc8b8f9e08068898c00333445878", + "addons/core/Assets/Items/ERR_Atlas/ERR_AtlasLeaf.fbx": "4ca13bbeafaa0dc0bf007ae9024b8d6c2a5279afc62e0ebc227e2bec2ad67a30", + "addons/core/Assets/Items/ERR_Atlas/ERR_AtlasLeaf.txo": "8ed37705192d3d9b18f26b5deb51af6f2a6d694e7e2dcdbd04b317497610b50d", + "addons/core/Assets/Items/ERR_Atlas/ERR_AtlasLeaf.xob": "fe6ea401412fdbb3bb46367cf7dc9215f7d01c6373c8ac954cbf23f2a6927bf7", + "addons/core/Assets/Items/ERR_Atlas/ERR_AtlasLeaf.xob.meta": "492a44fc323d3df469753d4bbbc35ceb3d362e734f48083ba633b3de5dd42d8b", + "addons/core/Configs/ERR/AdminMenus.conf": "5a4b405060135efd0f7faf913c7f061f6250a1e6e9d27f2bb394281d784b20e6", + "addons/core/Configs/ERR/AdminMenus.conf.meta": "5faf5ddc0a51c1d0f82d60af00d91edc22fe9c39aac50d8d04b772a2c9271be1", + "addons/core/Configs/ERR/Content/Registry.conf": "546a5a407c9e6c25c9157ae4392898fa3f40c04c7956649e62201f9ac0ba187c", + "addons/core/Configs/ERR/Content/Registry.conf.meta": "046aa988bf8e972afcf7a60b6f2312f605f016f98625dbbd9cd75ebf9ea88800", + "addons/core/Configs/ERR/EveronSites.conf": "781a9a3f4d2d4ea5b913fbfd15c2f1a991efdee7e033b7ba4241ad632609f52f", + "addons/core/Configs/ERR/EveronSites.conf.meta": "d5fe68025ef4e7c1e16082cf5873b7c7172eacbfaef4ab29b7e0e3c98f8dca56", + "addons/core/Configs/ERR/Factions/MissionVehicles.conf": "5f74f4a7089c7e7b54ad62463159ce8f0bab25a6b85268dc3872ea6001e048fb", + "addons/core/Configs/ERR/Factions/MissionVehicles.conf.meta": "00c368b6271d3440cc8bf627b03a384d247635723923fc5ad2104b8b4007b035", + "addons/core/Configs/ERR/Factions/US.conf": "4c3da063abb6e3ee39a6e4e0c5a9ffd5eae9d209d58470ea18b45dba5528db1b", + "addons/core/Configs/ERR/Factions/US.conf.meta": "a05469aef028e9e17eba545e81e2af2887b59f0fef17dac51a23c7b8155e381b", + "addons/core/Configs/ERR/Factions/USSR.conf": "407ea27f80a64c5184c089d43cdd0bdabfc5974c84f1d2a245081fdf2afa3f30", + "addons/core/Configs/ERR/Factions/USSR.conf.meta": "057397d97096346791b51b7b13fbe18af218bcf78e9984d9c01b49a2403de611", + "addons/core/Configs/ERR/GameOverScreens.conf": "1bb83c26a57d64595e91c3ba7926987e22b33dce2c6c876016e3ec2d04f9eb2a", + "addons/core/Configs/ERR/GameOverScreens.conf.meta": "eb654b745c0b97b41c991694569ef4877a3c2315e0826f9556337cd68690843e", + "addons/core/Configs/ERR/ObserverInput.conf": "1efd2e1823f80e6b8a3e4a697cdeb72dd87888ec5a2d16ae289937575b880072", + "addons/core/Configs/ERR/ObserverInput.conf.meta": "9714dce6c38ee81bcc513c8ebef51d7af63fd15bcdda2e40946937c625dc3ba4", + "addons/core/Configs/ERR/Telemetry.conf": "12d895ba4fcd159e23c2f3e94dc59e6f1e54702470cf0b1dad7d04f15572cf7a", + "addons/core/Configs/ERR/Telemetry.conf.meta": "afd52b410ce1a1026f4b0900b10aae2ee50c30764a212a59668233f4f8b8c5a1", + "addons/core/Configs/ERR/Tests/LegacySites.conf": "3864eb638d0ed4dd313013d2d787f975ae6ce4bbe238569919f76b73d5f7ca42", + "addons/core/Configs/ERR/Tests/LegacySites.conf.meta": "097ac7daef4fc18344699a8471fdd77f9d158f8c70bab394068d7a08e4777ac0", + "addons/core/Configs/ERR/VanillaFactions.conf": "db890b61b48ee15484041fd2245a862d9fa9e7ba21b1229c281ff37c448a35b1", + "addons/core/Configs/ERR/VanillaFactions.conf.meta": "ac77725c0c21974991ef47a466b88122e939de8b46fd23e68889e7674cbb2bfd", + "addons/core/Materials/ERRM_MapRenderTarget.emat": "4ab251037d40a850e3767c0de85136842bcd4fd130eda47bf8e19352b0d030e3", + "addons/core/Materials/ERRM_MapRenderTarget.emat.meta": "5ee1a705f8011a44020ca2691f5ccc17d44bf596fef9a36e98d1f267eb58fab0", + "addons/core/Missions/ERR_Everon.conf": "c6cce48484301a76b81f3a0cd76a4012f5808b901754d4114034e92beeefcff3", + "addons/core/Missions/ERR_Everon.conf.meta": "0a23c98bf83873536c65fa17d38dea33a1d7b9e4ab210f90633ff688abcc551f", + "addons/core/Prefabs/Characters/Core/Character_Base.et": "74a6f03a1e76173a0cfa20b23c711d02e70bac810d6743e16c60476bfe5be457", + "addons/core/Prefabs/Characters/Core/Character_Base.et.meta": "c6b142d1985719236268cdf12ac522fee4b1206871a6f22b568d9198d1fcc077", + "addons/core/Prefabs/ERR/AssaultParachute.et": "b556997989605e2a05982418b7e9f26d12d427eb3ea6e3bc50e85c67ea7aa4b8", + "addons/core/Prefabs/ERR/AssaultParachute.et.meta": "e9dea2d533ad1ce6ce689e0e2815c97a6382e1b90c35ce1efa88a885527e8e18", + "addons/core/Prefabs/ERR/CombatEpinephrine.et": "aa57d78bae861dc4a0fc509f7916190d2f2f0b36a1c3867f9bf9a071717cd7f5", + "addons/core/Prefabs/ERR/CombatEpinephrine.et.meta": "0e19ebd1dd4d81f739125a4dcbff898424ffe39572c2668bd56455d939b3f604", + "addons/core/Prefabs/ERR/ConvoyCrew.et": "29a525a29605386dfcf292dc2316e9fc7650ce39db9fbaa4ce4372ad0de66db4", + "addons/core/Prefabs/ERR/ConvoyCrew.et.meta": "0a909a15b7dcca34202ded136b3bdbbe8898153c9589e1cce1388433d362da02", + "addons/core/Prefabs/ERR/CrashSite.et": "8d06afe6e2db8986f06a7c5d6649e52df009f9eead7345bf2b477f50a0725b3c", + "addons/core/Prefabs/ERR/CrashSite.et.meta": "0f54fe80ed96394374c1922e1d0b05f7e0200ce5b979ff58325b033f51641f69", + "addons/core/Prefabs/ERR/CrashWreck.et": "f5de4785c0e3cdf02f1d5372e9b01171bd5a37acb9c36aa2a94bae3f429b2272", + "addons/core/Prefabs/ERR/CrashWreck.et.meta": "bde3299bdbbddb91d2ef471b61035b6cced29899cff4cd90c080fe584ce63f26", + "addons/core/Prefabs/ERR/Epinephrine.et": "e09c70b3d47a4dc5b92fd332c8222b99554b28a8a0c93cb5caac18eec4501571", + "addons/core/Prefabs/ERR/Epinephrine.et.meta": "f1861f0b0ccace1b7b3d9c29768e37a83bf0c6fae5a411b1bd61d6b2eec7ed89", + "addons/core/Prefabs/ERR/Extraction.et": "4d24c7811415c06386205e5bf5c132a23fcf21e96c75c7657ccd5f3ac914ac50", + "addons/core/Prefabs/ERR/Extraction.et.meta": "c2a838633001e2e3a202d39cb33aa744ebcd996017ad032359069641b5d13853", + "addons/core/Prefabs/ERR/FactionManager.et": "d34a8bbc5dce259c4a467c7bfa2ba746683bbeb9448de8c226856e65319f4911", + "addons/core/Prefabs/ERR/FactionManager.et.meta": "9bf53d5e4bcbe60dd1a4ece1409fc23c349055c860708620f5f6e9716290a97d", + "addons/core/Prefabs/ERR/FieldCover.et": "e403d5cb3a5966f0cea81f15e0e825d482ba1a7a27b12498319ba45a414963b0", + "addons/core/Prefabs/ERR/FieldCover.et.meta": "83461ffa76244e1d69f20b053a9741ccdf7d127009182bd540a7e5ba6150c3d9", + "addons/core/Prefabs/ERR/GameMode.et": "a2b7e632714e646a7010592cc7ac75f0afff7da6c995bf91aaf65d9473a6af3f", + "addons/core/Prefabs/ERR/GameMode.et.meta": "106769cd34525c9d440057072836cb7401a6752148c40edd7fe61c03bd58328c", + "addons/core/Prefabs/ERR/Items/EmergencyRepairKit.et": "0157bc235eeb78a0e1373b561fd22a1dcb225c833ff7c2d4abae688bca0ec92a", + "addons/core/Prefabs/ERR/Items/EmergencyRepairKit.et.meta": "da6f065cb2414b5a4cbe9ef0f0b1295b2466f26ad406c0bddb83845d4598efb3", + "addons/core/Prefabs/ERR/MortarCrew.et": "21086e886fe3199624208c9a866f883ec109f7d08746c2b56b497e59857fb656", + "addons/core/Prefabs/ERR/MortarCrew.et.meta": "fdfd4fcd21a67c3d698fa4aadc4e5c76e665cebf4be86013bc389e493fab63cc", + "addons/core/Prefabs/ERR/ObjectiveDocument.et": "5118ecaf9d2038eea44a4b785f05d2e78781dc1387249aa58a6782c7e6752e14", + "addons/core/Prefabs/ERR/ObjectiveDocument.et.meta": "eaba9903be147b98a1106e2273e2270773df73b9b22f2cd4e20136a8e281382e", + "addons/core/Prefabs/ERR/Patrol.et": "d3eca8fe9197c57a27a285cdb3baf168b037b198d92b39df28a338ae2cfd0c74", + "addons/core/Prefabs/ERR/Patrol.et.meta": "7c5da568fa2fcf0709ee2959253cb068d7c7ed7c2467af3b247a7e70efd96b69", + "addons/core/Prefabs/ERR/Prison.et": "c0ca5219aa2d6322ba7d094b92000640b259112ff6611a745c0713c8875d09d4", + "addons/core/Prefabs/ERR/Prison.et.meta": "2e426ef3de68f4107907854b51e818bc11d84649a01c538e3f18dd9ebec766bb", + "addons/core/Prefabs/ERR/PrisonBackpack.et": "ae750f08fc9af645561f59d7e5809bd22f4cec26ca8fa6409d09730765958c91", + "addons/core/Prefabs/ERR/PrisonBackpack.et.meta": "7da6aa45467250edc910ad7230dc244d1b041e8a6f55881eb3747ce51f9212ba", + "addons/core/Prefabs/ERR/PrisonDoor.et": "b0ff94443fe334032113a663917de23f920a8b73ffadc9c8e9f11b545022b3d2", + "addons/core/Prefabs/ERR/PrisonDoor.et.meta": "b8f3db52bf186426026668fbb9d633c3cbd4d438ab301fba880398f6a0e781c2", + "addons/core/Prefabs/ERR/PrisonPatrol.et": "dc88c31cf5c415573a874f74e13572f0add9e6122c8fcad507fe82860d789c47", + "addons/core/Prefabs/ERR/PrisonPatrol.et.meta": "5528e0d778dce5ed39c3e504c6427625527127b23269d20fbf12ca2bffe52ffe", + "addons/core/Prefabs/ERR/PrisonWall.et": "9b410b7c85bb001be4601ad93f750e17b8318b850306d84f29c4dc1b02723d7c", + "addons/core/Prefabs/ERR/PrisonWall.et.meta": "0294bc5dbb56f90f8153d62459bb0a6ad91d76a479812bbec9c7db182fdb58d6", + "addons/core/Prefabs/ERR/Prisoner.et": "e6d345ac98ad9ec742bf6c3b8686839c3256df9833d31bb4bdf605cd41d0ba5c", + "addons/core/Prefabs/ERR/Prisoner.et.meta": "974278ba49fafeed70b619a0067bbc70ae4d534be441c812ce2bef4a5fb3c022", + "addons/core/Prefabs/ERR/Radio.et": "99b1d80b49d1e7f9d30aa4283772a36fd66e962369f288f5fe329c7fc911bb1b", + "addons/core/Prefabs/ERR/Radio.et.meta": "bc91137b68ba550217914fb8892bb44d7e1920e4a1086f3e506623832a44212f", + "addons/core/Prefabs/ERR/RadioCamp.et": "5e6216bf8e6e160da5d9f966c8f7c2081bf6dd16dfac1b89d682a14b3b8a6716", + "addons/core/Prefabs/ERR/RadioCamp.et.meta": "3cb8d3d553ab6d8d111a74f721cf4e69ee1011cbb90248b83cdc7275697276bd", + "addons/core/Prefabs/ERR/ReconCrew.et": "33953379ceb725bcd0cbe505cd643c94adaed17dbbfa95dadd404d6b8e345715", + "addons/core/Prefabs/ERR/ReconCrew.et.meta": "2653e8c5b1cdb857de5badd5959ddd9826a6a298ab3c166628dbb835d7104d90", + "addons/core/Prefabs/ERR/ReconHelicopter.et": "c609ee59ab145e0a1936f95726b86df643f5cc425c43924029e9c1abc69ebbd0", + "addons/core/Prefabs/ERR/ReconHelicopter.et.meta": "d80f1c3d6a6f9104562b89729996c1c92ad240f08cdcf48d4c390a09d2047c08", + "addons/core/Prefabs/ERR/ReconPilotEast.et": "d961f329823b991eafed80d085de1bd89b44a4575be98d8dac385d6b77741ba2", + "addons/core/Prefabs/ERR/ReconPilotEast.et.meta": "d73df3c896359a54514d2efcd851f579feca7a2619b76c2a38f607649a31a4f1", + "addons/core/Prefabs/ERR/ReconPilotWest.et": "8f8221927269352e55c8026ee5b00e026c281c79af6684b386f24e7dc4675fb8", + "addons/core/Prefabs/ERR/ReconPilotWest.et.meta": "4785f23bb492c6af420ee7896ddbfc9767e0db1e06de95207df2dc949a1b1814", + "addons/core/Prefabs/ERR/RescueEscortION.et": "aa5cae65250936da239c865fe1070c68a1d20b49bcef37f6bd29021f22c274a9", + "addons/core/Prefabs/ERR/RescueEscortION.et.meta": "34eef8053198a49df774792322c6d3cba81f689e56b6a418aed5a14de0913537", + "addons/core/Prefabs/ERR/RescueEscortWest.et": "6f9671fb68e2716479d96be74b80ffb29fec535f1333c5e4dc4d7b684dca1ccb", + "addons/core/Prefabs/ERR/RescueEscortWest.et.meta": "45a87304712d6a18afb0ddc5b3ccbb70da395541e21aafe9d6d3641c392eaab3", + "addons/core/Prefabs/ERR/RescueHelicopter.et": "d9b3b01a0cdb6ed779f40f14f03dfd8fe732382931cdee02ea643f260783313c", + "addons/core/Prefabs/ERR/RescueHelicopter.et.meta": "f47b4a9a72faddcb5817e396dab7c115ac05a5455e5dc8ca4c6a3e9d5fc4093c", + "addons/core/Prefabs/ERR/RescueHelicopterAFRF.et": "cbd9c88b0a0c798096c78770cdef834cebfbdfd62fa12d96b56e74c5ac60dcb3", + "addons/core/Prefabs/ERR/RescueHelicopterAFRF.et.meta": "5cf8cdd7f34e2bffccedfab0cc0cf266d3c8a6856215e797874c531eb2a3ebf2", + "addons/core/Prefabs/ERR/RescueHelicopterFIA.et": "6aa11ddd56ebc9d0aefd06e1f55c7c61136d5c703b6eddc9cc84f3bcd8c8c26b", + "addons/core/Prefabs/ERR/RescueHelicopterFIA.et.meta": "ac0b32de9818aab77ff42d244cd5165112a7764eb6d289dcfe12ec77ea0c9b3b", + "addons/core/Prefabs/ERR/RescueHelicopterION.et": "a910548e7346439af90bb87e445f056aa1799572a69f87f45addbc17dc01fd85", + "addons/core/Prefabs/ERR/RescueHelicopterION.et.meta": "426a478d15718c0193490d5381f732e4c559348f2e5e9c7eb9473a4ca3017add", + "addons/core/Prefabs/ERR/RescueHelicopterWest.et": "dbf3827f58c27d957aac23f505a24c0af2a8f6c6555a82d0962a0ee5d47efb42", + "addons/core/Prefabs/ERR/RescueHelicopterWest.et.meta": "963b5b22139a2f3496e937855854c3ffe01604b86a93f1fb63b547bc1ba29068", + "addons/core/Prefabs/ERR/ScoutEast.et": "b4593aab494c4f21637757b3daff4f349da77b4c48ec5e8a4a2917a6a12cf811", + "addons/core/Prefabs/ERR/ScoutEast.et.meta": "7c72af632537f687e92f30b52d97fc7d70dadd39d33f37e0b1004f9596f55012", + "addons/core/Prefabs/ERR/ScoutGroup.et": "8dc0fce8ee3decc1c367411b00b6d8518df9d8458281cec0881464a2ce906af0", + "addons/core/Prefabs/ERR/ScoutGroup.et.meta": "62e43fd152ce57aa4ceb2187a49e4aecdeb9f428b3a1e8318f86bb83dbf8a259", + "addons/core/Prefabs/ERR/ScoutRadioPack.et": "f1c4911e2556c0e0caa8b896982190c5e7d0433e850b4610e19442caf9117607", + "addons/core/Prefabs/ERR/ScoutRadioPack.et.meta": "825506e3d814d30a52d5dbf64124470641c07a0453543ba71426841e6c783635", + "addons/core/Prefabs/ERR/ScoutWest.et": "2681b5a3f8621adb44195f0dbca6f3e79ef7decad8f9d0dd0e1a801ec2549627", + "addons/core/Prefabs/ERR/ScoutWest.et.meta": "22a6607b4b8fe606ca75a634a0b2ac3178e7bedae7f9ff01e7a4989f3b39a3da", + "addons/core/Prefabs/ERR/SpectatorCamera.et": "761d845fc1c086da58fd87c8933bf58d46d1ff5e17cca5950141743d07c8ce16", + "addons/core/Prefabs/ERR/SpectatorCamera.et.meta": "2a16558f93915e31908a674509e9c89976470f78a84a1174a64b94b68b8f77ad", + "addons/core/Prefabs/ERR/SupplyCache.et": "4c97b0514fe7e723046f40f0b396f6573b12eb9981ca5df70b9e8aa3cf29323e", + "addons/core/Prefabs/ERR/SupplyCache.et.meta": "2f5de3a4aab1e9d0e35521f48dc57b95bd6e449c383dec4f1c258e10295904cb", + "addons/core/Prefabs/ERR/SupplySite.et": "f33681281d26676fac88736091834d5a7b87fe0fa01883582542df964dcfc694", + "addons/core/Prefabs/ERR/SupplySite.et.meta": "b41944b12eb3528ff7a3ac94258b18c66ef161aa6a38894aee300a1ac4798630", + "addons/core/Prefabs/ERR/TerrainConnector.et": "cf9cb28f5a3f41931380864a29ac979aa1d5e843456f564ac7a7de78f88e1aa8", + "addons/core/Prefabs/ERR/TerrainConnector.et.meta": "9f37c979ae282aabca29ce84beb0db851ee8b9a19f7f3a64d387c175616127f3", + "addons/core/Prefabs/ERR/TerrainTakeover.et": "63e26db48c624056350f9ee123ae5b815bc2fad392060a9c26cfcd86c0af872a", + "addons/core/Prefabs/ERR/TerrainTakeover.et.meta": "64e953e378ab1d2a75ee7246f876f4ef93ae8a4e3fddb5002d7ba37268cb959d", + "addons/core/Prefabs/ERR/TerrainTakeoverWithChat.et": "aa857f7e8e0585839c7e9b2e3616702180779e68c6fb149d94a83c05bd52449b", + "addons/core/Prefabs/ERR/TerrainTakeoverWithChat.et.meta": "a213272011050a881c87fdd94b229e002ece24f26f25db5fe53824f8a5b147a8", + "addons/core/Prefabs/ERR/Vehicles/SupplyUAZ.et": "29f157849f413261494a63d4d5b0a97e8bbe61cb076efcd59d6c940653f23352", + "addons/core/Prefabs/ERR/Vehicles/SupplyUAZ.et.meta": "544c94cf1c26757a10654de7856cd6cc48b821ce3bdc02add13cfe6514269915", + "addons/core/Prefabs/ERR/Vehicles/SupplyUAZRearSeats.et": "cd4acdcecad299445952aea0adefc85f2b9e9b43f8186f100e0505c5621b3656", + "addons/core/Prefabs/ERR/Vehicles/SupplyUAZRearSeats.et.meta": "123955da03462befb90e293b3bb856d49cc761166611b38ff47cb48ec2fbe95c", + "addons/core/Prefabs/Items/Equipment/ERRM_AtlasLeaf.et": "11185bc813c00c5bda09c0afaad78849a1c81d89843e8f7f3a14c0776b8296a9", + "addons/core/Prefabs/Items/Equipment/ERRM_AtlasLeaf.et.meta": "8cdfeb51c3774ed790a223ce74872cfbc4588fb6812a0e98136eb607dcc17d9d", + "addons/core/Prefabs/Items/Equipment/ERRM_SharedFieldMap.et": "57dfbd215f28478a791b2e029832ddf3c363658d5dd5590cee4db9ec6a8b690a", + "addons/core/Prefabs/Items/Equipment/ERRM_SharedFieldMap.et.meta": "59093e9072c50d99c86da7609c87541016da5bcf92b98d99db4c524e1c8e0e8d", + "addons/core/Scripts/Game/ERR/00_Core/ERR_Actions.c": "cabb21413c90b252d29708b62228d0679c51c76e39ee0e483953ad7061b2b9d6", + "addons/core/Scripts/Game/ERR/00_Core/ERR_Actors.c": "7258b838f8365e4fa575c4f2ccc8532e22a33946405ebb490120534d5ca65607", + "addons/core/Scripts/Game/ERR/00_Core/ERR_AdminMenu.c": "0b637c4c4f663e6ce6fb029b6679c97964dc79368c54cf9510cbbf996db9076b", + "addons/core/Scripts/Game/ERR/00_Core/ERR_AdminMenuFields.c": "55466b735c5c8f1041ac600338d55847372a71af48ba1ffbde8cce4286e55b19", + "addons/core/Scripts/Game/ERR/00_Core/ERR_AdminMenuPages.c": "63e27e74a5e0b1cf1c82ca776b9166e713f59918da02a5a89fccfd50a1036e9e", + "addons/core/Scripts/Game/ERR/00_Core/ERR_AdminMenuView.c": "6c34557350659782bc1a098169dbbabf1f71502c35cdf711b83ce0efad907142", + "addons/core/Scripts/Game/ERR/00_Core/ERR_AdminPlayerTools.c": "56780d78bf423f54f482d8620f821b8d3eb0199194482b4f12e37f5ec3f55ef5", + "addons/core/Scripts/Game/ERR/00_Core/ERR_AdminProvider.c": "62e05aceb49da07fed7aa89fb6b2f8eb3efc373ac09eff286fba983c3ad570eb", + "addons/core/Scripts/Game/ERR/00_Core/ERR_AdminService.c": "277df355d00458bf4a337b68feeb926ec4aa12c1546a604d039121a1bde7d995", + "addons/core/Scripts/Game/ERR/00_Core/ERR_AdminSession.c": "b8f9df2cccd49d917389a1f872b1dba2704d3de657ac0b236d88f2ec0c4c43c1", + "addons/core/Scripts/Game/ERR/00_Core/ERR_AirfieldPlacement.c": "0601d8da570e1f63e43ea7df451d0e997872e4e163669fd8ad37bedd59de7b9b", + "addons/core/Scripts/Game/ERR/00_Core/ERR_BakedSpeech.c": "d11fff16f86fd3447126701af84c3800860d721263b3c2c16d3b91d686d8b2fc", + "addons/core/Scripts/Game/ERR/00_Core/ERR_BuryBodyAction.c": "adbf4cee5b5f5317b185f17738205f28b701a15364e643cc9fb443866a121109", + "addons/core/Scripts/Game/ERR/00_Core/ERR_CasualtyGroundSupport.c": "8010394e7731d3bc2ce436cf795a37819e16d4d605e8d152027cf391e811d37c", + "addons/core/Scripts/Game/ERR/00_Core/ERR_CasualtyLoadingFeedback.c": "ac554a946cd14f73a5bf79005b8a3f770c9caaf0a6ea409134077b8d96f9433f", + "addons/core/Scripts/Game/ERR/00_Core/ERR_CasualtyLoadingGameMode.c": "1e670937736330716a467157d0f45bace512047d7e87d8678f4ae0ee123969c3", + "addons/core/Scripts/Game/ERR/00_Core/ERR_CasualtyLoadingOwner.c": "3f430930c2598951b75cba157a57967189686ca7a86aff8ecedd20f181262bbb", + "addons/core/Scripts/Game/ERR/00_Core/ERR_CasualtyLoadingService.c": "6efcfb4bb1bdf0da84400eef28a24f6c61e7f446073af2c9667b6f26f0bc47b5", + "addons/core/Scripts/Game/ERR/00_Core/ERR_ChatClient.c": "4bf937ff74e0483c17fa0103f73bfee3afd8f67a37c0c248b08772a17bfcc349", + "addons/core/Scripts/Game/ERR/00_Core/ERR_CommunityStatistics.c": "84f2615fac1375bbe3738edd13a413ef1d524dea5ce0195b05b3a957aae84435", + "addons/core/Scripts/Game/ERR/00_Core/ERR_ContentDefinition.c": "bc1dd4ed27ec894cf4bd617fb226cb8140b544aaa9ef6d8654e815d81e7f6fd0", + "addons/core/Scripts/Game/ERR/00_Core/ERR_ContentMenu.c": "4321499b0d0ac09142fd8ec013f5020d115b64a40a5648169cea9fbb60cca0c2", + "addons/core/Scripts/Game/ERR/00_Core/ERR_ContentPolicy.c": "3a4987345d5a7159234a7e1a08bf5ac40dd5a23031e9b1953fc43a0501d9924b", + "addons/core/Scripts/Game/ERR/00_Core/ERR_ContentSettings.c": "3e2734dfb935a4e93d79b66ca4a7c883723a1fc348e3595432dbf2bfca643923", + "addons/core/Scripts/Game/ERR/00_Core/ERR_CrashSiteResources.c": "832aebf6e754dba54ba28b8f480180d32ced968a2d2f192424c4007a862c2b43", + "addons/core/Scripts/Game/ERR/00_Core/ERR_DebugAI.c": "bc5529c60591a6c36c39cdb753b1af948690fc3c3c725f38a8d595b41a499235", + "addons/core/Scripts/Game/ERR/00_Core/ERR_DebugIntel.c": "a9f6e7e42a3214879a21052e897f9afc0653c12ff15d5bee7766e26a1af6ab17", + "addons/core/Scripts/Game/ERR/00_Core/ERR_DiscoveryMap.c": "8a8653b322c948c462002077272dae79e2f45a24e883767b3ad9c1f24caad237", + "addons/core/Scripts/Game/ERR/00_Core/ERR_DiscoveryService.c": "552d9e40f72a135f19d25a17fbecf475b8bba8d8b62ec6b6d055c65499a0b637", + "addons/core/Scripts/Game/ERR/00_Core/ERR_DocumentComponent.c": "885c8ab4fc9e64c3f8b40056536096c8c32b011cb340b25ca00353a96da15c69", + "addons/core/Scripts/Game/ERR/00_Core/ERR_EnvironmentService.c": "c0fae5bf51ccf507bc84d44adc2d1dff021cd83653c0468b7645a4f343e3fc8d", + "addons/core/Scripts/Game/ERR/00_Core/ERR_Epinephrine.c": "14a75e040f510773313c7e70b57f338821bc1ded650bc65133968dcad6e49c7c", + "addons/core/Scripts/Game/ERR/00_Core/ERR_EscapeGameOverScreenInfo.c": "4746b0715c6e9a527038b47d54d2ff305becea219da6b736f6998d81901143c9", + "addons/core/Scripts/Game/ERR/00_Core/ERR_ExtractionPlacement.c": "6d388fe21f08b25cbdb5dfa4e198d94a4c80c5092f8d17630a4654e18bf8b3f5", + "addons/core/Scripts/Game/ERR/00_Core/ERR_ExtractionRadio.c": "ad7fd91d8bb96f05f3be04a03fd00c20ab9413adb12d649d3020c6f7994319e1", + "addons/core/Scripts/Game/ERR/00_Core/ERR_ExtractionService.c": "c48e79a117990f83839704ae221af05fc7995b956af2d4b4f9ed2a6b91ec335a", + "addons/core/Scripts/Game/ERR/00_Core/ERR_FactionCatalog.c": "a5a8c53acf21259e14f59cb919535910f30dabff5a9179c664bc6a7a4d744d6e", + "addons/core/Scripts/Game/ERR/00_Core/ERR_FactionMenu.c": "1deab4c396c307fc17dbaa8731b2943ffb73c37dc0121a5cba5c239c34901ba3", + "addons/core/Scripts/Game/ERR/00_Core/ERR_FactionSelection.c": "04b8bd8a042cf743ab8a87ec3711f9758e7b0112995a9d363e81a63df4eabe5e", + "addons/core/Scripts/Game/ERR/00_Core/ERR_ForceLedger.c": "0ecaf1c5a52568e751678b0b1236e91e6adb538f8fbf010d38b61a312d1bf253", + "addons/core/Scripts/Game/ERR/00_Core/ERR_ForceSimulation.c": "2bbb8888c752a3ffc042f3059937526d25ae288af5b4db024cc683025a2605ce", + "addons/core/Scripts/Game/ERR/00_Core/ERR_GameMode.c": "d26e665cf5b9c0e1dc6c5e2da200a99711ef9272718d330f5aa66b09cede40d1", + "addons/core/Scripts/Game/ERR/00_Core/ERR_GeneratedSites.c": "4943f761d0274e163a1da325ac4f750de9180947b05b79ee173e12141bfd6661", + "addons/core/Scripts/Game/ERR/00_Core/ERR_InitialGuardRules.c": "8c9d6b1dc4c2af96284e34f487eebb5a221091016ef108006dec60b4e3836558", + "addons/core/Scripts/Game/ERR/00_Core/ERR_Inventory.c": "b63e679d5b650b63a7a91dfc3f42a62f4be58b0338f6df3313e66d29a93bebf6", + "addons/core/Scripts/Game/ERR/00_Core/ERR_InventoryHitZoneCompat.c": "23c34f901311dce63a79aafe83c11e2fc25bd3fddb0cde38bd313eb90878ca90", + "addons/core/Scripts/Game/ERR/00_Core/ERR_InventoryLayout.c": "1af5df45a0f06d19a017954e9bf4b2d722e2d2389f8ffdeb1d024435b9a08be8", + "addons/core/Scripts/Game/ERR/00_Core/ERR_ItemPreferences.c": "b22d75484cc671392f623fddd175882f9a430227247355f35c0aef4c68a7e0a2", + "addons/core/Scripts/Game/ERR/00_Core/ERR_ItemStationLifecycle.c": "0feee55cc5ddf13e00fe73ae3926ec2cadd5ba861d793a939164287ccbe1861d", + "addons/core/Scripts/Game/ERR/00_Core/ERR_ItemStationTeardown.c": "102e61216e86e47ad243cc19f6f66da1fcd8cc77f8799354ceaeb4a6dc74622e", + "addons/core/Scripts/Game/ERR/00_Core/ERR_JournalText.c": "1ad00a77cb0be741c7b6ef5dad2d8a8c1ff1fcca3b093df2e132ead0b69f74e1", + "addons/core/Scripts/Game/ERR/00_Core/ERR_LoadCasualtyAction.c": "1521af55a34110ce1c971b5226a618a9c6d931622abaae4946d9c0d27c05a273", + "addons/core/Scripts/Game/ERR/00_Core/ERR_LocalAdmission.c": "a076922d1ae966cf5cc67b198166ca6b1288358fb7f641207a4681e6a610a2ae", + "addons/core/Scripts/Game/ERR/00_Core/ERR_Location.c": "6323facd2d5b32382b466a2aa0140064632a8c1de0597e0738cb09a3fcfd7abb", + "addons/core/Scripts/Game/ERR/00_Core/ERR_MenuTheme.c": "90d9babfec7978b3d7f5baffedbbe5c1b54a9742f576f51e6232043e32d1cc9a", + "addons/core/Scripts/Game/ERR/00_Core/ERR_MissionRules.c": "17d1f48878b02a457eebbe5ff87c4267488d68d2a9b3121dda77a8bc8e69c8c6", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeAdminMenuProbe.c": "1d20d0ecd77849ce1cf93bc89516059e25a6cbd89bf4c0ffc098be71f3ccd76b", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeAdminSettingsProbe.c": "73e58561e08e50008d33f81eed606dd4e8109fb69a627e892d28ca468d641f7d", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeAggressionProbe.c": "dcda8528a64d35e6aa2f030b59503a49ea8a85ffcc33beaecdf8da00c003b50e", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeAirfieldMarkersProbe.c": "980025c07d042c2f109e2c99ccee0316b596806ba2c4fcd9446b6ad7580d1d1f", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeBaseSmoke.c": "f7697361c6a056a62aff86de7f7d69e9ccf47b92121dcb96ed012ad136e47e30", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeCasualtyGroundProbe.c": "41f40db3735f8aa535c0061458d9892dcfe972222b8a17238e67b65633c46bc3", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeCasualtyLoadProbe.c": "94c533deea654ec546df3f1ebb7cd213e6cd79b1125d99bab5303ef8e87b018b", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeCasualtyRemoveProbe.c": "4cfc06f6d43b709b63caae714155ffc562502e884f49a9825623c6f46972ad36", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeCasualtyServiceProbe.c": "02a9d70d1f4ba20326df199ba41489cfbae12b7bb0aab441361421cee38ad9ea", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeContentProbe.c": "cb0ccfe1e1575f9ed80a8054058b471f3543378db059e6af2fed8eb42a262638", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeContractsProbe.c": "60aa767d9455f2f4958a6a47bd68bbd8ab0466adc8f1dd9ae433c40ae96c68ff", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeCoordinatedAIProbe.c": "9104a7a5154bf34906f135f00c5793229e343da6a1ed19dd572e3c1d9821d393", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeDefinitionProbe.c": "904d8d4c3e7b91d49dadfe495fc7b4f02f300e4aaf7efa348df5ca17ec4a6e8a", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeDiscoveryMapProbe.c": "9ed32d391d08d937ff4f9f33bd11c3a204ce9a2230c2d72b6761e0320b31f24f", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeEndProbe.c": "2dec80c7e247ec5c257407f95d9d5edd42fe0cc44d6af9f724f6ebd10d8a355f", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeEnemyLoadoutProbe.c": "0885ca69f6fa7f53414ce1792cfc3c49916886b8173783c634135c13c5d37429", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeEnvironmentProbe.c": "9e2e66ac5d9778a1c65445348e3300cbb90b68b3f669f3ddf1d2b78a858430eb", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeEnvironmentRestartProbe.c": "7a836a206381b8e8de24c92baf141beb30575723675dd6948d738169ed26b507", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeExtractionProbe.c": "4b09385f73206de004f4f3c38a6192fd658a0d2012482dc5a84dff1599ceb972", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeFactionCatalogProbe.c": "e3011fa47b67122d7b2c23af8f91b7a217599d6cc114c4f9de628744b9c948d3", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeFactionSelectionProbe.c": "946879d822e7be2d48e03a3140aa1aad3e3d44dd18507fa3cdedb4c6d7dd81b9", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeFlightFootprint.c": "a8862a04ac784426f431e2e9cd3f1f19f820b38a081674d29549b8b00277c72d", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeFlightInputDiagnostics.c": "e231dcbdaefe81beb3bd587cb73be8fb3d3184bc86d18dbaa30a43ca4ba5dcc4", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeGeneratedSitesProbe.c": "a3202ee4658e98539122926755caf689a693a79642e8c88d3146c247dd961138", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeGuardCancelProbe.c": "bfa1c65cb039e19c3d1891e4a3fd33469e974c97cc7f42128efc31a8f587d514", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeInfantryCombatProbe.c": "3e4c4382ab91f470357268927b954fd101685df6b2244df483f0422d6c0d7da2", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeInventoryHitZoneProbe.c": "604eacdc66cd52bc8a0115862ee7884a8b0f83bdb50609397de671eacd476543", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeItemStationTeardownProbe.c": "028588a49fa9207087cd27ec9396979cd932daa071e2490bd0262cd71dae30d9", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeLifecycleProbe.c": "b613a5dbe81c2032fd02d31070ae5631166d14d0b02cdbec3b63b782f0bbc115", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeLocalAdmissionProbe.c": "29c860ca3e51cdaa463f3c23a98ff45ee0499ce9bbc322046e0efbed587f1e09", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeMedicalCombatProbe.c": "59c5b04dd32370f8cf5c62fe6931d64209825522127a068b1957e9d1556274e1", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeMedicalProbe.c": "4b73e7cf35e9c8fddb089678a320ea58272e1b6611318d0a762754c171eff785", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeObjectiveLossProbe.c": "6b80fd317a8c6e8583bd4337870838a86251e3b8a681d0aa07e8b52e22abfc48", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeObjectiveMapProbe.c": "37e66177ee0f16fc33d3d18321211206bc4f095fccbd17b177d4b8cc1ba4e057", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeObjectiveProbe.c": "71fbd2479a70048f83d8b262ad1452f427be2c0afc8b071ef13bff477b9dc29b", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeOpeningToolsProbe.c": "0c5d6b96ed5a7cb1cf0d098d534dc7190449ed09339062e6b584729d53a61b4c", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeOptionalSiteProbe.c": "59d86432c19fd85da30a63087cf1f15375c8ee30178ed7e2765c1bda4cc4d035", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativePatrolProbe.c": "5a2af71cc4cfccc7dd7c23584398a38290eba1a8894cd46f6967252ff3a7087c", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativePoweredFlightProbe.c": "7ae5d6f85bbbebec214c66bfdf6f53b93c802f109fcd5bcfbad82c5d61d6cb9f", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativePreparationStatusProbe.c": "456f4d7c3272b89d5f4c6713617baa5596d846994152356fee9a659839bcd8b5", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativePrisonBreachProbe.c": "4889e0d3799a6a21b9f84bcb2f2ae78dce16269cccd1329f8d1fcc1a23e7c22c", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativePrisonerProbe.c": "e2d1ffe5d269add55124601ff0d1dc032a398c7d51010736e6f0e4cbeb38ae86", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeProgressionIdentityProbe.c": "1d3fe20bce761a1082964bca9bad9ce79d1fa8b04db9b5053bae98da380ae560", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeRadioCampProbe.c": "67f1a088f9b20e5f0f11ed3aa083ffa772bffd7c74d85b7a307344ac3d47e09a", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeRadioDefenceProbe.c": "ff1e27a0ce75b123a86e7df31354831880ca62ea90b6c5d7c60d3ba168e1fff0", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeRadioInteractionProbe.c": "7b27552d233813894f65c08eb9f04b547c4ca9ff96a2370a763cb94bd4a555c3", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeRecoveryProbe.c": "d6691f22432b3ce37d07d448aeb3ce7feb5cd09e852e0167b5e4676afd24bb21", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeRescueProbe.c": "78f4dc11a179a5b924c0ec1939f0fc1e61d4e6f6647729c48a9f126ee32d1714", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeResultProbe.c": "c9a89cae067f221b9f33965b4d3ab311b78ba79ea383ca65032c4001df44b472", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeRoadblocksProbe.c": "6f44725b049f2545a9ce3c94ae3e9134e16077fa017a438fe4f073b453292c1e", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeSarkaProbe.c": "511816c4b86c9f1392bc4a1d83ad11e082280bec16356d8ab24ac1f2094bba93", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeSiteGarrisonsProbe.c": "1a5ff8747d7501862085b5e9162043fee3b05e82c73c516ad8093aaada53dc60", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeSiteSurvey.c": "ac0203753ade0cdff6d483132797a80e4520f14546c3f9dea288281cd4cd9c4f", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeSpeechDownloadProbe.c": "5377da12cabd58b9105851a2348d7496316db371bfc4346a5fb3f84f245ec013", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeStationTeardownDiagnostic.c": "172248540932174341882861bb78a9720a6cf89981fcdf9dffe63f7fd4023f2c", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeTimeProbe.c": "4a2c6ffd947334a0a71eac083d10c853c524b00042e9ea0987497c4cee60c3d5", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeTransportProbe.c": "7a3fe04aa1c5ed1061ff63d9d5180e8b925932b62d76c1ffb49bd3dc23530993", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeTransportSurvey.c": "e5abdb69c0675a20f4287afb24b9e3c877e91b162c77c32d81ef61e2a8b72577", + "addons/core/Scripts/Game/ERR/00_Core/ERR_NativeVehicleSecurityProbe.c": "59bce863142e4fba4b6fb2f544bb8a58061f0e99b1a38e5ac291cea919563763", + "addons/core/Scripts/Game/ERR/00_Core/ERR_ObjectiveDetails.c": "628ebd166dcb5544c2d18dce489619984887ee18296cf2446fc6d894f89dd5bf", + "addons/core/Scripts/Game/ERR/00_Core/ERR_ObjectiveMapPresentation.c": "70339c05c550b72a4fd5890a871c5d8e6a9e574813d61696194c5fbb1475ac8f", + "addons/core/Scripts/Game/ERR/00_Core/ERR_ObjectiveText.c": "d2fd3670c89d679fcb1359ebccf67b58734fe5168e31fc239bdeffa7f8ff0607", + "addons/core/Scripts/Game/ERR/00_Core/ERR_Objectives.c": "b9cd5bb3b193c20401175c4328405be1b121e8a60b7b5999910b6a71f834af8a", + "addons/core/Scripts/Game/ERR/00_Core/ERR_Observer.c": "7c478eff3575eb1bd8a85c08955d4ca7f63b57969cd7b2b76dfd6c42136de1af", + "addons/core/Scripts/Game/ERR/00_Core/ERR_ObserverPlayerView.c": "c287a1891451dce0836c6e859eb962c154aad9621a46e50400f44fb83f97d95e", + "addons/core/Scripts/Game/ERR/00_Core/ERR_ObserverScope.c": "97d29535a0ca1571ceb86996f58b68e5ba0944edfe30370455c52a321772f85e", + "addons/core/Scripts/Game/ERR/00_Core/ERR_ObserverTargets.c": "1dfd50307b5d74075b90b5f2f70bae2c9488fc12df03d82eb19350a724f910f6", + "addons/core/Scripts/Game/ERR/00_Core/ERR_OrdinaryGateObserver.c": "1e376ca83c0005cf532539e14d7f47363c47b7c5b03fe3d55405a59208705fd7", + "addons/core/Scripts/Game/ERR/00_Core/ERR_OrdinaryInputObserver.c": "808a46cc1e4b31b65dbbbcdd55493f594ebb3974bbec38b4a2402334c653c0ef", + "addons/core/Scripts/Game/ERR/00_Core/ERR_OrdinaryLookObserver.c": "d5a1b636938d65e9d11c78b31487f2924400c34d98e2ec812954a2a224da7dc0", + "addons/core/Scripts/Game/ERR/00_Core/ERR_OrdinaryScenarioLaunch.c": "8d8da4c1222dcc6adfee350490f4399b4129cfce7a42b45fd7fba52febfd3eda", + "addons/core/Scripts/Game/ERR/00_Core/ERR_PassengerHandbrake.c": "3078487e077aaed1567894f6df12386aae440b790b6c134118d3afc2c4da156d", + "addons/core/Scripts/Game/ERR/00_Core/ERR_Performance.c": "037ffa482e3765bb537629e34f10919d85d4b6bfb0abf56ccc7c0d44fce8872f", + "addons/core/Scripts/Game/ERR/00_Core/ERR_PlayerAdminCommands.c": "eca9baa3b07da48a740851583540840f8bf5f65f7be854902a3778f76967faad", + "addons/core/Scripts/Game/ERR/00_Core/ERR_PlayerEscapeResult.c": "3124ab4d2d6d471409a47aba0af528790734df53243c03fe0cdac3e407047c14", + "addons/core/Scripts/Game/ERR/00_Core/ERR_PlayerGuide.c": "dc52f551a1d3705fceb64ea18d882009d9e9548c01f08ae1c7ef3083b19ab2d3", + "addons/core/Scripts/Game/ERR/00_Core/ERR_PlayerMedical.c": "270454d50235bc28df9bba4fde2689934578874c4eca9560afb9f0f6324d7215", + "addons/core/Scripts/Game/ERR/00_Core/ERR_PlayerReconnect.c": "478fd041e8a13132df25202088f42d0810d36680060dd7a0424d8f40a5b1ca44", + "addons/core/Scripts/Game/ERR/00_Core/ERR_PlayerRoster.c": "dc785a8a1d78a285fe55ce76f87b78a9f522eeb9f7d9655dfe9b5c4348a26a18", + "addons/core/Scripts/Game/ERR/00_Core/ERR_PreparationFailureMenu.c": "5c31219740bbc26cb903a91f4fe22866c465b38220391093c72a3b094ca30f34", + "addons/core/Scripts/Game/ERR/00_Core/ERR_PreparationStatus.c": "c5cc9125986e2285282f3f7fa9068ca72f00d7e26465d00213e734039c0e34e4", + "addons/core/Scripts/Game/ERR/00_Core/ERR_PrisonAI.c": "67f8b444824634fc37fc253c60fd24b56d06d971f48e56a8d53095c97aaf0070", + "addons/core/Scripts/Game/ERR/00_Core/ERR_PrisonEscapeService.c": "ed180448cb516bc4ec521aedd366810a47787628c7f5ee9c9afdbd185d980751", + "addons/core/Scripts/Game/ERR/00_Core/ERR_PrisonPatrol.c": "284618391ee2da84dbcda4a99ca3c072eae3d67b8a9ef40a86827b9ea00810f9", + "addons/core/Scripts/Game/ERR/00_Core/ERR_ProfileConfig.c": "b5aca526a860ed9ed609dc3fad99ebb34d2f6fbd537575a167390472efd4ba89", + "addons/core/Scripts/Game/ERR/00_Core/ERR_RadioDefenceService.c": "f5f0bf1352141f933d0edb5630e30541e001dc07e1d2c8529b29cc159c126b13", + "addons/core/Scripts/Game/ERR/00_Core/ERR_RadioFeedback.c": "545262e65e9b3645d9e514a0521e442fe08f0c2e4e7c83ba638c5105d09818db", + "addons/core/Scripts/Game/ERR/00_Core/ERR_ReaperRHSCompat.c": "bcdf98c05ac6cdf0c7eaa854531b02e9ee4f53fbb346ae01d58114e572e7dd4f", + "addons/core/Scripts/Game/ERR/00_Core/ERR_RecoveryForecast.c": "0eda507fb58860c0eac1d957319d1e80e9576a870d22931c86081db748df44b6", + "addons/core/Scripts/Game/ERR/00_Core/ERR_RecoveryService.c": "182037828b74938746022ebe03bbd9cf849d52e31067c0b33f392f03969d6162", + "addons/core/Scripts/Game/ERR/00_Core/ERR_RescueLanding.c": "e6f63ee8860335de1125e0a62eae3b8406faf5a5ad2c8d9c6f9a6da077986e56", + "addons/core/Scripts/Game/ERR/00_Core/ERR_Resources.c": "d0169aac6fd0c38928c47a9002ded0fd8ba558ea3314a600e792d307ac1ca3ee", + "addons/core/Scripts/Game/ERR/00_Core/ERR_Review19Probe.c": "e5b989fd500e6906fd97c056d9f7b03c9bbc3bc588db0535298c658f48241424", + "addons/core/Scripts/Game/ERR/00_Core/ERR_RoundStatistics.c": "60e6839cc50fa02df1795a00b93fd431160f9201bdbb6f1e3b9b50271306e9fb", + "addons/core/Scripts/Game/ERR/00_Core/ERR_RoundStatisticsLifecycle.c": "b813a9ccea9a61c9c6d7d4806cf18adfb323d483622ca1225930207ca2436d12", + "addons/core/Scripts/Game/ERR/00_Core/ERR_ScenarioComponent.c": "ca6b20d5c4599e31957e5cb464d21bb3a4bac517dd539711f9d4f380e48a0e15", + "addons/core/Scripts/Game/ERR/00_Core/ERR_SelectionStyle.c": "b9ea5158e51559dc13812cdfa8939ac36b58c79b9e4115c72465d869fdf264a8", + "addons/core/Scripts/Game/ERR/00_Core/ERR_SelfEpinephrine.c": "da5850374b51e89016c4557d06f3c7c087b6e6e36fa9734b22c7c6c50d757914", + "addons/core/Scripts/Game/ERR/00_Core/ERR_ServerItemCatalog.c": "e4622ef82a3a3ecaf251c865786b97ff0f95bbeba147cde848c722708e151b2b", + "addons/core/Scripts/Game/ERR/00_Core/ERR_ServerItemsMenu.c": "012cc0f3928d883b99a9922fd3b30cbafc6363a73ee27772e359116e0e6233f7", + "addons/core/Scripts/Game/ERR/00_Core/ERR_ServerItemsWeightsMenu.c": "75ac61a9ba0d984a5c6d21ad6a020bb1562914ab09dafac8a80e822f0af77611", + "addons/core/Scripts/Game/ERR/00_Core/ERR_Settings.c": "fc5cbd7f52632228c071b9f14cce7979ef55298672e441f665f0efa97f083249", + "addons/core/Scripts/Game/ERR/00_Core/ERR_SiteDefinition.c": "d421d70b32bd2b55cd8e4966c04af3d5bc381ac811d3b4b2efa4bc0a8af8bd2c", + "addons/core/Scripts/Game/ERR/00_Core/ERR_SiteDiscoveryRules.c": "dcbce3b7aee89bfc47a50e9de89209758af1f1bb462b99af67a8ad7a26e9f229", + "addons/core/Scripts/Game/ERR/00_Core/ERR_SiteService.c": "2b283ad19b046fd6b33245d466b197bd05b4c472e128a747e6b1e725f4a34c2a", + "addons/core/Scripts/Game/ERR/00_Core/ERR_SiteSquads.c": "183883783a4e8399cf62851a4cc65a5d091d25131bc53b4323cf17286315b2e0", + "addons/core/Scripts/Game/ERR/00_Core/ERR_SpawnClientScene.c": "b56f99a91cdc53bdb93d320d10839339022d7e61e6b101eee8296271abd7d3cb", + "addons/core/Scripts/Game/ERR/00_Core/ERR_SpawnFinalization.c": "6ec741f8d19ee316d3c67b0dd2216698584bf2cde3634a3d6a7c3cdc3a3935b8", + "addons/core/Scripts/Game/ERR/00_Core/ERR_SpawnLogic.c": "6d9243f66b4ca8c53d53fedff9dea8986c815e90c1f97de58200cd759aa8b49f", + "addons/core/Scripts/Game/ERR/00_Core/ERR_SpawnPlacement.c": "fc5b61f1877aeaee75fbfd6aed3cd0b4c5277ae8543bc38a0c09836353d54b27", + "addons/core/Scripts/Game/ERR/00_Core/ERR_SpawnSceneInventory.c": "76b79d5bd9d1f367e1ed19724302b7d49f8b0ede85cf19e89c452582ef651f8f", + "addons/core/Scripts/Game/ERR/00_Core/ERR_SpawnSceneLease.c": "20de7f96bacc9037580d88d4424664b4554b2c082d82e7d29913e9dfe390b594", + "addons/core/Scripts/Game/ERR/00_Core/ERR_SpeechMenu.c": "33f9ef80b4d6cdbf3646eab602d15ae0d05884bb20b3a7222b0648752339cda5", + "addons/core/Scripts/Game/ERR/00_Core/ERR_SpeechService.c": "74ea305ac0c9a9d145646a5c73cba58e4920ab472943ae73b3dbd71d8216f752", + "addons/core/Scripts/Game/ERR/00_Core/ERR_StartBackpack.c": "4a36799d3a3defd674822974cd96647c0accb2a854631dd5488c35e2ef697f7c", + "addons/core/Scripts/Game/ERR/00_Core/ERR_StartBackpackMenu.c": "07c90db1a84893759dae71f40b7ae3109827646e48fade542190d21598ac271e", + "addons/core/Scripts/Game/ERR/00_Core/ERR_StartRules.c": "ab7c21ef700343cbe769d8d51d91f167db37285b466d6af9873e121b3adf4ade", + "addons/core/Scripts/Game/ERR/00_Core/ERR_StartSetup.c": "58a6b617b22910d0ce9255f82091dc11cd1284417a66adf1cdaa7b661c1ed01c", + "addons/core/Scripts/Game/ERR/00_Core/ERR_Supplies.c": "752e8a56b0b8cde33cf532032cb0a203553017b686faac2e19bee06f7a9c0713", + "addons/core/Scripts/Game/ERR/00_Core/ERR_Telemetry.c": "b1dc3ecab89f5e6db1ff4ba613b43755a5ae44f3612249288cd134ad850719f6", + "addons/core/Scripts/Game/ERR/00_Core/ERR_TelemetryCredentials.c": "9835caf69d4615d6a3fc840d9dc3cb0f507a0c5a2a6490893c21761f9cb4a216", + "addons/core/Scripts/Game/ERR/00_Core/ERR_TelemetryLifecycle.c": "15d2d90d4457339dacd61c1bb23b619243b8af10731687c35ecc300125a642f5", + "addons/core/Scripts/Game/ERR/00_Core/ERR_TelemetryServerName.c": "7744762c4586e2543601fb0899847bed311c439cfda3dcaba825adf870628693", + "addons/core/Scripts/Game/ERR/00_Core/ERR_TerrainCatalog.c": "ba2e68543a8c929492d06f8725a743d26849a630d6f8c09be0f23894f92d0990", + "addons/core/Scripts/Game/ERR/00_Core/ERR_TerrainControllerInit.c": "8071e38812ac61f9b480d9e91f9ebc7712b360d431f5555da83027db6cdf2471", + "addons/core/Scripts/Game/ERR/00_Core/ERR_TerrainMenu.c": "1da542ef60ff7c1897b1f12432c636ef6a08cc710bac520ef186589d506e9a54", + "addons/core/Scripts/Game/ERR/00_Core/ERR_TerrainPreference.c": "93fc55f2c33e95adbcf2bead3430aa14bdb55154315760bcc9647f89dc8286ff", + "addons/core/Scripts/Game/ERR/00_Core/ERR_TerrainSelection.c": "ee75cac068b99e7403f5eaabe556152513cf5d973602cc6e6b8967d25402f6ad", + "addons/core/Scripts/Game/ERR/00_Core/ERR_TerrainSites.c": "4ac347d4d91951bcc7175a965ccea25f3782edb6e352354cce506d6b626e5ac0", + "addons/core/Scripts/Game/ERR/00_Core/ERR_TerrainSupportStations.c": "c4fe4265963ec88e24379c143edae251452c84e43a3102f5da120205f9a39c9d", + "addons/core/Scripts/Game/ERR/00_Core/ERR_TerrainTakeover.c": "ac31af5ff2937f8a1fd89ac03732a8a473b27b09c83a07923f17986b0f9db841", + "addons/core/Scripts/Game/ERR/00_Core/ERR_TerrainTakeoverClient.c": "70f192d5d749b4211c5604575d2b9d7e39deca589b5841ffdd03f99baeca1280", + "addons/core/Scripts/Game/ERR/00_Core/ERR_TerrainTakeoverManagers.c": "ab1d64c8073e4daebf14f4ad2c745d874032675ebcac3fdb0fdae4626acb8dbf", + "addons/core/Scripts/Game/ERR/00_Core/ERR_TerrainTakeoverPresentation.c": "91d450215eb6ed2da74446b5fbb805356e3881e3cb43e37fe45308e30b22be9c", + "addons/core/Scripts/Game/ERR/00_Core/ERR_TerrainTakeoverSettings.c": "da22775930b13e41d4a71409e37af3bb99e4cc1d94bdea0e3b59fbdcd4d40132", + "addons/core/Scripts/Game/ERR/00_Core/ERR_TimeService.c": "63867760876d523a1794f619118a52c5cd387d5d92756cd286b2c16a348a6c7b", + "addons/core/Scripts/Game/ERR/00_Core/ERR_UnconsciousCameraProbe.c": "cfc63058a20fad99e76c59b64d0d288cc3441fd3486ff63a6dde9998b4ab103d", + "addons/core/Scripts/Game/ERR/00_Core/ERR_UnconsciousWeapon.c": "24d31bc857486638e55c605283c17cde0cdbd3c5c6021eac1ec93611387b10d1", + "addons/core/Scripts/Game/ERR/00_Core/ERR_VehicleSecurityActions.c": "bd7d0aeb4abcc9d8044e4888f9a92f9e5fc97c098bdfa3bbad57e1a29697a779", + "addons/core/Scripts/Game/ERR/00_Core/ERR_VehicleSecurityComponent.c": "2ffec4e646584ec546147fc4b08249825cb32b531aba26467b586d760485adc3", + "addons/core/Scripts/Game/ERR/00_Core/ERR_ViewDistance.c": "8514f72f8207f12570d2317e64094a45507a1647dfd45a1501499ef81e90189f", + "addons/core/Scripts/Game/ERR/00_Core/ERR_WelcomeIdentity.c": "8624bac67c1990f87b3fb799361e5facd31c2e03cb621563b9c73c4fe9d7f87b", + "addons/core/Scripts/Game/ERR/00_Core/ERR_WelcomeVoice.c": "a6a9a816dee1c766675990c158a757cf9ea8628a7b2b0de991af67ff4cd23e47", + "addons/core/Scripts/Game/ERR/00_Core/ERR_ZBakedSpeechProbe.c": "533c89b6a258dccb61d7ff6abe0a43da58d52ffae60735a38c2545fbb4480afb", + "addons/core/Scripts/Game/ERR/00_Core/ERR_ZSelfEpinephrineProbe.c": "a13e14d1ef525209d4609a2532c6d72135377ce058298937b632a91eeb6392fe", + "addons/core/Scripts/Game/ERR/00_Core/ERR_ZStartBackpackProbe.c": "6778cd98392f4e73dfe974782e626d98472251c1266698020d63edf8fe735bcf", + "addons/core/Scripts/Game/ERR/10_AI/ERR_AIDriverHorn.c": "db9f100c6cc10efc6f5b86e8fe9adb75657ebabee6f8bf0c89b997c2e947750a", + "addons/core/Scripts/Game/ERR/10_AI/ERR_AirAmmoMission.c": "0a471a40c8f7dfb797d8d35e41c5b1ff91e8d2ab13b43cf866e46c0e4ab4ed9d", + "addons/core/Scripts/Game/ERR/10_AI/ERR_AirAssaultLoad.c": "de7b6c485167ab68ab0b37b96fe161ee821c2efd41362172b810448a02110e68", + "addons/core/Scripts/Game/ERR/10_AI/ERR_AirAssaultSystem.c": "2eaf9816eee3e1cd2ac70744a6ef7ea5a90d0a3eebdf925e384028a7edde6a42", + "addons/core/Scripts/Game/ERR/10_AI/ERR_AirReconSystem.c": "f8a0e3cf4552d8133efd33c2126ea15a7694676773a7047c15e00021c1d9721e", + "addons/core/Scripts/Game/ERR/10_AI/ERR_AirSupportPolicy.c": "c1a7ac8759ca8ec8b43cbccf303255a2f0b69de447d0d991e44b6bd3db415d51", + "addons/core/Scripts/Game/ERR/10_AI/ERR_AircraftAmmo.c": "2be282406d0c45ab2e35b0ced791b5e494c662588f536701a4e82e6f5fb7c913", + "addons/core/Scripts/Game/ERR/10_AI/ERR_AircraftControlBridge.c": "b8f0141644d8f043c6db4c2d4bb93215c548e5c27ab5468c66e996d62bdf905a", + "addons/core/Scripts/Game/ERR/10_AI/ERR_AircraftFieldEnvelope.c": "0f53c7d9ab167a804eb904d63725decebb53fd5796fdf27864a75abed5679838", + "addons/core/Scripts/Game/ERR/10_AI/ERR_AircraftFieldFlight.c": "c04e264cff9963821852094c451502d31bf9c96d4deae2e8ff8a2373b53b5665", + "addons/core/Scripts/Game/ERR/10_AI/ERR_AircraftFieldRules.c": "30be68f4ca2db7e169f6f0432815821179cddf9159f7b150341dc8eb479bbd17", + "addons/core/Scripts/Game/ERR/10_AI/ERR_AircraftFlight.c": "aa25a8e67a30c48677bf528236402b7f8e5d815dc18df93b878520ad3d1fe8a7", + "addons/core/Scripts/Game/ERR/10_AI/ERR_AircraftFlightEnvelope.c": "8125cef61fb283d0d7c4dd2df3c04b062b448f1101fd48dd53f4f4097df5fef3", + "addons/core/Scripts/Game/ERR/10_AI/ERR_AircraftRouteEnvelope.c": "e8fcef844239c47a1f2f36be420afe943bc450091b05859435406b46c87fa511", + "addons/core/Scripts/Game/ERR/10_AI/ERR_AircraftRouteFlight.c": "1d8d92bf6d97429d68a9f62018232e90cc124cc8d7445efeabe863706a31e2b9", + "addons/core/Scripts/Game/ERR/10_AI/ERR_AircraftService.c": "3f05209227986b5c6bfb193f8f53783cfd4ef083bce898e22257c3e63daed913", + "addons/core/Scripts/Game/ERR/10_AI/ERR_AirfieldSupport.c": "c6d88ede0b1b6bac5a7075b6e2e783ccfa8850210aabd28bfa4bcdb698cc5f87", + "addons/core/Scripts/Game/ERR/10_AI/ERR_AssaultParachute.c": "a93c996059e7166988e9d1b0b498cbfd36f19a1cf8520cb4e9215a8884752e18", + "addons/core/Scripts/Game/ERR/10_AI/ERR_AttackSpace.c": "e7be303231b5946d78c61480a5de3f5b37a63d0d2281a9a30a21e59f072904d0", + "addons/core/Scripts/Game/ERR/10_AI/ERR_AutomaticEquipment.c": "8658421f846fcd3402289103762edaccbe3ca26280d7d72df2846c32ae8a4cdc", + "addons/core/Scripts/Game/ERR/10_AI/ERR_BodyRecovery.c": "f5fc311ecac4533c2d053a686c51e71216e69130a34483f27146627172914c99", + "addons/core/Scripts/Game/ERR/10_AI/ERR_CessnaBridge.c": "f1adb0f9b92f6ed94a8e9897b64e2fccba0f28552525a93f1ab893faa4fc5da2", + "addons/core/Scripts/Game/ERR/10_AI/ERR_CivilianTraffic.c": "b56023f446303f0c34109fb2cc21a4da8afae8742c4f17d43e671195258c7ee7", + "addons/core/Scripts/Game/ERR/10_AI/ERR_ConvoyBoardingProgress.c": "328f8a5eabb8174b7727eee1d675db83a2eb0be7b8e834db4e950a645ca5d7a3", + "addons/core/Scripts/Game/ERR/10_AI/ERR_ConvoyBudget.c": "fc7e254056c1da4aadd26d4f56d51ee375d5d3331f5f7e5183581108c7474a10", + "addons/core/Scripts/Game/ERR/10_AI/ERR_ConvoyCombat.c": "5c4b7576b28d51edea868cbb91a0ab31a40e6ddb558f1b8a38e07e20fdb2969d", + "addons/core/Scripts/Game/ERR/10_AI/ERR_ConvoyMineStock.c": "4497d6b790a45df2b76d18541ddaf299b406def88b868caa29f096849026a42c", + "addons/core/Scripts/Game/ERR/10_AI/ERR_ConvoyPlacement.c": "af4799e3028448e1a73f944989313e5d10c6262521bd29a8cdd5236842717963", + "addons/core/Scripts/Game/ERR/10_AI/ERR_ConvoyRoadPlan.c": "fae404f85cae63e63976938a5fdb73efc988ba25c5846564f12edca04fb88551", + "addons/core/Scripts/Game/ERR/10_AI/ERR_ConvoyService.c": "7e9a8034060187b1f9a0ad47b5b82586f48cfcc38308a9ca935ed5b770b43722", + "addons/core/Scripts/Game/ERR/10_AI/ERR_ConvoyStartup.c": "360228fd45aa6ecd9426e36120b5e637d2feee1e3a4a89aac8207526b871c87e", + "addons/core/Scripts/Game/ERR/10_AI/ERR_DroneBridge.c": "9ad23a763c5995b2ac6f68ed02def487b0ba887e8ca68f0e546d1b6812504cc9", + "addons/core/Scripts/Game/ERR/10_AI/ERR_DroneRecon.c": "dc685b57c884d733e0ff90cf7937f5664ec08545f4cbf59d63bc8a84383dc442", + "addons/core/Scripts/Game/ERR/10_AI/ERR_EnemyEquipment.c": "dfb6a7aeda23adb8aff2292753b694770affc9855bff9fb11d50bb534f9219eb", + "addons/core/Scripts/Game/ERR/10_AI/ERR_EnemyGunnerSkill.c": "adf8bac5a6f7e40b2f9caff5fe9be590c4e4ce2b2b387ba39e741a3c4f4cc564", + "addons/core/Scripts/Game/ERR/10_AI/ERR_EnemyLoadout.c": "a48f32dbd7f209bf08fce2840aaffc1781c571fc679763be58987f6b082e776c", + "addons/core/Scripts/Game/ERR/10_AI/ERR_EnemyMapMarking.c": "0f161fd3e08a54e3e1063679127549e482c40253a022e9d06cd9ee4d740b8625", + "addons/core/Scripts/Game/ERR/10_AI/ERR_EnemyMedicine.c": "68b65c98214e1a27383e155727901a4f70e9c065bb0cf133bdcf7fe6d5a57a40", + "addons/core/Scripts/Game/ERR/10_AI/ERR_EnemyOptics.c": "215e8a05594c541861b48e093520c00091708eb0f3635dcee5d0b5e1160230eb", + "addons/core/Scripts/Game/ERR/10_AI/ERR_EnemyRadio.c": "3a97e5c3de9ff33873d97c6b2d84ae505cfc4f3146e047b928e76ec3b22c8789", + "addons/core/Scripts/Game/ERR/10_AI/ERR_EnemySkillAwareness.c": "00c450d033e43fc45c9e2cb64a1d81161d123cc594a4292cfc5f68eb6c17ee60", + "addons/core/Scripts/Game/ERR/10_AI/ERR_EngineerMine.c": "067bed625a3f4d0fa189f46476988e90528c59b2351ec0ea71916317b06efabb", + "addons/core/Scripts/Game/ERR/10_AI/ERR_EngineerMinePosts.c": "bcddb72845189b52e5ed71c687d7dd4b0b40b91b7306c3f6edf84a631002fc5b", + "addons/core/Scripts/Game/ERR/10_AI/ERR_EngineerMineSite.c": "d838f5693d4fa5d252d529e59777f560674c02532f1041a5598e938b3a850839", + "addons/core/Scripts/Game/ERR/10_AI/ERR_EquipmentLog.c": "df9eec7f94e4bf1b30b9463604e9b97ba3cbff36028a80b81327b0b021cbb2a9", + "addons/core/Scripts/Game/ERR/10_AI/ERR_FiniteMagazineReservation.c": "8278590ced1936d618905b0cbd0b5aebddda238d426a6a2a52e455fc36bbb502", + "addons/core/Scripts/Game/ERR/10_AI/ERR_GarageVehicles.c": "665e7c1f2fc966b861a2c1b802e32678db510a3a44c44ed7392bb40a0da297f0", + "addons/core/Scripts/Game/ERR/10_AI/ERR_GroundDepotHQ.c": "c51fccd0ecdb0a1d6ba99ae965e2e572fc1ea65a5d8dc2e1e2a058698dae45c3", + "addons/core/Scripts/Game/ERR/10_AI/ERR_GroundDepotLoading.c": "6abb278409527bb67db084138a773de240d99ba7f63f9ac740f8167615d53f1d", + "addons/core/Scripts/Game/ERR/10_AI/ERR_GroundDepotTransfer.c": "21daa9ed8cb5f2dc08a0fa85e305fa4b4f3e7b01e16c71fd1ca98d66a4e8b652", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HQ.c": "9bd25f9fc7e574c515c7131e8b52eb357e295822e1ce2f401e6e86cfd6ce062f", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HQAdminProvider.c": "8879febe59fd99584add06690b29853f7cf14b580bb15c9a955cf1a2ce033908", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HQAmmoReporting.c": "95c024cbdd35c02d9b0c3d389d29bb042e5dda6ffd2f5f0d896078274b3adb35", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HQAmmoSampler.c": "8bb0ec1422887feaa340307d3c60bae50fc82d424fce6390876e580ff8b75e8b", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HQBodyObserver.c": "f59421c1e0c83f0f480d7dd4d048b4b0a41193ed8fe8f2f627d2b6a696420ea1", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HQCoordinated.c": "5b67ad624c4a6b0bbb715314ab9cf14e527018fccb7d38af479184b4952b8c49", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HQCoverage.c": "0ef1ed718797114d95c636c8fa5a9e46a5f2a7ccbe3f432049b0c7d37f1eebd0", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HQDeliveredCasualties.c": "1f738127e55e843ee2705007cedb5c08741f52f63c75eca7c80242177af82273", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HQDoctrine.c": "6335728e89ed40ce11b811f00b61bfea76e94dd3379e4357cbfc438b05522bb0", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HQExecution.c": "d286b8273faec0acf87366bf53ad2517d5b7d909741e981cdf283cd1f4f50314", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HQHunterOperations.c": "b9200b6de3a3a61de94ad720aca94aca64db542acc64ba65e7b8061a5e4884e7", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HQHypotheses.c": "060796bbbed604f9733d23e131c9836702870c6e25c81cc0b396c885eb06ade2", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HQJournal.c": "53563ff54fc4e0656713d6eaec5e88ddf69fd4bfa8ef6a67cfa13380d24031e1", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HQLocalAwareness.c": "124260280ac8eda0e920bfcfc86932c9b21df6b1f7a6aa8acfc43feea3da149f", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HQLocalHandoff.c": "2dd700dae9d9b232d22ca63ff01af75a3f5cc213ac24b7c0a43ffa38bc0b9ffa", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HQMemory.c": "ec2047a477fb4273e22ae6bb68e7365f321f55c583b5d2c48c4abf2ac38e3b7d", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HQMineSampler.c": "2a0fdc4d27e947a1d77b02ae23f757c7fa074eb456f817b7df0766583d757f55", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HQMountedAmmoSampler.c": "97dfab7381385959b0906be13fa2575253ac43be91a271a5d41edaf4106366ac", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HQMountedDispatch.c": "12769b56019e9fa5b8141498a1c33814ba5262253193495e72f85972365961a7", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HQMountedIntercept.c": "5f45545c11de5e183969203cdf07e29089697ddc89752a9c5aea0fa2a1a33a97", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HQNetwork.c": "0b73be993628a55e3b21c8670d540e39c938093dd5cb4d586e800ac530509b25", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HQObservation.c": "57ad3f0b68d150791e30a7e4bd7dfedfb1ddd78a1c76f228e67b33ea9cb7144e", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HQOperationSpeech.c": "6f133c104223ce23262c2927db9e16df0f76f1ee647085114baef1d51417f4f3", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HQOperations.c": "b83b805c61c3960801d24ae54854ba7aa4dc914ea89e61db365b5ec99f305ae5", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HQPursuit.c": "280e91feecc4e5b6d0886fc4201b12117b58c56857d4386b6c4cb963557274bf", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HQReport.c": "4c0c1f0e33f621d1e02375cf4f56b0e8c4ba6fd851912d3d16081949bae46158", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HQRoadIntercept.c": "f87727aa1c722a180c7b71fa2d896601b6250978a21bd2d1e973501fee81373b", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HQSquadJudgment.c": "12e9ccc9d42a858a998bd46708fbb04d05d48dcf460303a5ecc1629021051bb4", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HQStatusSampler.c": "b937eaed913a5095afa8e678dc1c36b5c805541bf8cd5be927069533d6baed1c", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HQTacticalGround.c": "eba9a9cabdaa80b936aa5e7025544e8b011fb597b96cbdb8d781583c025afbe8", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HQTask.c": "29359f52734cbf3400e12696057bbb7aa54466a018fc88c42015b6eb9bb9990c", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HQWatch.c": "abe634cf6003ae920ec1ed18e305ed462920204960894520d3dd11f7e5ef1c33", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HelicopterAvailability.c": "60eaef2f6d4b2fd44861c5a4434ef97e732e40a5ff7401e2da451ed2dd9c2762", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HunterCloseContact.c": "56f22051566354ccdc61531af4869b62458a30d945e4d21de5aadf7079d2245b", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HunterCombat.c": "df1c319d10efd07ed6f971cf0e41d8d7e377b04ea7f0fe143bf94df733fd1d9c", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HunterCrewRecovery.c": "22e192ca222017d4d7a27210c6e42cf0f128827bca00b37924c9c8d6866b62a4", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HunterGunTeam.c": "0e66d82964ef8eeba29de11d5bb2af954ad72a8090855ac4c1b28fe1e66c0d69", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HunterOpeningPlan.c": "7791513b8b41f4d2ba1b593b5219d7f6e2bf036e352f8e4eb1a8029fc97ab7c8", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HunterSarkaRules.c": "8c8c96e2f985f553e303f7e459b73a2a5cd0051951b22aa0ed364bc2ae19e194", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HunterService.c": "01007951eea6a4eb980c3d88f3aad10219ae54f8d4f9982c40922edaa9d55300", + "addons/core/Scripts/Game/ERR/10_AI/ERR_HunterTactics.c": "274ae619589b85cf64df1510631ab914aa9fe8c50fc2a76e6e8c5aa5a2c8d9ba", + "addons/core/Scripts/Game/ERR/10_AI/ERR_InfantryAmmoAccess.c": "ab4262f78d54782c5ecbf5fff4ebe3da16d72329658d7e18c0c35387dc8b3c7d", + "addons/core/Scripts/Game/ERR/10_AI/ERR_InfantryAmmoTransfer.c": "99fa26beb0c0869d0cd694500f3bfc0705c2c1cf674dea90d98fb93a59570ef7", + "addons/core/Scripts/Game/ERR/10_AI/ERR_InfantryCombat.c": "5d7a8e579edf95003133ddb6e509202dba56ac9e68385247e1ac0256c1b319ec", + "addons/core/Scripts/Game/ERR/10_AI/ERR_InfantryMineTransfer.c": "02c399413f80879c22b4891e8ec807c67a6235677095fc4b98bafdc360d6944c", + "addons/core/Scripts/Game/ERR/10_AI/ERR_InfantryResupply.c": "ca8eee2704e7758172e33014404bb1307c683f19b561b840d4592f6312051e62", + "addons/core/Scripts/Game/ERR/10_AI/ERR_InfantrySupplyPool.c": "c8e454573cf064ff392291d6feebf1f23be64390b5b8e944c03dd065f9f46b42", + "addons/core/Scripts/Game/ERR/10_AI/ERR_InterceptVehicleFootprint.c": "5dea67d14ebab67231c485e14bc92f34c005a5f1bf6d9c0943db28e9857e958a", + "addons/core/Scripts/Game/ERR/10_AI/ERR_KnownMines.c": "045468a052e485a91da601adcb42b504bb6e4ff13b096bc0666128e50a6aa9c6", + "addons/core/Scripts/Game/ERR/10_AI/ERR_MortarAimSolution.c": "59e8343d09f7a44871d8d3335d6ad1d02216abb5deed30d38b5ec9ba3f2c0649", + "addons/core/Scripts/Game/ERR/10_AI/ERR_MortarBattery.c": "157024afc8fd3c1ffeea6ae923ff091e5773b9ffcf5f5864f8040d001e689110", + "addons/core/Scripts/Game/ERR/10_AI/ERR_MortarCourierTransfer.c": "968e58ca700b4a11e5e04a5c159696f514a0b1bce531210172b913e495f7e2b7", + "addons/core/Scripts/Game/ERR/10_AI/ERR_MortarFiring.c": "2606ed8c19d5569815dacd3248f012072bb76834f429ce7557d24d884724f733", + "addons/core/Scripts/Game/ERR/10_AI/ERR_MortarLogistics.c": "b3624e4a00a2bdef16f6c100bbd79910e3bb8c2ae8ec5fe2ad5aa70bffecd303", + "addons/core/Scripts/Game/ERR/10_AI/ERR_MortarPrediction.c": "05863b2b4f9f70cdb288f91c722cbea163c13f2a2927dc485482e5bd4fa7d57f", + "addons/core/Scripts/Game/ERR/10_AI/ERR_MortarReadiness.c": "4c3799b3f2681e977669de0cbfaeb307d9a682b04365bfc9f59079e762965758", + "addons/core/Scripts/Game/ERR/10_AI/ERR_MortarRefresh.c": "52ae8d9d6cad92f42d68c634091b80a474d2666b6c06d63a8c30a3fab71494c4", + "addons/core/Scripts/Game/ERR/10_AI/ERR_MortarReportLedger.c": "42a96040b63e56677353e55164ae23031c90f70b4d6673a9f412ad7b19e636ae", + "addons/core/Scripts/Game/ERR/10_AI/ERR_MortarSalvo.c": "c128850c7a78a4d8fee00ad38f48b265f1fbd1d9b24b092ddc5c205b0f0ad6da", + "addons/core/Scripts/Game/ERR/10_AI/ERR_MortarSpotting.c": "39b3c223ade610ed9f1d73040423339ac65c90b153f30c6f5c42290978c57427", + "addons/core/Scripts/Game/ERR/10_AI/ERR_MortarStation.c": "cbbd7c86f722b664c85ab7c070ae1131d2ce5c41d1dacb4381bff9c1720a1866", + "addons/core/Scripts/Game/ERR/10_AI/ERR_MortarSupplyTransfer.c": "ad71084f507ad9c32d3055e7ec6844a1ec5ddf568c0216ab8391e902b56e417c", + "addons/core/Scripts/Game/ERR/10_AI/ERR_MortarSystem.c": "01bae0bab685e9f0c86c3a8939d18ce6f20dc0b8c1a389d179d91e93008c6957", + "addons/core/Scripts/Game/ERR/10_AI/ERR_MountedAmmoPickup.c": "5f7ca5b31f3b405c2a6ca32ff91042f5b4dac6ab9640ce67fb10d7a74236ba69", + "addons/core/Scripts/Game/ERR/10_AI/ERR_MountedAmmoTransfer.c": "0b195784497672fdaf651f336c14f7be98c257f98c85cfbeb4f96fe1a401999b", + "addons/core/Scripts/Game/ERR/10_AI/ERR_MountedMagazineSeed.c": "b42d0aac142907433df8bedc40de24c94813544016cf5f451846f1980250f995", + "addons/core/Scripts/Game/ERR/10_AI/ERR_MountedResupply.c": "c26ad43705765be1c20eca37fbe2978b8c647151f6620ed37141657a4b7dc312", + "addons/core/Scripts/Game/ERR/10_AI/ERR_NativeAirAssaultProbe.c": "c1d55b338b157b758e6ffb993d5f689029b28b13929797c91e5dcb15b5e561ea", + "addons/core/Scripts/Game/ERR/10_AI/ERR_NativeAirLogisticsProbe.c": "58fe863775d0ad575cb566c78cef696c9826691cf49ef9adde76376be7316db1", + "addons/core/Scripts/Game/ERR/10_AI/ERR_NativeAirReconProbe.c": "c1216e0512a0268e4dbb82429e228334401c0c3cac52ba4486ae6dc91e41576d", + "addons/core/Scripts/Game/ERR/10_AI/ERR_NativeAircraftControlProbe.c": "0cf3e72ccdc42e6ef20fb71d743f0e037a9e69b2e082c720fa705628cf790205", + "addons/core/Scripts/Game/ERR/10_AI/ERR_NativeAircraftFieldProbe.c": "b64907c7566a894ca2f3c49ede5d972d4087a938da1a0ca87bcbd7c2203b2c52", + "addons/core/Scripts/Game/ERR/10_AI/ERR_NativeAircraftRouteProbe.c": "8d0dca97e5106d1c84b64992c789e1af0689514beefc027e713ca6ab901fc470", + "addons/core/Scripts/Game/ERR/10_AI/ERR_NativeMortarCourierProbe.c": "740c8bebbd4128a9311b1167d1058549475d6b46f81c9b6c0d19650f4b50616f", + "addons/core/Scripts/Game/ERR/10_AI/ERR_NativeMortarFiringProbe.c": "ee570d21bede8baebefc799399712d9582b3e30ebda7299f6c941777f02ad2a2", + "addons/core/Scripts/Game/ERR/10_AI/ERR_NativeMortarSalvoProbe.c": "fb9ccc6b36247ab3ad828ffbb2556abf5c2838d93ea6cd1ad259c0a015142f5e", + "addons/core/Scripts/Game/ERR/10_AI/ERR_NativeMortarStationProbe.c": "a110f0abc753cb1d2f781e457e637dd5346ecd2e924eb5eb3a5c7dca3d1e2340", + "addons/core/Scripts/Game/ERR/10_AI/ERR_NativeMortarTransferProbe.c": "399c21940ef10777b46fdb3e905430ce43404ce1de2f4a6bb62f9c61c1a0689c", + "addons/core/Scripts/Game/ERR/10_AI/ERR_NativePatrolHQProbe.c": "9784b551cbb91f017004fb728ce08b5c36bead0ffc83aa7149c2c46a7c4dc495", + "addons/core/Scripts/Game/ERR/10_AI/ERR_NativeScoutProbe.c": "41b39b1abe5e51a5b8a428d533cccbfb0dda9d7a570228dc3489408c60543f17", + "addons/core/Scripts/Game/ERR/10_AI/ERR_NativeTownProbe.c": "28876e65f9f8a7d96d8056f446b61e12e97d9bbf1a5ac0d4c40edee44e6c4a21", + "addons/core/Scripts/Game/ERR/10_AI/ERR_ObjectiveDefence.c": "83ef91c2118521aedb4c1838b2e47909c80e0950086449b98ced168f1fd87080", + "addons/core/Scripts/Game/ERR/10_AI/ERR_OptionalMotorbikes.c": "87cf6544983386d29058a6f892aadbf242a517cfff4ed24348f56a72bcde8cd1", + "addons/core/Scripts/Game/ERR/10_AI/ERR_ParkedCarCatalog.c": "1d865c263e910071b127ccd1bdc8b58dd45768c4629194da49705f76995ff0e7", + "addons/core/Scripts/Game/ERR/10_AI/ERR_PlaneFlight.c": "14fa2328e1d31cf59fb89cbb53ba33224be6cfcdd2813525fa9585f8b2e237c7", + "addons/core/Scripts/Game/ERR/10_AI/ERR_PlaneRecon.c": "fe94c29fd9befd3c1bf3ab97b9b27458a8563697d4d46f72df43c6e642f3664e", + "addons/core/Scripts/Game/ERR/10_AI/ERR_ReconAirports.c": "7551347d776d6e0eec818d6468cacbca7ac53daee7317e0a1618ca3d39ebc762", + "addons/core/Scripts/Game/ERR/10_AI/ERR_ReconCrewLocks.c": "83b63c21574140208792aaf3d24e3d22b255a078871382122110bb48520d4541", + "addons/core/Scripts/Game/ERR/10_AI/ERR_ReconFlightComponent.c": "1386e2a2d2a635417ca517aa1d8ddd4f657dd415ff59be2465543cd8f601e7a9", + "addons/core/Scripts/Game/ERR/10_AI/ERR_RescueAssets.c": "fca1a4518baf09f0b2c97f3a51995001d9674849417fea9ca1233e8d1f578495", + "addons/core/Scripts/Game/ERR/10_AI/ERR_RescueFlightComponent.c": "60db8029bbfbbb362b5bce61f509740eabea5925b93bc975e7c2b44addcf03f3", + "addons/core/Scripts/Game/ERR/10_AI/ERR_RoadblockMining.c": "47d0212cd20c0b320a47123d17f2b89f7d60b44072a00c69944ada7bb83c4e5a", + "addons/core/Scripts/Game/ERR/10_AI/ERR_Roadblocks.c": "879f78beeb284d1298ec49dbca9624c5f3899ffc6fcd376e748bf55e4347d4bf", + "addons/core/Scripts/Game/ERR/10_AI/ERR_ScoutSystem.c": "63287a252e4e7d5aefce840279f26ce3e1f286cb79cadb32596c37897cec7119", + "addons/core/Scripts/Game/ERR/10_AI/ERR_SettlementSafety.c": "e5c0ebc95521a9a33a3f7d9cca6c551dda862a08b7af20b017877aba9584795b", + "addons/core/Scripts/Game/ERR/10_AI/ERR_SoldierSpeech.c": "ca87494ecd355052b46b72e2faf13660e458f3d376285bb0e4c20fd0112ef2e2", + "addons/core/Scripts/Game/ERR/10_AI/ERR_SoldierSpeechAudio.c": "4734d614c5366ae3ff57717f514664c9dfdbe4408e16ba36f6b10d807361e313", + "addons/core/Scripts/Game/ERR/10_AI/ERR_SoldierSpeechContext.c": "d2baa94f036f7dde5cf24e004ad1fb9416f249cbf7d0c6c07c5898f7d21751be", + "addons/core/Scripts/Game/ERR/10_AI/ERR_SupplyConvoyColumn.c": "bd898aabcac5724d60dbecc4ff5ab6f062c66cf7c735ff59127c588ff94f898e", + "addons/core/Scripts/Game/ERR/10_AI/ERR_SupplyConvoyService.c": "5393efab9d663382e67b9b27a388063986a4f99c2607328c998f007588074ca4", + "addons/core/Scripts/Game/ERR/10_AI/ERR_SupplyConvoySystem.c": "f09aa817c27d6af0ccfb544f4ab1ae2afafb63d626641e03d87cfe159475d821", + "addons/core/Scripts/Game/ERR/10_AI/ERR_SupplyConvoyTactics.c": "d2fe073b0c23c877afaa65e246544751eecabce4febd72412fc9a4ec18eb1c8c", + "addons/core/Scripts/Game/ERR/10_AI/ERR_SupportScenario.c": "151eb6189701e559bd4f1359c91187f5a64deab1f2bacbd521c4f4cf3de6d878", + "addons/core/Scripts/Game/ERR/10_AI/ERR_TownGarrisons.c": "9b48331ff8bf7e5a111b498c59a57a5d0210125af983424535286a4aeda9a18d", + "addons/core/Scripts/Game/ERR/10_AI/ERR_VehicleAlarmPerception.c": "45ac71d25e10a057a26a5b0fc7128935baaf47f4c0f87208a4420fa52086fd98", + "addons/core/Scripts/Game/ERR/20_Intel/ERR_IntelAdminProvider.c": "40adf8497b64cc74b1390149fe5ba789ee2f14e6fb3c325af8f5ffa8c806878e", + "addons/core/Scripts/Game/ERR/20_Intel/ERR_IntelDiscoveryFeedback.c": "741de1dbadfd46c154905a0918aad41386ddc139d843553db55d20d60700c020", + "addons/core/Scripts/Game/ERR/20_Intel/ERR_IntelEvidence.c": "ff436bd3c7aa0fcd5c24e940430c1ffdda934889953f63e877ae418bc9557d26", + "addons/core/Scripts/Game/ERR/20_Intel/ERR_IntelReroll.c": "d8b04de9ea789732cc78ebce9aa60786c86fe46d05f671cf251eefa68a214b59", + "addons/core/Scripts/Game/ERR/20_Intel/ERR_IntelService.c": "2911325c79a7a372628b18ffa0e110d11919ce2c2cd7b19277bfd608fdb03dfc", + "addons/core/Scripts/Game/ERR/20_Intel/ERR_MineIntel.c": "3ce16cebaa9703b2f9803df7c11614f94de6460a9136dab8f80dcad41ae2b1c2", + "addons/core/Scripts/Game/ERR/30_Map/ERRM_AtlasPresentation.c": "f0b36472b16477b8c3b5b62f55cfb2a3b3a08304b0779bc39244359af1abe203", + "addons/core/Scripts/Game/ERR/30_Map/ERRM_NativeAtlasAnimationProbe.c": "845b39276bfdbadd6bfd9b41f445fce1a9d40231d38ef32adc7a6654868e17f2", + "addons/core/Scripts/Game/ERR/30_Map/ERRM_NativeHeldMapProbe.c": "46c0210a3aef40fc34e4c9682d9364b1cc1e15d4373d8aabfeac7d9b8e55c351", + "addons/core/Scripts/Game/ERR/30_Map/ERRM_NativeMapOwnershipProbe.c": "32418602f085e3edba7343f42a6a691630b533be262002f29248e8ae87a38254", + "addons/core/Scripts/Game/ERR/30_Map/ERRM_SharedMapComponent.c": "73298c94ecc8d227452b0eddfcaec7fe9df4748875fa7fafcc52544a43658f36", + "addons/core/Scripts/Game/ERR/30_Map/ERRM_SharedMapPages.c": "2286d327b87f127f052e06c22f553b30ea31d25127b860fc02a220aeb4ce3ea2", + "addons/core/Scripts/Game/ERR/30_Map/ERR_ScenarioMap.c": "75fa1d742129ef7f33c005cd48f56db7f49ee7bde3c5428532b0b501b032b0a3", + "addons/core/Scripts/Game/ERR/40_Chat/ERR_AdminCommands.c": "282fe1463add7af8771aa58507b254e69d2d06f50274d4c77321db073f8394f0", + "addons/core/Scripts/Game/ERR/40_Chat/ERR_NativeAlarmHearingProbe.c": "5dbb6a48909b76cd141e3a79ef01d2e68cafee55153821c4471f85c761fff94f", + "addons/core/Scripts/Game/ERR/40_Chat/ERR_NativeConvoyCoverProbe.c": "d2450140cf9bdf09210473234605b4c0d818ea5b91f9532209166a35c5d13701", + "addons/core/Scripts/Game/ERR/40_Chat/ERR_NativeConvoyProbe.c": "87df652b339df4fe4239617752ac5fd9f47aa4396ba94742a0af39a32b54e784", + "addons/core/Scripts/Game/ERR/40_Chat/ERR_NativeCrashGeometryProbe.c": "7867ce1794aa0d1bbab72c32f60f5bd0c2bad4f5ff6224978c215e7828840178", + "addons/core/Scripts/Game/ERR/40_Chat/ERR_NativeCrashStartProbe.c": "957f40e36bfc025b8bc752b1f41dc177c8d0844c69ee5994321a47cf3ddea1ad", + "addons/core/Scripts/Game/ERR/40_Chat/ERR_NativeHQBodyProbe.c": "811244cc8297817efbfc3ee4edf01c868eae23c88127ba0c72e98ee7422da72f", + "addons/core/Scripts/Game/ERR/40_Chat/ERR_NativeHQMemoryProbe.c": "9bcd0b2e1007d40cb794aabe80368a2584ae58aad6a3ebbee070efc7b21a8147", + "addons/core/Scripts/Game/ERR/40_Chat/ERR_NativeHQResponseProof.c": "0f8b09fd8753234c91fd6baaca0e2f812e409ae1c4be8f340b648ae59b69c2f3", + "addons/core/Scripts/Game/ERR/40_Chat/ERR_NativeInfantryTransferProbe.c": "9b2de4dc22bdadd51b0271219a971dc8dc07f70ed3534f306acf03ed81b29424", + "addons/core/Scripts/Game/ERR/40_Chat/ERR_NativeLocalHandoffProbe.c": "0d4d61c424a16008595f86fa61f3b848caf9bd6e9ebbacea9c10254d88ba378e", + "addons/core/Scripts/Game/ERR/40_Chat/ERR_NativeMaintenanceProbe.c": "852b9b397efc3f919c97fec63bc3df1a850cd7833421af8441994afd191951d4", + "addons/core/Scripts/Game/ERR/40_Chat/ERR_NativeMortarProbe.c": "ddb892141500c192c0787b011d57dd8c07dd8c9a3ca5fdc407f6c271897bde0a", + "addons/core/Scripts/Game/ERR/40_Chat/ERR_NativeMountedAmmoProbe.c": "7ddb634444c79ad9291d53a754dc0ed383342e36720ddaa4b7aa4bd4e7ee656d", + "addons/core/Scripts/Game/ERR/40_Chat/ERR_NativeMountedCourierProbe.c": "12710e9e5548fe8856f7a52f3566338369a8a1eedf0bd92af16229271872ada5", + "addons/core/Scripts/Game/ERR/40_Chat/ERR_NativeMountedInterceptProbe.c": "34b0b1e38a59f14c4e83d93ec412779945388e6f4d697bda2f6cb90f519a6372", + "addons/core/Scripts/Game/ERR/40_Chat/ERR_NativeMountedSwapProbe.c": "a6721fcaaccadf8eddb06687c7d587d0a3e377d5d1bb0b8e72e630fede8690ac", + "addons/core/Scripts/Game/ERR/40_Chat/ERR_NativeRadioProbe.c": "a4bd5cd9fe0594e05238b2d6dcd80466773f8fa160dc60bbe1eda70e3acdbe79", + "addons/core/Scripts/Game/ERR/40_Chat/ERR_NativeRandomRadiusTrace.c": "7e946406067092e30b6b75cc6ef0c56db7f866249e02bd13648156933ee578d9", + "addons/core/Scripts/Game/ERR/40_Chat/ERR_NativeSmoke.c": "4dfb218419db4cd7a46d25cb1f2e578e75ad89efc43f99c6ca8ab8e591e139d7", + "addons/core/Scripts/Game/ERR/40_Chat/ERR_NativeSupplyConvoyProbe.c": "89c2696071912500840f4bb91d754f695bf674335b51a7ee1d03727084fd4869", + "addons/core/Scripts/Game/ERR/40_Chat/ERR_NativeSupplyTravelProbe.c": "32e6074e912491f2643a24cb44311b9fe5b069c76e4e94a45e7409ac82d36507", + "addons/core/Scripts/Game/ERR/40_Chat/ERR_OrdinaryScenarioLaunchChat.c": "a747af09599ce4d0c52051f18f00c4624d24d137e328341b580b82e896c6bf65", + "addons/core/Scripts/Game/Editor/Components/EditableEntity/RHS_CAS_EditableEntityComponent.c": "3788cbdc39c3da4f6564b73b7f49848077ad4504b6c28a1984c424247d1c6678", + "addons/core/Scripts/Game/Vehicle/RHS_DestructionTireComponent.c": "9b3de0966d7b8184bb70a14df2a448e06f34ca9db09b46da07277cb92ab7f8b2", + "addons/core/Scripts/GameLib/ERR/00_Core/ERR_DiagnosticNoSplash.c": "0ea1b402f8927b6d68bf6f7e5caa2967f7e3a39147634faab147796b791933b5", + "addons/core/Scripts/WorkbenchGame/ERR/00_Core/ERR_BuildAtlasModel.c": "f6cb5e6f5afc9bb60a8a46d96b52c7506882faf0a880e0b20a01a2603b336d2c", + "addons/core/Scripts/WorkbenchGame/ERR/00_Core/ERR_ValidateBaseWorldPlugin.c": "49a38c37b51e5318c7dcbcb01543dd9a6300d053f0d39808b3974f4edc45b871", + "addons/core/Scripts/WorkbenchGame/ERR/40_Chat/ERR_ValidateWorldPlugin.c": "d1f3fc372d0d16062a5983f2a6cffb6e72f202cb93fea5b33b4d77e0c852ecc7", + "addons/core/Sounds/ERR/Speech/radio_01.acp": "cf63378bf3950f5e6c1c1f46c057ad38a371b14b945b1201777820384805c3af", + "addons/core/Sounds/ERR/Speech/radio_01.acp.meta": "d5966526f35aa64dc980238f72f4f93f9d0e6a360f10e3f6538e97b7d086aa47", + "addons/core/Sounds/ERR/Speech/radio_01.wav": "cfe4a00000bc9b629a9e8e282ed64e7177673f829c5657b1ae2b2cb9e661d2ae", + "addons/core/Sounds/ERR/Speech/radio_01.wav.meta": "eaf33fa344fccf9aacab626117d03b96b135fa819d3e63ae300fac544291b571", + "addons/core/Sounds/ERR/Speech/radio_02.acp": "9111d118594094a8e09acdf80d8b107cc7d5d890b6ab086274e0e1004039e345", + "addons/core/Sounds/ERR/Speech/radio_02.acp.meta": "76b55d9abf7f599c5db3269a5829546a6d5f92e6350b2fe987245f9cd6b599fb", + "addons/core/Sounds/ERR/Speech/radio_02.wav": "6f0c94ae0e501afe6cc1aba804ba6a0403ba4de931debc28bf22970f591d0798", + "addons/core/Sounds/ERR/Speech/radio_02.wav.meta": "06ec85166aa4c54a6fafa1fa2eb2cc32f4a36dc8eecde8f9ba9912229e5e00e0", + "addons/core/Sounds/ERR/Speech/radio_03.acp": "019f939d65396f4a334a024bbf53c41479a9f8ce806610945af2be13e7352c70", + "addons/core/Sounds/ERR/Speech/radio_03.acp.meta": "8aa2f4f26f04bc3085ae046f543c047cdadf9af9e06a38920f1e1fd8a3aa02fe", + "addons/core/Sounds/ERR/Speech/radio_03.wav": "415a206bd1de167342cf1b82d59c708441b8d802395f941d15097c064133802a", + "addons/core/Sounds/ERR/Speech/radio_03.wav.meta": "de1d81fb653146404de5b6a6018c1cd73e902571b82d544de5b6cfccf21f5410", + "addons/core/Sounds/ERR/Speech/radio_04.acp": "77bcff7cc7ce49036a440e829fb4eab1dbe5252b0fc9ea24c42e6f6b68e2698e", + "addons/core/Sounds/ERR/Speech/radio_04.acp.meta": "dd61ee2545776cf23403240424470661c737048d01432d90b24f2c9e75f45d82", + "addons/core/Sounds/ERR/Speech/radio_04.wav": "a225810c7fba048517248fd9f7e9f7ab8aad5bac35e59f22e11e69166551f7f3", + "addons/core/Sounds/ERR/Speech/radio_04.wav.meta": "0ae046e2ac7f9653661ba99646d40dd78d52f113ea6554e1dbfd6e578572a4f4", + "addons/core/Sounds/ERR/Speech/radio_05.acp": "7dbc2b3b3d251eb8d3e749b0a7f32186b0421a95fa5585be493cf04b45510e3d", + "addons/core/Sounds/ERR/Speech/radio_05.acp.meta": "cbf3b48ed3865e30ba5d838d96ec4f1ee950cdcd51368f7a9259460e4b78cc1b", + "addons/core/Sounds/ERR/Speech/radio_05.wav": "90f5abe221165ac5cd7d88c9b3e01cf6fd4d00b594c84d09c6baf101fdb776ad", + "addons/core/Sounds/ERR/Speech/radio_05.wav.meta": "d8e3de0e1ae8670a01bcc272a1adf4199ffcea514ce024ee3286820dedab4d83", + "addons/core/Sounds/ERR/Speech/radio_06.acp": "e14da41c1cd186f35a4f385fab71ad85ad6fe718e67299a65466339ae23a2922", + "addons/core/Sounds/ERR/Speech/radio_06.acp.meta": "efc810a60e93453942adba476b423121f2a7dc1133b25d8764c1bec546a3949b", + "addons/core/Sounds/ERR/Speech/radio_06.wav": "b3f86b8dde535bc1a63301376c8d42775446d1b6117168557841565391fe0a14", + "addons/core/Sounds/ERR/Speech/radio_06.wav.meta": "07f53131f4ad153cc09051ba1de07f7b43d38f69781aad24371c4eeb331b280b", + "addons/core/Sounds/ERR/Speech/radio_07.acp": "bf3a48af07ad6e5da2ca6ed6c581fc6232e1bd62ebb905b934188366f2bc3d77", + "addons/core/Sounds/ERR/Speech/radio_07.acp.meta": "60aab59223c0ea734f7c1e88f803de30164ccef1a909730abed3eb76b3378ca2", + "addons/core/Sounds/ERR/Speech/radio_07.wav": "f3fd18ddaebe9eb3d0db9ac73c89a7b7a7f18b76e4b66d404d544be660a6825e", + "addons/core/Sounds/ERR/Speech/radio_07.wav.meta": "ef6c72aa32c1c46f7133782536744bdaf4eee03bcdb75aecb87accef6d1c4f2d", + "addons/core/Sounds/ERR/Speech/radio_08.acp": "a82c5dbcd7094085324d93d539c6f829c53dcf3781f40b8d65a10b7cb4125bae", + "addons/core/Sounds/ERR/Speech/radio_08.acp.meta": "69fb3400109e19d4f4d0fb371d056edbecc0a96a0a923174d1aba95dfeac1014", + "addons/core/Sounds/ERR/Speech/radio_08.wav": "ce3c2aff20dbea83aa6545a383c454969c5caeb53d5a88155ec182f789047d4a", + "addons/core/Sounds/ERR/Speech/radio_08.wav.meta": "72c5e117ab7b605b8370fe90923edee73593df6071c39b86556731387814a014", + "addons/core/Sounds/ERR/Speech/radio_09.acp": "73725377def1832742c7620fec46dc0100400d92b9cb79add8b4d44e94c46c0a", + "addons/core/Sounds/ERR/Speech/radio_09.acp.meta": "95456fe20def274a1972867024e9d0eb572f3878eae19c63522fcefe401dcb07", + "addons/core/Sounds/ERR/Speech/radio_09.wav": "3eb0be6393c431b526dbddc723cb608a7681a2dcd8af6910d9f2234aa98c923c", + "addons/core/Sounds/ERR/Speech/radio_09.wav.meta": "724dd301d1b25e41318503a815e87b54e7283735c51fd122af55c070f26adb37", + "addons/core/Sounds/ERR/Speech/radio_10.acp": "f976a0fecf73b3379ffb9728e96c68ca79800712919320e7ff7f3484cd2c9724", + "addons/core/Sounds/ERR/Speech/radio_10.acp.meta": "5411a9ffa23e42c8a2e8d4eba75d6e87631bcf542128327dfefd603a64d5b6ec", + "addons/core/Sounds/ERR/Speech/radio_10.wav": "2b2dac499a45a7779e79465d628a67b87078c0951db7db3e051feeb4342f2816", + "addons/core/Sounds/ERR/Speech/radio_10.wav.meta": "c3ac10a092dcb26ec637be6c9264a85eae1b6da55b9d8b44a14766a70ddf2933", + "addons/core/Sounds/ERR/Speech/soldier_1001.acp": "1af0d303063f37811a9b1a25424d887fe5eed4b5c57da71cf36ba6985f8cf002", + "addons/core/Sounds/ERR/Speech/soldier_1001.acp.meta": "2fbdda4d9fa83c6945985bd2f2215aa9f745b3a18adb0e7edafac1b01c161ba5", + "addons/core/Sounds/ERR/Speech/soldier_1001.wav": "a8935a5aded028f2fb03734f4423e731ea4f5b17394526df47c0407a3deddfe7", + "addons/core/Sounds/ERR/Speech/soldier_1001.wav.meta": "aff7a92a727d8bd4df033be2961fb85cafdc5c45fd272c5ea718bc07fb8e5cce", + "addons/core/Sounds/ERR/Speech/soldier_1002.acp": "1444636949683a430efe20a7f296e85e669cb8e26799c326f73a00c4f8d32fa5", + "addons/core/Sounds/ERR/Speech/soldier_1002.acp.meta": "d8eb34135a3b76f0a4f889f9662d954b3b0b3638c10c0732e25ca29d7b2ef412", + "addons/core/Sounds/ERR/Speech/soldier_1002.wav": "8535643e93757dd916f4158b5b03671cefc599489dbccf6bb0f7abf294fbae88", + "addons/core/Sounds/ERR/Speech/soldier_1002.wav.meta": "e8c8813e5a1989a0d7e4d2a5c90622c4b0f909aafb929f4737c82e5710220d1f", + "addons/core/Sounds/ERR/Speech/soldier_1003.acp": "5ab123f150debd6fda0b822fee7ffca5a0bdc168f4d8d2e28b3982972db05613", + "addons/core/Sounds/ERR/Speech/soldier_1003.acp.meta": "f89fa8e7ac42e7f675d29f0b241d181df572413c6c41bf31cfb98fa205baa87e", + "addons/core/Sounds/ERR/Speech/soldier_1003.wav": "5910896661ad67333d2374a16ca44ce831a5820feb337655df99c02df2915d5a", + "addons/core/Sounds/ERR/Speech/soldier_1003.wav.meta": "5281a71be599a70aeb9972ea85364e5ef32f824db94c71953d8a1912fb2a27c2", + "addons/core/Sounds/ERR/Speech/soldier_1004.acp": "10ac847b206834168e63d8d0f7ad25d7542a58a49d331af50aecf13e7e070ac9", + "addons/core/Sounds/ERR/Speech/soldier_1004.acp.meta": "8c073328d3f5f06ca583d97e9ce2453d8167ec7bc5643ab90783748a4cd9b6bf", + "addons/core/Sounds/ERR/Speech/soldier_1004.wav": "76375e462ba518c76f752d4b194c9370dffcebd8ce0037865133b37af3ff9a9e", + "addons/core/Sounds/ERR/Speech/soldier_1004.wav.meta": "563aae8d93efeaa7ca098c12bf0004da279321607793bb32a93b2530d6832d06", + "addons/core/Sounds/ERR/Speech/soldier_1005.acp": "ea3d874f84dd85f09871444c348b1c7f4948fc043c59cba4d3aea8b8eaa8b86e", + "addons/core/Sounds/ERR/Speech/soldier_1005.acp.meta": "40cbfddfa9937e319d412f3ecb66b75e2c1c88f2823a64e43a81a2939fb9021a", + "addons/core/Sounds/ERR/Speech/soldier_1005.wav": "3e20728fb61863278738f5366343cddd6fac1b8b114a14867f91ebb5cac547d8", + "addons/core/Sounds/ERR/Speech/soldier_1005.wav.meta": "e330fc819872b0a97a280a42d936ff75e30d21ea3ac96891988b48ded36af7b0", + "addons/core/Sounds/ERR/Speech/soldier_1100.acp": "86dc8e90d826947672342f44a6ff8d2fd4a8f014db0b215c0865b3728b14ea88", + "addons/core/Sounds/ERR/Speech/soldier_1100.acp.meta": "1a41730365335ebfabf6c75ab1c67ecb1d0d6c85db56d1d85f688a780a3ecf15", + "addons/core/Sounds/ERR/Speech/soldier_1100.wav": "eaf1deb5381f6bac165e364a652920fcf78438c351c564ebe50a216f3f3ba5a0", + "addons/core/Sounds/ERR/Speech/soldier_1100.wav.meta": "dcd087d3e0bec53abdd4e42218a3bbb234b7ae3cd2da05dcee71a298632a8da9", + "addons/core/Sounds/ERR/Speech/soldier_1101.acp": "2680131b5364efe39f3dee44ce1605dbc9e064cea9baf8247a8c5b55dcfa8d99", + "addons/core/Sounds/ERR/Speech/soldier_1101.acp.meta": "4feaa2b8e069ee2e9576d4009329f585b1b5ade9e47816882b78075f4897646f", + "addons/core/Sounds/ERR/Speech/soldier_1101.wav": "4bca012ec25d8456cd38d26606312f54b480b674365b76a9c9f54e408314570b", + "addons/core/Sounds/ERR/Speech/soldier_1101.wav.meta": "6ac6bd7a06be3fa35c513137b4584e405c0cd7e32d0c6912f2d7f9b5a3087d36", + "addons/core/Sounds/ERR/Speech/soldier_1102.acp": "08002dc26a4c07d6bf488d5f7c8c6587787c1755ce374b4053dad582eb2d77cb", + "addons/core/Sounds/ERR/Speech/soldier_1102.acp.meta": "2133e516f162d6aaa7f0d3a191421964ca6df7b00d0a50fa42ffaba70864bef4", + "addons/core/Sounds/ERR/Speech/soldier_1102.wav": "1432bb3c9d99910314a84d9773d2afafe4f5fbb143afb291b0deed55d25ee6d0", + "addons/core/Sounds/ERR/Speech/soldier_1102.wav.meta": "a6ca33938733e22789434db35ca2cdfb0fc4c51716feadf4a28a60ee9d1044b2", + "addons/core/Sounds/ERR/Speech/soldier_1103.acp": "c93e1e75c272d31107fde86205b859cf505e2acf7d8776fbd81357bc8b3625b9", + "addons/core/Sounds/ERR/Speech/soldier_1103.acp.meta": "f3d41ab27e932b10d46c3a2aa63f826825403a70640381a089db608c1c00a257", + "addons/core/Sounds/ERR/Speech/soldier_1103.wav": "c294454907a229d521c2285eec26dbb82f9782f2a7eca764e11713ff63f0e004", + "addons/core/Sounds/ERR/Speech/soldier_1103.wav.meta": "968d93e9dee2104aee94407604d021d8849a83dc3d115484088e81289654c246", + "addons/core/Sounds/ERR/Speech/soldier_1104.acp": "cb94ed3c95670f11f78f6470f1f50492fff6d2f0ac94602d054d474d52400cec", + "addons/core/Sounds/ERR/Speech/soldier_1104.acp.meta": "92d43bf610784953d8d94322b73ae235f7a8aeb83ece72733d795c8034275052", + "addons/core/Sounds/ERR/Speech/soldier_1104.wav": "952b3d71366c26fc12bdbb9014665bfc0402f30944c22b1b2369d26a93db7104", + "addons/core/Sounds/ERR/Speech/soldier_1104.wav.meta": "939562214b39250feaa8f6f6c6bd10c3d4e0b4c529f338490a2dc234919c0d31", + "addons/core/Sounds/ERR/Speech/soldier_1105.acp": "62c5d3d230a8a15cf2a4de193620ccdf83ca9973b550ace4e8edf7cc49f52851", + "addons/core/Sounds/ERR/Speech/soldier_1105.acp.meta": "6774063562b9c83975bc394dd3c72aa2a0d8001d0990ab8ff870ae2876889f93", + "addons/core/Sounds/ERR/Speech/soldier_1105.wav": "20e9e82d9897b598497da4722432f83ae03a5e6bf9a1f7a77caab712e3fc3130", + "addons/core/Sounds/ERR/Speech/soldier_1105.wav.meta": "6f21652352edbd59d1244ce9c2dcd1ad4ab65f022222381d9709c28148121c42", + "addons/core/Sounds/ERR/Speech/soldier_1200.acp": "c27db60629a41145697e041224cc2dde21c72d6a883fa305c71ec9c5b86bd84e", + "addons/core/Sounds/ERR/Speech/soldier_1200.acp.meta": "ea228ec869a7a0266f5604266f68c4166abc6cfeaa29180cb3b4351464b71079", + "addons/core/Sounds/ERR/Speech/soldier_1200.wav": "5a1561e821ef33a574c1f9ef95ccf76e69b832bf0a20bcbbf914760345921859", + "addons/core/Sounds/ERR/Speech/soldier_1200.wav.meta": "ccf3b62fd2eea460d576fa68863a901eb0025f47b1b76729a4289162d0dfa0c8", + "addons/core/Sounds/ERR/Speech/soldier_1201.acp": "45f220c5b6bac64db61eebcf54bb52da572f9f8f1ea0872c5af9fd3238c25a4e", + "addons/core/Sounds/ERR/Speech/soldier_1201.acp.meta": "3be417d66b05e11e0b520af136dfc45c86c17d5e35b56a611efbcf38e0d35003", + "addons/core/Sounds/ERR/Speech/soldier_1201.wav": "f058f0482cfe4034fdf37d9b596f7ba8172fae1c57aeb387ce153f8041895e45", + "addons/core/Sounds/ERR/Speech/soldier_1201.wav.meta": "abaebe719eff7e009eb4d0222060280877451126c02154706df6d13e4c5d3e11", + "addons/core/Sounds/ERR/Speech/soldier_1202.acp": "c08625886d8c6dc405cf96c640c9dafd4510ba5cef2c22b037c8c7b3eb5bea39", + "addons/core/Sounds/ERR/Speech/soldier_1202.acp.meta": "cf345e968edad1b825dd33b87267b63f770c169250f8c51195bffc3161d396bd", + "addons/core/Sounds/ERR/Speech/soldier_1202.wav": "c875f4e798ff5e24c3eb3b48bdfa1b8af03de9326a19c671eca86660297ad737", + "addons/core/Sounds/ERR/Speech/soldier_1202.wav.meta": "dd2d6411abe914bce71c6688a1647c2699303ca248191ec01c6325b366e5d7fb", + "addons/core/Sounds/ERR/Speech/soldier_1203.acp": "f0237a51ffe0e7d463154d321117a9b19c6914f6ee680ebf07a0ff9ab51fc340", + "addons/core/Sounds/ERR/Speech/soldier_1203.acp.meta": "0e93332191ac74be950ce8139b96ed6fdfe3ddbe68de8949826dc801d12c97f2", + "addons/core/Sounds/ERR/Speech/soldier_1203.wav": "6e7857dc96dfb556f011ba89f2f4ea659cfd7b605b88790c69e754d5cc51398a", + "addons/core/Sounds/ERR/Speech/soldier_1203.wav.meta": "0f564169dc05a95f7b01f64f72bdabf6de9ed3f37a2f44b4751f89b38eb18cd8", + "addons/core/Sounds/ERR/Speech/soldier_1204.acp": "94dbf98b5e05f1ebf6960495032c46203caaa4440dfb1ffd3beda2679fe6bec5", + "addons/core/Sounds/ERR/Speech/soldier_1204.acp.meta": "7cc8c61f4bb210c0576fac350d170f8f54a6e55531db6102c1a0fa7cb7a8a809", + "addons/core/Sounds/ERR/Speech/soldier_1204.wav": "bd170ca015b017114e42078dcc5c49d5626aef17d22e4a12b8282e9ee4908ae6", + "addons/core/Sounds/ERR/Speech/soldier_1204.wav.meta": "1c6ddb11c22a14d9d498074e2fb2864783f91afc552c4cd671452fa8df483de0", + "addons/core/Sounds/ERR/Speech/soldier_1205.acp": "47180a3445a265335d682eac6fa51fedca51d76f329adc39b1802092b311118b", + "addons/core/Sounds/ERR/Speech/soldier_1205.acp.meta": "c34346f4b10149b426ebb4e94db8c29883c9d0e36f2b42d07d41570eb8932554", + "addons/core/Sounds/ERR/Speech/soldier_1205.wav": "769c457805376e9c0172ddb525ead5f1d8774e15bd1f3f3b218a19f9d77b6883", + "addons/core/Sounds/ERR/Speech/soldier_1205.wav.meta": "31a2a7314b44afb3f0031376b2ad6df22649e8089bf1a3bbeb64cdc41156cff7", + "addons/core/Sounds/ERR/Speech/soldier_clear.acp": "f33f03f3d24182a95db7d02058f2dd6ae52098e3b5142a33ede833ee881d54ed", + "addons/core/Sounds/ERR/Speech/soldier_clear.acp.meta": "7d3643c9de2d81ab0f1b4898e781341c1962bd8505c20882233ef7c40159b23b", + "addons/core/Sounds/ERR/Speech/soldier_clear.wav": "d6527b8136aa720b721463210420f47de0dbc45acc4e4c390b6a44968c5f0acd", + "addons/core/Sounds/ERR/Speech/soldier_clear.wav.meta": "d9f9a921a85fe275c6cce649421a19946ff6aec49559796725c3858d9fe9b261", + "addons/core/Sounds/ERR/Speech/soldier_covering.acp": "7d4109edbd6c20f9e2af0b394fa12e8b3b40fc18bf2b5ac118beebb1fa4a79b1", + "addons/core/Sounds/ERR/Speech/soldier_covering.acp.meta": "320908bf7decea55b8d8b4a89b30e84e7d96a033d4a9cd1bd84912dce013f0d8", + "addons/core/Sounds/ERR/Speech/soldier_covering.wav": "f51e0086eaf0eece8b4061711088a413a2dbeae263deab7ea30fb1852dafda69", + "addons/core/Sounds/ERR/Speech/soldier_covering.wav.meta": "7bdf2d2c5f9cf741bae523e1ab0b9acc99b38ccd1228ebfbcba92f2b9a5cba9d", + "addons/core/Sounds/ERR/Speech/soldier_engaging.acp": "9f052e87edaf182030edb656821621cdeabbf13d65bc181308357530c9d93a74", + "addons/core/Sounds/ERR/Speech/soldier_engaging.acp.meta": "9e487fa3746c46b2993f1dfd1f0513f375571728704533674bee62586e25b72b", + "addons/core/Sounds/ERR/Speech/soldier_engaging.wav": "ac0f2d7d698732e3d7c270186e7aa2ab7e6bd4c908f36b07fb6f66a3cbe75ccf", + "addons/core/Sounds/ERR/Speech/soldier_engaging.wav.meta": "d571b9ebce196cc209078a83e4bde8f6a5f4b6d28c2945e2b47953ccb6889e97", + "addons/core/Sounds/ERR/Speech/soldier_moving.acp": "05503ca7af13a7ad03ed2a3aa562cc58504fdfff3148477f8d81b5a01abdf37c", + "addons/core/Sounds/ERR/Speech/soldier_moving.acp.meta": "a2474c87e4e1587226919dfdbd03739d938803d34f4a4f441889b0d8015513bd", + "addons/core/Sounds/ERR/Speech/soldier_moving.wav": "a61dda64e6fc2a11eac3e6008ee14b89f360bd67e258dce1191a71d9e2e26fad", + "addons/core/Sounds/ERR/Speech/soldier_moving.wav.meta": "bd87cd72ccb819584f9da09fb0d6973ffd6eb0bb5572c562978500e2af467217", + "addons/core/Sounds/ERR/Speech/soldier_no_ammo.acp": "c821c61afb2ddc12d3ecdb552a66d2a9ff89a5258a567ff2a99fed4f45a33520", + "addons/core/Sounds/ERR/Speech/soldier_no_ammo.acp.meta": "65a27b81a5b437163befd4dc566785a9dda4def1798495ca53c8f768a5d7a73f", + "addons/core/Sounds/ERR/Speech/soldier_no_ammo.wav": "ffe6ef5fdf30411749e0cb73186e3005b1ce6a52fcb7c836caeb1bca422ed3ed", + "addons/core/Sounds/ERR/Speech/soldier_no_ammo.wav.meta": "25b5680fd2a313c18e15ce6e0d3f709d78352b93206c22c7881be19b81faddd5", + "addons/core/Sounds/ERR/Speech/soldier_reloading.acp": "51c5cb464bab6637cf9e3b1880a010e05774d76a92298daf40b1d84970845be7", + "addons/core/Sounds/ERR/Speech/soldier_reloading.acp.meta": "ca351e809b1ba7c69b066d2c1d0a5d2afdcaa833c1163e6d13a0396437e98cf6", + "addons/core/Sounds/ERR/Speech/soldier_reloading.wav": "15b2749f79bc73fd0784bcd6e6076e1bc50da835e0c434cd43bd185d0735c732", + "addons/core/Sounds/ERR/Speech/soldier_reloading.wav.meta": "161c9ebee1d0496c7aa9501d00eba646094bf1ce89cda4efde6e3a0229a49e4f", + "addons/core/Sounds/ERR/Speech/soldier_target_down.acp": "77acc89c4ef0b912b969a2e5f6c41e071e04d10cfe89666fbc1296878dab62bf", + "addons/core/Sounds/ERR/Speech/soldier_target_down.acp.meta": "fe456d354ace93b0f2261de483e86ccc92991011b1738c5703d6d7bc0daa49a6", + "addons/core/Sounds/ERR/Speech/soldier_target_down.wav": "e2e60e8b83a24a548c90b84c5e1137adb7e792cf1d4ba6232ddfb1012fa78892", + "addons/core/Sounds/ERR/Speech/soldier_target_down.wav.meta": "064588b86589ac9437fbccafedeefae04bec3331dd8a229d1c6d27b5e524a9e9", + "addons/core/Sounds/ERR/Speech/soldier_target_lost.acp": "5ffd3ff57550296274e9e93fb64efdf2fb06a51161d6deb221c1f3eb408d1459", + "addons/core/Sounds/ERR/Speech/soldier_target_lost.acp.meta": "366a3c9e20f27c0f73bdff5827576df8924e99241061f933e72bd342e5bc7119", + "addons/core/Sounds/ERR/Speech/soldier_target_lost.wav": "bbcf454d48adea47478d410b1baf14df3a5d018237272e70ae33ee62823f822f", + "addons/core/Sounds/ERR/Speech/soldier_target_lost.wav.meta": "d1ac64242280521a7e40de51ae32a007878d7801401020e7a074a48e0f8ce62e", + "addons/core/Sounds/ERR/Speech/soldier_under_fire.acp": "5af1c949d4662c2f33320165d2efdbd69cb183af1101aa246fe538bf0d91a33e", + "addons/core/Sounds/ERR/Speech/soldier_under_fire.acp.meta": "aa7799e8a790539166a1d3a9c691416e7b2f6589d1674f5cf4b3e47523f15259", + "addons/core/Sounds/ERR/Speech/soldier_under_fire.wav": "e4bd5e69fda289593fc6e6b8c2fae9a271a10d0a9bae877f18ba02dbbf75d1fc", + "addons/core/Sounds/ERR/Speech/soldier_under_fire.wav.meta": "25a988c31e4fc3ae6540920df3d4548307a4a1e3b96b1303e9b7bdb4ac5eea27", + "addons/core/Sounds/ERR/Speech/welcome.acp": "f8a7b6cdd08b57b4b227a2d5b480a6c76857d7fc8ace3434478aec01c0de5a83", + "addons/core/Sounds/ERR/Speech/welcome.acp.meta": "d3ac98b02c0725d347b30d0ac7586cb22904d46b65a145e4a1131222484a6929", + "addons/core/Sounds/ERR/Speech/welcome.wav": "01de068469bd6746dba7634fb6b5b85b150621d3359c17fd01bcb916b34b1720", + "addons/core/Sounds/ERR/Speech/welcome.wav.meta": "bf33edad44bbb04df852501154f08a9a9900ce503248abc698127a51e9eec934", + "addons/core/UI/Textures/ERR/SiteMarkers.edds": "611ec6c68c2456c2af017c47135134d73122461017b315f64ed7ca9891f20c21", + "addons/core/UI/Textures/ERR/SiteMarkers.edds.meta": "90f40b38e52a79951b72da2960e30887d5ee8bbcefbada0c0ac950c1bfcf847f", + "addons/core/UI/Textures/ERR/SiteMarkers.imageset": "3f947d03b3492ada541032539cdb3f34a03d68ae83c0ef8796dc7fd091b5911d", + "addons/core/UI/Textures/ERR/SiteMarkers.imageset.meta": "1dc5285abd0062af288fb40b2f22b5b7c3925cf7270a096862335db250ac1453", + "addons/core/UI/Textures/ERR/SiteMarkers.png": "76b472982234bd27050a9430e6a53f4c14fa38f7388db3706ebef506eab4e660", + "addons/core/UI/layouts/ERR/AdminMenu.layout": "edbd2bd0e177b2d632f7880a222526cf990eb78f6c96d41c1c4f9579995f9221", + "addons/core/UI/layouts/ERR/AdminMenu.layout.meta": "9deeece996f43b1f1fed6b5ec89279645c7b6424250200a42580cc088142e9bf", + "addons/core/UI/layouts/ERR/AdminValue.layout": "cd811af6d2fb187f01c74e20ea07ad85669546b0ad70efae2ce52921ce26cbca", + "addons/core/UI/layouts/ERR/AdminValue.layout.meta": "56b3d2335db400c1308e07c4a35d278b23ef32013dfd6dc82951866327428d08", + "addons/core/UI/layouts/ERR/ContentRow.layout": "942e33bf2e08550446b40bcac31fb4504b7d8c717a42c196f54bf4025c72706c", + "addons/core/UI/layouts/ERR/ContentRow.layout.meta": "8c4bc13b41e7aee38e0ca640a97813ed1a6964a00e2cff9e1fe4ebd71fc2fdc6", + "addons/core/UI/layouts/ERR/ItemRow.layout": "6d364ce48158b90abd2185ca87ee27b095d0f7a5c8d59a0c65940e4be5488ac3", + "addons/core/UI/layouts/ERR/ItemRow.layout.meta": "33eaef9c403ea3a030e58ec17f78e46af457048243571ad5856fff04101fb60b", + "addons/core/UI/layouts/ERR/ItemWeightRow.layout": "dfa6b87420efc683cb278178553350daa7753004d64672741a3dc13b4316810d", + "addons/core/UI/layouts/ERR/ItemWeightRow.layout.meta": "eb4b28587abdf6100092fd6eee1695663fa6e1548d5e53017173c4a5f7320240", + "addons/core/UI/layouts/ERR/PauseModsButton.layout": "d21d436291e2c1b262e33dc228b0d60a1d188dc9e85cfda6d2373f8281431b79", + "addons/core/UI/layouts/ERR/PauseModsButton.layout.meta": "9ed6adabd8f53eb9a562d7186789876bba5c4202155ca894c1af866ca47354f3", + "addons/core/UI/layouts/ERR/PreparationFailure.layout": "b7c4a2e6aa2be0992b478bb4f969f80355753573fffbc15be44670f3b136ea2e", + "addons/core/UI/layouts/ERR/PreparationFailure.layout.meta": "17ca2c9a12f691680883cec368ff06f511c996e5da5c25498f5f0955887867b0", + "addons/core/UI/layouts/ERR/PreparationStatus.layout": "ec3369f4030e593d34043e70a311b0963606cf024cb452648671556f25f5b52a", + "addons/core/UI/layouts/ERR/PreparationStatus.layout.meta": "75b12176a443bb911fc4ad446982d762201fda42ed38736b79bc5439fca31ccc", + "addons/core/UI/layouts/ERR/RoundResults.layout": "8550ebc009024f619827a43fd766aff8b7fbf8bc87ef7593db0fd7f4d778c615", + "addons/core/UI/layouts/ERR/RoundResults.layout.meta": "7509e050b3910ee5730dd25c60aacf405110e943f4ab46e3fc2186b3b15a3cf9", + "addons/core/UI/layouts/ERRMap/ObjectiveMapElement.layout": "82d9ae77f076f945583791dfa0b01f1c925e6ff8aaebcf382fd56089fe61a115", + "addons/core/UI/layouts/ERRMap/ObjectiveMapElement.layout.meta": "8691fe2eaf46568bca4a9f8128b247a8da810bb87a5546aa7ca3334e740270d6", + "addons/core/UI/layouts/ERRMap/SharedMapRenderTarget.layout": "aef5d565301046ae902033ec4eb4799ff1bdd9a37bc507898781d8790f04fc2a", + "addons/core/UI/layouts/ERRMap/SharedMapRenderTarget.layout.meta": "5c846445cc089e2e08899ba703059d4adb805ff30ab5a16409a3cd59718cbd54", + "addons/core/Worlds/ERR_Everon.ent": "22324bc7eb0d80dec8a1f3bd61a9df9201b72f749f4e751766b0c9d0b7d46b87", + "addons/core/Worlds/ERR_Everon.ent.meta": "19d1903ca72baa326b4724a6791d0da1104a1e53f3f31dc1ca41a856efd68e83", + "addons/core/Worlds/ERR_Everon_Layers/default.layer": "6bcb7fbb27b6282719dae8a37486e518d4cbaea385f2ea9af1918b36bb28b175", + "addons/core/addon.gproj": "6ccf0d3a2817a5f865e605d5abe89bd794e7c8654f2dd005d0f496f05d91e76a" +} diff --git a/docs/evidence/review-1.9-2026-11-06/launch-source.json b/docs/evidence/review-1.9-2026-11-06/launch-source.json new file mode 100644 index 00000000..3067ff9b --- /dev/null +++ b/docs/evidence/review-1.9-2026-11-06/launch-source.json @@ -0,0 +1,45 @@ +{ + "schema_version": 1, + "launch_id": "5aeb8de5-7726-4e89-8cda-f359bc788ad7", + "captured_unix": 1793963058.7821145, + "source_root": "/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/source7", + "command": [ + "gamescope", + "--backend", + "headless", + "-W", + "1280", + "-H", + "720", + "-w", + "1280", + "-h", + "720", + "-r", + "30", + "--", + "/home/jakub/.local/share/Steam/steamapps/common/Proton - Experimental/proton", + "run", + "/home/jakub/.local/share/Steam/steamapps/common/Arma Reforger Tools/Workbench/ArmaReforgerWorkbenchSteamDiag.exe", + "-gproj", + "Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/source7/addons/core/addon.gproj", + "-addonsDir", + "Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/source7/addons", + "-profile", + "Z:/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7", + "-logconsole", + "-wbModule=WorldEditor", + "-load", + "Worlds/ERR_Everon.ent", + "-plugin=ERR_ValidateWorldPlugin", + "-errPlay", + "1", + "-errSmoke", + "0", + "-errSmokeOutcome", + "normal-escape-route", + "-noThrow", + "-disableCrashReporter" + ], + "manifest_sha256": "a010e9f6b9abbe3767b19c6536dcf7133c54f6d02c341a53fcec01fad8b525c5" +} diff --git a/docs/evidence/review-1.9-2026-11-06/native-probe.c.txt b/docs/evidence/review-1.9-2026-11-06/native-probe.c.txt new file mode 100644 index 00000000..6c9da900 --- /dev/null +++ b/docs/evidence/review-1.9-2026-11-06/native-probe.c.txt @@ -0,0 +1,172 @@ +#ifdef WORKBENCH +modded class ERR_GameMode +{ + protected ref ERR_ReviewProbe m_ReviewProbe; + protected override void StartScenario() {} + protected override void EOnInit(IEntity owner) + { + super.EOnInit(owner); + if (SCR_Global.IsEditMode() || !Replication.IsServer()) return; + GetGame().GetCallqueue().CallLater(ReviewBegin,2000,false); + } + protected void ReviewBegin() { m_ReviewProbe=new ERR_ReviewProbe(this);m_ReviewProbe.Begin(); } +} +class ERR_ReviewTraffic : ERR_CivilianTraffic +{ + protected ref array m_ProbeCars={}; + protected float m_Deadline; + bool Done; + void Begin() + { + Neutral(); m_Catalog.Find(false); + if (m_Catalog.RoadPrefabs.Count()<3 || !m_Catalog.Tractors.IsEmpty()) { Print("ERR SMOKE FAIL: traffic street-only catalog",LogLevel.ERROR);return; } + PrintFormat("ERR REVIEW CATALOG: moving=%1 tractors=%2",m_Catalog.RoadPrefabs.Count(),m_Catalog.Tractors.Count()); + array choices={}; + foreach (ResourceName name:m_Catalog.RoadPrefabs) + { + string lower=name;lower.ToLower(); + if ((choices.IsEmpty() && lower.Contains("/s105/")) || (choices.Count()==1 && lower.Contains("/v2101/"))) choices.Insert(name); + } + if (choices.Count()!=2) { Print("ERR SMOKE FAIL: traffic family discovery",LogLevel.ERROR);return; } + for(int i=0;i seats={};ERR_ConvoyRules.CollectSeats(car.Car,seats); + foreach(BaseCompartmentSlot seat:seats) if(seat.GetType()==ECompartmentType.PILOT) {car.Seat=seat;break;} + if (!car.Seat) { Print("ERR SMOKE FAIL: traffic seat",LogLevel.ERROR);return; } + AIGroup group=car.Group;car.Driver=car.Seat.SpawnCharacterInCompartment(DriverPrefab(),group,ERR_ConvoyResources.GroupPrefab());ERR_Actors.SetFaction(car.Driver,civilian); + AICarMovementComponent movement=AICarMovementComponent.Cast(car.Car.FindComponent(AICarMovementComponent)); + if (!movement) { Print("ERR SMOKE FAIL: traffic AI movement component",LogLevel.ERROR);return; } movement.SetCruiseSpeed(40); + m_ProbeCars.Insert(car); + } + m_Deadline=GetGame().GetWorld().GetWorldTime()+240000; + GetGame().GetCallqueue().CallLater(Check,2000,true); + } + void Check() + { + int driven; + foreach(ERR_CivilianCar car:m_ProbeCars) + { + if(!car.Ready) Prepare(car); + float distance=vector.DistanceXZ(car.Car.GetOrigin(),car.Route[0]); + CarControllerComponent control=CarControllerComponent.Cast(car.Car.FindComponent(CarControllerComponent)); + VehicleWheeledSimulation sim=VehicleWheeledSimulation.Cast(car.Car.FindComponent(VehicleWheeledSimulation)); + PrintFormat("ERR REVIEW DRIVE STATE: car=%1 engine=%2 brake=%3 throttle=%4 rpm=%5 handbrake=%6 gear=%7 auto=%8",car.Number,control.IsEngineOn(),sim.GetBrake(),sim.GetThrottle(),sim.EngineGetRPM(),control.GetPersistentHandBrake(),control.GetCurrentGear(),control.HasAutomaticGearbox()); + PrintFormat("ERR REVIEW TRAFFIC: prefab=%1 ready=%2 travelled=%3 seated=%4",car.Prefab,car.Ready,distance,car.Seat.GetOccupant()==car.Driver); + if(car.Ready && distance>=100 && car.Seat.GetOccupant()==car.Driver) car.Finished=true; + if(car.Finished) driven++; + } + if(driven==2) {Done=true;Print("ERR SMOKE PASS: S105 and V2101 street-car families driven over 100m by original native AI drivers");GetGame().GetCallqueue().Remove(Check);} + else if(GetGame().GetWorld().GetWorldTime()>m_Deadline) { Print("ERR SMOKE FAIL: traffic driving deadline",LogLevel.ERROR);GetGame().GetCallqueue().Remove(Check); } + } +} +class ERR_ReviewProbe : ERR_GarageVehicles +{ + protected Vehicle m_Tractor; + protected IEntity m_Observer; + protected IEntity m_Barn; + protected ref ERR_ReviewTraffic m_Traffic; + protected float m_Deadline; + protected bool m_FarmDone; + protected bool m_FarmReported; + protected int m_UIStep; + protected Widget m_UI; + protected float m_OriginalDPI; + void ERR_ReviewProbe(ERR_GameMode mode) {m_Mode=mode;} + protected override bool Running(){return true;} + void Begin() + { + m_Cars.Find(); + if(m_Cars.Tractors.Count()!=1 || m_Cars.RoadPrefabs.Count()<3 || m_Cars.Prefabs.Count()!=52) {Fail("catalog");return;} + m_Tractor=Vehicle.Cast(ERR_Actors.Spawn(m_Cars.Tractors[0],ERR_Actors.Ground("4788 0 11528")+"0 0.15 0")); + m_OriginalDPI=GetGame().GetWorkspace().GetUserDPIScale(); + GetGame().GetCallqueue().CallLater(Inspect,2000,false); + } + void Fail(string reason){Print("ERR SMOKE FAIL: 1.9 review "+reason,LogLevel.ERROR);Stop();GetGame().GetWorkspace().SetUserDPIScale(m_OriginalDPI);} + void Inspect() + { + vector low,high;m_Tractor.GetBounds(low,high); + array seats={};ERR_ConvoyRules.CollectSeats(m_Tractor,seats);bool driver; + foreach(BaseCompartmentSlot seat:seats) if(seat.GetType()==ECompartmentType.PILOT && seat.IsCompartmentAccessible()) driver=true; + PrintFormat("ERR REVIEW TRACTOR: prefab=%1 low=%2 high=%3 driver=%4",m_Cars.Tractors[0],low,high,driver); + if(!driver || !ERR_GarageVehicleRules.FarmEnvelope(low,high)){Fail("tractor envelope/seat");return;} + ERR_Actors.DeleteSpawned(m_Tractor); + m_Barn=ERR_Actors.Spawn("Prefabs/Structures/Agriculture/Barn/Barn_E_01/Barn_E_01.et",ERR_Actors.Ground("4788 0 11528")); + m_Observer=ERR_Actors.Spawn(ERR_CivilianTraffic.DriverPrefab(),ERR_Actors.Ground("4888 0 11528")); + m_Requested=1;m_GarageChance=100;m_SpawnRadius=1500;m_CleanupRadius=1900;m_SpawnInterval=1000; + m_Deadline=Now()+180000; + Remember(m_Barn); + vector bl,bh;m_Barn.GetBounds(bl,bh);PrintFormat("ERR REVIEW BARN: exists=%1 low=%2 high=%3 alive=%4 sites=%5",m_Barn!=null,bl,bh,ERR_Actors.Alive(m_Barn),m_Sites.Count()); + m_Traffic=new ERR_ReviewTraffic(m_Mode);m_Traffic.Begin(); + ChimeraAIWorld ai=ChimeraAIWorld.Cast(GetGame().GetAIWorld());PrintFormat("ERR REVIEW AI: partial=%1 dormancy=%2 limit=%3 active=%4",ai.IsPartialFillEnabled(),ai.IsGroupDormancyEnabled(),ai.GetLimitOfActiveAIs(),ai.GetCurrentNumOfActiveAIs()); + GetGame().GetCallqueue().CallLater(Step,250,true); + GetGame().GetCallqueue().CallLater(UI,500,true); + } + void UI() + { + if(m_UI) + { + m_UI.Update();ERR_AdminMenuView.FitPanel(m_UI);m_UI.Update();Widget panel=m_UI.FindAnyWidget("Panel");float x,y,w,h,rw,rh; + panel.GetScreenPos(x,y);panel.GetScreenSize(w,h);m_UI.GetScreenSize(rw,rh); + PrintFormat("ERR REVIEW UI: dpi=%1 panel=%2,%3 %4x%5 root=%6x%7 fits=%8",GetGame().GetWorkspace().GetUserDPIScale(),x,y,w,h,rw,rh,x>=0 && y>=0 && x+w<=rw && y+h<=rh); + m_UI.RemoveFromHierarchy();m_UI=null; + } + if(m_UIStep==4){GetGame().GetWorkspace().SetUserDPIScale(m_OriginalDPI);GetGame().GetCallqueue().Remove(UI);return;} + GetGame().GetWorkspace().SetUserDPIScale(0.75+m_UIStep*0.25);m_UIStep++; + m_UI=GetGame().GetWorkspace().CreateWidgets("UI/layouts/ERR/AdminMenu.layout"); + } + protected override bool Observers(array positions,array actors) + { + positions.Clear();actors.Clear();if(!m_Observer)return false;positions.Insert(m_Observer.GetOrigin());actors.Insert(m_Observer);return true; + } + protected override bool Remember(IEntity entity) + { + if(entity!=m_Barn)return true; + bool result=super.Remember(entity); + foreach(ERR_GarageSite site:m_Sites) site.Selected=true; + return result; + } + protected override void Plan(array observers,array actors,float now) + { + if(!m_FarmReported && !m_Sites.IsEmpty() && !observers.IsEmpty()) + { + m_FarmReported=true;vector low,high;m_Barn.GetBounds(low,high); + for(int side=0;side<4;side++) + { + vector offset=ERR_GarageVehicleRules.YardOffset(low,high,side,4);vector pos=ERR_Actors.Ground(m_Barn.CoordToParent(offset))+"0 0.08 0"; + vector angle=m_Barn.GetYawPitchRoll();angle[1]=0;angle[2]=0;if(side>=2)angle[0]=angle[0]+90; + vector mat[4];Math3D.AnglesToMatrix(angle,mat); + PrintFormat("ERR REVIEW FARM VETO: side=%1 pos=%2 ground=%3 clear=%4 hidden=%5 distance=%6",side,pos,YardGround(pos,mat,true),Clear(pos,mat,null,true),Hidden(pos,angle,actors,null,true),vector.DistanceXZ(pos,observers[0])); + } + } + super.Plan(observers,actors,now); + } + protected override void Step() + { + if(!m_FarmDone) + { + array views = {m_Observer.GetOrigin()}; + array actors = {m_Observer}; + if(m_Pending) Pending(views,actors); + else Plan(views,actors,Now()); + } + if(m_Sites.Count()>0 && m_Sites[0].NextTry==Now()) PrintFormat("ERR REVIEW FARM SITES: %1",m_Sites.Count()); + if(Now()>m_Deadline){Fail("farm spawn deadline");return;} + if(!m_FarmDone && m_Parked.Count()==1) + { + ERR_ParkedVehicle parked=m_Parked[0];vector matrix[4];parked.Entity.GetWorldTransform(matrix); + if(!parked.Site.Farm || !YardGround(parked.Origin,matrix,true) || !Clear(parked.Origin,matrix,parked.Entity,true)){Fail("farm checks");return;} + PrintFormat("ERR REVIEW FARM: prefab=%1 position=%2 anchor=%3",parked.Entity.GetPrefabData().GetPrefabName(),parked.Origin,parked.Site.Garage.GetPrefabData().GetPrefabName()); + m_FarmDone=true;Print("ERR SMOKE PASS: native farm tractor placement with production ground, visibility and collision checks"); + } + if(m_FarmDone && m_Traffic.Done){Print("ERR SMOKE COMPLETE: 1.9 review vehicles and UI measurements");Stop();} + } +} +#endif diff --git a/docs/evidence/review-1.9-2026-11-06/production-source-comparison.json b/docs/evidence/review-1.9-2026-11-06/production-source-comparison.json new file mode 100644 index 00000000..140ca9b6 --- /dev/null +++ b/docs/evidence/review-1.9-2026-11-06/production-source-comparison.json @@ -0,0 +1,30 @@ +{ + "addons/core/Scripts/Game/ERR/00_Core/ERR_AdminMenu.c": { + "sha256": "0b637c4c4f663e6ce6fb029b6679c97964dc79368c54cf9510cbbf996db9076b", + "matches_native7": true + }, + "addons/core/Scripts/Game/ERR/00_Core/ERR_AdminMenuView.c": { + "sha256": "6c34557350659782bc1a098169dbbabf1f71502c35cdf711b83ce0efad907142", + "matches_native7": true + }, + "addons/core/Scripts/Game/ERR/00_Core/ERR_AdminService.c": { + "sha256": "277df355d00458bf4a337b68feeb926ec4aa12c1546a604d039121a1bde7d995", + "matches_native7": true + }, + "addons/core/Scripts/Game/ERR/10_AI/ERR_ParkedCarCatalog.c": { + "sha256": "1d865c263e910071b127ccd1bdc8b58dd45768c4629194da49705f76995ff0e7", + "matches_native7": true + }, + "addons/core/Scripts/Game/ERR/10_AI/ERR_CivilianTraffic.c": { + "sha256": "b56023f446303f0c34109fb2cc21a4da8afae8742c4f17d43e671195258c7ee7", + "matches_native7": true + }, + "addons/core/Scripts/Game/ERR/10_AI/ERR_GarageVehicles.c": { + "sha256": "665e7c1f2fc966b861a2c1b802e32678db510a3a44c44ed7392bb40a0da297f0", + "matches_native7": true + }, + "addons/core/UI/layouts/ERR/AdminMenu.layout": { + "sha256": "edbd2bd0e177b2d632f7880a222526cf990eb78f6c96d41c1c4f9579995f9221", + "matches_native7": true + } +} diff --git a/docs/evidence/review-1.9-2026-11-06/publication.json b/docs/evidence/review-1.9-2026-11-06/publication.json new file mode 100644 index 00000000..a7c3f5e9 --- /dev/null +++ b/docs/evidence/review-1.9-2026-11-06/publication.json @@ -0,0 +1,12 @@ +{ + "addon_id": "2528466DE220D91C", + "version": "0.0.143", + "confirmation": "Workbench successful upload result", + "log": "/home/jakub/.local/share/Steam/steamapps/compatdata/1874910/pfx/drive_c/users/steamuser/Documents/My Games/ArmaReforgerWorkbench/logs/logs_2026-11-06_11-26-49/console.log", + "result_lines": [ + "12:35:23.699 RESOURCES : Saving manifest successful: C:/users/steamuser/AppData/Local/Temp/Arma Reforger Workbench/Publishing/2528466DE220D91C/manifest.json", + "12:35:25.347 DEFAULT : Publishing project to Workshop...", + "12:35:36.015 DEFAULT : Uploading finished", + "12:35:36.015 DEFAULT : Project uploaded successfully" + ] +} diff --git a/docs/evidence/review-1.9-2026-11-06/repository-check.log b/docs/evidence/review-1.9-2026-11-06/repository-check.log new file mode 100644 index 00000000..97c56927 --- /dev/null +++ b/docs/evidence/review-1.9-2026-11-06/repository-check.log @@ -0,0 +1,941 @@ +Menu layouts and palette are up to date. +....... +---------------------------------------------------------------------- +Ran 7 tests in 0.049s + +OK +.... +---------------------------------------------------------------------- +Ran 4 tests in 0.001s + +OK +....../usr/lib/python3.14/tempfile.py:538: ResourceWarning: Implicitly cleaning up + _warnings.warn(self.warn_message, ResourceWarning) +.......... +---------------------------------------------------------------------- +Ran 16 tests in 0.130s + +OK +PASS: authoritative kills/deaths, duplicate-event protection, friendly kills, suicide, GM and vehicle exclusions, down/recovery edges, disconnected escapees and terminal gates +PASS: production roster reconciliation preserves disconnected names and reconnect counters, refuses connection-ID inheritance, freezes records and bounds retained participants +PASS: held/tapped AI horn limits, half-second pulses, 30-second cooldown, clock reset, player/passenger/aircraft/replica exclusion and ended mission cleanup +PASS: telemetry outcomes, exactly-once finish, opt-out gate, stale callbacks, HTTP status handling and bounded retry +PASS: durable installation credential, restart/endpoint/identity isolation, write failure, corruption, bounded retention and disabled-send gates +PASS: running dedicated configuration, automatic server config/lobby name, explicit override, startup absence, rename and payload bound +PASS: map/server/mission/event/outcome validation, bounded counters, stale delivery exclusion, current-round refresh and unavailable recovery +PASS: deployment init waits for mode, runs once, cancels on deletion/world change and bounds retries; respawn RPC registration stays immediate +PASS: native chat retained on both peers, nested ownership detached, absent chat supplied by replicated fallback, authored mission chat preserved +PASS: configurable independent restarts, idle clock reset and live setting changes; last disconnect, pending admission/spectator population, five-hour boundary, repeated empty rounds, preparation, authority and duplicate-end guards +PASS: faction aircraft profiles provide 12+ cargo capacity; FIA/ION crew comes only from the selected faction +PASS: fleet space is required before pickup registration; dispatch rechecks/replaces only the secondary within the original 48-candidate footprint budget +Policy-only arrival from 90 m offset / 150 m height at 15 Hz: original 65.60s, rescue 32.20s +Policy-only arrival from 90 m offset / 150 m height at 30 Hz: original 65.73s, rescue 32.30s +Policy-only arrival from 90 m offset / 150 m height at 60 Hz: original 65.72s, rescue 32.33s +Policy-only arrival from 90 m offset / 150 m height at 120 Hz: original 65.72s, rescue 32.33s +PASS: faster rescue descent, continuous near-ground braking, alignment gate, unchanged recovery/escort/default profile, and bounded settling at 15/30/60/120 Hz +PASS: split-fleet boarding, escort rejection, lost transport failure and both transports airborne for thirty seconds +PASS: actual nearest usable registered-fleet selection, patient reservation priority, independent ranges, audited benches/skids and captured-aircraft handshake guards +PASS: production Cessna boarding requires exact observed occupancy, activates before requesting, caps retries at three with 5s spacing, and preserves transition, ownership, health and seat restrictions; engine behavior is faked +PASS: traffic distance/grace, all-observer veto, player claims, foreign custody, bounded spawn cadence, failure/stall retention and shutdown preserve nearby/claimed entities +PASS: actual observer collection includes spectator targets and controlled bodies; missing views/controllers and open editor cameras veto spawn/cleanup +PASS: civilian traffic defaults to three; menu command resolves to persisted 0..6 setting with zero disabling new cars +PASS: bounded exit-road selection can turn along a coastline when the opposite road is unavailable; no-route case is withheld +PASS: managed traffic pins both native garbage entries; release/retirement removes only those pins, including partial creation +PASS: garage/yard family admission, bounded wall offsets, civilian and optional Rally catalog exclusions, vehicle-fit limits +PASS: yard road-width margin, missing road data, footprint water/slope and nonfinite-input vetoes +PASS: bodies and spectator targets are collected; unknown, nonfinite and editor views veto spawning/cleanup; no connected players yields an empty known view +PASS: permanent entry/movement/occupancy claims; far hidden grace cleanup; proximity/visibility/unknown-view resets; one staged operation per update, no same-frame catch-up, stop and client guards +PASS: saved garage menu settings configure the round once; unit conversion and cleanup radius scale correctly; count/chance zero disable startup; clients and stopped rounds do no work +PASS: exhausted/blocked opening keeps configured radius; distant objective fallback rejected; bounds, player clearance, separation, force cap and retry delay retained +PASS: separated rear vehicle approaches, opposite infantry sectors, radio-gated ownership, failed-order preservation, visual cover or bounded supported reconnaissance, bounded dismount/search/regroup and loss cleanup +PASS: production dismount/boarding allocation, all crew allowances, waypoint ownership, one-time vehicle detach/restore and capture/teardown guards +PASS: covering support requires the original conscious turret gunner, valid mounted driver, live crew and delivered assignment +PASS: alternate positions exclude failed and occupied stages, roll back on failed planning/allocation, and preserve the total time budget +PASS: blocked crew deadline survives combat interruptions, defers unsafe exits, resets after recovery; failed stages survive assignments with bounded expiry +PASS: native-callback cleanup, bounded retries and budget, pending quarantine, objective/ownership/lifecycle protection, no evidence retirement or forced entity deletion +PASS: radio intel boundary, exclusions, preparation cap, next-round configuration, sticky unlock, redirection/evidence, fixed retention, automatic recovery and lifecycle guards +PASS: actual terrain refusal reasons, counted summaries, site/attempt/time context, 30-second rate limit and per-site reset +PASS: actual low/negative dry terrain, height-correct shallow/lake/ocean/interior water refusal and downstream startup dry-ground gates +PASS: failure-only menu, repeated-frame/dialog focus, pause fallback, exact error, Esc routing, single local exit, stale/recovered mode guards and listener cleanup; native rendering unverified +PASS: only original fit loaded healthy uncaptured gunners stay mounted; driver can leave; infantry readiness excludes the retained gunner but regroup requires all survivors +PASS: actual HQ allocator selects reachable reports, distinct cover/flanks, simultaneous fronts, bounded reservations and failed-radio/placement rollback +PASS: shared own-force attack spacing, own-group refresh, exact release, expiry/deletion, finite capacity and fresh confirmed sighting-only flank permission +PASS: actual convoy foot transport detachment is idempotent; regroup restores only its live friendly uncaptured original truck +PASS: opposing native flank orders are transactional; arrived teams sweep twice, travelling/boarding teams retain orders, failed redirects retry and replayed contacts are ignored +PASS: expired-report approach, arrival-only search, completion, newer/older/replayed reports, visual priority, interrupted search and bounded travel +PASS: drone cooldown, capacity, freshness, replay, bounded retries, round cap, stop, optional API and radio boundaries +PASS: production camera cone/range rejects behind-camera and distant actors; control directions, damping and limits +PASS: production drone radio queue rejects wrong phase/authority/group, busy or unconscious radios and absent routes; snapshots only eligible observations +PASS: target equipment counts as character contact; unrelated blockers and cyclic hierarchies stay blocked +PASS: burial requires a conscious current player, actual held shovel, dead nearby unobstructed corpse and no vehicle; authority and duplicate deletion guards preserve player/tool +PASS: nearest reported idle team, blocked teams, guards, active/pending orders, combat, radio routes, stale status and distance limit +PASS: six editor listeners transferred idempotently, unrelated handlers retained, authority guard and lifecycle ordering +PASS: takeover reconnect creates only missing managers, restores native roles, never grants non-admin access, skips stale/disconnected/client states +PASS: Game Master button becomes enabled on native permission arrival and disabled on revocation; no permission bypass +PASS: native creation called once per editor; pending/duplicate ownership waits, host works, retry is bounded and stale-world callbacks cannot create editors +PASS: catalog-independent cleanup removes original subscriptions once, handles never-initialized/preload items, preserves live validation and opted-out/editor behavior +PASS: shared config transaction rejects client writes, preserves first-save/prior/fallback state across open, write, backup, partial-copy, readback and mismatch failures +PASS: actual Save/Commit preserves semantically valid backup across unrelated menu edits and repairs; unknown fields/default sections retained; actual terrain parser; other parsers, catalog and disk doubled +.....TTS request rejected: authentication failed (403) +TTS request completed (200) +....TTS request completed (200) +TTS request completed (200) +.. +---------------------------------------------------------------------- +Ran 11 tests in 1.069s + +OK +PASS: all 37 fixed messages have validated exact audio, native graph identities and source-bundle inclusion +PASS: production incremental decoder preserves binary data, bounds each slice, yields on elapsed time and rejects malformed or oversized payloads +PASS: production speech transfer checks order, exact part sizes and stable bounded totals without changing audio +PASS: production client callbacks only queue; shared updates prepare one bounded slice, preserve bytes, handle file failures and cancel safely before playback +PASS: production soldier timeout preserves queued/completed preparation, expires stalled requests and removes stopped graphs only once +PASS: actual welcome tick waits for URL/readiness/server permit, preserves local once-only state across worlds and refuses stopped callbacks +PASS: account greeting survives client/controller/round changes; owner validation, delayed readiness, idempotent retry, stale replies and bounded ledger +PASS: original body/equipment retained past old timeout; expiry, death, canonical account/body, occupied controller, failed handoff, missing/dead/expired body replacement and extraction/duplicate-audit guards +frame_ms=33.3333 buffered_step_variation=0.0336441 baseline=1.32469 +frame_ms=16.6667 buffered_step_variation=0.0660537 baseline=0.822226 +frame_ms=6.94444 buffered_step_variation=0.0253502 baseline=0.427864 +PASS: actual view buffer validates samples, follows position/roll/FOV, rejects stale/foreign/reordered data, buffers jitter without drift, bounds memory and expires gaps +PASS: actual relay rejects noncanonical sources, live/foreign/stale viewers, invalid/replayed/fast packets; bounds leases and owner-only target delivery +PASS: production scope sampling preserves ordinary views, selects active ADS only, carries zoom/zeroing/illumination and rejects mismatched/unstreamed optics; native APIs doubled +PASS: native head/helmet fade is local, target-scoped, restored on exit/switch and does not overwrite a later camera owner +PASS: actual orbit branch rotates and zooms without a target; anchor tracking, bounds, collision and menu gating; corpse/vehicle orbit and living player-view fallback preserved +PASS: production TTS settings/test/enable/failure/disable/timeout flows preserve fallback, secrets, authorization, saved state and late-callback cancellation +PASS: TTS admin authorization, limits, case preservation and menu control contract +PASS: actual atlas preparation shows disclosed markers on overview, regional and detail sheets; cover hidden; overlay matches map rectangle above print for square/wide/tall terrains +PASS: actual objective overlay lifecycle preserves separate ownership, late readiness/reopen, data refresh, pan/zoom/culling, supported sibling/shared-frame parents, coordinate offsets, native task-clear isolation and terminal cleanup; native rendering remains unverified +PASS: actual map element initializes each widget, retries missing widgets, updates position and changes only stale text/icon data; no native image-load claim +PASS: all atlas identifiers, including the quoted question mark, match the generator +PASS: actual native fixture root/config ownership and idempotent cleanup preserve foreign map, selector excludes ordinary route, fixed budgets/screenshots/UGC boundaries retained; native operations not executed +PASS: actual full Inspect rejects canvas parenting, wrong active container/canvas, omitted origin offset, wrong rendered box and stale coordinates; differing origins and DPI accepted +PASS: actual long-warning phases retain visible label through1500ms checkpoint then restore radio before close; synthetic marker separated from unmoved player +PASS: actual Center keeps marker offset within large and small native viewports at both fixture zooms without altering disclosed coordinates +PASS: missing, child-only, malformed, zero and duplicate prefab root IDs rejected +PASS: delayed scene/inventory arrival, deferred preload, identity checks, stale replies, timeout and observer cleanup +PASS: loading protection restores only its own damage change, rejects invalid admission actors, and tolerates repeat/deleted cleanup +PASS: actual inventory manifest, delayed/missing/wrong-owner item links, finite cap, consumed-stock refresh and preload ordering +PASS: spawn scene remains held through final acknowledgement and nearby use; leaving, reassignment, disconnect and teardown release it +PASS: production prison AI hold/release, repeat activation, authority/faction/player exclusion, dead actor and stop cleanup +PASS: actual protected/capped damage plus exact-actor terminal fixture bypass through delayed native damage, fail-closed ownership and untouched ordinary actor; no native claim +PASS: actual full planner selection/commit body, 360 equivalence scenarios, orders/reservations/cooldowns identical; one128-unit scan vs >10000 repeated unit visits; no FPS claim +PASS: actual observer monitor/recovery/cleanup rejects retained old controller, preserves new camera/editor/hints/timer, restarts once and retains normal recovery; native effects modeled from SDK, no runtime claim +PASS: former chat controller releases only its own callbacks and preserves replacement menu; current-owner stop/scope and repeated teardown remain intact +PASS: wrong observer fixture selector rejected before runtime/profile setup; no engine launched +PASS: native camera fixture uses current generated sites instead of the obsolete fixed extraction pickup +PASS: actual depot mixed-roster worker/item selection, ownership/refusal and radio/planning/two-leg state transitions, fixed deadline, late proof quarantine, finite import and no adoption after Stop +PASS: actual depot HQ lifecycle, existing planner priority, server/mode/owner gates, idempotent polling and owner replacement +PASS: actual HQ mine/magazine claim separation, real demand methods, exact token cleanup and original authority gates; native availability doubled +PASS: actual full magazine/inert-PMN4 depot leaf, exact custody, isolated callbacks, finite reservation, false/unknown and Stop quarantine, once-only delivery and caps; native movement unqualified +PASS: actual mine/magazine provenance and separated finite mine imports; actual authored identity capture, READY-only detached provenance, same shared stock admission, completed exact two-leg proof, lifetime caps and Stop no late adoption +PASS: anger per car, all thresholds and remainders, disable/re-enable, wave cap, staged retries, empty-round reset, no backlog, four seats and nearest-player road distance +PASS: motorbikes require all mounted addons and exactly two crew seats; base/wreck prefabs rejected +.. +---------------------------------------------------------------------- +Ran 2 tests in 0.001s + +OK +PASS: road width/bridge/length checks, prison and post spacing, setting bounds/default, finite startup and owned HQ admission +PASS: exact configurable width cutoff, separate quotas and independent disabling +PASS: every saved setting has a fresh-profile constructor default +PASS: actual roadblock scheduler yields initial deadline/attempt cap to background, budgets samples, pauses empty/full worlds, completes 30 after unlock, preserves safety and never replenishes losses; teardown cancels work +PASS: actual staged post creation spawns at most one entity per callback, commits only all four/eight guards, all planned props and waypoint, and rolls back player approach, obstructions, spawn/replication/ledger failure and cancellation; all committed props bypass distance streaming +PASS: both shipped checkpoint layouts preserve vehicle lane, opposing signs, staggered barriers, clear guard slots and separate props across 4–16m roads and all tested headings +PASS: actual prop clearance excludes owned geometry while retaining moved-guard, foreign-obstruction, water and terrain rejection +PASS: road-edge/intersection clearance, mine detour geometry, checkpoint hold authority and retask cancellation +PASS: actual crash geometry, detached definition setup, frozen server choice and guarded phase policy; integration/source ordering checked +PASS: actual GameMode readiness admission and common full-footprint survey require crash authorization and both surveyed areas +PASS: actual start defaults/parse/save, failure retention and authorized command wiring; current/next feedback, aliases and no random choice; native UI and core mode freezing are separate +PASS: native-rejected custom items remain available without startup delay; required map and async insertion safeguards retained +PASS: exact starting-stock edits, quantities/type/total limits, duplicate rejection, saved custom/default modes, authority/read-only/save-failure retention and authenticated catalog routing +PASS: actual immutable measured footprint/root/attachment matching, bounds/transforms, moving geometry, seated-body and cargo reciprocity, finite hierarchy caps; native geometry doubled +PASS: actual BMP singleton geometry and typed current order; one survey, full straight segment, width, known history, reservations, settlement/clearance and work caps; placement/footprint tested separately +PASS: actual five random-radius diagnostic wrappers, disabled transparency, cached opt-in, exact zero and exclusion branch, native arguments/returns/outarg preservation, single superclass call and shared16-log cap +PASS: zero-radius trace disabled by default, scoped before setup, exact opt-in emission; no native launch +PASS: complete actual supply-travel probe, immutable 6+2 formations and 25 actors, admission/travel deadlines, six observed native-boundary moves, stop/ownership/partial-substitution refusals +PASS: actual distinct supply-travel hook, fixed420s selector, original observer protection/restoration, failure/terminal cleanup and no legacy convoy setup +PASS: actual supply-travel selector requires Chat, one round and480s; existing outcomes unaffected; no native launch +usage: test_native_mounted_intercept.py [-h] [--steam STEAM] + [--external-addons EXTERNAL_ADDONS] + --compat COMPAT --profile PROFILE + [--smoke {coordinated-ai,crash-start,crash-geometry,normal-escape-route,escape-route,optional-site-skip,infantry-combat,medical-combat,hunter-faction,unconscious-camera,self-epinephrine,starter-backpack,speech-download,bundled-speech,objective-map,town-garrisons,site-garrisons,radio-interaction,enemy-loadout,aggression,sarka-hunters,air-logistics,air-assault,air-recon,airfield-markers,opening-tools,mortar-station,generated-sites,roadblocks,hq-local-handoff,infantry-transfer,hq-body,convoy,supply-convoys,supply-travel,mounted-ammo,alarm-hearing,hq-memory,hq-awareness,aircraft-field,aircraft-route,native-end-active,native-end-preparing,aircraft-control,aircraft-cancel,aircraft-translate,map-ownership,mortar-refresh,mortar-salvo,mortar-courier,station-teardown,inventory-hitzone,prison-breach,powered-flight,powered-translate,local-admission,mortar-expiry,mortar-transfer,mortar-fire,patrol-hq,victory,lost-helicopter,player-death,radio-network,hq-response,mortar-inventory,startup-failure,site-survey,cache-loss,extraction-capacity,early-helicopter-loss,extraction-startup-failure,extraction-boundary-failure,transport-loss,transport-survey,lifecycle,objective-ui,recovery,prisoner-kit,medical,casualty-load,casualty-direct,casualty-bench,casualty-remove,environment,environment-restart,patrols,radio-document-loss,radio-document-loss-partial,guard-cancel,casualty-service}] + [--roadblock-probe-count {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30}] + [--large-roadblock-probe-count {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30}] + [--speech-probe-url SPEECH_PROBE_URL] + [--trace-random-radius] + [--maintenance-refuel] + [--mounted-swap-eligibility] + [--mounted-bmp] [--mine-stock] + [--mounted-courier] + [--mounted-intercept] [--convoy-cover] + [--field-terrain-audit] + [--field-service-cancel] + [--route-service-cancel] + [--station-teardown-diagnostics] + [--flight-autohover] + [--flight-action-inputs] + [--flight-input-diagnostics] + [--recon-takeover-only] + [--body-recovery-only] + [--coordinated-blocked-only] + [--rounds ROUNDS] [--timeout TIMEOUT] + [--project {core,chat}] +test_native_mounted_intercept.py: error: --mounted-intercept requires Chat --smoke convoy, one round and timeout at least900 seconds +usage: test_native_mounted_intercept.py [-h] [--steam STEAM] + [--external-addons EXTERNAL_ADDONS] + --compat COMPAT --profile PROFILE + [--smoke {coordinated-ai,crash-start,crash-geometry,normal-escape-route,escape-route,optional-site-skip,infantry-combat,medical-combat,hunter-faction,unconscious-camera,self-epinephrine,starter-backpack,speech-download,bundled-speech,objective-map,town-garrisons,site-garrisons,radio-interaction,enemy-loadout,aggression,sarka-hunters,air-logistics,air-assault,air-recon,airfield-markers,opening-tools,mortar-station,generated-sites,roadblocks,hq-local-handoff,infantry-transfer,hq-body,convoy,supply-convoys,supply-travel,mounted-ammo,alarm-hearing,hq-memory,hq-awareness,aircraft-field,aircraft-route,native-end-active,native-end-preparing,aircraft-control,aircraft-cancel,aircraft-translate,map-ownership,mortar-refresh,mortar-salvo,mortar-courier,station-teardown,inventory-hitzone,prison-breach,powered-flight,powered-translate,local-admission,mortar-expiry,mortar-transfer,mortar-fire,patrol-hq,victory,lost-helicopter,player-death,radio-network,hq-response,mortar-inventory,startup-failure,site-survey,cache-loss,extraction-capacity,early-helicopter-loss,extraction-startup-failure,extraction-boundary-failure,transport-loss,transport-survey,lifecycle,objective-ui,recovery,prisoner-kit,medical,casualty-load,casualty-direct,casualty-bench,casualty-remove,environment,environment-restart,patrols,radio-document-loss,radio-document-loss-partial,guard-cancel,casualty-service}] + [--roadblock-probe-count {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30}] + [--large-roadblock-probe-count {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30}] + [--speech-probe-url SPEECH_PROBE_URL] + [--trace-random-radius] + [--maintenance-refuel] + [--mounted-swap-eligibility] + [--mounted-bmp] [--mine-stock] + [--mounted-courier] + [--mounted-intercept] [--convoy-cover] + [--field-terrain-audit] + [--field-service-cancel] + [--route-service-cancel] + [--station-teardown-diagnostics] + [--flight-autohover] + [--flight-action-inputs] + [--flight-input-diagnostics] + [--recon-takeover-only] + [--body-recovery-only] + [--coordinated-blocked-only] + [--rounds ROUNDS] [--timeout TIMEOUT] + [--project {core,chat}] +test_native_mounted_intercept.py: error: --mounted-intercept requires Chat --smoke convoy, one round and timeout at least900 seconds +usage: test_native_mounted_intercept.py [-h] [--steam STEAM] + [--external-addons EXTERNAL_ADDONS] + --compat COMPAT --profile PROFILE + [--smoke {coordinated-ai,crash-start,crash-geometry,normal-escape-route,escape-route,optional-site-skip,infantry-combat,medical-combat,hunter-faction,unconscious-camera,self-epinephrine,starter-backpack,speech-download,bundled-speech,objective-map,town-garrisons,site-garrisons,radio-interaction,enemy-loadout,aggression,sarka-hunters,air-logistics,air-assault,air-recon,airfield-markers,opening-tools,mortar-station,generated-sites,roadblocks,hq-local-handoff,infantry-transfer,hq-body,convoy,supply-convoys,supply-travel,mounted-ammo,alarm-hearing,hq-memory,hq-awareness,aircraft-field,aircraft-route,native-end-active,native-end-preparing,aircraft-control,aircraft-cancel,aircraft-translate,map-ownership,mortar-refresh,mortar-salvo,mortar-courier,station-teardown,inventory-hitzone,prison-breach,powered-flight,powered-translate,local-admission,mortar-expiry,mortar-transfer,mortar-fire,patrol-hq,victory,lost-helicopter,player-death,radio-network,hq-response,mortar-inventory,startup-failure,site-survey,cache-loss,extraction-capacity,early-helicopter-loss,extraction-startup-failure,extraction-boundary-failure,transport-loss,transport-survey,lifecycle,objective-ui,recovery,prisoner-kit,medical,casualty-load,casualty-direct,casualty-bench,casualty-remove,environment,environment-restart,patrols,radio-document-loss,radio-document-loss-partial,guard-cancel,casualty-service}] + [--roadblock-probe-count {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30}] + [--large-roadblock-probe-count {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30}] + [--speech-probe-url SPEECH_PROBE_URL] + [--trace-random-radius] + [--maintenance-refuel] + [--mounted-swap-eligibility] + [--mounted-bmp] [--mine-stock] + [--mounted-courier] + [--mounted-intercept] [--convoy-cover] + [--field-terrain-audit] + [--field-service-cancel] + [--route-service-cancel] + [--station-teardown-diagnostics] + [--flight-autohover] + [--flight-action-inputs] + [--flight-input-diagnostics] + [--recon-takeover-only] + [--body-recovery-only] + [--coordinated-blocked-only] + [--rounds ROUNDS] [--timeout TIMEOUT] + [--project {core,chat}] +test_native_mounted_intercept.py: error: --mounted-intercept requires Chat --smoke convoy, one round and timeout at least900 seconds +usage: test_native_mounted_intercept.py [-h] [--steam STEAM] + [--external-addons EXTERNAL_ADDONS] + --compat COMPAT --profile PROFILE + [--smoke {coordinated-ai,crash-start,crash-geometry,normal-escape-route,escape-route,optional-site-skip,infantry-combat,medical-combat,hunter-faction,unconscious-camera,self-epinephrine,starter-backpack,speech-download,bundled-speech,objective-map,town-garrisons,site-garrisons,radio-interaction,enemy-loadout,aggression,sarka-hunters,air-logistics,air-assault,air-recon,airfield-markers,opening-tools,mortar-station,generated-sites,roadblocks,hq-local-handoff,infantry-transfer,hq-body,convoy,supply-convoys,supply-travel,mounted-ammo,alarm-hearing,hq-memory,hq-awareness,aircraft-field,aircraft-route,native-end-active,native-end-preparing,aircraft-control,aircraft-cancel,aircraft-translate,map-ownership,mortar-refresh,mortar-salvo,mortar-courier,station-teardown,inventory-hitzone,prison-breach,powered-flight,powered-translate,local-admission,mortar-expiry,mortar-transfer,mortar-fire,patrol-hq,victory,lost-helicopter,player-death,radio-network,hq-response,mortar-inventory,startup-failure,site-survey,cache-loss,extraction-capacity,early-helicopter-loss,extraction-startup-failure,extraction-boundary-failure,transport-loss,transport-survey,lifecycle,objective-ui,recovery,prisoner-kit,medical,casualty-load,casualty-direct,casualty-bench,casualty-remove,environment,environment-restart,patrols,radio-document-loss,radio-document-loss-partial,guard-cancel,casualty-service}] + [--roadblock-probe-count {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30}] + [--large-roadblock-probe-count {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30}] + [--speech-probe-url SPEECH_PROBE_URL] + [--trace-random-radius] + [--maintenance-refuel] + [--mounted-swap-eligibility] + [--mounted-bmp] [--mine-stock] + [--mounted-courier] + [--mounted-intercept] [--convoy-cover] + [--field-terrain-audit] + [--field-service-cancel] + [--route-service-cancel] + [--station-teardown-diagnostics] + [--flight-autohover] + [--flight-action-inputs] + [--flight-input-diagnostics] + [--recon-takeover-only] + [--body-recovery-only] + [--coordinated-blocked-only] + [--rounds ROUNDS] [--timeout TIMEOUT] + [--project {core,chat}] +test_native_mounted_intercept.py: error: --mounted-intercept requires Chat --smoke convoy, one round and timeout at least900 seconds +usage: test_native_mounted_intercept.py [-h] [--steam STEAM] + [--external-addons EXTERNAL_ADDONS] + --compat COMPAT --profile PROFILE + [--smoke {coordinated-ai,crash-start,crash-geometry,normal-escape-route,escape-route,optional-site-skip,infantry-combat,medical-combat,hunter-faction,unconscious-camera,self-epinephrine,starter-backpack,speech-download,bundled-speech,objective-map,town-garrisons,site-garrisons,radio-interaction,enemy-loadout,aggression,sarka-hunters,air-logistics,air-assault,air-recon,airfield-markers,opening-tools,mortar-station,generated-sites,roadblocks,hq-local-handoff,infantry-transfer,hq-body,convoy,supply-convoys,supply-travel,mounted-ammo,alarm-hearing,hq-memory,hq-awareness,aircraft-field,aircraft-route,native-end-active,native-end-preparing,aircraft-control,aircraft-cancel,aircraft-translate,map-ownership,mortar-refresh,mortar-salvo,mortar-courier,station-teardown,inventory-hitzone,prison-breach,powered-flight,powered-translate,local-admission,mortar-expiry,mortar-transfer,mortar-fire,patrol-hq,victory,lost-helicopter,player-death,radio-network,hq-response,mortar-inventory,startup-failure,site-survey,cache-loss,extraction-capacity,early-helicopter-loss,extraction-startup-failure,extraction-boundary-failure,transport-loss,transport-survey,lifecycle,objective-ui,recovery,prisoner-kit,medical,casualty-load,casualty-direct,casualty-bench,casualty-remove,environment,environment-restart,patrols,radio-document-loss,radio-document-loss-partial,guard-cancel,casualty-service}] + [--roadblock-probe-count {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30}] + [--large-roadblock-probe-count {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30}] + [--speech-probe-url SPEECH_PROBE_URL] + [--trace-random-radius] + [--maintenance-refuel] + [--mounted-swap-eligibility] + [--mounted-bmp] [--mine-stock] + [--mounted-courier] + [--mounted-intercept] [--convoy-cover] + [--field-terrain-audit] + [--field-service-cancel] + [--route-service-cancel] + [--station-teardown-diagnostics] + [--flight-autohover] + [--flight-action-inputs] + [--flight-input-diagnostics] + [--recon-takeover-only] + [--body-recovery-only] + [--coordinated-blocked-only] + [--rounds ROUNDS] [--timeout TIMEOUT] + [--project {core,chat}] +test_native_mounted_intercept.py: error: --mounted-intercept and --convoy-cover are mutually exclusive +PASS: actual native interception witness requires real radio cursor/lineage, original actor identities, fixed movement/hold/expiry/resume and immutable deadline; no movement/delivery injection +PASS: actual CLI rejects wrong mode/project/rounds/899s/conflict before runtime; valid flag and terminal branch identify synthetic-observation qualification +PASS: visible base hook and actual fixture override delegate once; delivery proof uses retained pre-super route only on successful production transition +actual mounted HQ dispatch planning, radio, ownership and lifecycle checks passed +PASS: actual mounted intercept eligibility/order chronology, fixed destinations, native road selection bounds, width, segment heading, clearance and settlement delegation; no native driving claim +PASS: actual paired arc geometry,40m/80m spacing, separate original polylines, both-position validation and128road/4096segment budget; no native driving proof +PASS: actual typed original BMP singleton, loss/footprint/custody guards and native cancellation, UAZ-only pair admission, rollback, native allocation/revocation boundaries, per-member ownership, hold and expiry +PASS: actual Tick clock initialization admits fractional first ticks and expires without extending the original start +PASS: actual finite conservation/deadline/callback policies; read-only selection, bounded once-only inventory submission and no can refill; native transfer not executed +PASS: actual exact-context membership, bounded identity/reach gates, native start/cache/eligibility ordering and no duplicate/foreign action start; fuel manager identity and empty-can headroom guards checked +PASS: actual detached node/value snapshot and conservation refuse mismatched lengths before indexed reads, retain original identities under native out-array aliasing and log bounded counts once; native cause remains unknown +PASS: actual mine evidence sealing/recovery, historical coarse publication, caps, canonical ownership, marker join retry/owner-change/stop; native arming and replicated vector-array transport untested +PASS: actual full document recovery retains authored/sealed targets, one shared spent ledger, retry/exhaustion semantics and canonical multi-player ownership alongside supplemental mine intel +PASS: actual infantry search suspension, quiet grace, finite resume, expiry/replacement and defensive/ownership boundaries +PASS: infantry combat gate precedes radio delivery and preserves non-task transports +PASS: actual HQ contact transition wakes only fit squad members, cancels only task orders and logs changes once +PASS: actual finite medicine grants, authored stock deduction, full-backpack refusal/pouch fallback, no loot replenishment, unresolved-operation quarantine and ownership/stop guards +PASS: only recent native detected/identified threats suspend hunter travel; stale/disarmed/destroyed contacts cannot strand patrols +PASS: actual hunter combat transition cancels only its travel once, holds through renewed contact and resumes after quiet; unregistered startup preserved +PASS: actual movement recovery retries delivered orders three times, respects combat/speed/arrival/progress, then abandons the stalled vehicle +PASS: actual abandonment releases once, detaches transport, requests native exits only for fit original AI aboard, and leaves players/captured crews alone +PASS: captured sighting retention, immutable details, expiry, replay rejection, bounded sound uncertainty/cooldown, radio loss, priority and overdue-status fairness +PASS: arrow press/release, held keys, opposing keys, disabled/menu input and firearm-only retention +PASS: actual self-injection eligibility matrix and authority/rate limit; default-off persistence, authenticated menu route, owned finite injector and native effect/consumption boundaries +PASS: town trigger and hard 700m exclusion for all observers, empty/invalid positions and final-check crossings +PASS: object guard split, hard 1000m exclusion / 1400m activation, footprint support, slopes, holes and invalid traces +PASS: actual fixed-post admission reserves only stationary guards from HQ retasking and tightens their defend radius +PASS: production site classification accepts structures/descriptors and excludes industrial props, fragments, flags, ruins and vehicles +PASS: increased site populations preserve the 32 fixed / 16 mobile field-soldier budget, with guards at every site +PASS: exact finite site squads, invalid roster/count rejection, committed-site spacing and safe fallback boundary +PASS: mortar couriers use the mobile site team and refuse permanent-only garrisons +PASS: omitted preferred mortar depot selects a surviving owned camp/mobile team; no camp, foreign cache and permanent-only sites are unavailable; historical priority retained +PASS: real-session mortar deadline, failed-support convoy admission and hunter survivor/recovery gates +PASS: native-route retry preserves delivered target, limits attempts and suspends during combat +PASS: stale/deleted AI utility cannot receive Complete; mortar HQ preflight withholds unsafe orders; mounted convoy cover never creates infantry Defend +PASS: flight crew affiliation and group precede native boarding; preparation remains bounded even while passengers wait +PASS: factionless/deleted map targets do not abort perception; faction lookup tolerates teardown; deleting helicopter releases without capture/engine access +PASS: shoot adapter waits for a physical round; bounded same-shell retries, interrupted/never-started loads, committed no-retry, order/owner changes and normal native delegation +PASS: observed mortar corrections, radio delivery, bounded expiry, aim preservation and out-of-order impacts; native flight untested +PASS: splash reports retain HQ-estimated movement with matching position/time; stale, mismatched or unsupported estimates rejected +PASS: missing/invalid faction crew defers before any native spawn or allowance insertion; all registered RHS factions have explicit soldier and medic profiles +PASS: vehicle radio issued once; pending, refusal and looting cannot duplicate or fabricate a physical radio link +PASS: actual vehicle-radio link requires the original seated crew, physical manpack and live uncaptured mission vehicle; looting, dismount, release and teardown remove it +PASS: actual hunter release preserves survivors/HQ, releases driving ownership once, delegates capture/teardown, and excludes prison/patrol/mortar from generic objective defence +PASS: actual hunter cancellation releases exactly the pending source/message once; teardown clears ownership without HQ/game/world +PASS: actual player-entry hook latches original hunter capture before native callbacks; both release layers cancel ownership without new entities/refund; bounded current-owner guards and prior-release policy +PASS: real opening road geometry enforces wide azimuths; fresh delivered contact preempts patrol cooldown, respects radio failures and does not starve in-flight interception +PASS: delivered ground search survives the 60-second mortar cutoff, with five-minute/500m uncertainty bounds and no live target reads; mortar policy unchanged +PASS: reserve uses HQ reports/dispatch deadlines, preserves radio uncertainty, spends once, respects cooldown/availability/three-reserve/15-vehicle caps +PASS: searches expire ten minutes after observation, ignore replays, wait at arrival, widen within 1 km and bound road queries +PASS: actual scoped 10% tighter REGULAR aim error and alert perception; preserves equipment multiplier and restores vanilla behavior when unbound +PASS: physical inspection and parent-wreck retention; server-only searched/report delivery unlocks native cleanup once with a 300-second delay +PASS: 570 folders cover 57 unfinished sites evenly; known/automatic targets excluded, late camps included, and exact issued/authored documents preserved +PASS: bounded same-group empty-spawn retries, no casualty refill, queue retirement, delivery-gated intel, prepared-team reuse, throttled diagnostics and LOD release +PASS: four-team/twelve-wave bounds; two-thirds nearby radio defence; nearest selection, radio failures, expiry, perimeter separation, protected duties and independent response budgets +PASS: production airborne memory confidence, persistence, ground coverage, confirmed losses, artillery veto, cooldown and invalid-input rules +PASS: production bounded approach deadline, empty-drop reuse, partial-drop protection; cover retains the carried HQ target until its deadline; airport reload waits until the drop pass and cover have finished +PASS: air logistics reservation preserves delivered search until radio handoff, excludes guards/combat/in-flight orders, and quarantines unresolved native loads/moves +PASS: actual ammunition cargo selector handles empty rifle/machinegun/sniper magazines, preserves loaded variants, excludes auxiliary launchers and tolerates missing native metadata +PASS: original 15-minute launch/loss cadence, active/captured timer disarm, saved delay reset, stop, 300m orbit and bounded close-contact standoff at 30/60/120 Hz +PASS: actual aircraft-removal notification guards owner/server/active/stop and schedules one full delay without replay extension +PASS: actual helicopter delay applies resolved Random values, preserves countdown on save failure, and leaves active flights running +PASS: hill prominence/elevation, actual road edges/heights/bends and server-only finite scout admission, pending stock, timeout and no replacements/refills +PASS: mortar duty scope excludes players, other crews, stopped/client/inactive states; only destruction releases an active assignment, while the gunner may approach the gun +PASS: random mode restrictions, full numeric ranges, independent calendar dates and strict daylight boundaries +PASS: actual killais eligibility includes the 1000m boundary, excludes players/retained bodies/dead/non-character entities and checks full 3D distance +PASS: actual generation scheduler bounds each tick, enforces deadline/candidate ceiling, validates fallback, commits only accepted positions, skips only dispensable sites, preserves required objectives/intel, and resets the next search budget +PASS: actual background activation waits an hour empty without consuming placement time; disconnect does not reset active budget +PASS: actual separation keeps randomized extraction within the escape boundary in both placement orders, including fallback +PASS: scenario validation admits randomized extraction definitions and rejects unsupported randomized site kinds +PASS: terrain placement samples world bounds, retains streaming candidates, bounds waits/work, rejects foreign fallbacks, preserves objectives/intel and validates completion +PASS: actual navigation readiness supports static meshes, yields only for loadable streaming tiles and refuses unreachable positions +PASS: automatic extraction samples the whole terrain immediately and retains geometry/navigation/flatness and fleet-space checks without airport bias +PASS: universal connector, embedded/standalone exports, multiple terrains, stable IDs, native nav configs, missing-nav visibility, path validation and overwrite protection +PASS: airfield detection accepts physical runways/towers and bounded authored markers, rejects unrelated props, water and out-of-world markers, and samples terrain height +PASS: configured airport parsing, bounded readiness, stale admission rejection and cleanup wiring +PASS: automatic default, explicit header/CLI opt-out, editor/authored-mode guards, optional airport override precedence and fresh-round saving guard +PASS: singleton identity guards, paired faction deserialization and client world-cleanup wiring +PASS: task/map/respawn getters survive delayed old destruction and preserve ordinary-mode behavior +PASS: replication hierarchy refuses absent/aliased nodes and establishes delivery dependencies idempotently +PASS: standalone old faction delegates collected once, with null/deleted owners ignored +PASS: actual terrain takeover startup skips mode-less/menu worlds, always forwards super, retains eligible/unsupported/authored/client/editor semantics +PASS: native name callback preserves authored modes, opt-outs and failures; terrain suffix follows world changes, cached resolution and confirmed takeover text restores on cleanup without changing scenario identity or overwriting later edits +PASS: actual terrain parent traversal, Armenhof/Nogova names, Everon alias, missing-resource fallback, empty names and bounded cycles/depth +PASS: actual loading title/description hooks follow late takeover, apply text limits and empty updates, retain native progress and tolerate missing headers/widgets/game +PASS: saved terrain GUIDs, defaults, restart persistence, clearing, backup recovery, corrupt-file preservation, write failures, and client write denial +PASS: startup terrain capture protects client/editor/menu worlds, default behavior, same-map loads and reload-loop recovery +PASS: actual transition waits for native startup, disconnects without bans, requires an empty session, retains every loaded mod, bounds waiting and consumes requests once +PASS: actual faction resolution reserves explicit roles, samples without replacement, substitutes disabled selections, and rejects duplicate/unknown/missing choices and insufficient pools +PASS: Random all submits persistent random roles immediately; manual mixed choices, stale/unauthorized UI guards and debounce preserved +PASS: actual content policy gates parent packs, individual factions, faction identity and finite group rotation with vanilla fallback +PASS: actual delivered road eligibility, ahead projection without chords, reservations, stock road query bounds, terrain/water/obstruction refusal and clean outputs +PASS: actual delivered-task lineage, expiry, old-order retention, native commit, release, road precision expiry and duplicate delivery +PASS: actual original-roster local handoff,100m3D bound,busy carrier/budget exclusion,origin interruption including deletedsource,normal radio delivery and per-source replay history +PASS: actual visual intake retains source/time/position/id, rejects replay, prefers usable own route, excludes simultaneous callers and conservatively resets negative-sweep dwell +PASS: actual fixture local/radio gating, immutable source/time/position, interrupted-report exclusion and exact-owner cleanup +PASS: local-handoff runner refuses wrong project/round count/insufficient deadline before runtime work +PASS: actual fixture allocator terminal/unsubmitted guard, original-group lookup and both candidate gates +PASS: actual report-derived waypoint insertion/order and tighter positive radii; no formation navigation claim +PASS: actual Place/Stop waits native pose update, bounds four attempts, preserves original position, restores pending/settled placement and respects ownership/accepted-move quarantine +PASS: actual fixture current/original recipient ownership, unresolved transfer cleanup, exact-token release and idempotent Stop +PASS: actual fixture phased-cargo readiness, bounded callbacks, captured-stock mixed-caliber selection/continuation, reservation cleanup and component magazine counts +PASS: actual inventory-fixture setup uses ordinary prison unlock before constructing its convoy-waiting probe; failed unlock cannot run fixture +PASS: actual authored storage anchors, native trace flags, own-hierarchy exclusion, external wall/vehicle obstruction, range, unknown geometry and bounded context refusal +PASS: actual Compatible and bounded stock preflight before report/claim consumption, later compatible truck, launcher controls, convoy binding, finite identities, disjoint tokens, shared report replay/cooldown, original recipients and HQ cleanup +PASS: actual finite convoy supply pool; immutable slots, shared demand state, sparse/capped discovery and permanent shutdown +PASS: actual HQ rotates finite donors, skips unavailable/contacted trucks, uses delivered reports and dispatches at most one trip per planning cadence +PASS: actual original turret identity, native/canonical guards, scoped maximum-skill profile, reset, dismount/reboard, requested-skill preservation and restoration +PASS: bounded HQ startup/memory windows and outcome-specific full-route deadlines +PASS: explicit escape-route skips only administrator stress, preserving original full-fixture wait/failure paths +PASS: normal escape route keeps ordinary catalog and generated placement; historical selectors remain unchanged +PASS: actual patrol fixture leaves prison before responder HQ proof, followed by separate permanent-patrol observation +PASS: exact patrol-hq finite responder preparation and native search-radius receipt verification +PASS: actual read migrates old valid settings, preserves explicit disabled state, rejects invalid data; next-round feedback and fixed menu remain honest +PASS: actual automatic convoy timing/authority/admission/one-attempt/manual-task/stop policy; native deployment unproved +PASS: late authoritative failure reason refreshes open result; detach, mode change and success subscriptions preserved +infantry resupply actual rules, radio transitions, owned cleanup and unresolved-operation tests passed +PASS: actual resupply Roster preserves permanent release, original slot mapping and bounded ownership +PASS: actual designated zero/one original carrier selection, settled startup, shared finite claims, no refund after submission +PASS: actual HQ startup grant readiness forwarding is authoritative and fail-closed +PASS: actual finite PMN4 designated-zero/one entitlement, pinned original ownership, shared commit, physical custody, callback quarantine/deletion and no retry +PASS: actual bounded empty-return and finite delivery; phase-isolated callbacks, exact ownership proof, stop quarantine and original actor/vehicle boundaries +PASS: actual shared finite identity reservation; competing consumers, submission permanence, stale cleanup and96-item bound +PASS: actual carried-mounted swap, shared committed claim, physical slot reach, exact two-way proof, uncertainty and terminal cleanup +PASS: actual mounted pickup, exact finite ownership, pre-submission commit, physical custody, bounded callback and quarantine lifecycle; no native coverage claim +PASS: actual mounted courier admission, radio, individual orders, two-stage transfer, reboarding, token cleanup and quarantine lifecycle +PASS: actual scoped crew permit and native board completion/failure preserves foreign seats without teleport fallback +PASS: actual shared mounted stock/history ownership, atomic exact HQ pair claim, and bounded stopped-owner proof polling +PASS: actual carried/mounted early ammunition policy and status-first shared uplink; complete threshold, phases, cooldown, failures requested check-ins and non-urgent detached carried-mine status +PASS: actual group radio startup preservation, finite native grants, callback quarantine, frozen selection/actor ownership and bounded observation +PASS: actual maintenance native-stock check rejects missing/duplicate/wrong-identity/unowned/depleted/malformed stock and is read-only; native runtime not executed +.................. +---------------------------------------------------------------------- +Ran 18 tests in 0.285s + +OK +PASS: actual radio node rejects current incapacitation, death, ownership and faction changes despite cached inventory; one-second capability refresh remains explicit +PASS: Southern finite maintenance stock preserves weapons/clues and optional transport, historical Western fixture stays separate; native capacity/consumption untested +PASS: optional transport deferred behind required readiness, bounded once-only spawn/omission, isolated cleanup, occupied-candidate retention and required-default preservation +PASS: actual diagnostic fallback runs only on failed missing-context call, derives unique native pilot door, preserves stock eligibility and restores prior index on success/failure; diagnostics mutate no game state. +PASS: actual native-prelude cleanup restores only original changed damage, refuses stale/incapacitated/aboard teleport; bounded five-seat/four-door fixture wiring checked. Native execution remains pending. +PASS: actual CreateTransport requires successful scoped Configure after handbrake, preserves ordinary vehicles, tracks spawned entity before failures and never treats failed lock registration as ready. +PASS: actual preparation Configure guards/idempotence/breach preservation, security eligibility/final current-body server mutation and all scoped action guards; all five seat/four door resource overrides. Native hold, prefab merge, replication and boarding remain unverified. +PASS: production vehicle alarm single trigger/replica completion/no replay, fixed deadline/readiness wait, failed audio, dedicated server, moving exact handle, destruction/native end/deletion/clock and mission teardown. Native sound and multiplayer delivery require engine qualification. +PASS: production alarm emitter/receiver original time/location, explicit native queue only, 32-entry cap, 50m local witness eligibility, bound perception, native-super preservation; actual engine broadcast/hearing remains unverified. +PASS: actual optional candidate barrier, exact callback/custody proof and unchanged mine/primary snapshots; no native transfer claim +Native finite mine-stock runner: parser, scope, exclusions and command pass +PASS: actual bounded native mounted proof/detached payload/deadline/cleanup methods, production-only setup and isolated runner selector +PASS: actual one-existing-convoy candidate readiness, sender-root identity, incomplete cargo refusal and fixed three-candidate bound +PASS: actual BMP capture requires complete armed exact original resource; pinned delivery/slot checks and isolated CLI flag +PASS: actual opt-in pre-unlock isolation refuses wrong mode/phase/flag and existing hunters; no baseline service changes +PASS: actual once-only native dry query, exact before/after slots, native refusal, shutdown; shared bounded discovery and distinct opt-in verdict +PASS: actual completion selector and pre-cleanup variant capture preserve separate radio and eligibility verdicts +PASS: actual cargo diagnostic stages separate absent/foreign magazines, used/empty/invalid rounds, well mismatch and exact truck storage/attachment without mutation +PASS: actual native courier witness rejects missing radio/custody/swap/reboard evidence; CLI opt-in bounded; native success remains unqualified +PASS: actual courier constructor/Tick waits for preparation, returns before physical checks, preserves fixed deadline and sticky stop/failure; Enfusion startup awaits native verification +PASS: actual arranged native alarm fixture deadline, single emit, natural-route observation, original timestamp/area/detail assertions, natural observer proximity/activation wait, failure cleanup and independent canonical-body restoration; native delivery itself remains unqualified. +PASS: actual convoy cover observation/snapshot/uplink/HOLD/RESUME/cleanup transitions; native boundaries mocked, non-convoy runner opt-in refused +Enemy optics actual-service ownership, preservation, callback, deadline and bounded-inspection policies passed +PASS: actual delivered cover freshness/lineage/replay and canonical executor; owned waypoint-only hold, one resume at preserved route index, invalid ownership/crew/ledger refusal and fail-closed native recreation +PASS: actual Stinger show/set/help state precise actor-roll effects; read-only help, bounded values, malformed syntax and failed-save preservation; no rerolls/gameplay edits and no native persistence claim +PASS: new/retasked search and radio delivery ammo gates; active tasks and delivered release preserved +HQ convoy delivered-report planning and downlink regressions passed +PASS: actual own-inventory ammo inspection deduplicates loaded/carried/shared wells, separates chambers/launchers, freezes scalar snapshots and treats unsupported/capped/foreign inventory as unknown +PASS: actual carried PMN4 inventory, original-owner guards, bounded deduplication, independent unknown state and detached counts +PASS: actual mounted hierarchy sampling, ownership exclusion, deduplication, completeness/caps, quarter threshold and detached validation; no runtime policy or ammunition mutation +PASS: WORKBENCH opt-in diagnostics distinguish cycles/cap/storage/manager/mount failures without repeated native traversal +PASS: actual HQ original convoy-root admission rejects wrong force/server/group and never supplies replacement lookup +PASS: production mounted structural seat scan ignores >128 carried/cargo descendants, shares exact native mount/magazine ownership, preserves attachment seats and exact occupants, rejects unknown/cyclic/oversize structures; native binding still requires qualification. +PASS: native body fixture uses existing immutable actors, real production LOS/queued uplink, pre-delivery isolation, actual status overlap, bounded cleanup and no fabricated reports/spawns +PASS: actual native fixture lookup selects exact BODY kind/identity/message from bounded evaluations, never sighting-only Get +PASS: actual ammo snapshot comparison checks every scalar/category flag; native probe requires real roster rescan, loaded-round lower bound and separate immutable pending/Watch objects +PASS: actual delivered slot-union bodies preserve overlap/disjoint evidence, replay idempotence, status subset integrity, full-wipe closure and formation-local bounds +test_review_added_allowed_media_invalidates_snapshot (__main__.ReviewTests.test_review_added_allowed_media_invalidates_snapshot) ... ok +test_review_added_source_directory_rejected (__main__.ReviewTests.test_review_added_source_directory_rejected) ... ok +test_review_loose_root_resource_and_symlink_rejected (__main__.ReviewTests.test_review_loose_root_resource_and_symlink_rejected) ... ok +test_review_metadata_media_and_sidecars_remain_allowed_and_bound (__main__.ReviewTests.test_review_metadata_media_and_sidecars_remain_allowed_and_bound) ... ok +test_review_missing_link_rejected (__main__.ReviewTests.test_review_missing_link_rejected) ... ok +test_review_package_guard_sees_new_scripts (__main__.ReviewTests.test_review_package_guard_sees_new_scripts) ... ok +test_review_retargeted_private_link_rejected (__main__.ReviewTests.test_review_retargeted_private_link_rejected) ... ok + +---------------------------------------------------------------------- +Ran 7 tests in 0.063s + +OK +PASS: actual report methods reproduce old starvation; status-first scheduler delivers check-ins and requires 30s without combat or actual visible contacts before negative reports +PASS: actual actor group lookup retains controlled character membership when seated/inherited vehicle agents differ; missing control or parent refuses +................. +---------------------------------------------------------------------- +Ran 17 tests in 6.360s + +OK +PASS: actual convoy motion thresholds, native-only proof boundaries, physical cargo/crew ownership and pre-launch runner restrictions +PASS: actual new measured ClearFootprint 25/441 sample grids, measured extents/height, water/invalid world/terrain/trace refusal plus legacy filled rotated-footprint TraceBox and nine terrain/water samples; broad tree/cable bounds alone accepted, actual collision/nonfinite trace refused, nonzero sweep and ENTS/OCEAN flags, bounded diagnostic query and reset +PASS: actual road interpolation/projection/orientation, six35m starts,200m forward tail, preserved bends, short/far/degenerate/nonfinite/overdense/hairpin refusal and deterministic candidate ties +PASS: actual authenticated convoy dispatch, active/ready admission gates, canonical receipt, safe unconsumed preflight retry, pool refusal, retained partial failure and consumed no-retry +PASS: actual native readiness exact membership, one-time per-vehicle ledger admission/reservation, partial readiness retry without duplicate records and one-pass56-item cargo allocation without replenishment +PASS: actual per-vehicle readiness reasons, native agent/activity counts, intended-seat diagnostics, five-second throttle and read-only observation +PASS: actual convoy dispatch validates before receipt consumption, consumes once before native mutation, retains all10 partial-failure paths, accepts the selected non-USSR enemy, and allocates exact10 bodies without capacity shrinking +PASS: own memberless prefab disables automatic spawn before initialization; actual admission rejects populated, immediate or authored-slot templates before finite crew creation +PASS: actual native seated-group arrival outside35m, native waypoint removal, idempotent advance, and convoy waypoint idempotence/arrival/deadline, missing/dead/captured/reparented crew refusal, failed native waypoint release, original vehicle/member preservation and no replacement +PASS: actual convoy/team Release retains original active survivors and HQ identity, rejects takeover/terminal/unknown roster, preserves exact logistics quarantine and normal eligibility +PASS: actual convoy receipt identity/one-use, shared60-body and128-formation caps, outstanding/native-ledger accounting, exact10-body composition, source reuse, mode/client guards and no consumed receipt refunds +PASS: actual supply route cycling/arrival/stops, finite startup bounds, contact freshness, dismount hold, quiet interval, interrupted boarding, timeout and lost-truck release +PASS: moving-convoy perception boundaries and scoped individual/group abandonment priorities +PASS: actual supply startup reasons expose unchanged body budget/requirement, journal only failure changes, preserve retry cadence/caps and report the true final refusal +PASS: actual combat start releases only exact intercept claims before owning route/orders; foreign claim defers combat takeover +PASS: actual StartOne plus actual pool preserve unconsumed receipt retry, reject consumed replay, skip impossible new-budget surveys, retain equality, retry caps and journal dedup; no FPS claim +PASS: actual admission seeds use exact installed loaded prefab, reject replacement/foreign/projectile paths and preserve bounded immutable identity +PASS: actual primary-before-mounted one-shot batch, shared96/128 caps, physical snapshot headroom, original ownership, callback refusal and admission pinning +PASS: actual bounded HQ query validates only existing original binding without admission or replacement lookup +PASS: exact optional PMN4 startup, primary callback independence, original owner,128 capacity/callback limits, terminal no-retry and callback-proven freeze +PASS: production convoy spacing, physical arrival, stable follower targets, supply ownership, leader promotion and bounded stuck recovery +PASS: convoy combat keeps native manoeuvres for unchanged contacts and refreshes when contact moves +PASS: native convoy proof excludes pre-departure movement and ends via explicit fixture reset, not prohibited player death +PASS: boarding retries only after approach/seat progress stops, capped at three, with delayed native reissue and completed-team preservation +PASS: slow only owned vehicles near fit dismounted infantry; ignore passengers, casualties and released teams/vehicles +PASS: restore missing native driving registration only for healthy owned seated crews; preserve existing association and refuse invalid/released vehicles +PASS: actual convoy support preserves visual cover and ongoing approach, retries masked arrived positions, withholds unsafe moves and preserves ammo withdrawal +PASS: production support geometry rejects occupied, disallowed, blocked and too-close positions; only explicit intermediate approaches waive the firing-lane requirement +PASS: actual body observer enforces owned physical roster, local death-only candidates, native trace gating, budget/cadence/caps, immutable body-only snapshots, radio retries and confirmed suppression +PASS: own initial roster, explicit retained corpse evidence, unconscious/missing/ref transfer guards, fixed strength, no replacement adoption, detached samples, surviving radio sender, immutable convoy root/ledger, mounted capture release and lost-root unknown +PASS: delivered-only status snapshots, two missed check-ins/reply deadline, last reported coordinates, episode/replay guards, confirmed-loss idempotence, detached/validated mounted payload replacement 256-record cap and detached carried-mine radio delivery/chronology +PASS: actual failed-retask deadline rollback plus assignment cancellation/release preserves radio ownership, native waypoint lifecycle and failed-order retry boundaries +PASS: actual force ledger, finite casualties/identity/cap, routes/arrival/elevation/overshoot, server and physical guards, staggered 256-record simulated hour without world queries +PASS: actual equipment coordinator registration dedupe, startup delay, five member scans, finite component retries, unregister/stop terminal behavior and 256-group bound +PASS: actual percentage selection, native/preferred launcher preservation, failure/removal fallback, pending-operation quarantine, capture, finite two-mine grants and no replenishment +PASS: automatic inventory one-shot roll, exact item ownership, finite compatible ammo, rejection, capture/stop, deletion, loot and late callback quarantine +PASS: enabled/valid catalog eligibility, category restrictions, content filtering, GUID deduplication across factions and bounded catalogs and exact weighted ticket boundaries (100:1, zero excluded) +PASS: actual engineer native group-envelope admission and phase cancellation, preparation/deadline, original custody/identity, once-only callback removal, cancellation quarantine, withdrawal/clearance, native refusal and owned-action cleanup; native execution untested +PASS: actual mine selector respects road and settlement flank safety; native boundaries doubled +PASS: actual HQ and post ledger: second delivered post, one query/tick,2 active/32 jobs,4 consumed lifetime attempts, no-stock/query refusal consumption, pending old job and original identity constraints +PASS: actual mine post ledger immutable history, strict chronology/evidence, aliases, >160m separation, detached sites and finite4/32 consumed attempts +PASS: actual objective heading/threat/approach rules, persistent doctrine weight, fresh-contact coverage invalidation, stale-sweep rejection and atomic radio retask ownership +PASS: actual bounded delivered-negative coverage, replay/freshness/expiry/invalid guards, oldest eviction, small-circle and nearest-unswept selection, reserved-cell exclusion and cleanup +PASS: actual five/six bounded hypotheses, observation-relative ETA, future lead, hiding/reverse, local negative weighting, immutable report lineage, road bends/heights and finite cache budgets +PASS: actual10/40m local negative patches, same-cell hidden-ground preservation, proportional residual belief, replay, chronology, physical-report guards, caps and cleanup +PASS: actual operation selection/replay, pending reservations, detached reports, identity/sequence/time gates, terminal lifecycle, bounded ledger, finite roles, no shadow mutation or hidden-player inputs +PASS: actual squad judgment, stable caution, delivered casualty/contact/ammo trends, isolation, replay/time validation, recovery hysteresis, no invented healing or enemy knowledge +PASS: actual terrain survey chooses usable cover/concealment, preserves search and bound envelopes, honours finite support, delivered evidence, ownership, async tiles and shared geometry budget +PASS: actual-action speech, finite current cover, local search wording, silence after replacement/transfer/stale queue, stable cooldown and optional direct speech +PASS: actual hunter reservation ledger, pending/delivered replacement, independent six/eight caps, stale/empty status, finite observation deadline, no hidden force-position lookup +PASS: actual coordinated adapter report gates, local evidence, delivered-force snapshots, ownership/lease checks, continuous-contact arbitration, legacy isolation and shadow no-native-order boundary +PASS: actual execution lifecycle, original physical arrivals, failed movement, quiet footprint, local support expiry and delivered report acknowledgments +PASS: native support wiring requires own activity, soldier suppression, actual projectile event and immutable roster; no waypoint-completion arrival shortcut +PASS: actual finite native LOD leases restore prior overrides and protect transferred agents, player ownership and intervening overrides +PASS: actual waypoint pause/resume owns only its finite order, preserves unrelated routes and cannot resurrect a superseded or deleted hold +PASS: installed native priorities authorize group suppression71 over ordinary combat70, below native healing80; tagged soldier suppression91 yields ammo100, retreat110, medics111 and immediate danger (action SHA256=dbc652e6885f5d52d9dcdd465f74a7f8eb742eeb7f3a47d38fd11bb8b93ed1d8) +PASS: actual suppression and projectile methods retain a fixed eight-second last-seen area, deny blind support, require exact owned behavior, preserve finite ammo/shot budgets and bound retries +............. +---------------------------------------------------------------------- +Ran 13 tests in 0.710s + +OK +PASS: actual coordinated runner admission and explicit blocked-only engine flag; no native launch +PASS: actual HQ active/pending reservations, interruption, committed replacement, bounded coverage and unchanged force counts +PASS: actual bounded pursuit roles/objectives/scores, stale search degradation, physical/busy/home guards, finite lifetime and two-bearing escape gap; no hidden player reads or spawning +PASS: actual finite45..110 radius and both ordinary search queue snapshot expressions +PASS: actual HQ memory rules/service preserve delivered snapshots, chronology, replay bounds, decay, motion limits, identity and negative-search revisions +........... +---------------------------------------------------------------------- +Ran 11 tests in 0.296s + +OK +PASS: actual session Tick + journal router delivers each grant completion and new HQ line once, without repeats on empty/unavailable feeds or unauthorized ticks +..... +---------------------------------------------------------------------- +Ran 5 tests in 0.679s + +OK +PASS: actual current-controller/admin/mode authorization, per-round anti-replay, token-rotation refusal, command/snapshot throttles and client scope; owner-only replies and player-tool cleanup wiring +PASS: mission provider registration is idempotent, optional dispatch is ordered, status aggregates, journals preserve cursors, aliases stay with their addons and topic help is bounded +PASS: actual menu command routing covers all menu settings, rejects unsupported keys, gates companions, and matches unique authored widgets +PASS: explicit weapon retention buttons use the same ready/authorized server command path +PASS: restart toggle submits authorized settings commands; Mission controls fit without overlap +PASS: item editor, preset controls and dynamic item-row layout are structurally valid +PASS: selected choices remain green/red and fully visible when disabled; unselected choices return to neutral +PASS: probability editor and weighted item-row layout have all bound controls +PASS: panel fits narrow/large-DPI viewports, restores requested size, avoids repeated writes and preserves user DPI +PASS: catalog requests use authenticated sessions, independent admin page selections, loaded-mod allowlisting, bounded pages and allowlisted item mutations +PASS: actual item rules, shared-source conflicts, missing/returning mods, bulk reset, independent named presets, bounds, malformed data and failed-save state preservation +PASS: actual summaries preserve queued/delivered meaning, clear counts and IDs; raw records, legacy display, cursor gaps and RPC limits remain intact +PASS: actual admin body authorization, god restoration, vanilla item deposit, callback completion/failure, timeout quarantine and stop/revocation paths +PASS: same-body revoke/regrant preserves pending insertions and timeout quarantine; new-body binding isolates late callbacks and never inherits god mode +PASS: actual Intel commands distinguish status/start/failure, preserve authorization gate and reject malformed requests; spent ledger is idempotent, server-only and bounded +PASS: actual reroll snapshot, authority, cancellation, ownership, accepted operations, quarantine, bounded work and stop methods; no native runtime claim +PASS: production Intel feedback coalescing, rough secrecy, rate limit, bounded dedupe, local/remote delivery and round cleanup; native UI/RPC not exercised +PASS: actual per-squad bounded report selector rotates visible targets, survives ordering/turnover, records only queued attempts, and preserves radio intake ordering +PASS: actual action denial/clearing, server request failure, single submitted-result feedback, current rescuer identity and terminal/stop suppression; native UI/RPC pending +PASS: actual physical denial precedence and transport-seat occupancy/reservation/access/lock checks +PASS: actual initial admission exhaustion and ServerTick grace; new/pending/empty/controller/life guards, normal death preserved +...................... +---------------------------------------------------------------------- +Ran 22 tests in 0.244s + +OK +...................... +---------------------------------------------------------------------- +Ran 22 tests in 23.668s + +OK +.................. +---------------------------------------------------------------------- +Ran 18 tests in 2.613s + +OK +......... +---------------------------------------------------------------------- +Ran 9 tests in 2.130s + +OK +............... +---------------------------------------------------------------------- +Ran 15 tests in 1.050s + +OK +PASS: actual field result/braking observer and Chat dispatch rules; one finite fixed candidate, deferred callback failure and guarded cleanup; no native measurement +PASS: actual opt-in terrain audit records one fixed1681-point grid, preserves original survey refusal/success and exact no-allocation scope; malformed heights stop without retry; no native data acquired +.... +---------------------------------------------------------------------- +Ran 4 tests in 0.544s + +OK +PASS: actual field PI/ramp/vector caps, antiwindup, braking hypothesis, immutable admission limits and segment bounds; no native physics tested +PASS: actual100m whole-field survey sampling/4096cap, rotated coverage, all-node terrain and native trace refusal; original certificate lineage retained; no native qualification +PASS: actual QualifyField preserves original identity/footprint/time, orders complete surveys before issuance, and refuses failed stages/moved body/expired or changed world; native boundaries faked +PASS: WORKBENCH first-refusal diagnostics preserve ordinary predicates, query order/count/budget and opt-in scope; no native logging run +PASS: actual field startup delegation, immutable lease/target, braking/settling/cancel transitions, early abort, callback scope, physical terminal policy and shared landing demand; native boundaries faked +PASS: actual inherited airborne pre-CLIMB cancellation enables verified native autohover once, refuses failed enable and never writes after capture +PASS: actual Core maintenance/default/tick/stop methods; empty/populated authority, terminal reentry, no tactical resume or new scheduler; native boundaries substituted +PASS: actual finite registration, unique claims/tokens, retention/cancel/stop, readiness gating, capture/expiry retirement and bounded cross-kind order history and typed field/route construction; native boundaries faked +PASS: actual WORKBENCH route observer returns exact retained route subtype and refuses absent/field controllers +..... +---------------------------------------------------------------------- +Ran 5 tests in 0.642s + +OK +...................... +---------------------------------------------------------------------- +Ran 22 tests in 0.194s + +OK +................ +---------------------------------------------------------------------- +Ran 16 tests in 9.202s + +OK +...... +---------------------------------------------------------------------- +Ran 6 tests in 0.020s + +OK +PASS: actual production bridge lookup, lease/world/mode/seat/capture guards, no allocation, native super ordering and read-only fixture hooks +............... +---------------------------------------------------------------------- +Ran 15 tests in 0.046s + +OK +............. +---------------------------------------------------------------------- +Ran 13 tests in 4.383s + +OK +PASS: actual route gain/caps/braking, callback selection, old landing/cancellation control and matching read-only telemetry +.............................. +---------------------------------------------------------------------- +Ran 30 tests in 0.374s + +OK +.............. +---------------------------------------------------------------------- +Ran 14 tests in 0.173s + +OK +......... +---------------------------------------------------------------------- +Ran 9 tests in 0.098s + +OK +PASS: actual gate observer binds native registered action/context and current life, reads accumulated progress, refuses stale bindings and never revives outside original bounds +PASS: actual read-only look observer methods enforce explicit scope, pinned native camera/body/identity, normalized pose, terminal cancellation and original sample/time bounds +........... +---------------------------------------------------------------------- +Ran 11 tests in 0.060s + +OK +....................... +---------------------------------------------------------------------- +Ran 23 tests in 0.029s + +OK +PASS: actual initial WAITING task/guide copy, configured duration, unchanged interruption and rounded progress; native task assertion pending +........ +---------------------------------------------------------------------- +Ran 8 tests in 0.011s + +OK +PASS: actual inventory adapter scope, grid placement, sole compatible host, refresh reuse, rollback, foreign hierarchy refusal and exactly-once native delegation; native compatibility pending +................................................................................. +---------------------------------------------------------------------- +Ran 81 tests in 0.482s + +OK +...... +---------------------------------------------------------------------- +Ran 6 tests in 0.064s + +OK +................. +---------------------------------------------------------------------- +Ran 17 tests in 0.004s + +OK +........... +---------------------------------------------------------------------- +Ran 11 tests in 0.071s + +OK +......... +---------------------------------------------------------------------- +Ran 9 tests in 0.297s + +OK +PASS: actual observer nonce, admission pins, baseline/menu sequencing, snapshots, bounded clocks/samples, cleanup and one-attempt latch; native untested +PASS: actual corridor caps/height/hold and whole-rectangle survey bounds, terrain refusal, native trace refusal and exact certificate lineage; native route unqualified +PASS: actual route entry, fixed corridor/target, hover hold, cancellation landing freeze, shared lease/capture/deadline gate and unchanged native startup/tick sequence +PASS: finite opt-in route fixture, original native input order, meaningful physical-arrival evidence and guarded cleanup; no native launch +PASS: actual Chat route step result dispatch and scoped completion/cleanup wiring; six real early-parser refusal paths leave no prefix/profile output +PASS: actual retained-service fixture entry, immutable controller/token/deadline/count bindings, observer getter and cleanup ownership ordering; native route validation pending +PASS: actual measured cancellation gate, one-shot retained service Stop, no premature drain, immutable lease, fresh real controller readback and separate physical cancellation result policy +PASS: actual rough-intel objective selection, exact precedence, source grid dimensions and unchanged other-phase dispatch; native UI pending +................................. +---------------------------------------------------------------------- +Ran 33 tests in 0.081s + +OK +............... +---------------------------------------------------------------------- +Ran 15 tests in 0.027s + +OK +PASS: actual preparation status scope, persistent updates, spinner restoration, placeholder replacement/deletion/destruction, native observation persistence/timeout; rendering remains native-pending +PASS: replaced respawn system receives frame updates, disabled updater wakes, stale/non-Escape binding refused; terminal and stale preload leases release black overlay +PASS: actual guide ownership and scoped timer cancellation, current-controller preservation/reacquisition, hint retry/dedup and observer boundaries; native UI not exercised +PASS: actual native-end shutdown, existing terminal snapshots, reentrancy, unchanged native end data and stale preparation guards +.... +---------------------------------------------------------------------- +Ran 4 tests in 1.156s + +OK +PASS: actual three-state result wording and UI refresh; stale winner IDs never manufacture escape +........... +---------------------------------------------------------------------- +Ran 11 tests in 0.088s + +OK +PASS: actual immutable target, bounded autohover demand, drift refusal, five-second hold and unchanged qualification/deadline +PASS: actual admission attempt budget bounds blocked/missing prerequisites; preparation, spent life and async pending remain protected +PASS: delayed admission retry retains controller ownership across same-account recycled connection IDs +PASS: actual scene deadline overrides delayed native preload only for rejection; late completion cannot assign, ordinary verified admission preserved +PASS: actual action permission matrix unchanged; useful phase/intel/consciousness denials, stale reason cleared, native door denial preserved; no native UI claim +..... +---------------------------------------------------------------------- +Ran 5 tests in 0.184s + +OK +PASS: actual aircraft cancellation/stage rules, ground-only completion, expiry/capture faults, input ownership and no physical shortcuts +PASS: actual exact-instance single-use qualification, native-clock staleness/movement refusal, footprint bounds and ownership-safe ground/fault cleanup +PASS: actual optional screenshot helper flag/identity/world/life revalidation, one queued attempt, delayed capture and mission/world cleanup; no native image/presentation claim +PASS: actual yard diagnostic exact registered prison ownership, eight native-bound corner projections, no root-sibling escape, bounded duplicate/deep/wide hierarchy traversal; native projection/mask still unmeasured +PASS: actual CurrentActor, SpawnPosition and observer-selection methods reject pending/unregistered/replaced/recycled/foreign bodies; canonical live selection and roster-corpse cycling, unconscious following and prison/geometry fallback preserved; native boundaries adapted +PASS: actual native-map fixture ownership, cleanup and callback evidence fail closed; native execution remains separate +PASS: actual shared-map callbacks bind exact map/config/root, preserve replacement UI/camera, defer focus, and remove only owned delayed work +PASS: actual Intel/HQ methods and one-shot qualified readiness handoff deliver late actors once; duplicate readiness, accepted spawn, pickup/drop, death and original negative rolls do not mint assignments +PASS: Workbench-only read accessor rejects unknown/nonserver identities; Chat observes all distinct ready crew before existing shell-depletion mutation +PASS: actual native-event latch survives deselection, requires exact activity/order, detaches before cleanup, preserves failure/timeout and never infers completion from physical shot count +......... +---------------------------------------------------------------------- +Ran 9 tests in 0.092s + +OK +PASS: actual refresh-fixture gates pin immutable observations/actual downlinks/original activity, reject unaccepted or relabelled commits, stop queueing early and require all queued contacts claimed before replay +.......................... +---------------------------------------------------------------------- +Ran 26 tests in 0.173s + +OK +PASS: actual refresh scheduler/delivery/cancellation/projectile methods reject interrupted or replayed reports, retain committed ownership, preserve immutable snapshots/aim geometry and isolate stopped or replaced orders; native radio/crew behavior remains separate +..................... +---------------------------------------------------------------------- +Ran 21 tests in 0.033s + +OK +........... +---------------------------------------------------------------------- +Ran 11 tests in 0.030s + +OK +PASS: actual full-salvo gates require eight fresh committed physical launches, natural closure and exact finite inventory; reject partial/extra/replayed events +PASS: actual reason/availability guidance and refresh matrix; no-target copy omits cycling, hint retry retained, existing command/admin paths unchanged; native UI pending +PASS: actual client camera policy closes immediately on healing or mission end; late unconscious metadata cannot keep the view active +PASS: actual open-chat capture/context renewal and camera/menu priority, text-entry isolation, held-key release; actual revival camera handoff with editor close/retry, missing camera, replacement body and stopped round +................usage: test_native_package.py [-h] [--project {core}] --session SESSION + --compat COMPAT [--steam STEAM] + [--timeout TIMEOUT] + [--external-addons EXTERNAL_ADDONS] + [--silent-workbench | --exit-after-init] + [--continue-on-failure] +test_native_package.py: error: argument --exit-after-init: not allowed with argument --silent-workbench +................................ +---------------------------------------------------------------------- +Ran 48 tests in 21.840s + +OK +....... +---------------------------------------------------------------------- +Ran 7 tests in 0.264s + +OK +.................. +---------------------------------------------------------------------- +Ran 18 tests in 6.970s + +OK +.... +---------------------------------------------------------------------- +Ran 4 tests in 0.324s + +OK +.... +---------------------------------------------------------------------- +Ran 4 tests in 0.060s + +OK +PASS: actual finite-courier age, token, exact ownership/callback and delivered-status admission reject stale, replayed, captured, canceled and ambiguous work +PASS: actual native-gun ownership gate rejects player/foreign/replaced/dead occupant, faction change, missing seat and missing registry +PASS: four-battery courier selection preserves pending trip/report/transfer identity, skips unavailable crews, and selects the next depleted battery without new stock +PASS: 64 bounded distinct storage candidates; native gates, five-store barrier and finite-stock ownership retained; native placement pending +PASS: 128 coarse+80 local refinement+169 airport grid candidates retain all native clearance gates; real terrain untested +PASS: actual prison registration/crossing policies reject missing/duplicate/destroyed initial gate, incomplete ownership/scan, outside-only body, jumps and stale samples; physical exit independent of later gate damage +PASS: actual prison door execution blocks direct AI/UI bypass while locked and delegates unchanged native action once after unlock and permission approval +.................. +---------------------------------------------------------------------- +Ran 18 tests in 2.016s + +OK +..... +---------------------------------------------------------------------- +Ran 5 tests in 1.190s + +OK +PASS: native local-admission snapshot rejects changed life/key/body/participant/pending state; authentication is not simulated +PASS: actual mortar report ledger prevents duplicate response after cancellation, expiry and interleaved reports; native scheduler separate +......... +---------------------------------------------------------------------- +Ran 9 tests in 0.014s + +OK +.... +---------------------------------------------------------------------- +Ran 4 tests in 0.155s + +OK +PASS: actual aim renewal requires fresh same-report solve and original-command equivalence; native firing untested +......... +---------------------------------------------------------------------- +Ran 9 tests in 0.061s + +OK +PASS: actual startup/generation/ownership/timeout/callback policies and native-counter wait; integration preserves one-shot allocation and pending-crew cancellation +PASS: rapid mortar cycle counts eight physical rounds once and waits for native completion without a ninth aim or shell +PASS: actual probe binds native events to fresh immutable commits, permits delayed emission, rejects unrelated expiry closure and premature stop +PASS: actual noSplash Load body requires both explicit diagnostic and noSplash, preserves vanilla otherwise, and handles repeated Load/reload +PASS: actual fixture method permits one native resilience operation and restores either prior protection state, including failure paths +PASS: actual safe-exit boundary policy, native action/door selection, stop/cache cleanup, separate old mechanism and opt-in runner contracts +PASS: actual one-shot deadline/stability policies and preparation ownership, fuel, cleanup integration contracts +PASS: pending-only cancellation retires copied instance intent, preserves physical/control actors, and stops once +PASS: actual short-cast hit, upward support normal, no self support and no dynamic support +PASS: actual committed-ticket structure preserves reservation after death, rejects missing bodies/seats and ends at observation expiry +PASS: actual pending callback expires an empty-server reservation once, preserves its full lease, and cancels on completion/Stop +PASS: rescue lease expiry/reordering, fresh five-second settling, independent rescue ranges and grounded upright aircraft motion boundaries +PASS: requested guard population requires complete physical conscious membership before deadline +...................................... +---------------------------------------------------------------------- +Ran 38 tests in 0.019s + +OK +.......... +---------------------------------------------------------------------- +Ran 10 tests in 0.003s + +OK +..... +---------------------------------------------------------------------- +Ran 5 tests in 0.981s + +OK +PASS: authored radio/optional-site bounds and physical horizontal/vertical boundaries +... +---------------------------------------------------------------------- +Ran 3 tests in 0.001s + +OK +PASS: all phase transitions, terminal states, defence boundaries, stale/future observations, intel discovery +PASS: Core document-discovery alias, companion-only alias exclusion, strict integer parsing and setting boundaries +PASS: player admission phase/life/identity/controller matrix, preload displacement limits, pending reservation overlap and owner exclusion +PASS: actual gate and pre-inventory document guards reject noncanonical/faction/life/disconnect/server mismatches; canonical reconnect and unconscious carried intel preserved +PASS: WB-only native fault injection restores both body mutations before checks/returns and requires eligible held-document negative/positive proof; runtime pending +PASS: actual discovery coordinates disclose stable 500m cell center until identified, then exact point, including negative/boundary coordinates +PASS: hidden/anonymous/rough/identified markers, toggle transitions, prepared sites, no identity leakage, intel discovery and replicated authority wiring +PASS: actual local admission context/selection/latch, same-round late identity, replacement/mode failure, fresh round and untouched network path +PASS: prison search packs 16 unique 3m-spaced inside-wall centers, prioritizes inner/edge positions and never bypasses clearance +PASS: physical body occupancy rejects overlap, permits diagonal neighboring slots, and excludes own body and unrelated broad-phase bounds +PASS: recovery state excludes dead bodies, preserves reservations, requires controlled rescuers and distinguishes empty/all-dead teams +PASS: actual native-probe lifecycle/counters with doubled boundaries; fixed deadline, exact seven sources, true forwarding, async close, no late updates and selector wiring +PASS: actual one-argument adapter, explicit refresh, native initialization flag, duplicate/blood ownership, rebind/detach/destruction and foreign-mode transparency +PASS: authority-scoped slow recovery, bleeding pauses resilience, medicine unaffected, player-only lethal damage cap without healing +PASS: bleeding severity survives low health, retains armour, causes no knockout and restores the actual damage/blood-loss cap +PASS: viable passive recovery survives native delay; bleeding, disabled/full effects and low-blood resilience do not block defeat +PASS: actual combat injector admission/effect alignment; mild blood-only refusal, native threshold equality and all existing useful treatments preserved; engine consumption untested +PASS: every minute round-trips, malformed clocks rejected, defaults limited to added keys, progression bounds and day duration aligned +PASS: native settings policy matches calendar boundaries 1900-2050, date/profile parsing is strict, authored defaults preserve old worlds +PASS: view-distance bounds, default, save failures, command parsing, temporary ownership, server/platform limits and lifecycle wiring +..... +---------------------------------------------------------------------- +Ran 5 tests in 0.600s + +OK +. +---------------------------------------------------------------------- +Ran 1 test in 0.382s + +OK +PASS: radio authorization/discovery/phase matrix, exact distance limits, defender handover, interruption, empty samples, clock regression and duration boundary +PASS: actual radio feedback policy, initial wait, interruption persistence, resumption and terminal/new-round reset +............... +---------------------------------------------------------------------- +Ran 15 tests in 2.239s + +OK +.............................................. +---------------------------------------------------------------------- +Ran 46 tests in 0.899s + +OK +PASS: legacy values preserved, unsupported fields reported, invalid data rejected, existing files protected, runtime bounds aligned +PASS: failed initial settings promotion leaves defaults writable after restart; prior/fallback saves survive copy, readback and mismatch faults +PASS: real-carrier shortest-hop paths, 500m boundary, three-hop cap, no-manpack failure, three-second originating-call interruption, unchanged downlink hop timing, completed-hop survival, interrupted final uplink, radio loss, capture, motion, timeout, reset and network bounds +PASS: migrated aircraft availability policy (controller migration still pending) +PASS: migrated salvo offsets are deterministic, spread and bounded (native firing and complete salvo qualification are separate) +PASS: 48 prefabs have unique saved root entity IDs +PASS: 299 original script entries tracked across 18 unfinished responsibilities +PASS: 1 isolated addons, acyclic dependencies, 158 unique resources, exact vanilla/authorized external references +All repository checks passed. Native compilation and multiplayer tests are separate requirements. diff --git a/docs/evidence/review-1.9-2026-11-06/runner.json b/docs/evidence/review-1.9-2026-11-06/runner.json new file mode 100644 index 00000000..9949f3ff --- /dev/null +++ b/docs/evidence/review-1.9-2026-11-06/runner.json @@ -0,0 +1,34 @@ +{ + "stopped_unix": 1793963135.652884, + "console_sha256": "a935d2b5c6cae68a5fdeea17877b2788583477a317919d9fb7d4003630f1f4e8", + "end_source_sha256": "a010e9f6b9abbe3767b19c6536dcf7133c54f6d02c341a53fcec01fad8b525c5", + "source_unchanged_after_run": true, + "source_provenance": "launch_snapshot", + "launch_id": "5aeb8de5-7726-4e89-8cda-f359bc788ad7", + "launch_source_manifest": "launch-source-sha256.json", + "launch_source_metadata": "launch-source.json", + "launch_source_sha256": "a010e9f6b9abbe3767b19c6536dcf7133c54f6d02c341a53fcec01fad8b525c5", + "external_addons_unchanged_after_run": true, + "external_addon_count": 7, + "external_addon_inputs": "external-addons-inputs.json", + "started_unix": 1793963058.78222, + "result": "smoke-completed", + "result_before_cleanup": "smoke-completed", + "cleanup_confirmed": true, + "cleanup_report": { + "cleanup_confirmed": true, + "idle_verified": true, + "errors": [], + "orphan_cleanup": { + "attempted": false, + "reason": "noncanonical-private-prefix" + } + }, + "runner_error": null, + "session": "/home/jakub/devel/escapistsrereintroduced/.local/review-1.9/native7/logs/logs_2026-11-06_12-04-20", + "rounds_required": 1, + "project": "chat", + "display": "headless Gamescope 1280x720/30Hz", + "dedicated_server": false, + "audio": "silent sink and per-test-stream mute" +} diff --git a/docs/evidence/review-1.9-2026-11-06/t601-diagnostic.log b/docs/evidence/review-1.9-2026-11-06/t601-diagnostic.log new file mode 100644 index 00000000..c5e9d02e --- /dev/null +++ b/docs/evidence/review-1.9-2026-11-06/t601-diagnostic.log @@ -0,0 +1,374 @@ +12:00:53.763 SCRIPT : ERR REVIEW TRACTOR: prefab={939AC713213C2BA1}Prefabs/Vehicles/Wheeled/Z7211/Z7211_red_CIV.et low=<-1.10021,0.263591,-2.60995> high=<1.10381,2.69422,1.49574> driver=1 +12:00:53.839 SCRIPT : ERR REVIEW BARN: exists=1 low=<-7.56165,-3.95,-5.43061> high=<7.55593,12.0565,5.33792> alive=1 sites=1 +12:00:53.943 SCRIPT : ERR REVIEW AI: partial=1 dormancy=1 limit=128 active=0 +12:00:54.014 SCRIPT : ERR REVIEW FARM VETO: side=0 pos=<4776.44,28.6175,11528> ground=1 clear=1 hidden=1 distance=111.562 +12:00:54.014 SCRIPT : ERR REVIEW FARM VETO: side=1 pos=<4799.56,28.1314,11528> ground=1 clear=1 hidden=0 distance=88.4439 +12:00:54.014 SCRIPT : ERR REVIEW FARM VETO: side=2 pos=<4788,28.5238,11518.6> ground=1 clear=1 hidden=0 distance=100.447 +12:00:54.014 SCRIPT : ERR REVIEW FARM VETO: side=3 pos=<4788,28.555,11537.3> ground=1 clear=1 hidden=0 distance=100.438 +12:00:54.769 SCRIPT : ERR REVIEW UI: dpi=0.75 panel=155.188,53.125 190.625x118.75 root=501x225 fits=1 +12:00:55.274 SCRIPT : ERR REVIEW UI: dpi=1 panel=123.417,33.3333 254.167x158.333 root=501x225 fits=1 +12:00:55.763 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:00:55.763 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00276214 seated=1 +12:00:55.764 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:00:55.764 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=0.0133654 seated=1 +12:00:55.777 SCRIPT : ERR REVIEW UI: dpi=1.25 panel=91.6458,13.5417 317.708x197.917 root=501x225 fits=1 +12:00:56.279 SCRIPT : ERR REVIEW UI: dpi=1.5 panel=77.1316,4.50001 346.737x216 root=501x225 fits=1 +12:00:57.764 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:00:57.764 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00259525 seated=1 +12:00:57.764 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=0 brake=1 throttle=0 rpm=0 handbrake=0 gear=1 auto=0 +12:00:57.764 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=0.0133654 seated=1 +12:00:59.765 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:00:59.765 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00259525 seated=1 +12:00:59.766 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=1 rpm=4960.08 handbrake=0 gear=0 auto=0 +12:00:59.766 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=0.211852 seated=1 +12:01:01.767 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:01:01.768 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00259525 seated=1 +12:01:01.768 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=1 throttle=1 rpm=4588.59 handbrake=0 gear=2 auto=0 +12:01:01.768 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=4.98027 seated=1 +12:01:03.768 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:01:03.768 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00298012 seated=1 +12:01:03.768 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=1 throttle=0 rpm=800 handbrake=0 gear=2 auto=0 +12:01:03.769 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=6.20368 seated=1 +12:01:05.768 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:01:06.155 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00298012 seated=1 +12:01:06.155 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=1 throttle=0 rpm=2148.77 handbrake=0 gear=0 auto=0 +12:01:06.155 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=4.19794 seated=1 +12:01:07.966 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:01:07.966 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00298012 seated=1 +12:01:07.967 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=1 rpm=5354.48 handbrake=0 gear=2 auto=0 +12:01:07.967 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=6.4996 seated=1 +12:01:09.967 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:01:09.967 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00298012 seated=1 +12:01:09.967 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0 rpm=3919.3 handbrake=0 gear=3 auto=0 +12:01:09.968 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=24.5577 seated=1 +12:01:11.969 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:01:11.970 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00298012 seated=1 +12:01:11.970 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0.241113 throttle=0 rpm=3957.16 handbrake=0 gear=3 auto=0 +12:01:11.970 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=47.931 seated=1 +12:01:13.969 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:01:13.970 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00298012 seated=1 +12:01:13.970 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0 rpm=3953.33 handbrake=0 gear=3 auto=0 +12:01:13.970 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=71.5185 seated=1 +12:01:15.971 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:01:15.971 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00284714 seated=1 +12:01:15.972 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0.982862 throttle=0 rpm=2891.94 handbrake=0 gear=3 auto=0 +12:01:15.972 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=94.6524 seated=1 +12:01:17.973 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:01:17.973 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00284714 seated=1 +12:01:17.973 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.715072 rpm=3222.72 handbrake=0 gear=3 auto=0 +12:01:17.974 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=104.159 seated=1 +12:01:19.976 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:01:19.977 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00284714 seated=1 +12:01:19.977 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.234435 rpm=5339.33 handbrake=0 gear=2 auto=0 +12:01:19.977 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=107.583 seated=1 +12:01:21.976 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:01:21.977 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00284714 seated=1 +12:01:21.977 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.536553 rpm=3375.85 handbrake=0 gear=3 auto=0 +12:01:21.977 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=113.716 seated=1 +12:01:23.978 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:01:23.979 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00284714 seated=1 +12:01:23.979 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.700911 rpm=3367.15 handbrake=0 gear=3 auto=0 +12:01:23.979 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=117.144 seated=1 +12:01:25.979 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:01:25.980 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00284714 seated=1 +12:01:25.980 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.672861 rpm=5304.99 handbrake=0 gear=3 auto=0 +12:01:25.980 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=120.267 seated=1 +12:01:27.979 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:01:27.980 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00284714 seated=1 +12:01:27.980 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.328837 rpm=3510.56 handbrake=0 gear=3 auto=0 +12:01:27.980 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=128.745 seated=1 +12:01:29.984 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:01:29.984 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00284714 seated=1 +12:01:29.985 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.148019 rpm=4530.82 handbrake=0 gear=2 auto=0 +12:01:29.985 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=140.295 seated=1 +12:01:31.985 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:01:31.985 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00327549 seated=1 +12:01:31.985 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.626707 rpm=3142.38 handbrake=0 gear=3 auto=0 +12:01:31.986 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=150.897 seated=1 +12:01:33.989 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:01:33.989 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00327549 seated=1 +12:01:33.989 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.576573 rpm=3392.88 handbrake=0 gear=3 auto=0 +12:01:33.990 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=163.329 seated=1 +12:01:35.989 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:01:35.989 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00327549 seated=1 +12:01:35.989 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.466321 rpm=3455.57 handbrake=0 gear=3 auto=0 +12:01:35.989 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=177.467 seated=1 +12:01:37.990 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:01:37.991 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00327549 seated=1 +12:01:37.991 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.48416 rpm=3402.82 handbrake=0 gear=3 auto=0 +12:01:37.991 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=193.257 seated=1 +12:01:39.992 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:01:39.993 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00327549 seated=1 +12:01:39.993 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=1 rpm=5223.49 handbrake=0 gear=2 auto=0 +12:01:39.993 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=204.298 seated=1 +12:01:40.249 SCRIPT : ERR REVIEW FARM: prefab={939AC713213C2BA1}Prefabs/Vehicles/Wheeled/Z7211/Z7211_red_CIV.et position=<4776.44,28.6175,11528> anchor={99F6E8E52B71B137}Prefabs/Structures/Agriculture/Barn/Barn_E_01/Barn_E_01.et +12:01:40.250 SCRIPT : ERR SMOKE PASS: native farm tractor placement with production ground, visibility and collision checks +12:01:41.992 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:01:41.992 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00317383 seated=1 +12:01:41.992 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=1 rpm=4416.77 handbrake=0 gear=2 auto=0 +12:01:41.992 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=208.147 seated=1 +12:01:43.996 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:01:43.997 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00317383 seated=1 +12:01:43.997 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=1 rpm=5789.35 handbrake=0 gear=2 auto=0 +12:01:43.997 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=201.113 seated=1 +12:01:45.998 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:01:45.998 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00317383 seated=1 +12:01:45.998 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.254427 rpm=3331.31 handbrake=0 gear=3 auto=0 +12:01:45.998 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=182.749 seated=1 +12:01:47.999 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:01:48.000 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00317383 seated=1 +12:01:48.000 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.0486851 rpm=3645.57 handbrake=0 gear=3 auto=0 +12:01:48.000 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=161.246 seated=1 +12:01:50.002 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:01:50.003 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00317383 seated=1 +12:01:50.003 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.470588 rpm=4750.21 handbrake=0 gear=2 auto=0 +12:01:50.003 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=144.966 seated=1 +12:01:52.005 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:01:52.005 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00317383 seated=1 +12:01:52.005 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.823966 rpm=5366.57 handbrake=0 gear=2 auto=0 +12:01:52.005 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=143.185 seated=1 +12:01:54.008 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:01:54.008 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00362941 seated=1 +12:01:54.008 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.58709 rpm=5367.4 handbrake=0 gear=2 auto=0 +12:01:54.009 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=150.761 seated=1 +12:01:56.009 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:01:56.009 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00362941 seated=1 +12:01:56.009 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.703816 rpm=3383.22 handbrake=0 gear=3 auto=0 +12:01:56.009 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=166.916 seated=1 +12:01:58.009 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:01:58.009 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00362941 seated=1 +12:01:58.009 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.764159 rpm=3368.27 handbrake=0 gear=3 auto=0 +12:01:58.010 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=185.594 seated=1 +12:02:00.013 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:02:00.014 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00355474 seated=1 +12:02:00.014 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.747842 rpm=3398.08 handbrake=0 gear=3 auto=0 +12:02:00.014 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=201.797 seated=1 +12:02:02.013 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:02:02.013 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00355474 seated=1 +12:02:02.014 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.731917 rpm=3370.71 handbrake=0 gear=3 auto=0 +12:02:02.014 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=218.468 seated=1 +12:02:04.017 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:02:04.018 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00355474 seated=1 +12:02:04.018 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.677983 rpm=3477.14 handbrake=0 gear=3 auto=0 +12:02:04.019 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=238.554 seated=1 +12:02:06.018 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:02:06.019 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00355474 seated=1 +12:02:06.019 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.67596 rpm=3445.78 handbrake=0 gear=3 auto=0 +12:02:06.019 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=258.952 seated=1 +12:02:08.022 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:02:08.022 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00355474 seated=1 +12:02:08.023 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=1 throttle=0 rpm=2501.85 handbrake=0 gear=3 auto=0 +12:02:08.023 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=279.214 seated=1 +12:02:10.027 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:02:10.028 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00355474 seated=1 +12:02:10.028 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=1 rpm=3878.46 handbrake=0 gear=0 auto=0 +12:02:10.028 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=282.527 seated=1 +12:02:12.027 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:02:12.027 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00355474 seated=1 +12:02:12.027 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=1 throttle=1 rpm=2434.04 handbrake=0 gear=2 auto=0 +12:02:12.027 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=277.545 seated=1 +12:02:14.029 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:02:14.029 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00355474 seated=1 +12:02:14.029 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=1 rpm=1958.06 handbrake=0 gear=2 auto=0 +12:02:14.029 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=276.266 seated=1 +12:02:16.031 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:02:16.031 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00355474 seated=1 +12:02:16.032 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.962111 rpm=5221.37 handbrake=0 gear=2 auto=0 +12:02:16.032 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=265.277 seated=1 +12:02:18.034 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:02:18.034 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00402647 seated=1 +12:02:18.034 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0 rpm=3759.76 handbrake=0 gear=3 auto=0 +12:02:18.034 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=244.255 seated=1 +12:02:20.034 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:02:20.034 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00402647 seated=1 +12:02:20.034 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0 rpm=3615.47 handbrake=0 gear=3 auto=0 +12:02:20.034 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=220.943 seated=1 +12:02:22.035 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:02:22.035 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00397432 seated=1 +12:02:22.036 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0 rpm=3951.62 handbrake=0 gear=3 auto=0 +12:02:22.036 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=201.709 seated=1 +12:02:24.036 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:02:24.036 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00397432 seated=1 +12:02:24.036 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0 rpm=3956.98 handbrake=0 gear=3 auto=0 +12:02:24.037 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=181.984 seated=1 +12:02:26.039 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:02:26.040 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00397432 seated=1 +12:02:26.040 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0 rpm=3902.85 handbrake=0 gear=3 auto=0 +12:02:26.040 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=159.683 seated=1 +12:02:28.040 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:02:28.040 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00397432 seated=1 +12:02:28.041 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0.245685 throttle=0 rpm=3852.47 handbrake=0 gear=3 auto=0 +12:02:28.041 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=146.561 seated=1 +12:02:30.042 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:02:30.042 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00397432 seated=1 +12:02:30.042 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0 rpm=3913.78 handbrake=0 gear=3 auto=0 +12:02:30.043 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=147.77 seated=1 +12:02:32.046 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:02:32.046 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00397432 seated=1 +12:02:32.046 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.360043 rpm=3422.32 handbrake=0 gear=3 auto=0 +12:02:32.046 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=167.214 seated=1 +12:02:34.049 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:02:34.049 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00397432 seated=1 +12:02:34.049 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.334223 rpm=5094.71 handbrake=0 gear=2 auto=0 +12:02:34.049 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=187.096 seated=1 +12:02:36.049 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:02:36.049 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00397432 seated=1 +12:02:36.049 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.530383 rpm=3355.81 handbrake=0 gear=3 auto=0 +12:02:36.050 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=206.535 seated=1 +12:02:38.053 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:02:38.053 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00397432 seated=1 +12:02:38.053 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.273123 rpm=5487.91 handbrake=0 gear=2 auto=0 +12:02:38.053 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=224.779 seated=1 +12:02:40.055 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:02:40.055 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00397432 seated=1 +12:02:40.055 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.0854722 rpm=3520.9 handbrake=0 gear=2 auto=0 +12:02:40.055 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=243.05 seated=1 +12:02:42.056 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:02:42.057 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00445515 seated=1 +12:02:42.057 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0.47811 throttle=0 rpm=2567.71 handbrake=0 gear=3 auto=0 +12:02:42.057 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=262.891 seated=1 +12:02:44.060 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:02:44.060 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00442157 seated=1 +12:02:44.060 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.188397 rpm=3347.49 handbrake=0 gear=3 auto=0 +12:02:44.061 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=278.122 seated=1 +12:02:46.060 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:02:46.060 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00442157 seated=1 +12:02:46.060 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.047276 rpm=3979.17 handbrake=0 gear=3 auto=0 +12:02:46.060 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=293.042 seated=1 +12:02:48.061 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:02:48.062 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00442157 seated=1 +12:02:48.062 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0 rpm=3448.4 handbrake=0 gear=4 auto=0 +12:02:48.062 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=313.121 seated=1 +12:02:50.065 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:02:50.065 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00442157 seated=1 +12:02:50.065 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0.283274 throttle=0 rpm=2471.63 handbrake=0 gear=4 auto=0 +12:02:50.066 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=336.409 seated=1 +12:02:52.065 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:02:52.066 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00442157 seated=1 +12:02:52.066 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0 rpm=3906.08 handbrake=0 gear=3 auto=0 +12:02:52.066 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=359.562 seated=1 +12:02:54.069 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:02:54.069 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00442157 seated=1 +12:02:54.069 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0 rpm=3908.1 handbrake=0 gear=3 auto=0 +12:02:54.069 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=382.185 seated=1 +12:02:56.069 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:02:56.069 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00442157 seated=1 +12:02:56.069 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0 rpm=3887.47 handbrake=0 gear=3 auto=0 +12:02:56.069 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=405.12 seated=1 +12:02:58.072 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:02:58.072 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00442157 seated=1 +12:02:58.072 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0 rpm=3675.03 handbrake=0 gear=3 auto=0 +12:02:58.073 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=428.795 seated=1 +12:03:00.073 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:03:00.073 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00442157 seated=1 +12:03:00.073 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.160123 rpm=3470.77 handbrake=0 gear=3 auto=0 +12:03:00.073 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=449.87 seated=1 +12:03:02.073 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:03:02.074 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00442157 seated=1 +12:03:02.074 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.183364 rpm=3509.5 handbrake=0 gear=3 auto=0 +12:03:02.074 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=469.644 seated=1 +12:03:04.076 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:03:04.076 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00442157 seated=1 +12:03:04.076 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0 rpm=2917.23 handbrake=1 gear=3 auto=0 +12:03:04.076 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=488.096 seated=1 +12:03:06.077 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:03:06.077 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00442157 seated=1 +12:03:06.077 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0 rpm=800 handbrake=1 gear=3 auto=0 +12:03:06.077 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=494.641 seated=1 +12:03:08.080 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:03:08.081 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00442157 seated=1 +12:03:08.081 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0 rpm=800 handbrake=1 gear=2 auto=0 +12:03:08.081 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=494.861 seated=1 +12:03:10.079 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:03:10.080 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00442157 seated=1 +12:03:10.080 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=2 auto=0 +12:03:10.080 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=494.862 seated=1 +12:03:12.082 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:03:12.082 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00442157 seated=1 +12:03:12.082 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=0 brake=0 throttle=0 rpm=-32.7053 handbrake=1 gear=2 auto=0 +12:03:12.083 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=494.862 seated=0 +12:03:14.085 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:03:14.086 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00488891 seated=1 +12:03:14.086 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=2 auto=0 +12:03:14.086 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=494.862 seated=0 +12:03:16.088 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:03:16.088 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00488891 seated=1 +12:03:16.088 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=2 auto=0 +12:03:16.089 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=494.862 seated=0 +12:03:18.088 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:03:18.089 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00488891 seated=1 +12:03:18.089 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=2 auto=0 +12:03:18.089 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=494.862 seated=0 +12:03:20.092 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:03:20.092 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00488891 seated=1 +12:03:20.092 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=2 auto=0 +12:03:20.092 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=494.862 seated=0 +12:03:22.093 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:03:22.093 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00488891 seated=1 +12:03:22.093 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=2 auto=0 +12:03:22.093 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=494.862 seated=1 +12:03:24.096 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:03:24.097 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00488891 seated=1 +12:03:24.097 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=0 brake=1 throttle=0 rpm=33.1996 handbrake=0 gear=2 auto=0 +12:03:24.097 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=494.863 seated=1 +12:03:26.100 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:03:26.101 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00488891 seated=1 +12:03:26.101 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=0 brake=1 throttle=0 rpm=0 handbrake=0 gear=2 auto=0 +12:03:26.101 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=494.863 seated=1 +12:03:28.104 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:03:28.105 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00488891 seated=1 +12:03:28.105 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0.256855 throttle=0 rpm=800 handbrake=0 gear=2 auto=0 +12:03:28.105 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=495.196 seated=1 +12:03:30.106 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:03:30.106 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00488891 seated=1 +12:03:30.107 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=1 rpm=2863.64 handbrake=0 gear=0 auto=0 +12:03:30.107 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=496.91 seated=1 +12:03:32.107 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:03:32.108 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00488891 seated=1 +12:03:32.108 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=1 rpm=5222.82 handbrake=0 gear=2 auto=0 +12:03:32.108 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=495.973 seated=1 +12:03:34.110 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:03:34.110 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00488281 seated=1 +12:03:34.110 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0 rpm=1145.5 handbrake=0 gear=2 auto=0 +12:03:34.111 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=499.787 seated=1 +12:03:36.113 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:03:36.114 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00488281 seated=1 +12:03:36.114 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0 rpm=911.418 handbrake=0 gear=2 auto=0 +12:03:36.114 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=503.747 seated=1 +12:03:38.115 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:03:38.115 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00537109 seated=1 +12:03:38.115 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=1 rpm=2298.4 handbrake=0 gear=2 auto=0 +12:03:38.116 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=508.225 seated=1 +12:03:40.116 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:03:40.117 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00537109 seated=1 +12:03:40.117 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.158895 rpm=5304.66 handbrake=0 gear=2 auto=0 +12:03:40.117 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=523.221 seated=1 +12:03:42.119 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:03:42.120 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00537109 seated=1 +12:03:42.120 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.28229 rpm=3514.93 handbrake=0 gear=3 auto=0 +12:03:42.120 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=544.065 seated=1 +12:03:44.122 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:03:44.123 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00537109 seated=1 +12:03:44.123 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.253435 rpm=3535.15 handbrake=0 gear=3 auto=0 +12:03:44.123 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=565.608 seated=1 +12:03:46.123 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:03:46.124 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00537109 seated=1 +12:03:46.124 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0.253812 rpm=3542.79 handbrake=0 gear=3 auto=0 +12:03:46.124 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=587.184 seated=1 +12:03:48.125 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:03:48.125 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00537109 seated=1 +12:03:48.126 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0 rpm=800 handbrake=1 gear=3 auto=0 +12:03:48.126 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=603.433 seated=1 +12:03:50.129 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:03:50.129 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00537109 seated=1 +12:03:50.129 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=1 brake=0 throttle=0 rpm=800 handbrake=1 gear=2 auto=0 +12:03:50.130 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=605.432 seated=1 +12:03:52.133 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:03:52.134 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00537109 seated=1 +12:03:52.134 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=2 auto=0 +12:03:52.134 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=605.432 seated=1 +12:03:54.137 SCRIPT : ERR REVIEW DRIVE STATE: car=0 engine=0 brake=0 throttle=0 rpm=0 handbrake=1 gear=1 auto=0 +12:03:54.138 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.00537664 seated=1 +12:03:54.138 SCRIPT : ERR REVIEW DRIVE STATE: car=1 engine=0 brake=0 throttle=0 rpm=33.496 handbrake=1 gear=2 auto=0 +12:03:54.138 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=605.432 seated=0 +12:03:54.258 SCRIPT (E): ERR SMOKE FAIL: 1.9 review farm spawn deadline diff --git a/docs/evidence/review-1.9-2026-11-06/ui-baseline.log b/docs/evidence/review-1.9-2026-11-06/ui-baseline.log new file mode 100644 index 00000000..40a813b1 --- /dev/null +++ b/docs/evidence/review-1.9-2026-11-06/ui-baseline.log @@ -0,0 +1,246 @@ +11:47:47.945 SCRIPT : ERR REVIEW TRACTOR: prefab={939AC713213C2BA1}Prefabs/Vehicles/Wheeled/Z7211/Z7211_red_CIV.et low=<-1.10021,0.263591,-2.60995> high=<1.10381,2.69422,1.49574> driver=1 +11:47:48.949 SCRIPT : ERR REVIEW UI: dpi=0.75 panel=155.188,53.125 190.625x118.75 root=501x225 fits=1 +11:47:49.451 SCRIPT : ERR REVIEW UI: dpi=1 panel=123.417,33.3333 254.167x158.333 root=501x225 fits=1 +11:47:49.947 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0205311 seated=1 +11:47:49.947 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=0.00556726 seated=1 +11:47:49.953 SCRIPT : ERR REVIEW UI: dpi=1.25 panel=91.6459,13.5417 317.708x197.917 root=501x225 fits=1 +11:47:50.455 SCRIPT : ERR REVIEW UI: dpi=1.5 panel=59.875,-6.25 381.25x237.5 root=501x225 fits=0 +11:47:51.946 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0203107 seated=1 +11:47:51.946 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=0.0076272 seated=1 +11:47:53.946 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0201042 seated=1 +11:47:53.947 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=0.00811561 seated=1 +11:47:55.949 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0198821 seated=1 +11:47:55.950 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=3.76473 seated=1 +11:47:57.951 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0198821 seated=1 +11:47:57.951 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=8.77009 seated=1 +11:47:59.952 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0198821 seated=1 +11:47:59.952 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=9.26204 seated=1 +11:48:01.955 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0196832 seated=1 +11:48:01.955 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=8.80666 seated=1 +11:48:03.959 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0196832 seated=1 +11:48:03.959 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=10.5349 seated=1 +11:48:05.961 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0196832 seated=1 +11:48:05.961 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=7.37198 seated=1 +11:48:07.964 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0196832 seated=1 +11:48:07.964 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=9.07192 seated=1 +11:48:09.967 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0194946 seated=1 +11:48:09.968 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=14.3904 seated=1 +11:48:11.970 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0194946 seated=1 +11:48:11.971 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=24.6484 seated=1 +11:48:13.974 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0192686 seated=1 +11:48:13.974 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=43.2639 seated=1 +11:48:15.975 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0186332 seated=1 +11:48:15.976 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=63.2861 seated=1 +11:48:17.975 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0179539 seated=1 +11:48:17.975 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=83.6089 seated=1 +11:48:19.975 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0179539 seated=1 +11:48:19.975 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=104.049 seated=1 +11:48:21.975 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0177284 seated=1 +11:48:21.975 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=124.995 seated=1 +11:48:23.982 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0179539 seated=1 +11:48:23.982 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=146.357 seated=1 +11:48:25.981 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0177737 seated=1 +11:48:25.982 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=167.961 seated=1 +11:48:27.983 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0177737 seated=1 +11:48:27.984 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=189.573 seated=1 +11:48:29.989 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0177737 seated=1 +11:48:29.990 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=211.191 seated=1 +11:48:31.990 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0177737 seated=1 +11:48:31.991 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=226.564 seated=1 +11:48:33.990 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0173185 seated=1 +11:48:33.990 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=221.041 seated=1 +11:48:35.993 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0173185 seated=1 +11:48:35.993 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=205.377 seated=1 +11:48:37.995 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0171456 seated=1 +11:48:37.996 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=188.819 seated=1 +11:48:39.997 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0171456 seated=1 +11:48:39.997 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=172.026 seated=1 +11:48:42.000 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0171456 seated=1 +11:48:42.000 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=155.366 seated=1 +11:48:44.001 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0169849 seated=1 +11:48:44.001 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=141.199 seated=1 +11:48:46.003 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0167535 seated=1 +11:48:46.003 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=138.567 seated=1 +11:48:48.003 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0169849 seated=1 +11:48:48.003 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=153.144 seated=1 +11:48:50.005 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0169849 seated=1 +11:48:50.005 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=165.911 seated=1 +11:48:52.005 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0168369 seated=1 +11:48:52.005 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=160.394 seated=1 +11:48:54.009 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0168369 seated=1 +11:48:54.009 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=150.416 seated=1 +11:48:56.009 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0168369 seated=1 +11:48:56.009 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=137.844 seated=1 +11:48:58.008 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0168369 seated=1 +11:48:58.009 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=123.216 seated=1 +11:49:00.008 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0167018 seated=1 +11:49:00.009 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=110.412 seated=1 +11:49:02.011 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0167018 seated=1 +11:49:02.011 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=103.154 seated=1 +11:49:04.016 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0167018 seated=1 +11:49:04.017 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=104.388 seated=1 +11:49:06.018 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0164664 seated=1 +11:49:06.019 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=111.651 seated=1 +11:49:08.023 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.01658 seated=1 +11:49:08.023 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=122.114 seated=1 +11:49:10.026 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.01658 seated=1 +11:49:10.026 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=135.688 seated=1 +11:49:12.027 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0163428 seated=1 +11:49:12.028 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=151.996 seated=1 +11:49:14.028 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0163428 seated=1 +11:49:14.028 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=169.488 seated=1 +11:49:16.032 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0162331 seated=1 +11:49:16.032 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=187.421 seated=1 +11:49:18.035 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0162331 seated=1 +11:49:18.035 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=205.925 seated=1 +11:49:20.038 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0162331 seated=1 +11:49:20.039 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=224.397 seated=1 +11:49:22.039 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0162331 seated=1 +11:49:22.039 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=232.509 seated=1 +11:49:24.039 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0161373 seated=1 +11:49:24.039 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=232.639 seated=1 +11:49:26.041 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0161373 seated=1 +11:49:26.042 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=232.639 seated=0 +11:49:28.045 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0161373 seated=1 +11:49:28.045 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=232.639 seated=0 +11:49:30.047 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0163775 seated=1 +11:49:30.047 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=232.639 seated=0 +11:49:32.047 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0162972 seated=1 +11:49:32.047 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=232.639 seated=0 +11:49:34.051 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0162972 seated=1 +11:49:34.051 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=232.639 seated=0 +11:49:36.052 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0162972 seated=1 +11:49:36.052 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=232.639 seated=0 +11:49:38.055 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0160558 seated=1 +11:49:38.056 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=232.639 seated=1 +11:49:40.056 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0159889 seated=1 +11:49:40.057 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=232.639 seated=1 +11:49:42.060 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0159889 seated=1 +11:49:42.060 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=232.641 seated=1 +11:49:44.060 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0159889 seated=1 +11:49:44.061 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=234.292 seated=1 +11:49:46.062 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0159889 seated=1 +11:49:46.062 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=247.334 seated=1 +11:49:48.062 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0159889 seated=1 +11:49:48.062 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=259.738 seated=1 +11:49:50.063 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0159366 seated=1 +11:49:50.063 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=277.508 seated=1 +11:49:52.067 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0156935 seated=1 +11:49:52.067 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=296.114 seated=1 +11:49:54.068 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0154505 seated=1 +11:49:54.069 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=314.44 seated=1 +11:49:56.072 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0154505 seated=1 +11:49:56.072 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=329.959 seated=1 +11:49:58.076 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0154505 seated=1 +11:49:58.076 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=339.506 seated=1 +11:50:00.079 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0154118 seated=1 +11:50:00.079 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=342.853 seated=1 +11:50:02.083 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0154118 seated=1 +11:50:02.083 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=346.336 seated=1 +11:50:04.084 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0151682 seated=1 +11:50:04.085 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=349.901 seated=1 +11:50:06.084 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0151682 seated=1 +11:50:06.085 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=353.494 seated=1 +11:50:08.088 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0149006 seated=1 +11:50:08.089 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=357.109 seated=1 +11:50:10.089 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0149006 seated=1 +11:50:10.089 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=360.657 seated=1 +11:50:12.091 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0149006 seated=1 +11:50:12.092 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=364.65 seated=1 +11:50:14.092 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0151446 seated=1 +11:50:14.092 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=370.521 seated=1 +11:50:16.095 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0149006 seated=1 +11:50:16.096 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=380.057 seated=1 +11:50:18.096 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0148926 seated=1 +11:50:18.096 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=393.74 seated=1 +11:50:20.099 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0148926 seated=1 +11:50:20.100 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=412.249 seated=1 +11:50:22.101 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0146484 seated=1 +11:50:22.101 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=431.049 seated=1 +11:50:24.101 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0146484 seated=1 +11:50:24.102 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=450.606 seated=1 +11:50:26.101 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0146484 seated=1 +11:50:26.101 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=469.694 seated=1 +11:50:28.105 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0146566 seated=1 +11:50:28.105 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=485.64 seated=1 +11:50:30.106 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0146566 seated=1 +11:50:30.106 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=500.447 seated=1 +11:50:32.108 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0146566 seated=1 +11:50:32.109 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=517.006 seated=1 +11:50:34.110 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0146566 seated=1 +11:50:34.111 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=532.78 seated=1 +11:50:36.111 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0149246 seated=1 +11:50:36.112 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=548.807 seated=1 +11:50:38.111 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0149246 seated=1 +11:50:38.112 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=564.912 seated=1 +11:50:40.116 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0149246 seated=1 +11:50:40.117 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=584.395 seated=1 +11:50:42.118 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0149246 seated=1 +11:50:42.118 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=602.998 seated=1 +11:50:44.120 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0149644 seated=1 +11:50:44.120 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=622.482 seated=1 +11:50:46.124 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0149644 seated=1 +11:50:46.124 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=642.925 seated=1 +11:50:48.127 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0149644 seated=1 +11:50:48.128 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=663.709 seated=1 +11:50:50.130 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0149644 seated=1 +11:50:50.130 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=679.991 seated=1 +11:50:52.134 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0147215 seated=1 +11:50:52.134 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=680.314 seated=1 +11:50:54.135 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0147215 seated=1 +11:50:54.135 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=680.314 seated=1 +11:50:56.136 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0147781 seated=1 +11:50:56.136 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=680.314 seated=1 +11:50:58.141 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0150201 seated=1 +11:50:58.142 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=680.314 seated=1 +11:51:00.144 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0147781 seated=1 +11:51:00.146 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=680.314 seated=1 +11:51:02.144 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0147781 seated=1 +11:51:02.144 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=680.314 seated=1 +11:51:04.145 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0147781 seated=1 +11:51:04.145 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=680.314 seated=1 +11:51:06.148 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0147781 seated=1 +11:51:06.149 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=680.314 seated=1 +11:51:08.149 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0148505 seated=1 +11:51:08.149 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=680.314 seated=1 +11:51:10.149 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0146097 seated=1 +11:51:10.149 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=680.314 seated=1 +11:51:12.152 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0146097 seated=1 +11:51:12.152 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=680.314 seated=1 +11:51:14.153 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0143691 seated=1 +11:51:14.153 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=680.314 seated=1 +11:51:16.153 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0144601 seated=1 +11:51:16.153 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=680.314 seated=1 +11:51:18.154 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0144601 seated=1 +11:51:18.154 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=680.314 seated=1 +11:51:20.158 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0146992 seated=1 +11:51:20.158 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=680.314 seated=1 +11:51:22.161 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0146992 seated=1 +11:51:22.161 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=680.314 seated=1 +11:51:24.162 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0146992 seated=1 +11:51:24.163 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=680.314 seated=1 +11:51:26.162 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0148043 seated=1 +11:51:26.163 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=680.314 seated=1 +11:51:28.164 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0148043 seated=1 +11:51:28.164 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=680.314 seated=1 +11:51:30.168 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0148043 seated=1 +11:51:30.168 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=680.314 seated=1 +11:51:32.172 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0148043 seated=1 +11:51:32.172 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=680.314 seated=1 +11:51:34.172 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0148043 seated=1 +11:51:34.173 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=680.314 seated=1 +11:51:36.172 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0145668 seated=1 +11:51:36.173 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=680.314 seated=1 +11:51:38.172 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0143296 seated=1 +11:51:38.173 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=680.314 seated=1 +11:51:40.174 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0144539 seated=1 +11:51:40.174 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=680.314 seated=1 +11:51:42.176 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0144539 seated=1 +11:51:42.176 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=680.314 seated=1 +11:51:44.176 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0144539 seated=1 +11:51:44.177 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=680.314 seated=1 +11:51:46.178 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0144539 seated=1 +11:51:46.179 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=680.314 seated=1 +11:51:48.182 SCRIPT : ERR REVIEW TRAFFIC: prefab={9A40C9D2689EE151}Prefabs/Vehicles/Wheeled/T601/T601_green.et ready=1 travelled=0.0144539 seated=1 +11:51:48.182 SCRIPT : ERR REVIEW TRAFFIC: prefab={4477ED1B4762DFCB}Prefabs/Vehicles/Wheeled/V2101/V2101_lightGreen.et ready=1 travelled=680.314 seated=1 +11:51:48.182 SCRIPT (E): ERR SMOKE FAIL: traffic driving deadline diff --git a/tests/test_admin_menu_sources.py b/tests/test_admin_menu_sources.py index feddd7d3..2edaf914 100644 --- a/tests/test_admin_menu_sources.py +++ b/tests/test_admin_menu_sources.py @@ -65,7 +65,9 @@ class MenuSourceTests(unittest.TestCase): for key in ('PositionX', 'PositionY', 'SizeX', 'SizeY')] nav = json.loads((builder.SOURCE / 'navigation.json').read_text()) pages = {p['key']: p for p in nav['pages']} - panel_width, panel_height = rect('Panel')[2:] + panel = re.search(r'Name "PanelSize" ([^{}]+)', layout)[1] + panel_width = int(re.search(r'\bWidthOverride (\d+)', panel)[1]) + panel_height = int(re.search(r'\bHeightOverride (\d+)', panel)[1]) previous_right = 0 for group in nav['groups']: x, y, width, height = rect('Main_' + group['name']) diff --git a/tests/test_admin_panel_fit.py b/tests/test_admin_panel_fit.py new file mode 100644 index 00000000..b95a4332 --- /dev/null +++ b/tests/test_admin_panel_fit.py @@ -0,0 +1,34 @@ +"""Execute panel-only scaling with viewport and DPI boundaries.""" +from policy_harness import ROOT, body, run +source=body(ROOT/'addons/core/Scripts/Game/ERR/00_Core/ERR_AdminMenuView.c','static void FitPanel(') +source=source.replace('Widget root','Widget* root').replace('ScaleWidget scale = ScaleWidget.Cast(root.FindAnyWidget("PanelScale"));','ScaleWidget* scale = root->FindAnyWidget("PanelScale");') +source=source.replace('GetGame().','GetGame()->').replace('GetWorkspace().','GetWorkspace()->').replace('root.','root->').replace('scale.','scale->').replace('Math.','Math::') +run(r''' +#include +#include +#include +struct ScaleWidget {float scale=1;int writes=0;float GetScale(){return scale;}void SetScale(float v){scale=v;writes++;}}; +struct Widget {float width=1920,height=1080;ScaleWidget panel;bool present=true;ScaleWidget* FindAnyWidget(const char*){return present?&panel:nullptr;}void GetScreenSize(float& w,float& h){w=width;h=height;}}; +struct Workspace {float factor=1;float DPIScale(float x){return x*factor;}} workspace; +struct Game {Workspace* GetWorkspace(){return &workspace;}} game; +Game* GetGame(){return &game;} +namespace Math {float Min(float a,float b){return std::min(a,b);}float AbsFloat(float v){return std::abs(v);}} +'''+source+r''' +int main(){ + Widget root;FitPanel(nullptr);FitPanel(&root);assert(root.panel.scale==1 && root.panel.writes==0); + for(float dpi:{.75f,1.f,1.25f,1.5f,2.f}) { + workspace.factor=dpi;FitPanel(&root); + assert(root.panel.scale<=1 && root.panel.scale>0); + assert(1220*dpi*root.panel.scale<=root.width*.96f+.1f); + assert(760*dpi*root.panel.scale<=root.height*.96f+.1f); + int writes=root.panel.writes;FitPanel(&root);assert(root.panel.writes==writes); + assert(workspace.factor==dpi); + } + root.width=800;root.height=600;FitPanel(&root); + assert(1220*workspace.factor*root.panel.scale<=768.1f); + root.width=3840;root.height=2160;workspace.factor=1;FitPanel(&root);assert(root.panel.scale==1); + root.height=0;int writes=root.panel.writes;FitPanel(&root);assert(root.panel.writes==writes); + root.present=false;FitPanel(&root);assert(root.panel.writes==writes); +} +''') +print('PASS: panel fits narrow/large-DPI viewports, restores requested size, avoids repeated writes and preserves user DPI') diff --git a/tests/test_garage_vehicle_lifecycle.py b/tests/test_garage_vehicle_lifecycle.py index 93f2a92d..77300fe5 100644 --- a/tests/test_garage_vehicle_lifecycle.py +++ b/tests/test_garage_vehicle_lifecycle.py @@ -36,7 +36,7 @@ namespace ERR_CivilianTrafficRules{ bool CleanupDue(float now,float since){return since>=0&&now-since>=60000;} } struct SCR_GarbageSystem{static SCR_GarbageSystem* GetByEntityWorld(IEntity*){static SCR_GarbageSystem g;return &g;}void UpdateBlacklist(IEntity*,bool){}}; -struct SiteData{bool Consumed=false;}; +struct SiteData{bool Consumed=false;bool Farm=false;}; struct ERR_ParkedVehicle{IEntity* Entity=nullptr;SiteData* Site=nullptr;Vec Origin;float HiddenSince=-1;}; struct Mode{int owned=0;void Own(IEntity*){owned++;}}; struct Service{ @@ -46,7 +46,7 @@ struct Service{ Array m_Parked;Array views;Array actors; bool Running(){return running;}float Now(){return clock;} bool Observers(Array& o,Array& a){o=views;a=actors;return known;} - bool Hidden(Vec,Vec,Array& a,IEntity* e){hiddenCalls++;return e->hidden;} + bool Hidden(Vec,Vec,Array& a,IEntity* e,bool farm){hiddenCalls++;return e->hidden;} void Discover(Array&,float){discovers++;}void Plan(Array&,Array&,float){plans++;} void Pending(Array&,Array&){pending++;} ''' + methods.replace('m_Pending = nullptr','m_Pending = 0') + r''' diff --git a/tests/test_garage_vehicle_rules.py b/tests/test_garage_vehicle_rules.py index 5461b513..7eaaef5b 100644 --- a/tests/test_garage_vehicle_rules.py +++ b/tests/test_garage_vehicle_rules.py @@ -1,8 +1,9 @@ """Run production garage filtering and vehicle-fit rules against unsafe inputs.""" from policy_harness import ROOT, body, run p = ROOT/'addons/core/Scripts/Game/ERR/10_AI/ERR_GarageVehicles.c' -rules = '\n'.join(body(p, s) for s in ('static bool Garage(', 'static bool Envelope(', 'static bool Yard(', 'static vector YardOffset(')) +rules = '\n'.join(body(p, s) for s in ('static bool Garage(', 'static bool Envelope(', 'static bool Yard(', 'static bool Farm(', 'static bool FarmEnvelope(', 'static vector YardOffset(')) rules += '\n' + body(ROOT/'addons/core/Scripts/Game/ERR/10_AI/ERR_ParkedCarCatalog.c', 'static bool Candidate(') +rules += '\n' + body(ROOT/'addons/core/Scripts/Game/ERR/10_AI/ERR_ParkedCarCatalog.c', 'static bool MovingCandidate(') rules = rules.replace('vector ', 'Vec ').replace('ERR_ForceRules.', 'ERR_ForceRules::') run(r''' #include @@ -32,12 +33,26 @@ int main(){ assert(!Yard("Prefabs/Structures/Houses/Village/House_Village_E_1I06/House_Village_E_1I06_base.et")); assert(!Yard("Prefabs/Structures/Houses/Village/House_Village_E_1I06/Dst/House_Village_E_1I06_ruin.et")); assert(!Yard("Prefabs/Structures/Houses/Village/House_Village_E_1I06/Furniture/House_Village_E_1I06_furniture_01.et")); + assert(Farm("Prefabs/Structures/Agriculture/Barn/Barn_E_01/Barn_E_01_white.et")); + assert(Farm("Prefabs/Structures/Agriculture/CowShed/CowShed_E_01/CowShed_E_01_short.et")); + assert(!Farm("Prefabs/Structures/Agriculture/Barn/Barn_E_01/Dst/Barn_E_01_Ruin.et")); + assert(!Farm("Prefabs/Structures/Agriculture/Barn/Barn_E_01/Barn_E_01_Base.et")); + assert(!Farm("Prefabs/Structures/Agriculture/Barn/Barn_E_01/Furniture/Barn_E_01_furniture_01.et")); + assert(FarmEnvelope({{-1.4,-0.2,-2.9}},{{1.4,3,2.9}})); + assert(!FarmEnvelope({{-1.5,0,-2}},{{1,3,2}})); + assert(!FarmEnvelope({{-1,0,-2}},{{1,3.2,2}})); + assert(!FarmEnvelope({{-1,0,-3}},{{1,3,2}})); + assert(!FarmEnvelope({{-1,0,-2}},{{1,NAN,2}})); Vec low={{-4,-1,-6}},high={{6,8,8}}; assert(YardOffset(low,high,0)[0]==-7 && YardOffset(low,high,0)[2]==1); assert(YardOffset(low,high,1)[0]==9 && YardOffset(low,high,1)[1]==0); assert(YardOffset(low,high,2)[2]==-9 && YardOffset(low,high,2)[0]==1); assert(YardOffset(low,high,3)[2]==11); + assert(YardOffset(low,high,0,4)[0]==-8 && YardOffset(low,high,3,4)[2]==12); assert(Candidate("{GUID}Prefabs/Vehicles/Wheeled/T601/T601_blue_twoTone.et",false)); + assert(!MovingCandidate("{GUID}Prefabs/Vehicles/Wheeled/T601/T601_blue_twoTone.et")); + assert(MovingCandidate("{GUID}Prefabs/Vehicles/Wheeled/V2101/V2101_lightBlue.et")); + assert(!MovingCandidate("Prefabs/Vehicles/Wheeled/S105/S105_rally_08.et")); assert(Candidate("Prefabs/Vehicles/Wheeled/V2101/V2101_lightBlue.et",false)); assert(Candidate("Prefabs/Vehicles/Wheeled/S105/S105_rally_08.et",true)); assert(!Candidate("Prefabs/Vehicles/Wheeled/S105/S105_rally_08.et",false)); @@ -75,13 +90,13 @@ struct Vec {float v[3];float operator[](int i)const{return v[i];} Vec operator+(Vec b)const{return {{v[0]+b[0],v[1]+b[1],v[2]+b[2]}};} Vec operator*(float n)const{return {{v[0]*n,v[1]*n,v[2]*n}};}}; bool worldAvailable=true,managerAvailable=true,hasRoad=true,wetEdge=false; -float roadDistance=20,edgeHeight=0; +float roadDistance=20,edgeHeight=0,waterBoundary=2; struct BaseRoad{float width=10;float GetWidth(){return width;}} roadInstance; struct Roads{void GetClosestRoad(Vec,BaseRoad*& road,float& distance,bool){road=hasRoad?&roadInstance:nullptr;distance=roadDistance;}} roads; struct SCR_AIWorld{Roads* GetRoadNetworkManager(){return managerAvailable?&roads:nullptr;}} nativeWorld; namespace ERR_ForceRules{bool Finite(float n){return std::isfinite(n);}} namespace SCR_TerrainHelper{float GetTerrainY(Vec p){return p[0]>.5f?edgeHeight:0;}} -namespace ERR_Actors{bool DryGround(Vec p){return !(wetEdge&&p[2]>2)&&std::isfinite(SCR_TerrainHelper::GetTerrainY(p));}} +namespace ERR_Actors{bool DryGround(Vec p){return !(wetEdge&&p[2]>waterBoundary)&&std::isfinite(SCR_TerrainHelper::GetTerrainY(p));}} namespace Math{float AbsFloat(float n){return std::abs(n);}} ''' + ground + r''' int main(){Vec p={{0,0,0}},matrix[4]={{{1,0,0}},{{0,1,0}},{{0,0,1}},{{0,0,0}}}; @@ -90,7 +105,7 @@ int main(){Vec p={{0,0,0}},matrix[4]={{{1,0,0}},{{0,1,0}},{{0,0,1}},{{0,0,0}}}; hasRoad=false;assert(YardGround(p,matrix));hasRoad=true; worldAvailable=false;assert(!YardGround(p,matrix));worldAvailable=true; managerAvailable=false;assert(!YardGround(p,matrix));managerAvailable=true; - wetEdge=true;assert(!YardGround(p,matrix));wetEdge=false; + wetEdge=true;assert(!YardGround(p,matrix));waterBoundary=2.75f;assert(YardGround(p,matrix)&&!YardGround(p,matrix,true));wetEdge=false; edgeHeight=.19f;assert(!YardGround(p,matrix));edgeHeight=.17f;assert(YardGround(p,matrix)); edgeHeight=NAN;assert(!YardGround(p,matrix));edgeHeight=0; roadDistance=NAN;assert(!YardGround(p,matrix)); diff --git a/tools/check.py b/tools/check.py index f3477462..c9509c23 100644 --- a/tools/check.py +++ b/tools/check.py @@ -143,7 +143,7 @@ def check(): assert set(mapped)==set(inventory['script_paths']), 'Original inventory has untracked or unknown entries' print(f'PASS: {len(mapped)} original script entries tracked across {len(feature_ids)} unfinished responsibilities') print(f'PASS: {len(ids)} isolated addons, acyclic dependencies, {len(resources)} unique resources, exact vanilla/authorized external references') - for name in ['test_sarka_hunters.py', 'test_optional_motorbikes.py', 'test_server_memory_sampler.py', 'test_roadblocks.py', 'test_roadblock_background.py', 'test_roadblock_layout.py', 'test_roadblock_mining.py', 'test_crash_start.py', 'test_start_settings.py', 'test_start_stock_overflow.py', 'test_start_backpack.py', 'test_intercept_vehicle_footprint.py', 'test_bmp_intercept_geometry.py', 'test_native_random_radius_trace.py', 'test_native_random_radius_runner.py', 'test_native_supply_travel.py', 'test_native_supply_travel_hook.py', 'test_native_supply_travel_runner.py', 'test_native_mounted_intercept.py', 'test_hq_mounted_dispatch.py', 'test_hq_mounted_intercept.py', 'test_hq_mounted_intercept_pair.py', 'test_convoy_intercept_pair.py', 'test_native_maintenance_refuel.py', 'test_mine_intel.py', 'test_mine_intel_discovery_integration.py', 'test_infantry_combat.py', 'test_enemy_medicine.py', 'test_hunter_combat.py', 'test_hunter_stuck.py', 'test_hq_local_awareness.py', 'test_unconscious_controls.py', 'test_self_epinephrine.py', 'test_town_garrisons.py', 'test_field_sites.py', 'test_gameplay_session_regressions.py', 'test_gameplay_review_fixes.py', 'test_server_log_regressions.py', 'test_mortar_load_ack.py', 'test_mortar_spotting.py', 'test_hunter_profiles.py', 'test_hunter_lifecycle.py', 'test_hunter_capture.py', 'test_hunter_opening.py', 'test_hunter_search_memory.py', 'test_hunter_reserve.py', 'test_hunter_sector_search.py', 'test_enemy_awareness.py', 'test_intel_body_inspection.py', 'test_body_recovery_lifecycle.py', 'test_radio_document_defence.py', 'test_air_support_policy.py', 'test_air_logistics_orders.py', 'test_air_recon.py', 'test_scouts.py', 'test_mortar_station.py', 'test_random_settings.py', 'test_debug_ai.py', 'test_generated_sites.py', 'test_terrain_sites.py', 'test_terrain_adapter.py', 'test_terrain_airfields.py','test_terrain_takeover.py', 'test_terrain_presentation.py', 'test_terrain_selection.py', 'test_faction_selection.py', 'test_faction_menu.py', 'test_content_policy.py', 'test_hq_road_intercept.py', 'test_hq_delivered_task.py', 'test_hq_local_handoff.py', 'test_hq_local_handoff_intake.py', 'test_native_local_handoff_probe.py', 'test_infantry_resupply_waypoints.py', 'test_infantry_placement_settle.py', 'test_native_infantry_fixture_lifecycle.py', 'test_native_infantry_cargo.py', 'test_native_infantry_setup.py', 'test_infantry_ammo_access.py', 'test_infantry_resupply_planning.py', 'test_infantry_supply_pool.py', 'test_hq_multiconvoy_supply.py', 'test_enemy_gunner_skill.py', 'test_native_memory_deadlines.py', 'test_convoy_auto_settings.py', 'test_convoy_startup.py', 'test_failure_result_refresh.py', 'test_infantry_resupply_coordinator.py', 'test_infantry_mine_coordinator.py', 'test_infantry_mine_transfer.py', 'test_infantry_ammo_transfer.py', 'test_finite_magazine_reservation.py', 'test_mounted_ammo_transfer.py', 'test_mounted_ammo_pickup.py', 'test_mounted_resupply.py', 'test_mounted_supply_integration.py', 'test_hq_ammo_reporting.py', 'test_enemy_radio.py', 'test_native_maintenance_stock.py', 'test_packed_external_game.py', 'test_hq_radio_node.py', 'test_vehicle_maintenance_stock.py', 'test_optional_transport.py', 'test_vehicle_entry_diagnostics.py', 'test_vehicle_security_native_probe.py', 'test_vehicle_security.py', 'test_vehicle_alarm.py', 'test_vehicle_alarm_perception.py', 'test_native_convoy_mine_stock.py', 'test_native_mine_stock_runner.py', 'test_native_mounted_ammo_probe.py', 'test_native_mounted_swap_probe.py', 'test_native_mounted_courier_probe.py', 'test_native_alarm_hearing.py', 'test_native_convoy_cover_probe.py', 'test_enemy_optics.py', 'test_convoy_combat.py', 'test_ai_stinger_admin.py', 'test_hq_ammo_dispatch.py', 'test_hq_convoy_combat.py', 'test_hq_ammo_sampler.py', 'test_hq_mine_sampler.py', 'test_hq_mounted_ammo_sampler.py', 'test_hq_mounted_binding.py', 'test_hq_vehicle_seats.py', 'test_native_hq_body_probe.py', 'test_hq_delivered_casualties.py', 'test_external_profile_review.py', 'test_hq_uplink_fairness.py', 'test_actor_group.py', 'test_native_package_external.py', 'test_native_convoy_probe.py', 'test_convoy_placement.py', 'test_convoy_road_plan.py', 'test_hq_convoy_dispatch.py', 'test_convoy_admission.py', 'test_convoy_dispatch.py', 'test_convoy_lifecycle.py', 'test_convoy_survivors.py', 'test_convoy_budget.py','test_supply_convoys.py', 'test_supply_budget_admission.py', 'test_mounted_initial_stock.py', 'test_convoy_mine_stock.py', 'test_convoy_column.py', 'test_hq_body_observer.py', 'test_hq_status_sampler.py', 'test_hq_watch.py', 'test_hq_assignment_lifecycle.py', 'test_force_ledger.py', 'test_enemy_equipment.py', 'test_enemy_loadout.py', 'test_automatic_equipment.py', 'test_engineer_mine.py', 'test_engineer_mine_site.py', 'test_engineer_mine_hq.py', 'test_engineer_mine_posts.py', 'test_hq_doctrine.py', 'test_hq_coverage.py', 'test_hq_hypotheses.py', 'test_hq_local_coverage.py', 'test_hq_operations.py', 'test_hq_squad_judgment.py', 'test_hq_tactical_ground.py', 'test_hq_operation_speech.py', 'test_hq_hunter_operations.py', 'test_hq_coordinated.py', 'test_hq_execution.py', 'test_ai_pursuit_replay.py', 'test_native_coordinated_runner.py', 'test_hq_task_reservations.py', 'test_hq_pursuit.py', 'test_hq_memory.py', 'test_external_addons.py', 'test_admin_tick_delivery.py', 'test_project_schema.py', 'test_admin_session.py', 'test_admin_providers.py', 'test_admin_menu.py', 'test_server_item_catalog.py', 'test_item_preferences.py', 'test_journal_readability.py', 'test_admin_player_tools.py', 'test_intel_admin.py', 'test_intel_reroll.py', 'test_intel_discovery_feedback.py', 'test_hq_report_selection.py', 'test_casualty_feedback.py', 'test_initial_admission_exhaustion.py', 'test_prison_held_action_proof.py', 'test_prison_held_action_evidence.py', 'test_prison_held_input_adapter.py', 'test_prison_held_runner.py', 'test_prison_coarse_facing.py', 'test_aircraft_field_probe.py', 'test_aircraft_field_runner.py', 'test_aircraft_field_rules.py', 'test_aircraft_field_envelope.py', 'test_aircraft_field_flight.py', 'test_command_maintenance.py', 'test_aircraft_service.py', 'test_aircraft_service_cancel_runner.py', 'test_prison_action_selection_proof.py', 'test_prison_action_selection_evidence.py', 'test_ordinary_gate_choices.py', 'test_aircraft_control_bridge.py', 'test_prison_alignment_proof.py', 'test_prison_alignment_evidence.py', 'test_aircraft_route_demand.py', 'test_prison_approach_proof.py', 'test_prison_approach_evidence.py', 'test_ordinary_gate_evidence.py', 'test_ordinary_gate_observer.py', 'test_ordinary_look_observer.py', 'test_ordinary_look_evidence.py', 'test_relative_look_runner.py', 'test_radio_waiting_text.py', 'test_inventory_control_runner.py', 'test_inventory_layout.py', 'test_headless_input_proof.py', 'test_headless_input_exercise_runner.py', 'test_private_prefix_cleanup.py', 'test_runner_private_cleanup.py', 'test_ordinary_input_runner.py', 'test_ordinary_input_observer.py', 'test_aircraft_route_envelope.py', 'test_aircraft_route_policy.py', 'test_aircraft_route_probe.py', 'test_rough_intel_feedback.py', 'test_headless_display_probe.py', 'test_headless_display_runner.py', 'test_preparation_status.py', 'test_hint_delivery.py', 'test_native_end_lifecycle.py', 'test_native_end_runner.py', 'test_escape_result_wording.py', 'test_native_stats.py', 'test_aircraft_translation.py', 'test_spawn_retry_budget.py', 'test_spawn_preload_timeout.py', 'test_action_feedback.py', 'test_native_aircraft_control.py', 'test_aircraft_flight_policy.py', 'test_aircraft_flight_envelope.py', 'test_ordinary_screenshot.py', 'test_participant_selection.py', 'test_native_shared_map_ownership.py', 'test_shared_map_ownership.py', 'test_intel_registration.py', 'test_mortar_activity_completion.py', 'test_packed_chat_game.py', 'test_native_mortar_refresh.py', 'test_archive_packed.py', 'test_mortar_refresh.py', 'test_packed_core_game.py', 'test_pak_inventory.py', 'test_native_mortar_salvo.py', 'test_spectator_guidance.py', 'test_spectator_recovery.py', 'test_native_package.py', 'test_item_station_teardown.py', 'test_source_bundle.py', 'test_native_flight_footprint.py', 'test_native_flight_input_diagnostics.py', 'test_mortar_logistics.py', 'test_mortar_courier_storage.py','test_powered_flight_pad.py','test_prison_escape_policy.py','test_powered_flight_policy.py','test_flight_action_runner.py','test_native_local_admission_probe.py','test_mortar_report_ledger.py','test_dedicated_native.py','test_native_mortar_transfer.py','test_mortar_aim_renewal.py','test_dedicated_preflight.py','test_mortar_transactions.py','test_native_mortar_probe.py','test_diagnostic_no_splash.py','test_casualty_incapacitation.py','test_casualty_remove_probe.py','test_extraction_placement_policy.py','test_guard_cancellation_policy.py','test_casualty_ground_policy.py','test_casualty_reservation_death.py','test_casualty_loading_policy.py','test_initial_guard_policy.py','test_headless_game_runner.py','test_vanilla_game_control.py','test_archive_game_control.py','test_site_discovery_policy.py','test_faction_catalog_scope.py','test_mission_rules.py','test_admin_setting_policy.py', 'test_player_admission_policy.py','test_progression_identity.py','test_discovery_map_position.py','test_site_map_visibility.py','test_local_admission.py','test_prison_placement_policy.py', 'test_recovery_policy.py', 'test_native_inventory_hitzone.py','test_inventory_hitzone_compat.py','test_player_medical.py','test_time_policy.py','test_environment_policy.py','test_view_distance.py','test_environment_restart_runner.py', 'test_inventory_enumeration_policy.py','test_radio_defence_policy.py','test_radio_feedback_policy.py','test_performance_comparison.py','test_release_check.py','test_settings_migration.py','hq_network_regression.py','helicopter_availability_regression.py','mortar_salvo_regression.py']: + for name in ['test_sarka_hunters.py', 'test_optional_motorbikes.py', 'test_server_memory_sampler.py', 'test_roadblocks.py', 'test_roadblock_background.py', 'test_roadblock_layout.py', 'test_roadblock_mining.py', 'test_crash_start.py', 'test_start_settings.py', 'test_start_stock_overflow.py', 'test_start_backpack.py', 'test_intercept_vehicle_footprint.py', 'test_bmp_intercept_geometry.py', 'test_native_random_radius_trace.py', 'test_native_random_radius_runner.py', 'test_native_supply_travel.py', 'test_native_supply_travel_hook.py', 'test_native_supply_travel_runner.py', 'test_native_mounted_intercept.py', 'test_hq_mounted_dispatch.py', 'test_hq_mounted_intercept.py', 'test_hq_mounted_intercept_pair.py', 'test_convoy_intercept_pair.py', 'test_native_maintenance_refuel.py', 'test_mine_intel.py', 'test_mine_intel_discovery_integration.py', 'test_infantry_combat.py', 'test_enemy_medicine.py', 'test_hunter_combat.py', 'test_hunter_stuck.py', 'test_hq_local_awareness.py', 'test_unconscious_controls.py', 'test_self_epinephrine.py', 'test_town_garrisons.py', 'test_field_sites.py', 'test_gameplay_session_regressions.py', 'test_gameplay_review_fixes.py', 'test_server_log_regressions.py', 'test_mortar_load_ack.py', 'test_mortar_spotting.py', 'test_hunter_profiles.py', 'test_hunter_lifecycle.py', 'test_hunter_capture.py', 'test_hunter_opening.py', 'test_hunter_search_memory.py', 'test_hunter_reserve.py', 'test_hunter_sector_search.py', 'test_enemy_awareness.py', 'test_intel_body_inspection.py', 'test_body_recovery_lifecycle.py', 'test_radio_document_defence.py', 'test_air_support_policy.py', 'test_air_logistics_orders.py', 'test_air_recon.py', 'test_scouts.py', 'test_mortar_station.py', 'test_random_settings.py', 'test_debug_ai.py', 'test_generated_sites.py', 'test_terrain_sites.py', 'test_terrain_adapter.py', 'test_terrain_airfields.py','test_terrain_takeover.py', 'test_terrain_presentation.py', 'test_terrain_selection.py', 'test_faction_selection.py', 'test_faction_menu.py', 'test_content_policy.py', 'test_hq_road_intercept.py', 'test_hq_delivered_task.py', 'test_hq_local_handoff.py', 'test_hq_local_handoff_intake.py', 'test_native_local_handoff_probe.py', 'test_infantry_resupply_waypoints.py', 'test_infantry_placement_settle.py', 'test_native_infantry_fixture_lifecycle.py', 'test_native_infantry_cargo.py', 'test_native_infantry_setup.py', 'test_infantry_ammo_access.py', 'test_infantry_resupply_planning.py', 'test_infantry_supply_pool.py', 'test_hq_multiconvoy_supply.py', 'test_enemy_gunner_skill.py', 'test_native_memory_deadlines.py', 'test_convoy_auto_settings.py', 'test_convoy_startup.py', 'test_failure_result_refresh.py', 'test_infantry_resupply_coordinator.py', 'test_infantry_mine_coordinator.py', 'test_infantry_mine_transfer.py', 'test_infantry_ammo_transfer.py', 'test_finite_magazine_reservation.py', 'test_mounted_ammo_transfer.py', 'test_mounted_ammo_pickup.py', 'test_mounted_resupply.py', 'test_mounted_supply_integration.py', 'test_hq_ammo_reporting.py', 'test_enemy_radio.py', 'test_native_maintenance_stock.py', 'test_packed_external_game.py', 'test_hq_radio_node.py', 'test_vehicle_maintenance_stock.py', 'test_optional_transport.py', 'test_vehicle_entry_diagnostics.py', 'test_vehicle_security_native_probe.py', 'test_vehicle_security.py', 'test_vehicle_alarm.py', 'test_vehicle_alarm_perception.py', 'test_native_convoy_mine_stock.py', 'test_native_mine_stock_runner.py', 'test_native_mounted_ammo_probe.py', 'test_native_mounted_swap_probe.py', 'test_native_mounted_courier_probe.py', 'test_native_alarm_hearing.py', 'test_native_convoy_cover_probe.py', 'test_enemy_optics.py', 'test_convoy_combat.py', 'test_ai_stinger_admin.py', 'test_hq_ammo_dispatch.py', 'test_hq_convoy_combat.py', 'test_hq_ammo_sampler.py', 'test_hq_mine_sampler.py', 'test_hq_mounted_ammo_sampler.py', 'test_hq_mounted_binding.py', 'test_hq_vehicle_seats.py', 'test_native_hq_body_probe.py', 'test_hq_delivered_casualties.py', 'test_external_profile_review.py', 'test_hq_uplink_fairness.py', 'test_actor_group.py', 'test_native_package_external.py', 'test_native_convoy_probe.py', 'test_convoy_placement.py', 'test_convoy_road_plan.py', 'test_hq_convoy_dispatch.py', 'test_convoy_admission.py', 'test_convoy_dispatch.py', 'test_convoy_lifecycle.py', 'test_convoy_survivors.py', 'test_convoy_budget.py','test_supply_convoys.py', 'test_supply_budget_admission.py', 'test_mounted_initial_stock.py', 'test_convoy_mine_stock.py', 'test_convoy_column.py', 'test_hq_body_observer.py', 'test_hq_status_sampler.py', 'test_hq_watch.py', 'test_hq_assignment_lifecycle.py', 'test_force_ledger.py', 'test_enemy_equipment.py', 'test_enemy_loadout.py', 'test_automatic_equipment.py', 'test_engineer_mine.py', 'test_engineer_mine_site.py', 'test_engineer_mine_hq.py', 'test_engineer_mine_posts.py', 'test_hq_doctrine.py', 'test_hq_coverage.py', 'test_hq_hypotheses.py', 'test_hq_local_coverage.py', 'test_hq_operations.py', 'test_hq_squad_judgment.py', 'test_hq_tactical_ground.py', 'test_hq_operation_speech.py', 'test_hq_hunter_operations.py', 'test_hq_coordinated.py', 'test_hq_execution.py', 'test_ai_pursuit_replay.py', 'test_native_coordinated_runner.py', 'test_hq_task_reservations.py', 'test_hq_pursuit.py', 'test_hq_memory.py', 'test_external_addons.py', 'test_admin_tick_delivery.py', 'test_project_schema.py', 'test_admin_session.py', 'test_admin_providers.py', 'test_admin_menu.py', 'test_admin_panel_fit.py', 'test_server_item_catalog.py', 'test_item_preferences.py', 'test_journal_readability.py', 'test_admin_player_tools.py', 'test_intel_admin.py', 'test_intel_reroll.py', 'test_intel_discovery_feedback.py', 'test_hq_report_selection.py', 'test_casualty_feedback.py', 'test_initial_admission_exhaustion.py', 'test_prison_held_action_proof.py', 'test_prison_held_action_evidence.py', 'test_prison_held_input_adapter.py', 'test_prison_held_runner.py', 'test_prison_coarse_facing.py', 'test_aircraft_field_probe.py', 'test_aircraft_field_runner.py', 'test_aircraft_field_rules.py', 'test_aircraft_field_envelope.py', 'test_aircraft_field_flight.py', 'test_command_maintenance.py', 'test_aircraft_service.py', 'test_aircraft_service_cancel_runner.py', 'test_prison_action_selection_proof.py', 'test_prison_action_selection_evidence.py', 'test_ordinary_gate_choices.py', 'test_aircraft_control_bridge.py', 'test_prison_alignment_proof.py', 'test_prison_alignment_evidence.py', 'test_aircraft_route_demand.py', 'test_prison_approach_proof.py', 'test_prison_approach_evidence.py', 'test_ordinary_gate_evidence.py', 'test_ordinary_gate_observer.py', 'test_ordinary_look_observer.py', 'test_ordinary_look_evidence.py', 'test_relative_look_runner.py', 'test_radio_waiting_text.py', 'test_inventory_control_runner.py', 'test_inventory_layout.py', 'test_headless_input_proof.py', 'test_headless_input_exercise_runner.py', 'test_private_prefix_cleanup.py', 'test_runner_private_cleanup.py', 'test_ordinary_input_runner.py', 'test_ordinary_input_observer.py', 'test_aircraft_route_envelope.py', 'test_aircraft_route_policy.py', 'test_aircraft_route_probe.py', 'test_rough_intel_feedback.py', 'test_headless_display_probe.py', 'test_headless_display_runner.py', 'test_preparation_status.py', 'test_hint_delivery.py', 'test_native_end_lifecycle.py', 'test_native_end_runner.py', 'test_escape_result_wording.py', 'test_native_stats.py', 'test_aircraft_translation.py', 'test_spawn_retry_budget.py', 'test_spawn_preload_timeout.py', 'test_action_feedback.py', 'test_native_aircraft_control.py', 'test_aircraft_flight_policy.py', 'test_aircraft_flight_envelope.py', 'test_ordinary_screenshot.py', 'test_participant_selection.py', 'test_native_shared_map_ownership.py', 'test_shared_map_ownership.py', 'test_intel_registration.py', 'test_mortar_activity_completion.py', 'test_packed_chat_game.py', 'test_native_mortar_refresh.py', 'test_archive_packed.py', 'test_mortar_refresh.py', 'test_packed_core_game.py', 'test_pak_inventory.py', 'test_native_mortar_salvo.py', 'test_spectator_guidance.py', 'test_spectator_recovery.py', 'test_native_package.py', 'test_item_station_teardown.py', 'test_source_bundle.py', 'test_native_flight_footprint.py', 'test_native_flight_input_diagnostics.py', 'test_mortar_logistics.py', 'test_mortar_courier_storage.py','test_powered_flight_pad.py','test_prison_escape_policy.py','test_powered_flight_policy.py','test_flight_action_runner.py','test_native_local_admission_probe.py','test_mortar_report_ledger.py','test_dedicated_native.py','test_native_mortar_transfer.py','test_mortar_aim_renewal.py','test_dedicated_preflight.py','test_mortar_transactions.py','test_native_mortar_probe.py','test_diagnostic_no_splash.py','test_casualty_incapacitation.py','test_casualty_remove_probe.py','test_extraction_placement_policy.py','test_guard_cancellation_policy.py','test_casualty_ground_policy.py','test_casualty_reservation_death.py','test_casualty_loading_policy.py','test_initial_guard_policy.py','test_headless_game_runner.py','test_vanilla_game_control.py','test_archive_game_control.py','test_site_discovery_policy.py','test_faction_catalog_scope.py','test_mission_rules.py','test_admin_setting_policy.py', 'test_player_admission_policy.py','test_progression_identity.py','test_discovery_map_position.py','test_site_map_visibility.py','test_local_admission.py','test_prison_placement_policy.py', 'test_recovery_policy.py', 'test_native_inventory_hitzone.py','test_inventory_hitzone_compat.py','test_player_medical.py','test_time_policy.py','test_environment_policy.py','test_view_distance.py','test_environment_restart_runner.py', 'test_inventory_enumeration_policy.py','test_radio_defence_policy.py','test_radio_feedback_policy.py','test_performance_comparison.py','test_release_check.py','test_settings_migration.py','hq_network_regression.py','helicopter_availability_regression.py','mortar_salvo_regression.py']: subprocess.run([sys.executable,str(ROOT/'tests'/name)],check=True) print('All repository checks passed. Native compilation and multiplayer tests are separate requirements.') if __name__=='__main__':check() diff --git a/ui/admin_menu/pages/VehiclesPage.layout.in b/ui/admin_menu/pages/VehiclesPage.layout.in index d1825d6e..a197b871 100644 --- a/ui/admin_menu/pages/VehiclesPage.layout.in +++ b/ui/admin_menu/pages/VehiclesPage.layout.in @@ -24,5 +24,5 @@ ButtonWidgetClass : "{DA43C77A0D1E59F8}UI/layouts/ERR/AdminValue.layout" { Name ButtonWidgetClass : "{75C912A1C89BE6C2}UI/layouts/WidgetLibrary/Buttons/WLib_ButtonText.layout" { Name "Apply_garageSpawnIntervalSeconds" Slot FrameWidgetSlot { Anchor 0 0 0 0 PositionX 220 OffsetLeft 220 PositionY 308 OffsetTop 308 SizeX 100 OffsetRight -320 SizeY 32 OffsetBottom -340 } components { SCR_ButtonTextComponent "{5548F0143AE99095}" { m_sText "Apply" } } } TextWidgetClass { Name "Saved_garageSpawnIntervalSeconds" Slot FrameWidgetSlot { Anchor 0 0 0 0 PositionX 28 OffsetLeft 28 PositionY 344 OffsetTop 344 SizeX 456 OffsetRight -484 SizeY 28 OffsetBottom -372 } Color {{COLOR_TEXT}} Text "Waiting for server" "Font Size" {{SIZE_CAPTION_SMALL}} "Min Font Size" {{SIZE_CAPTION_SMALL}} Wrap 1 FontProperties FontProperties { Font "{{FONT}}" } } TextWidgetClass { Name "Help_garageSpawnIntervalSeconds" Slot FrameWidgetSlot { Anchor 0 0 0 0 PositionX 28 OffsetLeft 28 PositionY 372 OffsetTop 372 SizeX 456 OffsetRight -484 SizeY 28 OffsetBottom -400 } Color {{COLOR_TEXT}} Text "Default 5 s. Increase to spread out spawning. Next round." "Font Size" {{SIZE_CAPTION_SMALL}} "Min Font Size" {{SIZE_CAPTION_SMALL}} Wrap 1 FontProperties FontProperties { Font "{{FONT}}" } } -TextWidgetClass { Name "GarageSettingsNote" Slot FrameWidgetSlot { Anchor 0 0 0 0 PositionX 508 OffsetLeft 508 PositionY 284 OffsetTop 284 SizeX 456 OffsetRight -964 SizeY 110 OffsetBottom -394 } Color {{COLOR_TEXT}} Text "Parking settings apply next round. Used vehicles stay. Garages and clear residential yards fill gradually while hidden. Rally cars join when the DLC is loaded." "Font Size" {{SIZE_BODY}} "Min Font Size" {{SIZE_BODY}} Wrap 1 FontProperties FontProperties { Font "{{FONT}}" } } +TextWidgetClass { Name "GarageSettingsNote" Slot FrameWidgetSlot { Anchor 0 0 0 0 PositionX 508 OffsetLeft 508 PositionY 284 OffsetTop 284 SizeX 456 OffsetRight -964 SizeY 110 OffsetBottom -394 } Color {{COLOR_TEXT}} Text "Parking settings apply next round. Used vehicles stay. Garages and clear yards fill while hidden. Rally adds cars and occasional farm tractors." "Font Size" {{SIZE_BODY}} "Min Font Size" {{SIZE_BODY}} Wrap 1 FontProperties FontProperties { Font "{{FONT}}" } } } } diff --git a/ui/admin_menu/shell.layout.in b/ui/admin_menu/shell.layout.in index c2b088b8..211393bd 100644 --- a/ui/admin_menu/shell.layout.in +++ b/ui/admin_menu/shell.layout.in @@ -2,9 +2,17 @@ FrameWidgetClass { Name "ERR_AdminRoot" Slot FrameWidgetSlot { Anchor 0 0 1 1 OffsetLeft 0 OffsetTop 0 OffsetRight 0 OffsetBottom 0 } { ImageWidgetClass { Name "DimBackground" Slot FrameWidgetSlot { Anchor 0 0 1 1 OffsetLeft 0 OffsetTop 0 OffsetRight 0 OffsetBottom 0 } Color {{COLOR_DIM}} } - FrameWidgetClass { - Name "Panel" Slot FrameWidgetSlot { Anchor 0.5 0.5 0.5 0.5 PositionX 0 OffsetLeft 0 PositionY 0 OffsetTop 0 SizeX 1220 OffsetRight -1220 SizeY 760 OffsetBottom -760 Alignment 0.5 0.5 } + ScaleWidgetClass { + Name "PanelScale" "Scale Mode" "User defined" + Slot FrameWidgetSlot { Anchor 0 0 1 1 OffsetLeft 0 OffsetTop 0 OffsetRight 0 OffsetBottom 0 } { + SizeLayoutWidgetClass { + Name "PanelSize" AllowWidthOverride 1 WidthOverride 1220 AllowHeightOverride 1 HeightOverride 760 + Slot AlignableSlot { HorizontalAlign 1 VerticalAlign 1 } + { + FrameWidgetClass { + Name "Panel" Slot LayoutSlot { HorizontalAlign 3 VerticalAlign 3 } + { ImageWidgetClass { Name "PanelBackground" Slot FrameWidgetSlot { Anchor 0 0 1 1 OffsetLeft 0 OffsetTop 0 OffsetRight 0 OffsetBottom 0 } Color {{COLOR_PANEL}} } TextWidgetClass { Name "Title" Slot FrameWidgetSlot { Anchor 0 0 0 0 PositionX 28 OffsetLeft 28 PositionY 20 OffsetTop 20 SizeX 990 OffsetRight -1018 SizeY 44 OffsetBottom -64 } Color {{COLOR_TEXT}} Text "Co10 Escape Reintroduced" "Font Size" {{SIZE_TITLE}} "Min Font Size" {{SIZE_TITLE}} FontProperties FontProperties { Font "{{FONT}}" } } ButtonWidgetClass : "{75C912A1C89BE6C2}UI/layouts/WidgetLibrary/Buttons/WLib_ButtonText.layout" { Name "Close" Slot FrameWidgetSlot { Anchor 0 0 0 0 PositionX 1064 OffsetLeft 1064 PositionY 24 OffsetTop 24 SizeX 128 OffsetRight -1192 SizeY 42 OffsetBottom -66 } components { SCR_ButtonTextComponent "{5548F0143AE99095}" { m_sText "Close" } } } @@ -40,5 +48,9 @@ FrameWidgetClass { TextWidgetClass { Name "Feedback" Slot FrameWidgetSlot { Anchor 0 0 0 0 PositionX 248 OffsetLeft 248 PositionY 670 OffsetTop 670 SizeX 936 OffsetRight -1184 SizeY 70 OffsetBottom -740 } Color {{COLOR_TEXT}} Text "" "Font Size" {{SIZE_HELP}} "Min Font Size" {{SIZE_HELP}} Wrap 1 FontProperties FontProperties { Font "{{FONT}}" } } } } + } + } } } +} +}