Initial commit.

This commit is contained in:
Robert MacGregor 2012-07-27 17:22:05 -04:00
commit 9a05e8d86c
652 changed files with 154587 additions and 0 deletions

37
missions/AlphaSector.cs Normal file
View file

@ -0,0 +1,37 @@
//Alpha Sector (broke) script
package AlphaSector //Package is our mission Name
{
function defineGeneralAI()
{
//These arrays are for general bots
$Bot[0,"Name"] = "Jeff Harding"; //ftl, Jeff.
$Bot[0,"Race"] = "Human";
//Very important or the console will get spammed.
//Bioderms and Criollos MUST be Male.
//Draakans can be types A, B, or C.
$Bot[0,"Sex"] = "Male";
$Bot[0,"Skin"] = "Beagle"; //Skin. Don't use the actual team name. (Blood Eagle for example)
$Bot[0,"Voice"] = "Male1"; //Voice. Don't use the fancy name (Psycho for example).
$Bot[0,"VoicePitch"] = 1;
$Bot[0,"Team"] = 1; //Human
$Bot[0,"Weapons"] = "Blaster"; //List the weapons with spaces. The first weapon listed will be the one he has out on spawn.
$Bot[0,"Pack"] = "MiningTool";
$Bot[0,"Armor"] = "Light";
$Bot[0,"Objectives"] = false; //The bot goes NOWHERE!
//The ammo for each weapon in "Weapons", make sure it's in the same spot in the string as the weapon.
//If the weapon doesn't use ammo, just place a zero.
$Bot[0,"Ammo"] = "0";
$Bot[0,"RepairKits"] = 1; //Yea.. rep kits
$Bot[0,"Mines"] = 0; //Mines!!
$Bot[0,"Grenades"] = 0; //Grenades. I'll make it so you can tell which kind of nades.
$Bot[0,"Transform"] = "-159.193 -131.751 277.517 0 0 -1 1.1602"; //First 3 numbers are the position. The rest is the rotation.
//These are for detailing on the bots.. shouldn't really be used unless you got a good reason to.
$Bot[0,"Health"] = 1; //I'm pretty sure 1 is the max for all armors.
$BotCount = 1; //Tell the game how many general AI's there are.
}
};

1648
missions/AlphaSector.mis Normal file

File diff suppressed because it is too large Load diff

415
missions/Beginning.cs Normal file
View file

@ -0,0 +1,415 @@
// don't want this executing when building graphs
if($OFFLINE_NAV_BUILD)
return;
// Script for Training
//===================================================================================
//error("Training 1 script");
//Note: Quite messy right now.. I'll organize when it's done
//Not sure why this mission causes lots of console spam..
// variables
$numberOfEnemies[1] = 6;
$numberOfEnemies[2] = 6;
$numberOfEnemies[3] = 6;
$numberOfTeammates = 1;
$missionBotSkill[1] = 0.2;
$missionBotSkill[2] = 0.4;
$missionBotSkill[3] = 0.7;
// package and callbacks
package Beginning {
//BEGIN BEGINNING PACKAGE =======================================================================
function SinglePlayerGame::initGameVars(%game)
{
echo("initializing beginning (TDS mission 1) game vars");
Game.captorName = "Alchaldes"; //Main dude speaking
Game.controllerName = "Hammurabi"; //Guy at control panel
Game.guardOneName = "Romulus";
Game.guardTwoName = "Hercules";
}
function PlayGui::onWake(%this)
{
parent::onWake(%this);
//error("Waking training play gui");
// okay we know the victim...erm...player is looking
// and we hope they have a body so lets do this
if(!game.playedIntro) {
game.PlayGuiAwake = true;
beginBeginning();
}
}
function getTeammateGlobals()
{
$TeammateWarnom0 = "Gila";
$teammateSkill0 = 0.5;
$teammateVoice0 = Derm3;
$teammateEquipment0 = 0;
$teammateGender0 = B;
}
function MP3Audio::play(%this)
{
//too bad...no mp3 in training
}
function toggleCommanderMap(%val)
{
// No command Circuit fer' you!
}
function toggleTaskListDlg( %val )
{
// Tasks? What tasks? Get the ef out of there when given the chance!
}
function toggleInventoryHud( %val )
{
// Not even a message
}
function toggleNetDisplayHud( %val )
{
// Hello, McFly? This is training! There's no net in training!
}
function voiceCapture( %val )
{
// Uh, who do you think you are talking to?
}
function giveall()
{
error("When the going gets tough...wussies like you start cheating!");
messageClient($player, 0, "Cheating eh? What\'s next? Camping?");
}
// get the ball rolling
//------------------------------------------------------------------------------
function startCurrentMission()
{
playGui.add(outerChatHud);
//fade up from black
ServerConnection.setBlackOut(true, 0);
new actionMap(ModifiedMap);
modifiedMap.bind(mouse0, "xaxis", yaw);
modifiedMap.bind(mouse0, "yaxis", pitch);
}
function singlePlayerDead()
{
missionFailed($player.miscMsg[TDSGenericLoss]);
AIMissionEnd();
$objectiveQ[$enemyTeam].clear();
}
function beginBeginning()
{
if(game.playedIntro)
return;
$Beginning = ServerConnection.schedule(3000, setBlackOut, false, 4000);
$player.player.setTransform(DP.getTransform());
$enemy0.stepMove(AlchaldesVisit.getPosition());
yaw(1);
return;
game.playedIntro = true;
lockArmorHack(true); //Don't let our playah move
//Now set up the victim
turnPlayerToPosition($enemy0.player.getPosition());
$player.player.schedule(3000,"setInvincibleMode",$InvincibleTime,0.02);
schedule(3200,0,"hideHudHACK",false);
pitch(40);
if(!$firstperson)//Make sure we're in first person every time
toggleFirstPerson($player);
//Although both can't jet.. apparently b0ts need them to get around (even jumping down from stuff)
$player.player.setRechargeRate(0);
$player.player.setEnergyLevel(0);
$teammate0.player.setTransform(Warnom0.getTransform());
//Alchaldes (leader of Criollos)
$enemy0.aimAt($player.player.getPosition());
$enemy0.player.clearInventory();
$enemy0.player.setInventory("EnergyPack",1); //Has a med condition; needs energy pack at all times
setName($enemy0,Game.CaptorName);
setSkin($enemy0,"HALO_SKIN");
//Hammurabi (Cloning -- lead researcher)
$enemy1.aimAt($player.player.getPosition());
$enemy1.player.clearInventory();
$enemy1.player.setInventory("EnergyPack",1);
setName($enemy1,Game.ControllerName);
setVoice($enemy1,"Derm3");
setSkin($enemy1,"HALO_SKIN");
//Guard 1 (Looking at Dolosus)
$enemy2.aimAt($player.player.getPosition());
setName($enemy2,Game.GuardOneName);
setVoice($enemy2,"Derm3");
setSkin($enemy2,"HALO_SKIN");
//Guard 2 (Looking at Gila)
$enemy3.aimAt($teammate0.player.getPosition());
setName($enemy3,Game.GuardTwoName);
setVoice($enemy3,"Derm3");
setSkin($enemy3,"HALO_SKIN");
doText(TDS_M101);
doText(TDS_M102,3000);
doText(TDS_M103,3100);
doText(TDS_M104,3200);
doText(TDS_M105,3300);
doText(TDS_M106,3400);
doText(TDS_M107,3500);
doText(TDS_M108,3600);
doText(TDS_M109,3700);
doText(TDS_M101b,3800);
doText(TDS_M102b,3900);
doText(TDS_M103b,4000);
doText(TDS_M104b,4100);
doText(TDS_M105b,4200);
doText(TDS_M106b,4300);
doText(TDS_M107b,4400);
doText(TDS_M108b,4500);
doText(TDS_M109b,4600);
doText(TDS_M101c,4700);
doText(TDS_M102c,4800);
doText(TDS_M103c,4900);
doText(TDS_M104c,5000);
doText(TDS_M105c,5100);
doText(TDS_M106c,5200);
doText(TDS_M107c,5300);
}
function giveEscortTask(%bot, %target)
{
%newObjective = new AIObjective(AIOEscortPlayer)
{
dataBlock = "AIObjectiveMarker";
weightLevel1 = 10000;
description = "Escort Player";
targetClientId = %target;
offense = true;
};
//echo(%newObjective);
MissionCleanup.add(%newObjective);
$ObjectiveQ[$playerTeam].add(%newObjective);
%bot.stepEscort(%target);
%bot.escort = %newObjective;
}
function detonateAll()
{
ResearchTurret.applyDamage(400);
SecondaryResearch.applyDamage(400);
MainResearch.applyDamage(400);
Turret1.applyDamage(400);
Turret2.applyDamage(400);
Turret3.applyDamage(400);
BaseSensor.applyDamage(400);
BaseGen2.applyDamage(400);
DefenceGen.applyDamage(400);
ReactorGen2.applyDamage(400);
ReactorGen1.applyDamage(0.5);
InventoryStation1.applyDamage(400);
InventoryStation2.applyDamage(400);
InventoryStation3.applyDamage(400);
InventoryStation5.applyDamage(400);
messageAll('msgAll',"\c4Intercom: Main reactor absorbed most of the energy; high damage has been done to the whole network!");
schedule(1500,0,"messageAll",'msgAll',"\c4Gila: Good! Sounds like any defences they have is down.");
//Alright, give the guards and other b0ts the objectives
$enemy2.addTask(AIEngageTask);
$enemy3.addTask(AIEngageTask);
$enemy4.addTask(AIEngageTask);
$enemy5.addTask(AIEngageTask);
}
function storyMoveToHammurabi()
{
$enemy0.stepMove(AlchaldesWorried.getPosition());
$enemy0.schedule(2000,"aimAt",$enemy1.player.getPosition());
$enemy2.aimAt($enemy0.player.getPosition());
$enemy3.aimAt($enemy0.player.getPosition());
}
function storyMoveToGila()
{
$enemy0.stepMove(AlchaldesObserve.getPosition());
$enemy1.stepMove(HammurabiObserve.getPosition());
$enemy0.schedule(2000,"aimAt",$teammate0.player.getPosition());
$enemy1.schedule(2000,"aimAt",$teammate0.player.getPosition());
}
function storyMoveToDolosus()
{
$enemy0.stepMove(enemy0.getPosition());
$enemy1.stepMove(enemy1.getPosition());
$enemy0.schedule(2000,"aimAt",$player.player.getPosition());
$enemy1.schedule(2000,"aimAt",$player.player.getPosition());
}
function hideHudHACK(%bool)
{
objectiveHud.setVisible(%bool);
hudClusterBack.setVisible(%bool);
inventoryHud.setVisible(%bool);
backPackFrame.setVisible(%bool);
weaponsHud.setVisible(%bool);
clockHUD.setVisible(%bool);
retCenterHUD.setVisible(%bool);
}
//------------------------------------------------------------------------------
function SinglePlayerGame::equip(%game, %player)
{
//ya start with nothing...NOTHING!
%player.clearInventory();
for(%i =0; %i<$InventoryHudCount; %i++)
%player.client.setInventoryHudItem($InventoryHudData[%i, itemDataName], 0, 1);
%player.client.clearBackpackIcon();
%set = %player.client.equipment;
if (%player.client.race $= "Draakan")
{
%player.setInventory(Flamer,1);
%player.use(Flamer);
}
else
{
%player.setInventory("Chaingun",1,true);
%player.setInventory("ChaingunAmmo",999,true);
%player.setInventory("Disc",1,true);
%player.setInventory("DiscAmmo",999,true);
%player.setInventory("Shocklance",1,true);
%player.setInventory("AmmoPack",1,true);
%player.use("Chaingun");
}
}
function spawnSinglePlayer()
{
resetWildCat();
parent::spawnSinglePlayer();
}
function turnPlayerToPosition(%pos)
{
%vec = VectorSub($player.player.position, %pos);
%angle = mATan( getWord(%vec, 0), getWord(%vec, 1) );
%angle = %angle + 3.141529;
%newTransform = $player.player.position SPC "0 0 1" SPC %angle;
$player.player.setTransform(%newTransform);
}
function singlePlayerGame::onAIRespawn(%game, %client)
{
// DONT add the default tasks
//error("default tasks not added");
}
function singlePlayerGame::playerSpawned(%game, %player)
{
parent::playerSpawned(%game, %player);
}
function singlePlayerGame::gameOver(%game)
{
//enable the voice chat menu again...
if (isObject(training1BlockMap))
{
training1BlockMap.pop();
training1BlockMap.delete();
}
if(HelpTextGui.isVisible())
helpTextGui.setVisible(false);
//Make sure our hidden HUD elements are visible again
hideHudHACK(true);
//Make sure our sounds stopped playing
doSpecialEffect(5);
//re-enable the use of the settings button...
SinglePlayerEscSettingsBtn.setActive(1);
Parent::gameOver();
}
function trainingPreloads() //Load any skins..
{
navGraph.preload("skins/Gecko.lbioderm", true);
navGraph.preload("skins/Gecko.mbioderm", true);
navGraph.preload("skins/Gecko.hbioderm", true);
navGraph.preload("skins/base.lbioderm", true);
navGraph.preload("skins/HALO_Skin.lbioderm", true);
navGraph.preload("skins/HALO_Skin.mbioderm", true);
navGraph.preload("skins/HALO_Skin.hbioderm", true);
navGraph.preload("skins/sensor_pulse_large", true);
navGraph.preload("skins/base.hmale", false);
navGraph.preload("skins/beagle.hmale", false);
navGraph.preload("skins/base.mmale", false);
navGraph.preload("skins/beagle.mmale", false);
navGraph.preload("skins/base.lmale", false);
navGraph.preload("skins/swolf.mmale", false);
navGraph.preload("skins/beagle.lmale", false);
}
function SinglePlayerGame::missionLoadDone(%game)
{
Parent::missionLoadDone(%game);
trainingPreloads();
}
function serverCmdBuildClientTask(%client, %task, %team)
{
// player shouldnt be able to use the voice commands to do anything
}
function cancel(%sched)
{
parent::Cancel(%sched);
return true;
}
function lockArmorHack(%val)
{
if (%val)
{
movemap.pop();
modifiedmap.push();
}
else
{
movemap.push();
modifiedmap.pop();
}
//$player.player.setMoveState(true);
//$player.player.schedule(1000,"setMoveState", false);
}
function SinglePlayerGame::enterMissionArea(%game, %player){}
function SinglePlayerGame::leaveMissionArea(%game, %player)
{
schedule(1000,0,"missionComplete", $player.miscMsg[TDSBeginningWin] );
moveMap.schedule(1000, "pop");
}
};
activatePackage(Beginning);

3259
missions/Beginning.mis Normal file

File diff suppressed because it is too large Load diff

370
missions/Deployment.cs Normal file
View file

@ -0,0 +1,370 @@
// don't want this executing when building graphs
if($OFFLINE_NAV_BUILD)
return;
// Script for Training
//===================================================================================
//error("Training 1 script");
//Note: Quite messy right now.. I'll organize when it's done
// package and callbacks
activatePackage(HotZone);
// variables
$numberOfEnemies[1] = 1;
$numberOfEnemies[2] = 1;
$numberOfEnemies[3] = 1;
$numberOfTeammates = 1;
$missionBotSkill[1] = 0.0;
$missionBotSkill[2] = 0.4;
$missionBotSkill[3] = 0.7;
// additional mission Audio
datablock AudioProfile(HeartbeatSound)
{
filename = "fx/misc/heartbeat.wav";
description = Audio2D;
preload = true;
looping = false;
};
package HotZone {
//BEGIN TRAINING PACKAGE =======================================================================
function SinglePlayerGame::initGameVars(%game)
{
echo("initializing training1 game vars");
}
function getTeammateGlobals()
{
$TeammateWarnom0 = "Raptor";
$teammateskill0 = 0.5;
$teammateVoice0 = Derm3;
$teammateEquipment0 = 0;
$teammateGender0 = Male;
$TeammateWarnom1 = "Cobra";
$teammateSkill1 = 0.5;
$teammateVoice1 = Derm3;
$teammateEquipment1 = 0;
$teammateGender1 = C;
$TeammateWarnom2 = "Sharp Tooth";
$teammateSkill2 = 0.5;
$teammateVoice2 = Derm3;
$teammateEquipment2 = 0;
$teammateGender2 = A;
$TeammateWarnom3 = "Snake";
$teammateSkill3 = 0.5;
$teammateVoice3 = Derm3;
$teammateEquipment3 = 0;
$teammateGender3 = A;
$TeammateWarnom4 = "Gila";
$teammateSkill4 = 0.5;
$teammateVoice4 = Derm3;
$teammateEquipment4 = 0;
$teammateGender4 = B;
}
function AIFollowPath::assume(%task, %client)
{
%task.setWeightFreq(30);
%task.setMonitorFreq(10);
// //next, start the pilot on his way to mounting the vehicle
// %client.pilotVehicle = true;
// %client.stepMove($player.flyer.position, 0.25, $AIModeMountVehicle);
}
function AIFollowPath::weight(%task, %client)
{
%task.setWeight(10000);
}
function AIFollowPath::monitor(%task, %client)
{
//messageall(0, " AITraining1Pilot::monitor "@%task.locationIndex);
%group = nameToId(FlightPath);
if(!%task.locationIndex)
%task.locationIndex = 0;
//HACK ALERT!!!
//since the path for this mission is completely straight, always head for the end of the path
//%location = %group.getObject(%task.locationIndex);
%location = %group.getObject(%group.getCount() - 1);
//see if we've mounted yet
if(%client.vehicleMounted)
{
%client.setPilotDestination(%location.position);
//else see if we're close enough to the current destination to choose the next
%pos = %client.vehicleMounted.position;
%pos2D = getWord(%pos, 0) SPC getWord(%pos, 1) SPC "0";
%dest = %group.getObject(%task.locationIndex).position;
%dest2D = getWord(%dest, 0) SPC getWord(%dest, 1) SPC "0";
if (VectorDist(%dest2D, %pos2D) < 20)
{
if(%group.getCount() > %task.locationIndex + 1) {
%task.locationIndex++;
cinematicEvent(%task.locationIndex);
}
//else messageAll(0, "Ride Over");
}
}
else
%client.stepMove($player.flyer.position, 0.25, $AIModeExpress);
}
function PlayGui::onWake(%this)
{
parent::onWake(%this);
//error("Waking training play gui");
// okay we know the victim...erm...player is looking
// and we hope they have a body so lets do this
if(!game.playedIntro) {
game.PlayGuiAwake = true;
beginMission();
}
}
function aiSetLoadout(%client)
{
%client.player.clearInventory();
%client.player.setArmor("heavy");
%client.player.setInventory("Chaingun",1,true);
%client.player.setInventory("ChaingunAmmo",999,true);
%client.player.setInventory("Disc",1,true);
%client.player.setInventory("Discammo",999,true);
%client.player.setInventory("Shocklance",1,true);
%client.player.setInventory("MissileLauncher",1,true);
%client.player.setInventory("MissileLauncherAmmo",999,true);
%client.player.setInventory("Mortar",1,true);
%client.player.setInventory("MortarAmmo",999,true);
%client.player.setInventory("AmmoPack",1,true);
%client.player.use("Mortar");
}
function beginHotZone() //Don't let the game reset itself a bunch of times
{
if (Game.playedIntro)
return;
%spawn = nameToId(introFlyerSP);
$player.flyer = new FlyingVehicle(Flyer) {
position = %spawn.position;
rotation = %spawn.rotation;
scale = "1 1 1";
dataBlock = "HAPCFlyer";
};
%pilot = $teammate0;
game.playedIntro = true;
$player.flyer.pilot = $teammate0;
setTargetSkin(%pilot.target, $teamSkin[$playerTeam]);
%pilot.player.setArmor(light);
%pilot.pilotVehicle = false;
$player.flyer.mountObject(%pilot.player, 0);
%pilot.setControlObject($player.flyer);
%pilot.setPilotPitchRange(-0.2, 0.05, 0.05);
%pilot.addTask(AIFollowPath);
$player.flyer.mountObject($player.player, 1);
$player.flyer.mountObject($teammate1.player, 2);
$player.flyer.mountObject($teammate2.player, 3);
$player.flyer.mountObject($teammate3.player, 4);
$player.flyer.mountObject($teammate4.player, 5);
aiSetLoadout($teammate1);
aiSetLoadout($teammate2);
aiSetLoadout($teammate3);
aiSetLoadout($teammate4);
$player.player.setTransform($player.player.position SPC %spawn.rotation);
$HotZoneBlackout = ServerConnection.schedule(3000, setBlackOut, false, 4000);
//Has to be added after all the bots.. otherwise they die by lava somehow
new WaterBlock(Lava) {
position = "-224 -264 93.1568";
rotation = "1 0 0 0";
scale = "768 608 27.0092";
liquidType = "Lava";
density = "1";
viscosity = "15";
waveMagnitude = "1";
surfaceTexture = "LiquidTiles/Lava";
surfaceOpacity = "1";
envMapTexture = "lava/skies/lava_starrynite_emap";
envMapIntensity = "0.2";
submergeTexture[0] = "special/lavadeath_1";
submergeTexture[1] = "special/lavadeath_2";
removeWetEdges = "1";
locked = "true";
};
}
function MP3Audio::play(%this)
{
//too bad...no mp3 in training
}
function toggleCommanderMap(%val)
{
if ( %val )
messageClient($player, 0, $player.miscMsg[noCC]);
}
function toggleTaskListDlg( %val )
{
if ( %val )
messageClient( $player, 0, $player.miscMsg[noTaskListDlg] );
}
function toggleInventoryHud( %val )
{
if ( %val )
messageClient( $player, 0, $player.miscMsg[noInventoryHUD] );
}
function toggleNetDisplayHud( %val )
{
// Hello, McFly? This is training! There's no net in training!
}
function voiceCapture( %val )
{
// Uh, who do you think you are talking to?
}
function giveall()
{
error("When the going gets tough...wussies like you start cheating!");
messageClient($player, 0, "Cheating eh? What\'s next? Camping?");
}
// get the ball rolling
//------------------------------------------------------------------------------
function startCurrentMission()
{
playGui.add(outerChatHud);
//fade up from black
ServerConnection.setBlackOut(true, 0);
}
//------------------------------------------------------------------------------
function SinglePlayerGame::equip(%game, %player)
{
//ya start with nothing...NOTHING!
%player.clearInventory();
for(%i =0; %i<$InventoryHudCount; %i++)
%player.client.setInventoryHudItem($InventoryHudData[%i, itemDataName], 0, 1);
%player.client.clearBackpackIcon();
%set = %player.client.equipment;
echo("using default equipment");
%player.setArmor("Light");
%player.setInventory(RepairKit,1);
%player.setInventory(Chaingun, 1);
%player.setInventory(ChaingunAmmo, 100);
%player.setInventory(Disc,1);
%player.setInventory(DiscAmmo, 20);
%player.setInventory(Shocklance, 1);
%player.setInventory(AmmoPack, 1);
//DefaultGame.cs does not assign flamer..
%player.setInventory(flamer, 1);
%player.weaponCount = 4;
%player.use(Chaingun);
}
function spawnSinglePlayer()
{
resetWildCat();
parent::spawnSinglePlayer();
}
function singlePlayerGame::onAIRespawn(%game, %client)
{
// DONT add the default tasks
//error("default tasks not added");
}
function singlePlayerGame::playerSpawned(%game, %player)
{
parent::playerSpawned(%game, %player);
}
function singlePlayerGame::gameOver(%game)
{
//enable the voice chat menu again...
if (isObject(training1BlockMap))
{
training1BlockMap.pop();
training1BlockMap.delete();
}
if(HelpTextGui.isVisible())
helpTextGui.setVisible(false);
//re-enable the use of the settings button...
SinglePlayerEscSettingsBtn.setActive(1);
Parent::gameOver();
}
function trainingPreloads() //Load any skins..
{
navGraph.preload("skins/Gecko.lbioderm", true);
navGraph.preload("skins/Gecko.mbioderm", true);
navGraph.preload("skins/Gecko.hbioderm", true);
navGraph.preload("skins/base.lbioderm", true);
navGraph.preload("skins/HALO_Skin.lbioderm", true);
navGraph.preload("skins/HALO_Skin.mbioderm", true);
navGraph.preload("skins/HALO_Skin.hbioderm", true);
navGraph.preload("skins/sensor_pulse_large", true);
navGraph.preload("skins/base.hmale", false);
navGraph.preload("skins/beagle.hmale", false);
navGraph.preload("skins/base.mmale", false);
navGraph.preload("skins/beagle.mmale", false);
navGraph.preload("skins/base.lmale", false);
navGraph.preload("skins/swolf.mmale", false);
navGraph.preload("skins/beagle.lmale", false);
}
function SinglePlayerGame::missionLoadDone(%game)
{
Parent::missionLoadDone(%game);
trainingPreloads();
}
function serverCmdBuildClientTask(%client, %task, %team)
{
// player shouldnt be able to use the voice commands to do anything
}
};
package vehicleHack
{
function AIConnection::isMountingVehicle(%client){ return true; }
};
activatePackage(vehicleHack);
function setActionThread(%player,%anim,%bool)
{
%player.setActionThread(%anim,%bool);
}

1204
missions/Deployment.mis Normal file

File diff suppressed because it is too large Load diff

44
missions/Earth.cs Normal file
View file

@ -0,0 +1,44 @@
package Earth
{
function defineGeneralAI()
{
$Bot[0,"Name"] = "Jake Marvin";
$Bot[0,"Race"] = "Human";
$Bot[0,"Sex"] = "Male";
$Bot[0,"Skin"] = "Beagle";
$Bot[0,"Voice"] = "Male1";
$Bot[0,"VoicePitch"] = 1;
$Bot[0,"Team"] = 1;
$Bot[0,"Weapons"] = "Chaingun Disc Shocklance";
$Bot[0,"Pack"] = "AmmoPack";
$Bot[0,"Armor"] = "Light";
$Bot[0,"Objectives"] = false;
$Bot[0,"Ammo"] = "200 20 0";
$Bot[0,"RepairKits"] = 2;
$Bot[0,"Mines"] = 3;
$Bot[0,"Grenades"] = 3;
$Bot[0,"Transform"] = "442.099 -133.969 117.073 0 0 1 221.735";
$Bot[0,"Health"] = 1;
$Bot[1,"Name"] = "Luke Maverick";
$Bot[1,"Race"] = "Human";
$Bot[1,"Sex"] = "Male";
$Bot[1,"Skin"] = "Storm";
$Bot[1,"Voice"] = "Male3";
$Bot[1,"VoicePitch"] = 1;
$Bot[1,"Team"] = 1;
$Bot[1,"Weapons"] = "Blaster Shocklance";
$Bot[1,"Pack"] = "MiningTool";
$Bot[1,"UsePack"] = true;
$Bot[1,"Armor"] = "Light";
$Bot[1,"Objectives"] = false;
$Bot[1,"Ammo"] = "";
$Bot[1,"RepairKits"] = 2;
$Bot[1,"Mines"] = 0;
$Bot[1,"Grenades"] = 0;
$Bot[1,"Transform"] = "-1051.55 483.736 134.086 0 0 1 173.942";
$Bot[1,"Health"] = 1;
$BotCount = 2;
}
};

1564
missions/Earth.mis Normal file

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,36 @@
//Example for map Script
package Example //Must be our mission name for package to activate before the functions are called.
{
function defineGeneralAI() //Called to load all general AI's for this map -- will be moved so it's stored in a BASIC file
{
//These arrays are for general bots
$Bot[0,"Name"] = "A bot.";
$Bot[0,"Race"] = "Human";
//Very important or the console will get spammed.
//Bioderms and Criollos MUST be Male.
//Draakans can be types A, B, or C.
$Bot[0,"Sex"] = "Male";
$Bot[0,"Skin"] = "Beagle"; //Skin. Don't use the actual team name. (Blood Eagle for example)
$Bot[0,"Voice"] = "Male1"; //Voice. Don't use the fancy name (Psycho for example).
$Bot[0,"VoicePitch"] = 1;
$Bot[0,"Team"] = 1; //Human
$Bot[0,"Weapons"] = "Chaingun Disc Shocklance"; //List the weapons with spaces. The first weapon listed will be the one he has out on spawn.
$Bot[0,"Pack"] = "AmmoPack";
//The ammo for each weapon in "Weapons", make sure it's in the same spot in the string as the weapon.
//If the weapon doesn't use ammo, just place a zero.
$Bot[0,"Ammo"] = "200 30 0";
$Bot[0,"RepairKits"] = 1; //Yea.. rep kits
$Bot[0,"Mines"] = 1; //Mines!!
$Bot[0,"Grenades"] = 3; //Grenades. I'll make it so you can tell which kind of nades.
$Bot[0,"Transform"] = "0 0 0 1 0 0 0"; //First 3 numbers are the position. The rest is the rotation.
//These are for detailing on the bots.. shouldn't really be used unless you got a good reason to.
$Bot[0,"Health"] = 1; //I'm pretty sure 1 is the max for all armors.
$BotCount = 1; //Tell the game how many general AI's there are.
}
};
//You don't have to activate this package yourself, the game activates it just before loading AI's

370
missions/HotZone.cs Normal file
View file

@ -0,0 +1,370 @@
// don't want this executing when building graphs
if($OFFLINE_NAV_BUILD)
return;
// Script for Training
//===================================================================================
//error("Training 1 script");
//Note: Quite messy right now.. I'll organize when it's done
// package and callbacks
activatePackage(HotZone);
// variables
$numberOfEnemies[1] = 0;
$numberOfEnemies[2] = 0;
$numberOfEnemies[3] = 0;
$numberOfTeammates = 5;
$missionBotSkill[1] = 0.0;
$missionBotSkill[2] = 0.4;
$missionBotSkill[3] = 0.7;
// additional mission Audio
datablock AudioProfile(HeartbeatSound)
{
filename = "fx/misc/heartbeat.wav";
description = Audio2D;
preload = true;
looping = false;
};
package HotZone {
//BEGIN TRAINING PACKAGE =======================================================================
function SinglePlayerGame::initGameVars(%game)
{
echo("initializing training1 game vars");
}
function getTeammateGlobals()
{
$TeammateWarnom0 = "Raptor";
$teammateskill0 = 0.5;
$teammateVoice0 = Derm3;
$teammateEquipment0 = 0;
$teammateGender0 = A;
$TeammateWarnom1 = "Cobra";
$teammateSkill1 = 0.5;
$teammateVoice1 = Derm3;
$teammateEquipment1 = 0;
$teammateGender1 = C;
$TeammateWarnom2 = "Sharp Tooth";
$teammateSkill2 = 0.5;
$teammateVoice2 = Derm3;
$teammateEquipment2 = 0;
$teammateGender2 = A;
$TeammateWarnom3 = "Snake";
$teammateSkill3 = 0.5;
$teammateVoice3 = Derm3;
$teammateEquipment3 = 0;
$teammateGender3 = A;
$TeammateWarnom4 = "Gila";
$teammateSkill4 = 0.5;
$teammateVoice4 = Derm3;
$teammateEquipment4 = 0;
$teammateGender4 = B;
}
function AIFollowPath::assume(%task, %client)
{
%task.setWeightFreq(30);
%task.setMonitorFreq(10);
// //next, start the pilot on his way to mounting the vehicle
// %client.pilotVehicle = true;
// %client.stepMove($player.flyer.position, 0.25, $AIModeMountVehicle);
}
function AIFollowPath::weight(%task, %client)
{
%task.setWeight(10000);
}
function AIFollowPath::monitor(%task, %client)
{
//messageall(0, " AITraining1Pilot::monitor "@%task.locationIndex);
%group = nameToId(FlightPath);
if(!%task.locationIndex)
%task.locationIndex = 0;
//HACK ALERT!!!
//since the path for this mission is completely straight, always head for the end of the path
//%location = %group.getObject(%task.locationIndex);
%location = %group.getObject(%group.getCount() - 1);
//see if we've mounted yet
if(%client.vehicleMounted)
{
%client.setPilotDestination(%location.position);
//else see if we're close enough to the current destination to choose the next
%pos = %client.vehicleMounted.position;
%pos2D = getWord(%pos, 0) SPC getWord(%pos, 1) SPC "0";
%dest = %group.getObject(%task.locationIndex).position;
%dest2D = getWord(%dest, 0) SPC getWord(%dest, 1) SPC "0";
if (VectorDist(%dest2D, %pos2D) < 20)
{
if(%group.getCount() > %task.locationIndex + 1) {
%task.locationIndex++;
cinematicEvent(%task.locationIndex);
}
//else messageAll(0, "Ride Over");
}
}
else
%client.stepMove($player.flyer.position, 0.25, $AIModeExpress);
}
function PlayGui::onWake(%this)
{
parent::onWake(%this);
//error("Waking training play gui");
// okay we know the victim...erm...player is looking
// and we hope they have a body so lets do this
if(!game.playedIntro) {
game.PlayGuiAwake = true;
beginHotZone();
}
}
function aiSetLoadout(%client)
{
%client.player.clearInventory();
%client.player.setArmor("heavy");
%client.player.setInventory("Chaingun",1,true);
%client.player.setInventory("ChaingunAmmo",999,true);
%client.player.setInventory("Disc",1,true);
%client.player.setInventory("Discammo",999,true);
%client.player.setInventory("Shocklance",1,true);
%client.player.setInventory("MissileLauncher",1,true);
%client.player.setInventory("MissileLauncherAmmo",999,true);
%client.player.setInventory("Mortar",1,true);
%client.player.setInventory("MortarAmmo",999,true);
%client.player.setInventory("AmmoPack",1,true);
%client.player.use("Mortar");
}
function beginHotZone() //Don't let the game reset itself a bunch of times
{
if (Game.playedIntro)
return;
%spawn = nameToId();
$player.flyer = new FlyingVehicle(Flyer) {
position = %spawn.position;
rotation = %spawn.rotation;
scale = "1 1 1";
dataBlock = "HAPCFlyer";
};
%pilot = $teammate0;
game.playedIntro = true;
$player.flyer.pilot = $teammate0;
setTargetSkin(%pilot.target, $teamSkin[$playerTeam]);
%pilot.player.setArmor(light);
%pilot.pilotVehicle = false;
$player.flyer.mountObject(%pilot.player, 0);
%pilot.setControlObject($player.flyer);
%pilot.setPilotPitchRange(-0.2, 0.05, 0.05);
%pilot.addTask(AIFollowPath);
$player.flyer.mountObject($player.player, 1);
$player.flyer.mountObject($teammate1.player, 2);
$player.flyer.mountObject($teammate2.player, 3);
$player.flyer.mountObject($teammate3.player, 4);
$player.flyer.mountObject($teammate4.player, 5);
aiSetLoadout($teammate1);
aiSetLoadout($teammate2);
aiSetLoadout($teammate3);
aiSetLoadout($teammate4);
$player.player.setTransform($player.player.position SPC %spawn.rotation);
$HotZoneBlackout = ServerConnection.schedule(3000, setBlackOut, false, 4000);
//Has to be added after all the bots.. otherwise they die by lava somehow
new WaterBlock(Lava) {
position = "-224 -264 93.1568";
rotation = "1 0 0 0";
scale = "768 608 27.0092";
liquidType = "Lava";
density = "1";
viscosity = "15";
waveMagnitude = "1";
surfaceTexture = "LiquidTiles/Lava";
surfaceOpacity = "1";
envMapTexture = "lava/skies/lava_starrynite_emap";
envMapIntensity = "0.2";
submergeTexture[0] = "special/lavadeath_1";
submergeTexture[1] = "special/lavadeath_2";
removeWetEdges = "1";
locked = "true";
};
}
function MP3Audio::play(%this)
{
//too bad...no mp3 in training
}
function toggleCommanderMap(%val)
{
if ( %val )
messageClient($player, 0, $player.miscMsg[noCC]);
}
function toggleTaskListDlg( %val )
{
if ( %val )
messageClient( $player, 0, $player.miscMsg[noTaskListDlg] );
}
function toggleInventoryHud( %val )
{
if ( %val )
messageClient( $player, 0, $player.miscMsg[noInventoryHUD] );
}
function toggleNetDisplayHud( %val )
{
// Hello, McFly? This is training! There's no net in training!
}
function voiceCapture( %val )
{
// Uh, who do you think you are talking to?
}
function giveall()
{
error("When the going gets tough...wussies like you start cheating!");
messageClient($player, 0, "Cheating eh? What\'s next? Camping?");
}
// get the ball rolling
//------------------------------------------------------------------------------
function startCurrentMission()
{
playGui.add(outerChatHud);
//fade up from black
ServerConnection.setBlackOut(true, 0);
}
//------------------------------------------------------------------------------
function SinglePlayerGame::equip(%game, %player)
{
//ya start with nothing...NOTHING!
%player.clearInventory();
for(%i =0; %i<$InventoryHudCount; %i++)
%player.client.setInventoryHudItem($InventoryHudData[%i, itemDataName], 0, 1);
%player.client.clearBackpackIcon();
%set = %player.client.equipment;
echo("using default equipment");
%player.setArmor("Light");
%player.setInventory(RepairKit,1);
%player.setInventory(Chaingun, 1);
%player.setInventory(ChaingunAmmo, 100);
%player.setInventory(Disc,1);
%player.setInventory(DiscAmmo, 20);
%player.setInventory(Shocklance, 1);
%player.setInventory(AmmoPack, 1);
//DefaultGame.cs does not assign flamer..
%player.setInventory(flamer, 1);
%player.weaponCount = 4;
%player.use(Chaingun);
}
function spawnSinglePlayer()
{
resetWildCat();
parent::spawnSinglePlayer();
}
function singlePlayerGame::onAIRespawn(%game, %client)
{
// DONT add the default tasks
//error("default tasks not added");
}
function singlePlayerGame::playerSpawned(%game, %player)
{
parent::playerSpawned(%game, %player);
}
function singlePlayerGame::gameOver(%game)
{
//enable the voice chat menu again...
if (isObject(training1BlockMap))
{
training1BlockMap.pop();
training1BlockMap.delete();
}
if(HelpTextGui.isVisible())
helpTextGui.setVisible(false);
//re-enable the use of the settings button...
SinglePlayerEscSettingsBtn.setActive(1);
Parent::gameOver();
}
function trainingPreloads() //Load any skins..
{
navGraph.preload("skins/Gecko.lbioderm", true);
navGraph.preload("skins/Gecko.mbioderm", true);
navGraph.preload("skins/Gecko.hbioderm", true);
navGraph.preload("skins/base.lbioderm", true);
navGraph.preload("skins/HALO_Skin.lbioderm", true);
navGraph.preload("skins/HALO_Skin.mbioderm", true);
navGraph.preload("skins/HALO_Skin.hbioderm", true);
navGraph.preload("skins/sensor_pulse_large", true);
navGraph.preload("skins/base.hmale", false);
navGraph.preload("skins/beagle.hmale", false);
navGraph.preload("skins/base.mmale", false);
navGraph.preload("skins/beagle.mmale", false);
navGraph.preload("skins/base.lmale", false);
navGraph.preload("skins/swolf.mmale", false);
navGraph.preload("skins/beagle.lmale", false);
}
function SinglePlayerGame::missionLoadDone(%game)
{
Parent::missionLoadDone(%game);
trainingPreloads();
}
function serverCmdBuildClientTask(%client, %task, %team)
{
// player shouldnt be able to use the voice commands to do anything
}
};
package vehicleHack
{
function AIConnection::isMountingVehicle(%client){ return true; }
};
activatePackage(vehicleHack);
function setActionThread(%player,%anim,%bool)
{
%player.setActionThread(%anim,%bool);
}

1928
missions/Hotzone.mis Normal file

File diff suppressed because it is too large Load diff

885
missions/KatabaticSV.mis Normal file
View file

@ -0,0 +1,885 @@
// DisplayName = Katabatic
// MissionTypes = SV
//--- MISSION QUOTE BEGIN ---
// Infinity is the sum of all numbers.
// -- Dark Dragon DX
//--- MISSION QUOTE END ---
//--- MISSION STRING BEGIN ---
// How long will YOU survive?
//--- MISSION STRING END ---
//--- OBJECT WRITE BEGIN ---
new SimGroup(MissionGroup) {
powerCount = "0";
musicTrack = "ice";
CTF_scoreLimit = "8";
cdTrack = "5";
new MissionArea(MissionArea) {
area = "-896 -696 1504 1392";
flightCeiling = "300";
flightCeilingRange = "20";
locked = "true";
};
new Sky(Sky) {
position = "0 0 0";
rotation = "1 0 0 0";
scale = "1 1 1";
cloudHeightPer[0] = "0.349971";
cloudHeightPer[1] = "0.25";
cloudHeightPer[2] = "0.199973";
cloudSpeed1 = "0.0001";
cloudSpeed2 = "0.0002";
cloudSpeed3 = "0.0003";
visibleDistance = "500";
useSkyTextures = "1";
renderBottomTexture = "0";
SkySolidColor = "0.365000 0.390000 0.420000 0.000000";
fogDistance = "400";
fogColor = "0.650000 0.650000 0.700000 1.000000";
fogVolume1 = "450 0 100";
fogVolume2 = "400 100 250";
fogVolume3 = "0 0 0";
materialList = "sky_ice_blue.dml";
windVelocity = "1 0 0";
windEffectPrecipitation = "0";
fogVolumeColor1 = "128.000000 128.000000 128.000000 -0.000000";
fogVolumeColor2 = "128.000000 128.000000 128.000000 0.000000";
fogVolumeColor3 = "128.000000 128.000000 128.000000 0.000000";
high_visibleDistance = "-1";
high_fogDistance = "-1";
high_fogVolume1 = "-1 -7.46981 -8.15131e+06";
high_fogVolume2 = "-1 -1.30796e-32 -2.39155e+36";
high_fogVolume3 = "-1 -1.87939e-07 8041.65";
cloudSpeed0 = "0.000000 0.000000";
locked = "true";
};
new Sun() {
position = "0 0 0";
rotation = "1 0 0 0";
scale = "1 1 1";
direction = "0.57735 0.57735 -0.57735";
color = "0.700000 0.700000 0.700000 1.000000";
ambient = "0.400000 0.400000 0.400000 1.000000";
texture[0] = "special/sunFlare";
texture[1] = "special/sunFlare02";
texture[2] = "special/LensFlare/flare01";
texture[3] = "special/LensFlare/flare02";
texture[4] = "special/LensFlare/flare03";
lensFlareScale = "0.7";
lensFlareIntensity = "1";
frontFlareSize = "300";
backFlareSize = "450";
flareColor = "1.000000 1.000000 1.000000 1.000000";
locked = "true";
};
new Precipitation(Precipitation) {
position = "0 0 0";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "Snow";
lockCount = "0";
homingCount = "0";
percentage = "1";
color1 = "1.000000 1.000000 1.000000 1.000000";
color2 = "-1.000000 0.000000 0.000000 1.000000";
color3 = "-1.000000 0.000000 0.000000 1.000000";
offsetSpeed = "0.25";
minVelocity = "0.25";
maxVelocity = "1.5";
maxNumDrops = "2000";
maxRadius = "125";
locked = "true";
};
new TerrainBlock(Terrain) {
rotation = "1 0 0 0";
scale = "1 1 1";
detailTexture = "details/snowdet2";
terrainFile = "Katabatic.ter";
squareSize = "8";
locked = "true";
position = "-1024 -1024 0";
};
new NavigationGraph(NavGraph) {
conjoinAngleDev = "75";
cullDensity = "0.1";
customArea = "0 0 0 0";
coverage = "0";
scale = "1 1 1";
locked = "true";
position = "0 0 0 1";
conjoinBowlDev = "20";
GraphFile = "KatabaticSV.nav";
rotation = "0 0 0 0";
};
new SimGroup(ObserverDropPoints) {
powerCount = "0";
new Camera(Camera01) {
position = "-155.439 207.989 143.178";
rotation = "0.0488457 -0.239805 0.969592 157.656";
scale = "1 1 1";
dataBlock = "Observer";
lockCount = "0";
homingCount = "0";
locked = "1";
team = "1";
};
new Camera(Camera02) {
position = "-135.432 113.485 88.9461";
rotation = "0.616067 -0.0338559 0.786966 7.98918";
scale = "1 1 1";
dataBlock = "Observer";
lockCount = "0";
homingCount = "0";
locked = "1";
team = "1";
};
};
new SimGroup(Teams) {
powerCount = "0";
new SimGroup(Team1) {
powerCount = "0";
new SimGroup(spawnspheres) {
powerCount = "0";
new SpawnSphere() {
position = "-133.456 141.629 83.7518";
rotation = "0 0 1 44.6907";
scale = "1 1 1";
dataBlock = "SpawnSphereMarker";
lockCount = "0";
homingCount = "0";
radius = "50";
sphereWeight = "100";
indoorWeight = "100";
outdoorWeight = "100";
locked = "1";
};
};
new SimGroup(base0) {
new InteriorInstance() {
position = "-133.456 141.629 83.7518";
rotation = "0 0 1 44.6907";
scale = "1 1 1";
interiorFile = "splat7.dif";
showTerrainInside = "0";
locked = "1";
};
new StaticShape(TeamGeneratorLarge1) {
position = "-132.109 145.682 69.7085";
rotation = "1 0 0 0";
scale = "1 1 1";
nameTag = "Power";
dataBlock = "GeneratorLarge";
lockCount = "0";
homingCount = "0";
Target = "75";
locked = "1";
};
new Item() {
position = "-133.456 141.629 83.7716";
rotation = "0 0 1 44.6907";
scale = "1 1 1";
dataBlock = "RepairPack";
lockCount = "0";
homingCount = "0";
collideable = "1";
static = "0";
rotate = "0";
Target = "-1";
locked = "1";
};
new StaticShape(TeamStationInventory1) {
position = "-143.098 131.817 83.786";
rotation = "0 0 1 225.172";
scale = "1 1 1";
nameTag = "Main";
dataBlock = "StationInventory";
lockCount = "0";
homingCount = "0";
Target = "33";
locked = "1";
Trigger = "10063";
};
new StaticShape(TeamStationInventory2) {
position = "-123.723 151.291 83.7518";
rotation = "0 0 1 42.9718";
scale = "1 1 1";
nameTag = "Main";
dataBlock = "StationInventory";
lockCount = "0";
homingCount = "0";
Target = "34";
locked = "1";
Trigger = "10239";
};
new WayPoint() {
position = "-133.456 141.629 83.762";
rotation = "0 0 1 44.6907";
scale = "1 1 1";
dataBlock = "WayPointMarker";
lockCount = "0";
homingCount = "0";
name = "HeadQuarters";
team = "1";
locked = "1";
};
};
new SimGroup(AIObjectives) {
new AIObjective(AIORepairObject) {
position = "-131.844 143.743 71.1518";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "AIObjectiveMarker";
lockCount = "0";
homingCount = "0";
description = "Repair the GeneratorLarge";
targetObject = "TeamGeneratorLarge1";
targetClientId = "-1";
targetObjectId = "8436";
location = "-131.844 143.743 71.1518";
weightLevel1 = "3200";
weightLevel2 = "1600";
weightLevel3 = "0";
weightLevel4 = "0";
offense = "0";
defense = "1";
equipment = "RepairPack";
buyEquipmentSet = "MediumRepairSet";
issuedByHuman = "0";
issuedByClientId = "-1";
forceClientId = "-1";
locked = "0";
};
new AIObjective(AIOAttackObject) {
position = "-131.844 143.743 71.1518";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "AIObjectiveMarker";
lockCount = "0";
homingCount = "0";
description = "Attack the GeneratorLarge";
targetObject = "TeamGeneratorLarge1";
targetClientId = "-1";
targetObjectId = "8436";
location = "-131.844 143.743 71.1518";
weightLevel1 = "3100";
weightLevel2 = "1600";
weightLevel3 = "0";
weightLevel4 = "0";
offense = "1";
defense = "0";
desiredEquipment = "ShieldPack";
buyEquipmentSet = "HeavyAmmoSet";
issuedByHuman = "0";
issuedByClientId = "-1";
forceClientId = "-1";
locked = "0";
};
new AIObjective(AIODefendLocation) {
position = "-131.844 143.743 71.1518";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "AIObjectiveMarker";
lockCount = "0";
homingCount = "0";
description = "Defend the GeneratorLarge";
targetObject = "TeamGeneratorLarge1";
targetClientId = "-1";
targetObjectId = "8436";
location = "-131.844 143.743 71.1518";
weightLevel1 = "3100";
weightLevel2 = "1500";
weightLevel3 = "0";
weightLevel4 = "0";
offense = "0";
defense = "1";
desiredEquipment = "ShieldPack Plasma PlasmaAmmo";
buyEquipmentSet = "HeavyShieldSet";
issuedByHuman = "0";
issuedByClientId = "-1";
forceClientId = "-1";
locked = "0";
};
new AIObjective(AIORepairObject) {
position = "-143.098 131.817 85.3518";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "AIObjectiveMarker";
lockCount = "0";
homingCount = "0";
description = "Repair the StationInventory";
targetObject = "TeamStationInventory1";
targetClientId = "-1";
targetObjectId = "10062";
location = "-143.098 131.817 85.3518";
weightLevel1 = "2900";
weightLevel2 = "1400";
weightLevel3 = "0";
weightLevel4 = "0";
offense = "0";
defense = "1";
equipment = "RepairPack";
buyEquipmentSet = "MediumRepairSet";
issuedByHuman = "0";
issuedByClientId = "-1";
forceClientId = "-1";
locked = "0";
};
new AIObjective(AIOAttackObject) {
position = "-143.098 131.817 85.3518";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "AIObjectiveMarker";
lockCount = "0";
homingCount = "0";
description = "Attack the StationInventory";
targetObject = "TeamStationInventory1";
targetClientId = "-1";
targetObjectId = "10062";
location = "-143.098 131.817 85.3518";
weightLevel1 = "2900";
weightLevel2 = "1400";
weightLevel3 = "0";
weightLevel4 = "0";
offense = "1";
defense = "0";
desiredEquipment = "ShieldPack";
buyEquipmentSet = "HeavyAmmoSet";
issuedByHuman = "0";
issuedByClientId = "-1";
forceClientId = "-1";
locked = "0";
};
new AIObjective(AIORepairObject) {
position = "-123.723 151.291 85.3176";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "AIObjectiveMarker";
lockCount = "0";
homingCount = "0";
description = "Repair the StationInventory";
targetObject = "TeamStationInventory2";
targetClientId = "-1";
targetObjectId = "10238";
location = "-123.723 151.291 85.3176";
weightLevel1 = "2900";
weightLevel2 = "1400";
weightLevel3 = "0";
weightLevel4 = "0";
offense = "0";
defense = "1";
equipment = "RepairPack";
buyEquipmentSet = "MediumRepairSet";
issuedByHuman = "0";
issuedByClientId = "-1";
forceClientId = "-1";
locked = "0";
};
new AIObjective(AIOAttackObject) {
position = "-123.723 151.291 85.3176";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "AIObjectiveMarker";
lockCount = "0";
homingCount = "0";
description = "Attack the StationInventory";
targetObject = "TeamStationInventory2";
targetClientId = "-1";
targetObjectId = "10238";
location = "-123.723 151.291 85.3176";
weightLevel1 = "2900";
weightLevel2 = "1400";
weightLevel3 = "0";
weightLevel4 = "0";
offense = "1";
defense = "0";
desiredEquipment = "ShieldPack";
buyEquipmentSet = "HeavyAmmoSet";
issuedByHuman = "0";
issuedByClientId = "-1";
forceClientId = "-1";
locked = "0";
};
};
};
new SimGroup(Team2) {
powerCount = "0";
new SimGroup(spawnspheres) {
powerCount = "0";
new SpawnSphere() {
position = "338.722 -170.868 83.0065";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "SpawnSphereMarker";
lockCount = "0";
homingCount = "0";
radius = "70";
sphereWeight = "100";
indoorWeight = "100";
outdoorWeight = "100";
locked = "1";
};
new SpawnSphere() {
position = "-245.736 -43.4338 142.744";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "SpawnSphereMarker";
lockCount = "0";
homingCount = "0";
radius = "50";
sphereWeight = "100";
indoorWeight = "100";
outdoorWeight = "100";
locked = "1";
};
new SpawnSphere() {
position = "-574.01 362.613 76.6507";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "SpawnSphereMarker";
lockCount = "0";
homingCount = "0";
radius = "100";
sphereWeight = "100";
indoorWeight = "100";
outdoorWeight = "100";
locked = "1";
};
new SpawnSphere() {
position = "60.2399 434.126 77.2077";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "SpawnSphereMarker";
lockCount = "0";
homingCount = "0";
radius = "100";
sphereWeight = "100";
indoorWeight = "100";
outdoorWeight = "100";
locked = "1";
};
};
new SimGroup(AIObjectives) {
new AIObjective(AIORepairObject) {
position = "-131.844 143.743 71.1518";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "AIObjectiveMarker";
lockCount = "0";
homingCount = "0";
description = "Repair the GeneratorLarge";
targetObject = "TeamGeneratorLarge1";
targetClientId = "-1";
targetObjectId = "8436";
location = "-131.844 143.743 71.1518";
weightLevel1 = "3200";
weightLevel2 = "1600";
weightLevel3 = "0";
weightLevel4 = "0";
offense = "0";
defense = "1";
equipment = "RepairPack";
buyEquipmentSet = "MediumRepairSet";
issuedByHuman = "0";
issuedByClientId = "-1";
forceClientId = "-1";
locked = "0";
};
new AIObjective(AIOAttackObject) {
position = "-131.844 143.743 71.1518";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "AIObjectiveMarker";
lockCount = "0";
homingCount = "0";
description = "Attack the GeneratorLarge";
targetObject = "TeamGeneratorLarge1";
targetClientId = "-1";
targetObjectId = "8436";
location = "-131.844 143.743 71.1518";
weightLevel1 = "3100";
weightLevel2 = "1600";
weightLevel3 = "0";
weightLevel4 = "0";
offense = "1";
defense = "0";
desiredEquipment = "ShieldPack";
buyEquipmentSet = "HeavyAmmoSet";
issuedByHuman = "0";
issuedByClientId = "-1";
forceClientId = "-1";
locked = "0";
};
new AIObjective(AIODefendLocation) {
position = "-131.844 143.743 71.1518";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "AIObjectiveMarker";
lockCount = "0";
homingCount = "0";
description = "Defend the GeneratorLarge";
targetObject = "TeamGeneratorLarge1";
targetClientId = "-1";
targetObjectId = "8436";
location = "-131.844 143.743 71.1518";
weightLevel1 = "3100";
weightLevel2 = "1500";
weightLevel3 = "0";
weightLevel4 = "0";
offense = "0";
defense = "1";
desiredEquipment = "ShieldPack Plasma PlasmaAmmo";
buyEquipmentSet = "HeavyShieldSet";
issuedByHuman = "0";
issuedByClientId = "-1";
forceClientId = "-1";
locked = "0";
};
new AIObjective(AIORepairObject) {
position = "-143.098 131.817 85.3518";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "AIObjectiveMarker";
lockCount = "0";
homingCount = "0";
description = "Repair the StationInventory";
targetObject = "TeamStationInventory1";
targetClientId = "-1";
targetObjectId = "10062";
location = "-143.098 131.817 85.3518";
weightLevel1 = "2900";
weightLevel2 = "1400";
weightLevel3 = "0";
weightLevel4 = "0";
offense = "0";
defense = "1";
equipment = "RepairPack";
buyEquipmentSet = "MediumRepairSet";
issuedByHuman = "0";
issuedByClientId = "-1";
forceClientId = "-1";
locked = "0";
};
new AIObjective(AIOAttackObject) {
position = "-143.098 131.817 85.3518";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "AIObjectiveMarker";
lockCount = "0";
homingCount = "0";
description = "Attack the StationInventory";
targetObject = "TeamStationInventory1";
targetClientId = "-1";
targetObjectId = "10062";
location = "-143.098 131.817 85.3518";
weightLevel1 = "2900";
weightLevel2 = "1400";
weightLevel3 = "0";
weightLevel4 = "0";
offense = "1";
defense = "0";
desiredEquipment = "ShieldPack";
buyEquipmentSet = "HeavyAmmoSet";
issuedByHuman = "0";
issuedByClientId = "-1";
forceClientId = "-1";
locked = "0";
};
new AIObjective(AIORepairObject) {
position = "-123.723 151.291 85.3176";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "AIObjectiveMarker";
lockCount = "0";
homingCount = "0";
description = "Repair the StationInventory";
targetObject = "TeamStationInventory2";
targetClientId = "-1";
targetObjectId = "10238";
location = "-123.723 151.291 85.3176";
weightLevel1 = "2900";
weightLevel2 = "1400";
weightLevel3 = "0";
weightLevel4 = "0";
offense = "0";
defense = "1";
equipment = "RepairPack";
buyEquipmentSet = "MediumRepairSet";
issuedByHuman = "0";
issuedByClientId = "-1";
forceClientId = "-1";
locked = "0";
};
new AIObjective(AIOAttackObject) {
position = "-123.723 151.291 85.3176";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "AIObjectiveMarker";
lockCount = "0";
homingCount = "0";
description = "Attack the StationInventory";
targetObject = "TeamStationInventory2";
targetClientId = "-1";
targetObjectId = "10238";
location = "-123.723 151.291 85.3176";
weightLevel1 = "2900";
weightLevel2 = "1400";
weightLevel3 = "0";
weightLevel4 = "0";
offense = "1";
defense = "0";
desiredEquipment = "ShieldPack";
buyEquipmentSet = "HeavyAmmoSet";
issuedByHuman = "0";
issuedByClientId = "-1";
forceClientId = "-1";
locked = "0";
};
};
};
new SimGroup(team0) {
powerCount = "0";
new SimGroup(AIObjectives) {
};
};
};
new SimGroup(Landmarks) {
powerCount = "0";
new InteriorInstance(SmallRock) {
position = "4.29272 -678.22 87.0344";
rotation = "0 0 1 40.68";
scale = "1 1 1";
interiorFile = "sspir4.dif";
showTerrainInside = "0";
locked = "true";
};
new InteriorInstance(SmallRock) {
position = "604.674 288.347 95.0202";
rotation = "1 0 0 0";
scale = "1 1 1";
interiorFile = "sspir3.dif";
showTerrainInside = "0";
locked = "true";
};
new InteriorInstance(SmallRock) {
position = "-694.001 688.419 81.4125";
rotation = "0 0 1 68.7549";
scale = "1 1 1";
interiorFile = "sspir4.dif";
showTerrainInside = "0";
locked = "true";
};
new InteriorInstance(SmallRock) {
position = "-882.758 293.23 98.8326";
rotation = "0 0 -1 25.2101";
scale = "1 1 1";
interiorFile = "sspir2.dif";
showTerrainInside = "0";
locked = "true";
};
new InteriorInstance(SmallRock) {
position = "-891.714 -286.207 88.3106";
rotation = "1 0 0 0";
scale = "1 1 1";
interiorFile = "sspir2.dif";
showTerrainInside = "0";
locked = "true";
};
new InteriorInstance(SmallRock) {
position = "-221.53 190.742 77.4905";
rotation = "1 0 0 0";
scale = "1 1 1";
interiorFile = "srock8.dif";
showTerrainInside = "0";
locked = "true";
};
new InteriorInstance(SmallRock) {
position = "-209.718 191.939 80.2187";
rotation = "-0.819622 -0.568812 -0.0683577 80.983";
scale = "1 1 1";
interiorFile = "srock8.dif";
showTerrainInside = "0";
locked = "true";
};
new InteriorInstance(SmallRock) {
position = "-177.352 224.065 77.315";
rotation = "-0.844132 -0.0752246 -0.530831 52.3752";
scale = "1 1 1";
interiorFile = "srock8.dif";
showTerrainInside = "0";
locked = "true";
};
new InteriorInstance(SmallRock) {
position = "-179.65 235.545 77.0884";
rotation = "0.960354 0.139691 0.24126 110.99";
scale = "1 1 1";
interiorFile = "srock8.dif";
showTerrainInside = "0";
locked = "true";
};
new InteriorInstance(SmallRock) {
position = "-106.21 57.7174 78.575";
rotation = "0.632488 0.637505 -0.439938 88.8149";
scale = "1 1 1";
interiorFile = "srock8.dif";
showTerrainInside = "0";
locked = "true";
};
new InteriorInstance(SmallRock) {
position = "-107.599 41.1366 80.8043";
rotation = "1 0 0 135.218";
scale = "1 1 1";
interiorFile = "srock8.dif";
showTerrainInside = "0";
locked = "true";
};
new InteriorInstance(SmallRock) {
position = "-40.5405 106.833 78.0061";
rotation = "-0.785982 0.317479 0.530508 101.895";
scale = "1 1 1";
interiorFile = "srock8.dif";
showTerrainInside = "0";
locked = "true";
};
new InteriorInstance(SmallRock) {
position = "-53.613 125.786 84.5896";
rotation = "-0.729593 -0.471499 -0.495362 81.0287";
scale = "1 1 1";
interiorFile = "srock8.dif";
showTerrainInside = "0";
locked = "true";
};
new InteriorInstance(SmallRock) {
position = "-50.1881 105.939 76.4521";
rotation = "1 0 0 0";
scale = "1 1 1";
interiorFile = "srock7.dif";
showTerrainInside = "0";
locked = "true";
};
new InteriorInstance(SmallRock) {
position = "-58.092 116.907 76.9334";
rotation = "1 0 0 0";
scale = "1 1 1";
interiorFile = "srock6.dif";
showTerrainInside = "0";
locked = "true";
};
new InteriorInstance(SmallRock) {
position = "-93.3823 63.4909 76.8637";
rotation = "1 0 0 205.874";
scale = "1 1 1";
interiorFile = "srock6.dif";
showTerrainInside = "0";
locked = "true";
};
new InteriorInstance(SmallRock) {
position = "-191.544 230.281 76.4113";
rotation = "0 1 0 17.7616";
scale = "1 1 1";
interiorFile = "srock7.dif";
showTerrainInside = "0";
locked = "true";
};
new InteriorInstance(SmallRock) {
position = "-216.399 199.251 77.8031";
rotation = "-0.00419048 -0.594692 -0.803943 94.5913";
scale = "1 1 1";
interiorFile = "srock6.dif";
showTerrainInside = "0";
locked = "true";
};
new InteriorInstance(SmallRock) {
position = "-33.1756 122.498 78.0202";
rotation = "-0.335772 0.927883 -0.162146 125.688";
scale = "1 1 1";
interiorFile = "srock8.dif";
showTerrainInside = "0";
locked = "true";
};
};
new AudioEmitter() {
position = "289.762 209.214 173.677";
rotation = "1 0 0 0";
scale = "1 1 1";
fileName = "fx/environment/moaningwind1.wav";
useProfileDescription = "0";
outsideAmbient = "1";
volume = "1";
isLooping = "1";
is3D = "0";
minDistance = "20";
maxDistance = "1280";
coneInsideAngle = "360";
coneOutsideAngle = "360";
coneOutsideVolume = "1";
coneVector = "0 0 1";
loopCount = "-1";
minLoopGap = "0";
maxLoopGap = "0";
type = "EffectAudioType";
locked = "true";
};
};
//--- OBJECT WRITE END ---

2754
missions/Mission1.mis Normal file

File diff suppressed because it is too large Load diff

2754
missions/Mission2.mis Normal file

File diff suppressed because it is too large Load diff

1260
missions/SlapDashRTS.mis Normal file

File diff suppressed because it is too large Load diff

1262
missions/SlapDashSV.mis Normal file

File diff suppressed because it is too large Load diff

295
missions/Training.mis Normal file
View file

@ -0,0 +1,295 @@
// MissionTypes = SinglePlayer
// DisplayName = Recruit
//--- MISSION BRIEFING BEGIN ---
//I am Raptor, your trainer..
//--- MISSION BRIEFING END ---
// PlanetName = Xeron, 3960 CE
// Bitmap = trn_5draconis
//--- MISSION STRING BEGIN ---
//<spush><font:Univers Condensed:18>OBJECTIVES:<spop>
//<bitmap:bullet_2><lmargin:24>Bleck<lmargin:0>
//--- MISSION STRING END ---
//--- MISSION BLURB BEGIN ---
//In the year 3060 CE, the first Alpha Viper training facility was built. It is now 900 years old on the day of your last training session before the war.
//--- MISSION BLURB END ---
//--- OBJECT WRITE BEGIN ---
new SimGroup(MissionGroup) {
cdTrack = "6";
powerCount = "0";
musicTrack = "desert";
new MissionArea(MissionArea) {
area = "-1024 -1024 2048 2048";
flightCeiling = "4000";
flightCeilingRange = "20";
locked = "true";
};
new SimGroup(Teams) {
powerCount = "0";
new SimGroup(Team1) {
powerCount = "0";
new SimGroup(spawnspheres) {
powerCount = "0";
};
new SimGroup(base0) {
new InteriorInstance() {
position = "415.795 109.654 111.4";
rotation = "0 0 1 139.229";
scale = "1 1 1";
interiorFile = "dbase_nefRaindance.dif";
showTerrainInside = "0";
};
new StaticShape() {
position = "452.967 135.507 98.3632";
rotation = "0 0 -1 40.107";
scale = "1 1 1";
nameTag = "Main";
dataBlock = "GeneratorLarge";
lockCount = "0";
homingCount = "0";
Target = "33";
};
new StaticShape() {
position = "441.541 148.661 98.3793";
rotation = "0 0 1 139.802";
scale = "1 1 1";
nameTag = "Main";
dataBlock = "GeneratorLarge";
lockCount = "0";
homingCount = "0";
Target = "34";
};
new StaticShape() {
position = "453.912 147.716 98.357";
rotation = "0 0 1 229.183";
scale = "1 1 1";
nameTag = "Main";
dataBlock = "GeneratorLarge";
lockCount = "0";
homingCount = "0";
Target = "35";
};
new StaticShape() {
position = "438.218 134.772 120.525";
rotation = "1 0 0 0";
scale = "1 1 1";
nameTag = "Main";
dataBlock = "SensorLargePulse";
lockCount = "0";
homingCount = "0";
Target = "36";
};
};
new SimGroup(dropPoints) {
new SimGroup(respawns) {
new Camera(RaptorSpawn) {
position = "428.742 126.147 99.5136";
rotation = "0 0 1 50.4203";
scale = "1 1 1";
dataBlock = "Observer";
lockCount = "0";
homingCount = "0";
team = "1";
};
new Camera(PlayerSpawn) {
position = "432.421 129.211 99.1953";
rotation = "0 0 1 50.9932";
scale = "1 1 1";
dataBlock = "Observer";
lockCount = "0";
homingCount = "0";
team = "0";
};
new Camera(Spawn01) {
position = "434.675 126.105 99.4532";
rotation = "0 0 1 48.7014";
scale = "1 1 1";
dataBlock = "Observer";
lockCount = "0";
homingCount = "0";
team = "0";
};
new Camera(Spawn02) {
position = "430.299 131.876 99.634";
rotation = "0 0 1 51.5662";
scale = "1 1 1";
dataBlock = "Observer";
lockCount = "0";
homingCount = "0";
team = "0";
};
};
};
};
new SimGroup(team0) {
powerCount = "0";
};
new Sun(Sun) {
position = "0 0 0";
rotation = "1 0 0 0";
scale = "1 1 1";
direction = "0.57735 0.57735 -0.57735";
color = "1.000000 1.000000 1.000000 1.000000";
ambient = "0.500000 0.500000 0.500000 1.000000";
texture[0] = "special/sunFlare";
texture[1] = "special/sunFlare02";
texture[2] = "special/LensFlare/flare01";
texture[3] = "special/LensFlare/flare02";
texture[4] = "special/LensFlare/flare03";
lensFlareScale = "0.7";
lensFlareIntensity = "1";
frontFlareSize = "300";
backFlareSize = "450";
flareColor = "1.000000 1.000000 1.000000 1.000000";
locked = "true";
};
new TerrainBlock(Terrain) {
rotation = "1 0 0 0";
scale = "1 1 1";
detailTexture = "details/lavadet1";
terrainFile = "Training.ter";
squareSize = "8";
emptySquares = "217661 217676 86852 152390 87108 152646 218429 218444 232883 233139 364467 299189 364981 299702 234423";
position = "-1024 -1024 0";
};
new NavigationGraph(NavGraph) {
conjoinAngleDev = "50";
cullDensity = "0.3";
customArea = "0 0 0 0";
rotation = "0 0 0 0";
locked = "true";
scale = "1 1 1";
coverage = "0";
conjoinBowlDev = "20";
GraphFile = "Training.nav";
position = "0 0 0 1";
};
new SimGroup(ObserverDropPoints) {
powerCount = "0";
new Camera() {
position = "0 0 200";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "Observer";
lockCount = "0";
homingCount = "0";
team = "0";
locked = "true";
};
};
new Sky(Sky) {
position = "692 -352 0";
rotation = "1 0 0 0";
scale = "1 1 1";
cloudHeightPer[0] = "0.349971";
cloudHeightPer[1] = "0.25";
cloudHeightPer[2] = "0.199973";
cloudSpeed1 = "0.0001";
cloudSpeed2 = "0.0002";
cloudSpeed3 = "0.0003";
visibleDistance = "550";
useSkyTextures = "1";
renderBottomTexture = "0";
SkySolidColor = "0.300000 0.100000 0.000000 0.800000";
fogDistance = "250";
fogColor = "0.300000 0.100000 0.000000 0.800000";
fogVolume1 = "100 0 85";
fogVolume2 = "600 85 270";
fogVolume3 = "0 0 0";
materialList = "sky_lava_starrynight.dml";
windVelocity = "1 0 0";
windEffectPrecipitation = "0";
fogVolumeColor1 = "128.000000 128.000000 128.000000 0.000000";
fogVolumeColor2 = "128.000000 128.000000 128.000000 0.000000";
fogVolumeColor3 = "128.000000 128.000000 128.000000 0.000000";
high_visibleDistance = "-1";
high_fogDistance = "-1";
high_fogVolume1 = "-1 5.98911e+07 1.03256e-38";
high_fogVolume2 = "-1 4.39735e+21 1.1119e-16";
high_fogVolume3 = "-1 6.71258e+22 1.21749e+22";
locked = "true";
};
};
new SimGroup(RandomOrganics) {
new TSStatic() {
position = "352.297 188.881 160.856";
rotation = "0 0 1 136.364";
scale = "1 1 1";
shapeName = "dorg16.dts";
};
new TSStatic() {
position = "380.548 229.443 175.643";
rotation = "0 0 -1 1.71778";
scale = "1 1 1";
shapeName = "dorg17.dts";
};
new TSStatic() {
position = "333.627 257.188 177.605";
rotation = "1 0 0 0";
scale = "1 1 1";
shapeName = "dorg19.dts";
};
new TSStatic() {
position = "567.086 57.3387 137.477";
rotation = "0 0 1 141.521";
scale = "1 1 1";
shapeName = "dorg16.dts";
};
new TSStatic() {
position = "477.072 -72.6936 150.153";
rotation = "0 0 1 132.353";
scale = "1 1 1";
shapeName = "dorg19.dts";
};
new TSStatic() {
position = "488.239 8.63118 159.288";
rotation = "0 0 1 91.1003";
scale = "1 1 1";
shapeName = "dorg18.dts";
};
new TSStatic() {
position = "558.369 176.842 152.425";
rotation = "0 0 1 27.502";
scale = "1 1 1";
shapeName = "dorg16.dts";
};
};
new SimGroup(environment) {
};
};
//--- OBJECT WRITE END ---
//Execute our mission script.
exec("scripts/Training.cs");

624
missions/rpg_new.mis Normal file
View file

@ -0,0 +1,624 @@
// DisplayName = T2BOL Testing Map
// MissionTypes = RPG
//--- MISSION QUOTE BEGIN ---
// Is it so arrogant to think 'we' as Humans are special?
// -- Dark Dragon DX
//--- MISSION QUOTE END ---
//--- MISSION STRING BEGIN ---
//
// Role play time..?
//
//--- MISSION STRING END ---
//--- OBJECT WRITE BEGIN ---
new SimGroup(MissionGroup) {
cdTrack = "2";
CTF_scoreLimit = "6";
powerCount = "0";
musicTrack = "lush";
CTF_timeLimit = "25";
new MissionArea(MissionArea) {
area = "-512 -384 1040 1040";
flightCeiling = "2000";
flightCeilingRange = "50";
locked = "true";
};
new Sun() {
position = "-1216 -848 0";
rotation = "1 0 0 0";
scale = "1 1 1";
direction = "0.57735 0.57735 -0.57735";
color = "0.600000 0.600000 0.600000 1.000000";
ambient = "0.200000 0.200000 0.200000 1.000000";
texture[0] = "special/sunFlare";
texture[1] = "special/sunFlare02";
texture[2] = "special/LensFlare/flare01";
texture[3] = "special/LensFlare/flare02";
texture[4] = "special/LensFlare/flare03";
lensFlareScale = "0.7";
lensFlareIntensity = "1";
frontFlareSize = "300";
backFlareSize = "450";
flareColor = "1.000000 1.000000 1.000000 1.000000";
locked = "true";
};
new TerrainBlock(Terrain) {
rotation = "1 0 0 0";
scale = "1 1 1";
detailTexture = "details/lushdet1";
terrainFile = "SunDried.ter";
squareSize = "8";
visibleDistance = "1200";
locked = "true";
position = "-1024 -1024 0";
hazeDistance = "250";
};
new NavigationGraph(NavGraph) {
conjoinAngleDev = "45";
cullDensity = "0.3";
customArea = "0 0 0 0";
conjoinBowlDev = "20";
scale = "1 1 1";
coverage = "0";
YDimOverSize = "0";
locked = "true";
GraphFile = "rpg_new.nav";
position = "0 0 0 1";
XDimOverSize = "0";
rotation = "0 0 0 0";
};
new Sky(Sky) {
position = "-1216 -848 0";
rotation = "1 0 0 0";
scale = "1 1 1";
cloudHeightPer[0] = "0.349971";
cloudHeightPer[1] = "0.25";
cloudHeightPer[2] = "0.199973";
cloudSpeed1 = "0.0001";
cloudSpeed2 = "0.0002";
cloudSpeed3 = "0.0003";
visibleDistance = "520";
useSkyTextures = "1";
renderBottomTexture = "0";
SkySolidColor = "0.390000 0.390000 0.390000 0.000000";
fogDistance = "220";
fogColor = "0.500000 0.500000 0.500000 1.000000";
fogVolume1 = "0 0 0";
fogVolume2 = "0 0 0";
fogVolume3 = "0 0 0";
materialList = "Lush_l4.dml";
windVelocity = "1 0 0";
windEffectPrecipitation = "0";
fogVolumeColor1 = "128.000000 128.000000 128.000000 0.000000";
fogVolumeColor2 = "128.000000 128.000000 128.000000 -198748244414614883000000000000000000000.000000";
fogVolumeColor3 = "128.000000 128.000000 128.000000 -222768174765569861000000000000000000000.000000";
high_visibleDistance = "-1";
high_fogDistance = "-1";
high_fogVolume1 = "-1 6.30562e+30 3.20554e-19";
high_fogVolume2 = "-1 -4.21969e-13 -8.95185e-12";
high_fogVolume3 = "-1 1648.2 5.54621e+30";
locked = "true";
cloudSpeed0 = "0.000000 0.000000";
};
new SimGroup(Teams) {
powerCount = "0";
new SimGroup(team0) {
powerCount = "0";
new SimGroup(base0) {
new InteriorInstance() {
position = "-8.70542 359.879 91.1271";
rotation = "1 0 0 0";
scale = "1 1 1";
interiorFile = "bbunk1.dif";
showTerrainInside = "0";
};
new Waypoint() {
datablock = WaypointMarker;
position = "-8.74728 352.561 85.4501";
name = "Store";
team = "0";
};
new Trigger() {
position = "-14.5232 364.273 85.0062";
rotation = "1 0 0 0";
scale = "12.5884 23.0483 10.7122";
dataBlock = "gameTrigger";
lockCount = "0";
homingCount = "0";
polyhedron = "0.0000000 0.0000000 0.0000000 1.0000000 0.0000000 0.0000000 -0.0000000 -1.0000000 -0.0000000 -0.0000000 -0.0000000 1.0000000";
type = "store";
};
new InteriorInstance() {
position = "-113.234 290.899 90.3057";
rotation = "0 0 1 68.7549";
scale = "1 1 1";
interiorFile = "bbunk1.dif";
showTerrainInside = "0";
};
new Waypoint() {
datablock = WaypointMarker;
position = "-120.237 288.166 84.7063";
name = "Bot Factory";
team = "0";
};
new Trigger() {
position = "-126.606 294.343 84.1904";
rotation = "1 0 0 0";
scale = "14.2074 14.4932 4.60823";
dataBlock = "gameTrigger";
lockCount = "0";
homingCount = "0";
polyhedron = "0.0000000 0.0000000 0.0000000 1.0000000 0.0000000 0.0000000 -0.0000000 -1.0000000 -0.0000000 -0.0000000 -0.0000000 1.0000000";
type = "Bstore";
};
new InteriorInstance() {
position = "97.1223 287.612 90.5094";
rotation = "0 0 1 115.165";
scale = "1 1 1";
interiorFile = "bbunk1.dif";
showTerrainInside = "0";
};
new Waypoint() {
datablock = WaypointMarker;
position = "90.3171 290.812 84.9062";
name = "Pet Store";
team = "0";
};
new Trigger() {
position = "81.7358 295.153 84.6062";
rotation = "1 0 0 0";
scale = "13.6906 8.92087 4.52381";
dataBlock = "gameTrigger";
lockCount = "0";
homingCount = "0";
polyhedron = "0.0000000 0.0000000 0.0000000 1.0000000 0.0000000 0.0000000 -0.0000000 -1.0000000 -0.0000000 -0.0000000 -0.0000000 1.0000000";
type = "Pstore";
};
new InteriorInstance(TutInterior) {
position = "-95.3852 355.658 -723.294";
rotation = "1 0 0 0";
scale = "1 1 1";
interiorFile = "pbase_nef_vbase1.dif";
showTerrainInside = "0";
};
};
};
new SimGroup(Team1) {
new SimGroup(spawnspheres) {
new SpawnSphere() {
position = "-108.401 -780.456 101.312";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "SpawnSphereMarker";
lockCount = "0";
homingCount = "0";
radius = "100";
sphereWeight = "100";
indoorWeight = "100";
outdoorWeight = "100";
};
};
new SimGroup(Base0) {
new Trigger() {
position = "-82.2349 -729.56 83.4062";
rotation = "0 0 1 89.9544";
scale = "110.919 61.0573 88.2534";
dataBlock = "GameTrigger";
type = "Human";
};
new InteriorInstance() {
position = "-105.033 -797.673 100.182";
rotation = "0 0 1 193.66";
scale = "1 1 1";
interiorFile = "xbunk9.dif";
showTerrainInside = "0";
};
new StaticShape() {
position = "-108.019 -809.726 102.081";
rotation = "0 0 1 13.751";
scale = "1 1 1";
nameTag = "Main";
dataBlock = "GeneratorLarge";
lockCount = "0";
homingCount = "0";
Target = "33";
};
new StaticShape() {
position = "-104.17 -812.317 102.209";
rotation = "0 0 1 167.303";
scale = "1 1 1";
nameTag = "Main";
dataBlock = "StationInventory";
lockCount = "0";
homingCount = "0";
Target = "34";
Trigger = "9576";
};
new StaticShape() {
position = "-112.385 -809.973 102.178";
rotation = "0 0 1 214.286";
scale = "1 1 1";
nameTag = "Main";
dataBlock = "StationInventory";
lockCount = "0";
homingCount = "0";
Target = "35";
Trigger = "9724";
};
new Turret() {
position = "-106.25 -802.944 108.275";
rotation = "0 0 1 14.897";
scale = "1 1 1";
nameTag = "Main";
dataBlock = "SentryTurret";
lockCount = "0";
homingCount = "0";
initialBarrel = "SentryTurretBarrel";
Target = "36";
};
new Turret() {
position = "-105.637 -798.913 109.928";
rotation = "0 0 1 16.0428";
scale = "1 1 1";
nameTag = "Main";
dataBlock = "TurretBaseLarge";
lockCount = "0";
homingCount = "0";
Target = "37";
};
new StaticShape() {
position = "-101.88 -750.822 99.0965";
rotation = "0 0 1 182.201";
scale = "1 1 1";
nameTag = "Main";
dataBlock = "StationVehiclePad";
lockCount = "0";
homingCount = "0";
Target = "38";
Ready = "1";
station = "10533";
};
new StaticShape() {
position = "-90.657 -768.113 102.36";
rotation = "0 0 1 90.5273";
scale = "1 1 1";
nameTag = "Main";
dataBlock = "StationInventory";
lockCount = "0";
homingCount = "0";
Target = "39";
Trigger = "10756";
};
};
};
new SimGroup(Team2) {
new SimGroup(Base0) {
new StaticShape() {
position = "331.804 93.0886 102.138";
rotation = "0 0 1 90.5273";
scale = "1 1 1";
nameTag = "\x01763";
dataBlock = "StationInventory";
lockCount = "0";
homingCount = "0";
Target = "40";
Trigger = "10923";
};
new StaticShape() {
position = "320.581 110.38 98.8746";
rotation = "0 0 1 182.201";
scale = "1 1 1";
nameTag = "\x01763";
dataBlock = "StationVehiclePad";
lockCount = "0";
homingCount = "0";
Target = "41";
Ready = "1";
station = "10949";
};
new Turret() {
position = "316.824 62.2885 109.706";
rotation = "0 0 1 16.0428";
scale = "1 1 1";
nameTag = "\x01763";
dataBlock = "TurretBaseLarge";
lockCount = "0";
homingCount = "0";
Target = "42";
};
new Trigger() {
position = "349.812 132.225 83.4062";
rotation = "0 0 1 89.9544";
scale = "110.919 61.0573 88.2534";
dataBlock = "GameTrigger";
type = "Bioderm";
};
new Turret() {
position = "316.211 58.2576 108.053";
rotation = "0 0 1 14.897";
scale = "1 1 1";
nameTag = "\x01763";
dataBlock = "SentryTurret";
lockCount = "0";
homingCount = "0";
initialBarrel = "SentryTurretBarrel";
Target = "43";
};
new StaticShape() {
position = "310.076 51.2285 101.956";
rotation = "0 0 1 214.286";
scale = "1 1 1";
nameTag = "\x01763";
dataBlock = "StationInventory";
lockCount = "0";
homingCount = "0";
Target = "44";
Trigger = "10928";
};
new StaticShape() {
position = "318.291 48.8845 101.987";
rotation = "0 0 1 167.303";
scale = "1 1 1";
nameTag = "\x01763";
dataBlock = "StationInventory";
lockCount = "0";
homingCount = "0";
Target = "45";
Trigger = "10930";
};
new StaticShape() {
position = "314.442 51.4755 101.859";
rotation = "0 0 1 13.751";
scale = "1 1 1";
nameTag = "\x01763";
dataBlock = "GeneratorLarge";
lockCount = "0";
homingCount = "0";
Target = "46";
};
new InteriorInstance() {
position = "317.428 63.5286 99.9602";
rotation = "0 0 1 193.66";
scale = "1 1 1";
interiorFile = "xbunk9.dif";
showTerrainInside = "0";
};
};
new SimGroup(spawnspheres) {
new SpawnSphere() {
position = "301.797 84.2394 110.21";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "SpawnSphereMarker";
lockCount = "0";
homingCount = "0";
radius = "100";
sphereWeight = "100";
indoorWeight = "100";
outdoorWeight = "100";
};
};
};
new SimGroup(Team3) {
new SimGroup(Base0) {
new Item() {
position = "-85.4834 641.251 83.9062";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "MiningTool";
lockCount = "0";
homingCount = "0";
collideable = "0";
static = "1";
rotate = "0";
Target = "-1";
team = "0";
locked = "true";
};
new WayPoint() {
position = "-85.5611 641.271 84.0561";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "WayPointMarker";
lockCount = "0";
homingCount = "0";
name = "Free Mining Tool";
team = "3";
locked = "true";
};
new StaticShape() {
position = "-66.4225 643.133 83.5218";
rotation = "1 0 0 0";
scale = "0.711179 1.02006 5.10966";
dataBlock = "MiningBox";
lockCount = "0";
homingCount = "0";
mineral = "Steel";
};
new InteriorInstance(InteriorInstance) {
position = "-61.4344 642.47 84.0561";
rotation = "0 1 0 88.2355";
scale = "0.1 0.1 0.23867";
interiorFile = "prockc.dif";
showTerrainInside = "0";
};
new StaticShape() {
position = "-184.724 660.839 85.3082";
rotation = "-0 0 -1 16.7983";
scale = "1 1 1";
nameTag = "\x01763";
dataBlock = "StationInventory";
lockCount = "0";
homingCount = "0";
Target = "47";
Trigger = "11067";
};
new StaticShape() {
position = "-197.888 644.976 82.0447";
rotation = "0 0 1 74.8754";
scale = "1 1 1";
nameTag = "\x01763";
dataBlock = "StationVehiclePad";
lockCount = "0";
homingCount = "0";
Target = "48";
Ready = "1";
station = "11096";
};
new Turret() {
position = "-150.86 655.711 92.8762";
rotation = "0 0 -1 91.2828";
scale = "1 1 1";
nameTag = "\x01763";
dataBlock = "TurretBaseLarge";
lockCount = "0";
homingCount = "0";
Target = "49";
};
new Turret() {
position = "-146.829 656.326 91.2232";
rotation = "0 0 -1 92.4286";
scale = "1 1 1";
nameTag = "\x01763";
dataBlock = "SentryTurret";
lockCount = "0";
homingCount = "0";
initialBarrel = "SentryTurretBarrel";
Target = "50";
};
new StaticShape() {
position = "-138.292 652.563 85.1262";
rotation = "0 0 1 106.96";
scale = "1 1 1";
nameTag = "\x01763";
dataBlock = "StationInventory";
lockCount = "0";
homingCount = "0";
Target = "51";
Trigger = "11072";
};
new StaticShape() {
position = "-138.501 661.103 85.1572";
rotation = "0 0 1 59.9774";
scale = "1 1 1";
nameTag = "\x01763";
dataBlock = "StationInventory";
lockCount = "0";
homingCount = "0";
Target = "52";
Trigger = "11074";
};
new Trigger() {
position = "-235.766 663.964 83.4062";
rotation = "0 0 -1 12.0321";
scale = "110.919 61.0573 88.2534";
dataBlock = "GameTrigger";
type = "Draakan";
};
new StaticShape() {
position = "-139.828 656.657 85.0292";
rotation = "0 0 -1 93.5746";
scale = "1 1 1";
nameTag = "\x01763";
dataBlock = "GeneratorLarge";
lockCount = "0";
homingCount = "0";
Target = "53";
};
new InteriorInstance() {
position = "-152.224 655.918 83.1302";
rotation = "0 0 1 86.3344";
scale = "1 1 1";
interiorFile = "xbunk9.dif";
showTerrainInside = "0";
};
};
new SimGroup(spawnspheres) {
new SpawnSphere() {
position = "-168.559 631.825 89.4416";
rotation = "1 0 0 0";
scale = "1 1 1";
dataBlock = "SpawnSphereMarker";
lockCount = "0";
homingCount = "0";
radius = "100";
sphereWeight = "100";
indoorWeight = "100";
outdoorWeight = "100";
};
};
};
};
new SimGroup(Ambiance) {
powerCount = "0";
};
new SimGroup(RandomOrganics) {
powerCount = "0";
};
new SimGroup(ObserverDropPoints) {
powerCount = "0";
};
};
//--- OBJECT WRITE END ---
//Define AI spawns
DefineGenericAISpawn("Clerk","Bioderm",0,"Male","Derm3",1,"Horde","Light","-8.73565 352.353 85.4186 0 0 1 3.11681",0);