#using scripts\codescripts\struct; #using scripts\shared\_oob; #using scripts\shared\compass; #using scripts\shared\util_shared; #using scripts\mp\_load; #using scripts\mp\_util; #using scripts\mp\mp_biodome_fx; #using scripts\mp\mp_biodome_sound; #precache( "model", "collision_clip_512x512x512" ); #precache( "model", "collision_clip_256x256x256" ); #precache( "model", "collision_clip_wall_64x64x10" ); #precache( "model", "collision_clip_wall_128x128x10" ); #precache( "model", "p7_crate_ammo_metal_small" ); #precache( "model", "p7_sandbag_civilian_01" ); #precache( "model", "p7_fire_extinguisher_digital_off" ); #precache( "model", "p7_sin_penguin_sign_01" ); #precache( "model", "p7_storage_bin_plastic_green" ); #precache( "model", "p7_bucket_janitor_plastic_rolling" ); #precache( "model", "p7_bucket_plastic_5_gal_closed_yellow" ); #precache( "model", "p7_sin_aquarium_info_kiosk_ph" ); #precache( "model", "p7_light_work_utility_portable_01" ); #precache( "model", "p7_log_wood_small_01" ); #precache( "model", "p7_box_case_metal_02_large_weathered" ); #precache( "model", "p7_sin_signage_sidewalk_board_02" ); #precache( "model", "p7_tank_nitrogen_metal" ); #precache( "model", "p7_crate_plastic_tech_01" ); #precache( "model", "p7_sin_trashcan_wood" ); #precache( "model", "p7_sin_trash_can_plastic_01" ); #precache( "model", "p7_bench_wood_locker_room_dirty" ); #precache( "model", "p7_cai_ticket_kiosk_theatre" ); #precache( "model", "p7_pallet_truck_dirty" ); #precache( "model", "p7_sin_penguin_sign_01" ); #precache( "model", "p7_sin_stacking_cargo_crate_54igraffiti" ); #precache( "model", "p7_monitor_wall_safehouse_01_flat_dmg_01" ); #precache( "model", "p7_cargo_pallet_02" ); #precache( "model", "veh_t7_drone_siege_rocket_54i_d" ); #precache( "model", "p7_sin_bio_monument_lg_wave_256" ); #precache( "model", "p7_sin_leaf_post_shade_ph" ); #precache( "model", "p7_cargo_pallet_04" ); #precache( "model", "p7_sin_bio_monument_sm_wave_256" ); function main() { precache(); SetDvar( "phys_buoyancy", 1 ); mp_biodome_fx::main(); mp_biodome_sound::main(); level.remotemissile_kill_z = ( ( -130 ) + ( 50 ) ); // override kill z for Hellstorm missile load::main(); //compass map function, uncomment when adding the minimap compass::setupMiniMap("compass_map_mp_biodome"); SetDvar( "compassmaxrange", "2100" ); // Set up the default range of the compass // DT #142726 - Player is able to mantle onto an invisible collision high above the northern portion of the map gaining access to an exploitable area. SpawnCollision("collision_clip_512x512x512", "collider", ( 744 , 1696 , 920 ), ( 0 , 0 , 0 )); SpawnCollision("collision_clip_512x512x512", "collider", ( 744 , 2208 , 920 ), ( 0 , 0 , 0 )); SpawnCollision("collision_clip_512x512x512", "collider", ( 1256 , 1696 , 920 ), ( 0 , 0 , 0 )); SpawnCollision("collision_clip_512x512x512", "collider", ( 1256 , 2208 , 920 ), ( 0 , 0 , 0 )); // DT #146576 - Player is able to mantle onto lightposts near truck start spawn and leave the playspace. SpawnCollision("collision_clip_256x256x256", "collider", ( 3454.82 , 1094.87 , 499.607 ), ( 0 , 270 , -90 )); SpawnCollision("collision_clip_256x256x256", "collider", ( 3454.82 , 706.47 , 499.607 ), ( 0 , 270 , -90 )); // Spawning clip over trashcans outside of the water pump room near seal show SpawnCollision("collision_clip_wall_64x64x10", "collider", ( 1640 , -178.5 , 150.5 ), ( 0 , 270 , 0 )); SpawnCollision("collision_clip_wall_64x64x10", "collider", ( 1580.5 , -180.5 , 141 ), ( 0 , 270 , 0 )); SpawnCollision("collision_clip_wall_64x64x10", "collider", ( 1640 , -180.5 , 141 ), ( 0 , 270 , 0 )); // Spawning clip doorframe under sea lion tales banner to prevent mantling through geo SpawnCollision("collision_clip_wall_128x128x10", "collider", ( 588 , 245 , 263 ), ( 1 , 0 , 0 )); SpawnCollision("collision_clip_wall_128x128x10", "collider", ( 588 , 358.5 , 263 ), ( 1 , 0 , 0 )); // Spawning clip near center fish tanks to prevent using mantle exploit SpawnCollision("collision_clip_wall_64x64x10", "collider", ( -249 , 817 , 175.5 ), ( 0 , 0 , 0 )); SpawnCollision("collision_clip_wall_64x64x10", "collider", ( -219.5 , 844 , 175.5 ), ( 0 , 270 , 0 )); // Spawning clip to fix getting in tree foliage out of the map near the penguin iceberg display SpawnCollision("collision_clip_cylinder_32x256", "collider", ( 1549 , -350 , 194 ), ( 0 , 0 , 0 )); SpawnCollision("collision_clip_cylinder_32x256", "collider", ( 1549 , -350 , 435.5 ), ( 0 , 0 , 0 )); SpawnCollision("collision_clip_cylinder_32x256", "collider", ( 1549 , -350 , 649.5 ), ( 0 , 0 , 0 )); if ( util::IsPropHuntGametype() ) { SpawnCollision("collision_clip_wall_64x64x10", "collider", ( -1745 , 1550 , 248 ), ( 0 , 0 , 0 )); } // Set up some generic War Flag Names. // Example from COD5: CALLSIGN_SEELOW_A is the name of the 1st flag in Selow whose string is "Cottage" // The string must have MPUI_CALLSIGN_ and _A. Replace Mapname with the name of your map/bsp and in the // actual string enter a keyword that names the location (Roundhouse, Missle Silo, Launchpad, Guard Tower, etc) game["strings"]["war_callsign_a"] = &"MPUI_CALLSIGN_MAPNAME_A"; game["strings"]["war_callsign_b"] = &"MPUI_CALLSIGN_MAPNAME_B"; game["strings"]["war_callsign_c"] = &"MPUI_CALLSIGN_MAPNAME_C"; game["strings"]["war_callsign_d"] = &"MPUI_CALLSIGN_MAPNAME_D"; game["strings"]["war_callsign_e"] = &"MPUI_CALLSIGN_MAPNAME_E"; game["strings_menu"]["war_callsign_a"] = "@MPUI_CALLSIGN_MAPNAME_A"; game["strings_menu"]["war_callsign_b"] = "@MPUI_CALLSIGN_MAPNAME_B"; game["strings_menu"]["war_callsign_c"] = "@MPUI_CALLSIGN_MAPNAME_C"; game["strings_menu"]["war_callsign_d"] = "@MPUI_CALLSIGN_MAPNAME_D"; game["strings_menu"]["war_callsign_e"] = "@MPUI_CALLSIGN_MAPNAME_E"; level spawnKillTrigger(); // out of map on ledge by green van start spawns trigger = spawn( "trigger_radius", ( 3516 , 620 , 111 ), 0, 256, 50 ); trigger thread oob::run_oob_trigger(); // out of map on rock by tree in northwest corner trigger = spawn( "trigger_radius", ( 2182 , 2176.5 , -32.5 ), 0, 100, 256 ); trigger thread oob::run_oob_trigger(); // Stockpile hub points level.cleanDepositPoints = Array ( ( -52.4927 , 1252.1 , 104.125 ), ( 330.408 , 2402.64 , 232.204 ), ( -139.434 , -303.555 , 138.836 ), ( -362.325 , 325.108 , 104.125 ) ); } function precache() { // DO ALL PRECACHING HERE } function spawnKillTrigger() { trigger = spawn( "trigger_radius", ( 4147.22 , 1095.25 , -33.0108 ), 0, 500, 500 ); trigger thread watchKillTrigger(); trigger = spawn( "trigger_radius", ( 4147.22 , 590.28 , -33.0108 ), 0, 500, 500 ); trigger thread watchKillTrigger(); trigger = spawn( "trigger_radius", ( -202 , 797 , 135.5 ), 0, 50, 200 ); trigger thread watchKillTrigger(); trigger = spawn( "trigger_radius", ( -162 , 2442 , -47 ), 0, 25, 60 ); trigger thread watchKillTrigger(); } function watchKillTrigger() { level endon( "game_ended" ); trigger = self; while(1) { trigger waittill( "trigger", player ); player DoDamage(1000, trigger.origin + (0, 0, 0), trigger, trigger, "none", "MOD_SUICIDE", 0 ); } }