From 16e08921b7d8888439e0fdae388e67295205827a Mon Sep 17 00:00:00 2001 From: ASillyNeko Date: Wed, 5 Aug 2026 09:05:49 -0700 Subject: [PATCH] Fix angel city and colony not having spec cams and colony not using correct evac locations (#1005) * Fix colony * Fix angel city not having spec cams --- .../vscripts/mp/levels/mp_angel_city.nut | 39 +++++++++++++-- .../vscripts/mp/levels/mp_colony02.nut | 49 ++++++++++++++++--- 2 files changed, 76 insertions(+), 12 deletions(-) diff --git a/Northstar.CustomServers/mod/scripts/vscripts/mp/levels/mp_angel_city.nut b/Northstar.CustomServers/mod/scripts/vscripts/mp/levels/mp_angel_city.nut index 740d6b8d..1b1d5c12 100644 --- a/Northstar.CustomServers/mod/scripts/vscripts/mp/levels/mp_angel_city.nut +++ b/Northstar.CustomServers/mod/scripts/vscripts/mp/levels/mp_angel_city.nut @@ -13,12 +13,41 @@ const array BATTERY_SPAWNS = [ void function CodeCallback_MapInit() { - AddEvacNode( CreateScriptRef( < 2527.889893, -2865.360107, 753.002991 >, < 0, -80.54, 0 > ) ) - AddEvacNode( CreateScriptRef( < 1253.530029, -554.075012, 811.125 >, < 0, 180, 0 > ) ) - AddEvacNode( CreateScriptRef( < 2446.98999, 809.364014, 576.0 >, < 0, 90.253, 0 > ) ) - AddEvacNode( CreateScriptRef( < -2027.430054, 960.39502, 609.007996 >, < 0, 179.604, 0 > ) ) + AddEvacNode( CreateScriptRef( Vector( 2527.889893, -2865.360107, 753.002991 ), Vector( 0, -80.54, 0 ) ) ) + AddEvacNode( CreateScriptRef( Vector( 1253.530029, -554.075012, 811.125 ), Vector( 0, 180, 0 ) ) ) + AddEvacNode( CreateScriptRef( Vector( 2446.98999, 809.364014, 576.0 ), Vector( 0, 90.253, 0 ) ) ) + AddEvacNode( CreateScriptRef( Vector( -2027.430054, 960.39502, 609.007996 ), Vector( 0, 179.604, 0 ) ) ) - SetEvacSpaceNode( CreateScriptRef( < -1700, -5500, -7600 >, < -3.620642, 270.307129, 0 > ) ) + SetEvacSpaceNode( CreateScriptRef( Vector( -1700, -5500, -7600 ), Vector( -3.620642, 270.307129, 0 ) ) ) + + // spectator cams + array positions = [ + Vector( 2154.047852, -2074.73877, 942.299316 ), + Vector( 1903.05896, -1322.483521, 823.097656 ), + Vector( 2714.390625, 45.400002, 759.743164 ), + Vector( -1138.018311, 195.28157, 691.62793 ) + ] + array angles = [ + Vector( 7.924948, -65.822983, 0 ), + Vector( 4.037039, -229.682098, 0 ), + Vector( 0.014044, -234.180573, 0 ), + Vector( -4.035686, 140.311783, 0 ) + ] + + for ( int i = 0; i < positions.len(); i++ ) + { + entity spec_cam = CreateEntity( "info_target" ) + + spec_cam.SetOrigin( positions[ i ] ) + spec_cam.SetAngles( angles[ i ] ) + spec_cam.kv.spawnFlags = SF_INFOTARGET_ALWAYS_TRANSMIT_TO_CLIENT + + DispatchSpawn( spec_cam ) + + SetTargetName( spec_cam, "spec_cam" + ( i + 1 ) ) + + spec_cam.DisableHibernation() + } // Battery spawns (in LTS/Free Agents) are in old locations, so we move them to the proper locations AddSpawnCallbackEditorClass( "script_ref", "script_power_up_other", FixBatterySpawns ) diff --git a/Northstar.CustomServers/mod/scripts/vscripts/mp/levels/mp_colony02.nut b/Northstar.CustomServers/mod/scripts/vscripts/mp/levels/mp_colony02.nut index 0c8b5987..4bf761e3 100644 --- a/Northstar.CustomServers/mod/scripts/vscripts/mp/levels/mp_colony02.nut +++ b/Northstar.CustomServers/mod/scripts/vscripts/mp/levels/mp_colony02.nut @@ -7,13 +7,48 @@ void function CodeCallback_MapInit() void function CreateEvacNodes() { - AddEvacNode( CreateScriptRef( < -475.129913, 1480.167847, 527.363953 >, < 8.84156, 219.338501, 0 > ) ) - AddEvacNode( CreateScriptRef( < 1009.315186, 3999.888916, 589.914917 >, < 23.945116, -146.680725, 0 > ) ) - AddEvacNode( CreateScriptRef( < 2282.868896, -1363.706543, 846.18866 >, < 23.945116, -146.680725, 0 > ) ) - AddEvacNode( CreateScriptRef( < 1911.771606, -752.053101, 664.741821 >, < 9.95526, 138.721191, 0 > ) ) - AddEvacNode( CreateScriptRef( < 1985.563232, -1205.455078, 677.444763 >, < 13.809734, -239.877441, 0 > ) ) - AddEvacNode( CreateScriptRef( < -59.625496, -1858.108887, 811.592407 >, < 20.55629, -252.775146, 0 > ) ) - AddEvacNode( CreateScriptRef( < -1035.991211, -671.11438, 824.180908 >, < 16.220453, -24.51107, 0 > ) ) + AddEvacNode( GetEnt( "evac01" ) ) + AddEvacNode( GetEnt( "evac2" ) ) + AddEvacNode( GetEnt( "evac3" ) ) + AddEvacNode( GetEnt( "evac4" ) ) + AddEvacNode( GetEnt( "evac5" ) ) + AddEvacNode( GetEnt( "evac6" ) ) + AddEvacNode( GetEnt( "evac7" ) ) SetEvacSpaceNode( GetEnt( "intro_spacenode" ) ) + + // spectator cams + array positions = [ + Vector( -475.129913, 1480.167847, 527.363953 ), + Vector( 1009.315186, 3999.888916, 589.914917 ), + Vector( 2282.868896, -1363.706543, 846.18866 ), + Vector( 1911.771606, -752.053101, 664.741821 ), + Vector( 1985.563232, -1205.455078, 677.444763 ), + Vector( -59.625496, -1858.108887, 811.592407 ), + Vector( -1035.991211, -671.11438, 824.180908 ) + ] + array angles = [ + Vector( 8.84156, 219.338501, 0 ), + Vector( 22.109896, -40.449619, 0 ), + Vector( 23.945116, -146.680725, -0.0 ), + Vector( 9.95526, 138.721191, 0.0 ), + Vector( 13.809734, -239.877441, 0.0 ), + Vector( 20.55629, -252.775146, 0.0 ), + Vector( 16.220453, -24.51107, 0.0 ) + ] + + for ( int i = 0; i < positions.len(); i++ ) + { + entity spec_cam = CreateEntity( "info_target" ) + + spec_cam.SetOrigin( positions[ i ] ) + spec_cam.SetAngles( angles[ i ] ) + spec_cam.kv.spawnFlags = SF_INFOTARGET_ALWAYS_TRANSMIT_TO_CLIENT + + DispatchSpawn( spec_cam ) + + SetTargetName( spec_cam, "spec_cam" + ( i + 1 ) ) + + spec_cam.DisableHibernation() + } }