Results 1 to 4 of 4

Thread: Convert OBJ :AA Maps to play on FFA Tutorial / Scripts

  1. #1
    Junior Member
    Join Date
    Jul 2020
    Location
    Germany
    Posts
    17

    Default Convert OBJ :AA Maps to play on FFA Tutorial / Scripts

    Hello @ All.
    I would thank you all to Help me out in the last two weeks with my nearly solved problems and i think it´s time to give you
    all something back.

    So here are my scripts to convert/play obj/obj_team1 obj/obj_team2 obj/obj_team3 and obj/obj_team4 in FFA Gametype !
    These scripts are running well on my Server ( Der Fuchsbau eV. FFA MODDED ) at theMoment.

    But at first, you need some extra script in your Server.cfg as follow ....

    Server.cfg ---only the extra Scripts that has to add
    Code:
    seta g_gametype "4"
    seta timelimit "15"
    seta fraglimit "50"
    
    set g_ft_settings "cvar: meltgun scanvis"
    
    set g_extgametype_mohdm1 ffa // on Southern France
    set g_extgametype_mohdm2 ffa // on Destroyed Village
    set g_extgametype_mohdm3 ffa // on Remagen
    //set g_extgametype_mohdm4 ffa // on Crossroads // Dissabled on my Server
    //set g_extgametype_mohdm5 ffa // on Snowy Park // Dissabled on my Server
    //set g_extgametype_mohdm6 ffa // on Stalingrad // Dissabled on my Server
    set g_extgametype_mohdm7 ffa // on Algiers
    set g_extgametype_obj_team1 ffa // on The Hunt
    set g_extgametype_obj_team2 ffa // on V2 Rocket Facility
    set g_extgametype_obj_team3 ffa // on Omaha Beach
    set g_extgametype_obj_team4 ffa // on The Bridge
    Now the converted OBJ to FFA Scripts:

    obj/obj_team1 with antishark
    Code:
    // THE HUNT
    // ARCHITECTURE: NED/STEVE
    // SCRIPTING: NED and lots of help from ZIED
    
    main:
    	setcvar "g_gametype" "1"
    	setcvar "g_gametypestring" "Free-For-All"
    
    	setcvar "level.clockside" "kills"
    
    	setcvar "g_obj_alliedtext1" "The Hunt" 
    	setcvar "g_obj_alliedtext2" "Der Fuchsbau eV."
    	setcvar "g_obj_alliedtext3" "sagt Willkommen !"
    	//setcvar "g_obj_axistext1" "https://ogy.de/fuchsbau"
    	//setcvar "g_obj_axistext2" "Freie Mitgliedschaft"
    	//setcvar "g_obj_axistext3" "JETZT Beitreten ! "
    
    	setcvar "g_scoreboardpic" "objdm1" 
    
            // SERVER MESSAGES
            waitexec maps/servermessage.scr::message // Optional if you have Server messages
    
    
    	
    	//FFA Spawn Points added
    
    	local.deathmatch = spawn info_player_deathmatch origin "-1120 5056 -149.99" angle 35
    	local.deathmatch = spawn info_player_deathmatch origin "4367 1377 -350.75" angle -100
    	local.deathmatch = spawn info_player_deathmatch origin "1144 3859 -176.63" angle 92
    	local.deathmatch = spawn info_player_deathmatch origin "3054 496 -345.85" angle -36
    	local.deathmatch = spawn info_player_deathmatch origin "2911 1638 -323.63" angle -16
    	local.deathmatch = spawn info_player_deathmatch origin "2802 4891 -199.09" angle -130
    	local.deathmatch = spawn info_player_deathmatch origin "3325 1456 -52.57" angle -120
    	local.deathmatch = spawn info_player_deathmatch origin "4015 915 -319.72" angle -38
    	local.deathmatch = spawn info_player_deathmatch origin "2880 4885 -196.25" angle -58
    	local.deathmatch = spawn info_player_deathmatch origin "4478 1462 -341.12" angle 25
    	local.deathmatch = spawn info_player_deathmatch origin "1519 3760 -224.12" angle 0
    	local.deathmatch = spawn info_player_deathmatch origin "3961 -1332 -351.88" angle 87
    	local.deathmatch = spawn info_player_deathmatch origin "2330 4275 19.13" angle -72
    	local.deathmatch = spawn info_player_deathmatch origin "1451 64 -271.88" angle -91
    	local.deathmatch = spawn info_player_deathmatch origin "2987 4236 -39.88" angle -51
    	local.deathmatch = spawn info_player_deathmatch origin "3572 1045 -318.34" angle 21
    	local.deathmatch = spawn info_player_deathmatch origin "2631 2966 -247.88" angle 80
    	local.deathmatch = spawn info_player_deathmatch origin "2930 4889 -199.37" angle -60
    	local.deathmatch = spawn info_player_deathmatch origin "2911 2827 -249.83" angle -10
    	local.deathmatch = spawn info_player_deathmatch origin "3471 3287 -255.76" angle 40
    	local.deathmatch = spawn info_player_deathmatch origin "4517 4174 -310.35" angle -121
    	local.deathmatch = spawn info_player_deathmatch origin "4184 1392 -159.88" angle -152
    	local.deathmatch = spawn info_player_deathmatch origin "3334 3305 -254.53" angle -93
    	local.deathmatch = spawn info_player_deathmatch origin "2068 1007 -351.23" angle -20
    	local.deathmatch = spawn info_player_deathmatch origin "5296 3410 -289.88" angle -40
    	local.deathmatch = spawn info_player_deathmatch origin "1280 55 -271.88" angle 142
    	local.deathmatch = spawn info_player_deathmatch origin "3495 2801 -239.68" angle -3
    	local.deathmatch = spawn info_player_deathmatch origin "1272 -823 -280.57" angle -142
    	local.deathmatch = spawn info_player_deathmatch origin "3999 2736 -79.88" angle -54
    	local.deathmatch = spawn info_player_deathmatch origin "2279 -831 -287.68" angle -45
    	local.deathmatch = spawn info_player_deathmatch origin "3423 2222 -200.18" angle 80
    	local.deathmatch = spawn info_player_deathmatch origin "2279 83 -302.47" angle 27
    
    	//////////////////////////
    	level waittill prespawn
    	//////////////////////////
    
    	//*** Precache Dm Stuff
    	exec global/DMprecache.scr
    
    //	level.script = maps/obj/obj_team1.scr
    	exec global/ambient.scr obj_team1
    
    	thread clipbrush
    	thread spawnem
    
    	//////////////////////////
    	level waittill spawn
    	//////////////////////////
    
    
    	$defusing_team remove
    	$planting_team remove
    	$targets_to_destroy remove
    
    
    
    
    
    	// set the parameters for this round based match
    
    	$flak88_weapon1_trigger remove
    	$flak88_weapon1_explosive remove
    	$flak88_weapon1 remove
    	$flak88_target1 remove
    	$flak88_base1 remove
    	$flak88_weapon1_explosive remove
    
    	//////////////////////////
    	level waittill roundstart
    	//////////////////////////
    
    //***********************************************
    // bomb planting setup
    //***********************************************
    
    	$flak88_weapon1_trigger remove
    	$flak88_weapon1_explosive remove
    	$flak88_weapon1 remove
    	$flak88_target1 remove
    	$flak88_base1 remove
    	$flak88_weapon1_explosive remove
    
    
    end
    
    clipbrush:
    
    	local.clipbrush = spawn trigger_multipleall
    	local.clipbrush.origin = ( 1845 786 -511.88 ) 
    	local.clipbrush setsize ( -10000 -10000 0 ) ( 10000 10000 0 ) 
    	local.clipbrush waittill trigger
    	local.clipbrush setthread sharkfix
    	local.clipbrush delay 0
    
    end
    
    sharkfix:
    
    	local.trig = parm.other
    	local.trig stufftext "say Admin, I Tried Getting to a Place I Shouldn't. Please Kick Me If I Keep Doing It!"
    	local.trig iprintln "ATTENTION: Out of Bounds Player Detected"
    	local.trig kill
    
    end
    obj/obj_team2
    Code:
    // V2 FACILITY
    // ARCHITECTURE: POWZER
    // SCRIPTING: POWZER
    
    main:
    	setcvar "g_gametype" "1"
    	setcvar "g_gametypestring" "Free-For-All"
    
    	setcvar "level.clockside" "kills" 
    
    	setcvar "g_obj_alliedtext1" "V2 ROCKET FACILITY" 
    	setcvar "g_obj_alliedtext2" "Der Fuchsbau eV."
    	setcvar "g_obj_alliedtext3" "sagt Willkommen !"
    	setcvar "g_obj_axistext1" "https://ogy.de/fuchsbau"
    	setcvar "g_obj_axistext2" "Freie Mitgliedschaft"
    	setcvar "g_obj_axistext3" "JETZT Beitreten ! "
    
    setcvar "g_scoreboardpic" "objdm2"
    
           // SERVER MESSAGES
           waitexec maps/servermessage.scr::message //Optional if you have Server messages
    
    	//FFA SPAWN POINTS added
    
    	local.deathmatch = spawn info_player_deathmatch origin "-1401 906 -459.85" angle -95
    	local.deathmatch = spawn info_player_deathmatch origin "15 1455 8.13" angle 40
    	local.deathmatch = spawn info_player_deathmatch origin "-222 312 -447.88" angle 155
    	local.deathmatch = spawn info_player_deathmatch origin "1398 912 0.13" angle -51
    	local.deathmatch = spawn info_player_deathmatch origin "-400 2072 -447.88" angle -39
    	local.deathmatch = spawn info_player_deathmatch origin "651 529 0.13" angle -50
    	local.deathmatch = spawn info_player_deathmatch origin "67 2397 -447.88" angle 138
    	local.deathmatch = spawn info_player_deathmatch origin "786 -5 0.13" angle 140
    	local.deathmatch = spawn info_player_deathmatch origin "1207 2488 -447.88" angle -48
    	local.deathmatch = spawn info_player_deathmatch origin "200 1005 0.13" angle -7
    	local.deathmatch = spawn info_player_deathmatch origin "831 2464 -447.88" angle 120
    	local.deathmatch = spawn info_player_deathmatch origin "1529 2721 0.13" angle 158
    	local.deathmatch = spawn info_player_deathmatch origin "471 2448 16.13" angle -93
    	local.deathmatch = spawn info_player_deathmatch origin "1472 2116 -511.88" angle -45
    	local.deathmatch = spawn info_player_deathmatch origin "1423 1978 -527.47" angle 177
    	local.deathmatch = spawn info_player_deathmatch origin "2323 2543 -783.88" angle -92
    	local.deathmatch = spawn info_player_deathmatch origin "315 538 -239.88" angle 135
    	local.deathmatch = spawn info_player_deathmatch origin "2048 2192 -651.88" angle -95
    	local.deathmatch = spawn info_player_deathmatch origin "427 218 -767.88" angle 86
    	local.deathmatch = spawn info_player_deathmatch origin "1559 2537 0.12" angle -54
    	local.deathmatch = spawn info_player_deathmatch origin "1119 1431 -479.88" angle 41
    	local.deathmatch = spawn info_player_deathmatch origin "2528 2544 -507.88" angle -96
    	local.deathmatch = spawn info_player_deathmatch origin "3340 2223 -511.88" angle 125
    	local.deathmatch = spawn info_player_deathmatch origin "1551 2544 -447.88" angle -85
    	local.deathmatch = spawn info_player_deathmatch origin "59 1139 -511.88" angle 34
    	local.deathmatch = spawn info_player_deathmatch origin "1199 519 -447.88" angle 54
    	local.deathmatch = spawn info_player_deathmatch origin "2815 2559 0.13" angle 44
    	local.deathmatch = spawn info_player_deathmatch origin "691 798 -447.88" angle -4
    	local.deathmatch = spawn info_player_deathmatch origin "1727 2848 0.13" angle -43
    	local.deathmatch = spawn info_player_deathmatch origin "712 -15 -239.88" angle 125
    	local.deathmatch = spawn info_player_deathmatch origin "1103 1919 0.13" angle 42
    	local.deathmatch = spawn info_player_deathmatch origin "-160 1711 -447.88" angle 19
    
    
    
    	level waittill prespawn
    
    	//*** Precache Dm Stuff
    	exec global/DMprecache.scr
    	
    	//***Flyby Planes
    	exec global/bomber.scr
    	thread flyby
    		
    	//***Ambient sounds
    	level.script = maps/obj/obj_team2.scr
    	exec global/ambient.scr obj_team2
    	
    	exec global/door_locked.scr::lock
    	thread global/exploder.scr::main
    	thread global/barrel.scr::explosive_barrel
    
    	level waittill spawn
    
    	$defusing_team remove
    	$planting_team remove
    	$targets_to_destroy remove
    
    	$v2_bomb remove
    	$v2_explode remove
    	$ctrlroom_explode remove
    	$ctrlroom_bomb remove
    	$bomb_message remove
    	$bombspeaker remove
    
    	level waittill roundstart
    
    	$v2_bomb remove
    	$v2_explode remove
    	$ctrlroom_explode remove
    	$ctrlroom_bomb remove
    	$bomb_message remove
    	$bombspeaker remove
    	
    		thread flyby
    
    end
    
    
    flyby:
    
    	//***random flyby of plane
    	wait 1.0
    	thread global/bomber.scr::bomb 4
    	thread global/bomber.scr::bomb 5
    	thread global/bomber.scr::bomb 6
    	thread global/bomber.scr::bomb 7
    	wait (randomint(180) + 60)
    	
    goto flyby
    
    //Display objectives
    //objectives_setup:
    //
    //	waitthread global/objectives.scr::blank_objectives
    //	waitthread global/objectives.scr::add_objectives 1 2 "Destroy the V2 rocket and the Launch Control Room" //$v2_bomb.origin
    //	wait 2
    //	waitthread global/objectives.scr::current_objectives 1
    
    //end
    
    
    //----------------------------------------------------------------------------
    
    _trigAction:
    	local.player = parm.other
    
    	if ( ( self.ham_type == "trig_use" ) &&
    	     ( ! local.player.useheld ) )
    		end
    	if ( ( self.ham_type == "trig_fire" ) &&
    	     ( ! local.player.fireheld ) )
    		end
    
    	local.playerId = local.player.entnum + 1
    
    	thread level.mam_f_utils::debug 80 "Trig: Player #" local.playerId \
    						"  brush = " self.entnum \
    						"  action = " self.ham_action
    
    	local.team = self.ham_team[ local.playerId ]
    	local.time = self.ham_time[ local.playerId ]
    
    	if ( ( local.team != "" ) &&
    	     ( local.team != local.player.dmteam ) &&
    	     ( ( level.time - local.time ) < 30.0 ) )
    	{
    		local.tmChange = 1
    	}
    	else
    	{
    		local.tmChange = 0
    		self.ham_team[ local.playerId ] = local.player.dmteam
    		self.ham_time[ local.playerId ] = level.time
    	}
    
    	if ( self.ham_type == "trig_mg" )
    	{
    		if ( local.tmChange == 0 )
    			end
    	}
    
    	switch ( self.ham_action )
    	{
    	  case "hurt1":   local.player hurt 1 ; break
    	  case "hurt5":   local.player hurt 5 ; break
    	  case "hurt10":  local.player hurt 10 ; break
    	  case "hurt25":  local.player hurt 25 ; break
    	  case "hurt50":  local.player hurt 50 ; break
    	  case "die":	  local.player hurt 10000 ; break
    	  case "kill":    local.player kill ; break
    	  case "respawn": local.player respawn ; break
    	  case "weapnext":local.player weapnext ; break
    	  case "weapdrop":local.player weapdrop ; break
    	  case "holster": local.player safeholster 1 ; break
    	  case "stand":	  local.player modheight stand ; break
    	  case "duck":	  local.player modheight duck ; break
    	  case "ciact":	  thread outofbounds local.player ; break
    	  case "warn":	  thread sendwarning local.player ; break
    	  default:	  local.player stufftext self.ham_action ; break
    	}
    end
    obj/obj_team3

    Code:
    // OMAHA BEACH OBJECTIVE DM
    // BY ADAM "SENN" BELLEFEUIL
    
    main:
    
    
    	setcvar "g_gametype" "1"
    	setcvar "g_gametypestring" "Free-For-All"
    
    	setcvar "level.clockside" "kills" 
    
    	setcvar "g_obj_alliedtext1" "Omaha Beach" 
    	setcvar "g_obj_alliedtext2" "Der Fuchsbau eV."
    	setcvar "g_obj_alliedtext3" "sagt Willkommen !"
    	setcvar "g_obj_axistext1" "https://ogy.de/fuchsbau"
    	setcvar "g_obj_axistext2" "Freie Mitgliedschaft"
    	setcvar "g_obj_axistext3" "JETZT Beitreten ! "
    	level.script = maps/obj/obj_team5.scr
    	exec global/ambient.scr obj_team5
    	setcvar "g_scoreboardpic" "objdm5"
    
    // SERVER MESSAGES
    waitexec maps/servermessage.scr::message // Optional if you use Server messages
    
    
    	//FFA SPAWN POINTS added
    
    	local.deathmatch = spawn info_player_deathmatch origin "2182 -5438 -523.61" angle 64
    	local.deathmatch = spawn info_player_deathmatch origin "-771 -5253 -512.17" angle 110
    	local.deathmatch = spawn info_player_deathmatch origin "-616 -1623 -503.88" angle 84
    	local.deathmatch = spawn info_player_deathmatch origin "1319 -1496 -503.88" angle 90
    	local.deathmatch = spawn info_player_deathmatch origin "2394 93 -571.88" angle -66
    	local.deathmatch = spawn info_player_deathmatch origin "2390 410 -319.88" angle 176
    	local.deathmatch = spawn info_player_deathmatch origin "1008 -688 -539.88" angle 170
    	local.deathmatch = spawn info_player_deathmatch origin "419 406 -319.88" angle -10
    	local.deathmatch = spawn info_player_deathmatch origin "2431 346 -319.88" angle 166
    	local.deathmatch = spawn info_player_deathmatch origin "1676 107 -127.88" angle 174
    	local.deathmatch = spawn info_player_deathmatch origin "1785 -451 64.13" angle 176
    	local.deathmatch = spawn info_player_deathmatch origin "787 1107 64.13" angle 38
    	local.deathmatch = spawn info_player_deathmatch origin "1179 951 -319.88" angle 177
    	local.deathmatch = spawn info_player_deathmatch origin "736 1352 256.13" angle -177
    	local.deathmatch = spawn info_player_deathmatch origin "2092 931 256.13" angle 120
    	local.deathmatch = spawn info_player_deathmatch origin "1379 -60 256.13" angle 38
    	local.deathmatch = spawn info_player_deathmatch origin "-1046 -448 256.13" angle 128
    	local.deathmatch = spawn info_player_deathmatch origin "1951 2432 249.69" angle -95
    	local.deathmatch = spawn info_player_deathmatch origin "1264 2096 320.13" angle -130
    	local.deathmatch = spawn info_player_deathmatch origin "-1076 -1599 -549.47" angle 25
    	local.deathmatch = spawn info_player_deathmatch origin "-406 -639 -333.85" angle -43
    	local.deathmatch = spawn info_player_deathmatch origin "-1161 2384 384.13" angle -45
    	local.deathmatch = spawn info_player_deathmatch origin "-1373 183 248.13" angle 0
    	local.deathmatch = spawn info_player_deathmatch origin "79 1184 248.13" angle -21
    	local.deathmatch = spawn info_player_deathmatch origin "1454 800 248.13" angle -130
    	local.deathmatch = spawn info_player_deathmatch origin "-15 2128 322.13" angle -127
    	local.deathmatch = spawn info_player_deathmatch origin "2479 823 356.63" angle -137
    	local.deathmatch = spawn info_player_deathmatch origin "-703 1180 328.13" angle 166
    	local.deathmatch = spawn info_player_deathmatch origin "1856 -1247 -503.88" angle 89
    	local.deathmatch = spawn info_player_deathmatch origin "2304 1540 334.31" angle -140
    	local.deathmatch = spawn info_player_deathmatch origin "-560 1443 328.13" angle 51
    	local.deathmatch = spawn info_player_deathmatch origin "79 1517 320.13" angle 55
    
    	$defusing_team remove
    	$planting_team remove
    	$targets_to_destroy remove
    
    	$bangalore_left hide
    	$bangalore_nopulse_left hide
    	$bangalore_explosion_left1 anim start
    	$bangalore_explosion_left2 anim start
    	radiusdamage $bangalore_explosion_left2.origin 640 384
    	$bangalore_nopulse_left hide
    	$barbwire_clip_left delete
    	$barbwire_collision_left delete
    	$barbwire_left delete
    
    	$bangalore_center hide
    	$bangalore_nopulse_center hide
    	$bangalore_explosion_center1 anim start
    	$bangalore_explosion_center2 anim start
    	radiusdamage $bangalore_nopulse_center.origin 640 384
    	$bangalore_nopulse_center hide
    	$barbwire_clip_center delete
    	$barbwire_collision_center delete
    	$barbwire_center delete
    
    	$bangalore_right hide
    	$bangalore_nopulse_right hide	
    	$bangalore_explosion_right1 anim start
    	$bangalore_explosion_right2 anim start
    	radiusdamage $bangalore_nopulse_right.origin 640 384
    	$bangalore_nopulse_right hide
    	$barbwire_clip_right delete
    	$barbwire_collision_right delete
    	$barbwire_right delete
    
    	level waittill prespawn
    
    	exec global/DMprecache.scr
    
    	thread global/minefield.scr::minefield_setup
    
    	$spawn_allied1 enablespawn
    	$spawn_allied2 enablespawn
    	$spawn_allied3 enablespawn
    	$spawn_allied4 enablespawn
    
    	$spawn_axis1 enablespawn
    	$spawn_axis2 enablespawn
    	$spawn_axis3 enablespawn
    	$spawn_axis4 enablespawn
    
    	$bangalore_nopulse_left hide
    	$bangalore_nopulse_center hide
    	$bangalore_nopulse_right hide
    
    	$88mm_trigger1 hide
    //	$88mm_weapon1 hide
    	$88mm_trigger2 hide
    //	$88mm_weapon2 hide
    //	$88mm_weapon_base hide
    
    	$world northyaw 270
    
    	$world farplane 7500
    	$world farplane_color (0.625 0.613 0.601)
    
    	
    // Modifikationen start  Added some Trees and a Submarine
    
    //Strand spawnpoint	Baum 1
    	local.static = spawn script_model
    	local.static model "static/tree_oak.tik"
    	local.static.origin = ( 5197 -2000 -214 )
    	local.static.angles = ( 0 )
    	local.static solid
        local.static immune bullet
    	local.static immune fast_bullet
    	local.static immune bash
    	local.static immune mg
    	local.static immune rifle
    	local.static immune explosion
    	local.static nodamage
    
    //Strand spawnpoint	Baum 2
    	local.static = spawn script_model
    	local.static model "static/tree_oak.tik"
    	local.static.origin = ( 4197 -1800 -100 )
    	local.static.angles = ( 0 )
    	local.static solid
        local.static immune bullet
    	local.static immune fast_bullet
    	local.static immune bash
    	local.static immune mg
    	local.static immune rifle
    	local.static immune explosion
    	local.static nodamage
    
    //Strand spawnpoint	Baum 3
    	local.static = spawn script_model
    	local.static model "static/tree_oak.tik"
    	local.static.origin = ( 6420 -1524 -305 )
    	local.static.angles = ( 0 )
    	local.static solid
        local.static immune bullet
    	local.static immune fast_bullet
    	local.static immune bash
    	local.static immune mg
    	local.static immune rifle
    	local.static immune explosion
    	local.static nodamage
    
    //Strand spawnpoint	Kanone 1 Bunker 
    	local.static = spawn script_model
    	local.static model "statweapons/flak88_d.tik"
    	local.static.origin = ( -1129 -693 296 )
    	local.static.angles = ( 0 270 0 )
    	local.static solid
        local.static immune bullet
    	local.static immune fast_bullet
    	local.static immune bash
    	local.static immune mg
    	local.static immune rifle
    	local.static immune explosion
    	local.static nodamage
    
    //Strand spawnpoint	Kanone 2 Bunker 
    	local.static = spawn script_model
    	local.static model "statweapons/flak88turret.tik"
    	local.static.origin = ( 1593 -320 276 )
    	local.static.angles = ( 0 270 0 )
    	local.static solid
        local.static immune bullet
    	local.static immune fast_bullet
    	local.static immune bash
    	local.static immune mg
    	local.static immune rifle
    	local.static immune explosion
    	local.static nodamage
    
    // Seite Baum 1
    	local.static = spawn script_model
    	local.static model "static/tree_oak.tik"
    	local.static.origin = ( -433 2548 293 )
    	local.static.angles = ( 0 )
    	local.static solid
        local.static immune bullet
    	local.static immune fast_bullet
    	local.static immune bash
    	local.static immune mg
    	local.static immune rifle
    	local.static immune explosion
    	local.static nodamage
    
    // Seite Baum 2
    	local.static = spawn script_model
    	local.static model "static/tree_oak.tik"
    	local.static.origin = ( 213 2548 283 )
    	local.static.angles = ( 0 )
    	local.static solid
        local.static immune bullet
    	local.static immune fast_bullet
    	local.static immune bash
    	local.static immune mg
    	local.static immune rifle
    	local.static immune explosion
    	local.static nodamage
    
    // stukka destroyed
    	local.static = spawn script_model
    	local.static model "vehicles/stuka_d.tik"
    	local.static.origin = ( -1957 768 396 )
    	local.static.angles = ( 0 )
    	local.static solid
        local.static immune bullet
    	local.static immune fast_bullet
    	local.static immune bash
    	local.static immune mg
    	local.static immune rifle
    	local.static immune explosion
    	local.static nodamage
    
    
    // uboot
    	local.static = spawn script_model
    	local.static model "vehicles/uboat.tik"
    	local.static.origin = ( 3005 -7098 -641 )
    	local.static.angles = ( 0 )
    	local.static solid
        local.static immune bullet
    	local.static immune fast_bullet
    	local.static immune bash
    	local.static immune mg
    	local.static immune rifle
    	local.static immune explosion
    	local.static nodamage
    
    // Modifikationen ende
    
    
    
    	level waittill spawn
    	
    	$88mm_explosive1 hide
    	$88mm_explosive2 hide
    
    	thread random_explode_setup
    	thread spawnem
    
    	level waittill roundstart
    
    end
    
    		local.healthitem2 = spawn models/items/item_100_healthbox.tik
    		local.healthitem2.origin = ( 1539 -208 86.88 )
    		local.healthitem2.angles = ( 0 90 0 )
    
    
    		local.healthitem2 = spawn models/items/item_100_healthbox.tik
    		local.healthitem2.origin = ( 992 -206 -495.88 )
    		local.healthitem2.angles = ( 0 90 0 )
    
    		local.healthitem2 = spawn models/items/item_100_healthbox.tik
    		local.healthitem2.origin = ( 1705 110.20 -99.88 )
    		local.healthitem2.angles = ( 0 90 0 )
    
    		local.healthitem3 = spawn models/items/item_100_healthbox.tik
    		local.healthitem3.origin = ( 1462.29 1302.75 112.13 )
    		local.healthitem3.angles = ( 0 90 0 )
    
    		local.healthitem3 = spawn models/items/item_100_healthbox.tik
    		local.healthitem3.origin = ( 1756.62 454.32 112.13 )
    		local.healthitem3.angles = ( 0 90 0 )
    
    
    //*** --------------------------------------------
    //*** "Random Beach Explosions"
    //*** --------------------------------------------
    
    random_explode_setup:
    
    	thread random_explode1
    	thread random_explode2
    	thread random_explode3
    	thread random_explode4
    	thread random_explode5
    	thread random_explode6
    	thread random_explode7
    
    end
    
    random_explode1:
    
    	wait (randomfloat 13 + 23)
    
    	$random_explode1_origin playsound arty_leadinmp
    
    	wait 1
    
    	$random_explode1 anim start
    	radiusdamage $random_explode1_origin 256 384
    
    	goto random_explode1
    
    random_explode2:
    
    	wait (randomfloat 7 + 20)
    
    	$random_explode2_origin playsound arty_leadinmp
    
    	wait 1
    
    	$random_explode2 anim start
    	radiusdamage $random_explode2_origin 256 384
    
    	goto random_explode2
    
    random_explode3:
    
    	wait (randomfloat 9 + 18)
    
    	$random_explode3_origin playsound arty_leadinmp
    
    	wait 1
    
    	$random_explode3 anim start
    	radiusdamage $random_explode3_origin 256 384
    
    	goto random_explode3
    
    random_explode4:
    
    	wait (randomfloat 12 + 18)
    
    	$random_explode4_origin playsound arty_leadinmp
    
    	wait 1
    
    	$random_explode4 anim start
    	radiusdamage $random_explode4_origin 256 384
    
    	goto random_explode4
    
    random_explode5:
    
    	wait (randomfloat 15 + 22)
    
    	$random_explode5_origin playsound arty_leadinmp
    
    	wait 1
    
    	$random_explode5 anim start
    	radiusdamage $random_explode5_origin 256 384
    
    	goto random_explode5
    
    random_explode6:
    
    	wait (randomfloat 8 + 15)
    
    	$random_explode6_origin playsound arty_leadinmp
    
    	wait 1
    
    	$random_explode6 anim start
    	radiusdamage $random_explode6_origin 256 384
    
    	goto random_explode6
    
    random_explode7:
    
    	wait (randomfloat 10 + 24)
    
    	$random_explode7_origin playsound arty_leadinmp
    
    	wait 1
    
    	$random_explode7 anim start
    	radiusdamage $random_explode7_origin 256 384
    
    	goto random_explode7
    
    end
    
    //----------------------------------------------------------------------------
    
    _trigAction:
    	local.player = parm.other
    
    	if ( ( self.ham_type == "trig_use" ) &&
    	     ( ! local.player.useheld ) )
    		end
    	if ( ( self.ham_type == "trig_fire" ) &&
    	     ( ! local.player.fireheld ) )
    		end
    
    	local.playerId = local.player.entnum + 1
    
    	thread level.mam_f_utils::debug 80 "Trig: Player #" local.playerId \
    						"  brush = " self.entnum \
    						"  action = " self.ham_action
    
    	local.team = self.ham_team[ local.playerId ]
    	local.time = self.ham_time[ local.playerId ]
    
    	if ( ( local.team != "" ) &&
    	     ( local.team != local.player.dmteam ) &&
    	     ( ( level.time - local.time ) < 30.0 ) )
    	{
    		local.tmChange = 1
    	}
    	else
    	{
    		local.tmChange = 0
    		self.ham_team[ local.playerId ] = local.player.dmteam
    		self.ham_time[ local.playerId ] = level.time
    	}
    
    	if ( self.ham_type == "trig_mg" )
    	{
    		if ( local.tmChange == 0 )
    			end
    	}
    
    	switch ( self.ham_action )
    	{
    	  case "hurt1":   local.player hurt 1 ; break
    	  case "hurt5":   local.player hurt 5 ; break
    	  case "hurt10":  local.player hurt 10 ; break
    	  case "hurt25":  local.player hurt 25 ; break
    	  case "hurt50":  local.player hurt 50 ; break
    	  case "die":	  local.player hurt 10000 ; break
    	  case "kill":    local.player kill ; break
    	  case "respawn": local.player respawn ; break
    	  case "weapnext":local.player weapnext ; break
    	  case "weapdrop":local.player weapdrop ; break
    	  case "holster": local.player safeholster 1 ; break
    	  case "stand":	  local.player modheight stand ; break
    	  case "duck":	  local.player modheight duck ; break
    	  case "ciact":	  thread outofbounds local.player ; break
    	  case "warn":	  thread sendwarning local.player ; break
    	  default:	  local.player stufftext self.ham_action ; break
    	}
    end
    obj/obj_team4

    Code:
    // THE BRIDGE
    // ARCHITECTURE: POWZER
    // SCRIPTING: POWZER
    
    main:
    setcvar "g_gametype" "1"
    	setcvar "g_gametypestring" "Free-For-All"
    	setcvar "level.clockside" "kills" 
    
    	setcvar "g_obj_alliedtext1" "The Bridge" 
    	setcvar "g_obj_alliedtext2" "Der Fuchsbau eV."
    	setcvar "g_obj_alliedtext3" "sagt Willkommen !"
    	setcvar "g_obj_axistext1" "https://ogy.de/fuchsbau"
    	setcvar "g_obj_axistext2" "Freie Mitgliedschaft"
    	setcvar "g_scoreboardpic" "objdm4"
    
       
    //FFA SPAWN POINTS
    
    	local.deathmatch = spawn info_player_deathmatch origin "-3288 3197 314.22" angle 64
    	local.deathmatch = spawn info_player_deathmatch origin "-4437 3020 286.72" angle 110
    	local.deathmatch = spawn info_player_deathmatch origin "-1419 3894 236.13" angle 84
    	local.deathmatch = spawn info_player_deathmatch origin "-1443 3910 236.3" angle 90
    	local.deathmatch = spawn info_player_deathmatch origin "442 3894 324.13" angle -66
    	local.deathmatch = spawn info_player_deathmatch origin "1291 3306 240.13" angle 176
    	local.deathmatch = spawn info_player_deathmatch origin "1526 1948 184.13" angle 170
    	local.deathmatch = spawn info_player_deathmatch origin "-380 2085 240.13" angle -10
    	local.deathmatch = spawn info_player_deathmatch origin "1155 1470 240.13" angle 166
    	local.deathmatch = spawn info_player_deathmatch origin "1535 1226 240.13" angle 174
    	local.deathmatch = spawn info_player_deathmatch origin "962 1146 72.13" angle 176
    	local.deathmatch = spawn info_player_deathmatch origin "-23 1707 16.13" angle 38
    	local.deathmatch = spawn info_player_deathmatch origin "-5 4153 16.13" angle 177
    	local.deathmatch = spawn info_player_deathmatch origin "335 2927 24.13" angle -177
    	local.deathmatch = spawn info_player_deathmatch origin "708 3193 616.13" angle 120
    	local.deathmatch = spawn info_player_deathmatch origin "872 -1303 248.13" angle 38
    	local.deathmatch = spawn info_player_deathmatch origin "683 -1089 480.13" angle 128
    	local.deathmatch = spawn info_player_deathmatch origin "1258 -805 192.13" angle -95
    	local.deathmatch = spawn info_player_deathmatch origin "711 -2290 240.13" angle -130
    	local.deathmatch = spawn info_player_deathmatch origin "-474 -1726 248.13" angle 25
    	local.deathmatch = spawn info_player_deathmatch origin "-760 -2245 240.13" angle -43
    	local.deathmatch = spawn info_player_deathmatch origin "-1047 -1174 240.13" angle -45
    	local.deathmatch = spawn info_player_deathmatch origin "697 -803 56.13" angle 0
    	
       level waittill prespawn
    
       //*** Precache Dm Stuff
       exec global/DMprecache.scr
    
       level.script = maps/obj/obj_team4.scr
       exec global/ambient.scr obj_team4
       
       thread global/exploder.scr::main
       
    //thread global/minefield.scr::minefield_setup 
    
    //** NOTICE: i´ve dissabled the Minefield near the Bridge
    // it has a Bug !! If a player went into the minefield and blow up, he CAN´T Spawn anymore into
    // the Map !! I don´t know why this happends, so leave it dissabled atm !!
       
        exec global/door_locked.scr::lock
    
       level waittill spawn
    
       level.defusing_team = "allies"
       level.planting_team = "axis"
       level.bomb_damage = 300
       level.bomb_explosion_radius = 1024
    
       // set the parameters for this round/wave based match
       level.dmrespawning = 0   // 1 **wave based** or 0 **round based**
       level.dmroundlimit = 5   // round time limit in minutes
       level.clockside = allies // set to axis, allies, kills, or draw
    
       level waittill roundstart
          
          $bridge_bomb thread global/obj_dm.scr::bomb_thinker
          $bridge_bomb2 thread global/obj_dm.scr::bomb_thinker
          
          $bridge_bomb thread axis_win_bomb $bridge_bomb $bridge_bomb2
          $bridge_bomb thread allied_win_timer
          
    //      thread objectives_setup
       
    end
    
    
    axis_win_bomb local.bomb1 local.bomb2:
    
       while ((local.bomb1.exploded != 1) && (local.bomb2.exploded != 1))
          wait .1
          
       teamwin axis
    end
    
    //*** --------------------------------------------
    //*** "Allied Victory"
    //*** --------------------------------------------
    
    allied_win_timer:
    
       level waittill allieswin
    
    end
    
    
    //THIS PORTION OF SCRIPT NOT READY TO IMPLEMENT
    //objectives_setup:
    //
    //   waitthread global/objectives.scr::blank_objectives
    //   waitthread global/objectives.scr::add_objectives 1 2 "Axis forces must destroy the bridge" $bridge.origin
    //   wait 2
    //   waitthread global/objectives.scr::current_objectives 1
    
    end
    Okay, thats my scripts fo you nice Peoples !! Have fun with it.

    -The Fox

  2. #2

    Default

    One thing i noticed, you don't need to call global/DMprecache.scr:


    /*
    DMPrecache.scr loads file twice on each level start automatically, what is redundant as hell,
    these two lines tell interpreter that if level.screenshotsPrecahced was set to 1,
    we don't want file to be "loaded" again.
    */
    if(level.screenshotsPrecached == 1) { end }
    level.screenshotsPrecached = 1
    Github - Steam - .Crimewavez#5285

  3. #3
    Junior Member
    Join Date
    Jul 2020
    Location
    Germany
    Posts
    17

    Default

    Thank you Criminal for this Infos !

    I add the Line because i getting Errors Messages in the Server startup protocol that say i have to add a DMPrecache for every Model.
    After i added the Line i have less Error Messages in the Protocol.
    I will Hunt for the meaning of DMPrecache again.

    Thx again !
    Have a nice Day.

    -Fox

  4. #4

    Default

    Is there a way to convert custom OBJ maps to FFA ?

    TNX

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •