oolite/Resources/Config/shipdata.plist
cim 3bda2fd0b6 Fix cloaking device mission for new AIs
(pirate AI won't attack if it doesn't have any free cargo hold, so a pack of three Asp pirates needs a bit of encouragement)
2013-10-20 17:53:08 +01:00

3191 lines
79 KiB
Plaintext

{
/* The entries in this file are in the following order:
** Template definitions
** Base ship entries
** Subentity definitions
** Special entity definitions
*
* The use of templates in this file is designed to allow OXP writers
* to make ships based on core Oolite ships, without needing to update
* their OXPs every time the core shipdata changes.
*
* "Replacement" ships, which override the original ships, should
* override the ship entries (e.g. "adder" and "adder-player"), but
* keep the like_ship to the corresponding template entry. Only
* those values which must be different to the original should be
* changed (model and texture, for instance)
*
* "Addition" ships, which provide extra variants, should also
* like_ship the template, but with their own data key
* (e.g. "myoxp-adder"). This will mean that the OXP works as
* expected even in the presence of a replacement OXP.
*
* OXPs should only copy or modify the templates themselves if the
* OXP's purpose is a global change to that parameter (e.g. to make
* all Adder-type ships twice as fast)
*
* Where a ship has multiple variants within Oolite with
* non-cosmetic differences, each variant will have its own
* intermediate template. For backwards-compatibility, new variants
* of existing ships will start off with their like_ship pointing
* towards the base ship, not the base ship template, only moving to
* pointing to the base ship template once OXPs have had some chance
* to catch up.
*
* The use of templates in this way is not generally recommended
* for standalone ship OXPs.
*/
/* Begin templates. OXPs should override these to change the
* behaviour of all ships of a particular type. OXPs should
* like_ship these to produce a new ship variant which is
* independent of any graphical replacement OXPs which are
* installed. */
"oolite_template_adder" =
{
aft_eject_position = "0.0 -4.5 -23.0";
ai_type = "oolite-scavengerAI.js";
auto_ai = yes;
auto_weapons = yes;
cargo_type = "CARGO_NOT_CARGO";
custom_views =
(
{
view_description = "Rear View";
view_orientation = "1.0 0.0 0.0 0.0";
view_position = "0.0 15.0 -100";
weapon_facing = "FORWARD";
},
{
view_description = "Rear Right View";
view_orientation = "0.9239 0.0 0.3827 0.0";
view_position = "70.71 15.0 -70.71";
weapon_facing = "FORWARD";
},
{
view_description = "Right View";
view_orientation = "0.7071 0.0 0.7071 0.0";
view_position = "100.0 15.0 0.0";
weapon_facing = "FORWARD";
},
{
view_description = "Front Right View";
view_orientation = "0.3827 0.0 0.9239 0.0";
view_position = "70.71 15.0 70.71";
weapon_facing = "FORWARD";
},
{
view_description = "Front View";
view_orientation = "0.0 0.0 1.0 0.0";
view_position = "0.0 15.0 100.0";
weapon_facing = "FORWARD";
},
{
view_description = "Front Left View";
view_orientation = "0.3827 0.0 -0.9239 0.0";
view_position = "-70.71 15.0 70.71";
weapon_facing = "FORWARD";
},
{
view_description = "Left View";
view_orientation = "0.7071 0.0 -0.7071 0.0";
view_position = "-100.0 15.0 0.0";
weapon_facing = "FORWARD";
},
{
view_description = "Rear Left View";
view_orientation = "0.9239 0.0 -0.3827 0.0";
view_position = "-70.71 15.0 -70.71";
weapon_facing = "FORWARD";
},
{
view_description = "Top View";
view_orientation = "-0.7071 0.7071 0.0 0.0";
view_position = "0.0 100.0 -10.0";
weapon_facing = "FORWARD";
},
{
view_description = "Bottom View";
view_orientation = "0.0 0.0 0.7071 0.7071";
view_position = "0.0 -100.0 -10.0";
weapon_facing = "FORWARD";
}
);
energy_recharge_rate = 2;
exhaust = ("-5.75 0.0 -22.5 6.0 4.0 1.0", "5.75 0.0 -22.5 6.0 4.0 1.0");
forward_weapon_type = "WEAPON_PULSE_LASER";
fuel = 70;
has_ecm = 0.01;
has_scoop = yes;
hud = "hud-small.plist";
is_template = 1;
likely_cargo = 2;
max_cargo = 5;
max_energy = 85;
max_flight_pitch = 2;
max_flight_roll = 2.8;
max_flight_speed = 240;
max_missiles = 1;
missile_launch_position = "0.0 -2.5 16.0";
missiles = 1;
model = "adder_redux.dat";
name = "Adder";
roles = "trader(0.25) trader-courier(0.5) trader-smuggler pirate-light-fighter(0.25) pirate-independent(0.2) scavenger shuttle hermit-ship";
scoop_position = "0.0 -2.0 -7.5";
thrust = 30;
view_position_aft = "0.0 2.5 -22.5";
view_position_forward = "0.0 2.5 14.0";
view_position_port = "-12.0 1.5 -1.0";
view_position_starboard = "12.0 1.5 -1.0";
weapon_facings = 1;
weapon_position_aft = "0.0 0.0 -22.5";
weapon_position_forward = "0.0 0.0 22.5";
weapon_position_port = "-15.0 0.0 -14.5";
weapon_position_starboard = "15.0 0.0 -14.5";
};
"oolite_template_adder-player" =
{
like_ship = "oolite_template_adder";
is_template = 1;
max_cargo = 2;
roles = "player";
};
"oolite_template_alloy" =
{
ai_type = "dumbAI.plist";
bounty = 1;
cargo_type = "CARGO_ALLOY";
energy_recharge_rate = 0;
forward_weapon_type = "WEAPON_NONE";
heat_insulation = 0.2;
is_template = 1;
max_energy = 1;
max_flight_pitch = 0.5;
max_flight_roll = 0.5;
max_flight_speed = 50;
missiles = 0;
model = "alloy.dat";
name = "Metal fragment";
roles = "alloy";
scan_class = "CLASS_CARGO";
thrust = 0;
materials =
{
"metal.png" =
{
shininess = 20;
specular_color = (0.75, 0.75, 0.8, 1.0);
};
};
};
"oolite_template_anaconda" =
{
aft_eject_position = "0.0 -20.0 -67.0";
aft_weapon_type = "WEAPON_PULSE_LASER";
ai_type = "oolite-traderAI.js";
auto_ai = yes;
auto_weapons = yes;
cargo_type = "CARGO_NOT_CARGO";
custom_views =
(
{
view_description = "Rear View";
view_orientation = "1.0 0.0 0.0 0.0";
view_position = "0.0 30.0 -200.0";
weapon_facing = "FORWARD";
},
{
view_description = "Rear Right View";
view_orientation = "0.9239 0.0 0.3827 0.0";
view_position = "141.42 30.0 -141.42";
weapon_facing = "FORWARD";
},
{
view_description = "Right View";
view_orientation = "0.7071 0.0 0.7071 0.0";
view_position = "200.0 30.0 0.0";
weapon_facing = "FORWARD";
},
{
view_description = "Front Right View";
view_orientation = "0.3827 0.0 0.9239 0.0";
view_position = "141.42 30.0 141.42";
weapon_facing = "FORWARD";
},
{
view_description = "Front View";
view_orientation = "0.0 0.0 1.0 0.0";
view_position = "0.0 30.0 200.0";
weapon_facing = "FORWARD";
},
{
view_description = "Front Left View";
view_orientation = "0.3827 0.0 -0.9239 0.0";
view_position = "-141.42 30.0 141.42";
weapon_facing = "FORWARD";
},
{
view_description = "Left View";
view_orientation = "0.7071 0.0 -0.7071 0.0";
view_position = "-200.0 30.0 0.0";
weapon_facing = "FORWARD";
},
{
view_description = "Rear Left View";
view_orientation = "0.9239 0.0 -0.3827 0.0";
view_position = "-141.42 30.0 -141.42";
weapon_facing = "FORWARD";
},
{
view_description = "Top View";
view_orientation = "-0.7071 0.7071 0.0 0.0";
view_position = "0.0 300.0 -22.0";
weapon_facing = "FORWARD";
},
{
view_description = "Bottom View";
view_orientation = "0.0 0.0 0.7071 0.7071";
view_position = "0.0 -300.0 -22.0";
weapon_facing = "FORWARD";
}
);
energy_recharge_rate = 3;
escort_roles = (
{ role = "escort"; min = -2; max = 2; },
{ role = "escort-medium"; min = 0; max = 4; },
{ role = "escort-heavy"; min = -4; max = 2; },
{ role = ""; min = 0; max = 2; } // spare slots for wandering escorts
);
exhaust = ("-9.8 5.6 -78.5 10.0 10.0 2.0", "9.8 5.6 -78.5 10.0 10.0 2.0");
forward_weapon_type = "WEAPON_PULSE_LASER";
fuel = 70;
has_ecm = 0.95;
has_escape_pod = 0.95;
has_scoop = 0.95;
hud = "hud.plist";
is_template = 1;
likely_cargo = 125;
/* generating 750 TC for NPCs is a waste of time. Assume the
* rest of the theoretical space is passenger cabins, special
* cargoes, etc. TODO?: actually put the passenger cabins in
* and bring this value back up to the real 750 TC
*/
max_cargo = 250;
max_energy = 500;
max_flight_pitch = 0.4;
max_flight_roll = 0.75;
max_flight_speed = 140;
max_missiles = 7;
missile_launch_position = "0.0 -9.0 60.0";
missiles = 7;
model = "anaconda_redux.dat";
name = "Anaconda";
roles = "trader(0.5) trader-courier(0.1)";
scoop_position = "0.0 -30.0 -60";
thrust = 14;
view_position_aft = "0.0 -4.0 -80.0";
view_position_forward = "0.0 -0.5 70.0";
view_position_port = "-2.15 -0.5 70.0";
view_position_starboard = "2.15 -0.5 70.0";
weapon_facings = 15;
weapon_position_aft = "0.0 0.0 -85.0";
weapon_position_forward = "0.0 -4.0 85.0";
weapon_position_port = "-37.5 -4.0 -40.0";
weapon_position_starboard = "37.5 -4.0 -40.0";
};
"oolite_template_anaconda-pirate" =
{
// like_ship = "oolite_template_anaconda";
like_ship = "anaconda"; // will switch to the template after 1.80
is_template = 1;
aft_weapon_type = "WEAPON_BEAM_LASER";
escort_roles = (
{ role = "pirate-light-fighter"; min = 2; max = 2; },
{ role = "pirate-medium-fighter"; min = 2; max = 2; }
);
forward_weapon_type = "WEAPON_BEAM_LASER";
roles = "pirate-heavy-freighter(0.05)";
};
"oolite_template_anaconda-player" =
{
like_ship = "oolite_template_anaconda";
is_template = 1;
max_cargo = 750;
missiles = 3;
roles = "player";
};
"oolite_template_asp" = {
aft_eject_position = "0.0 -8.0 -21.5";
ai_type = "oolite-pirateAI.js";
auto_ai = yes;
auto_weapons = yes;
cargo_type = "CARGO_NOT_CARGO";
custom_views =
(
{
view_description = "Rear View";
view_orientation = "1.0 0.0 0.0 0.0";
view_position = "0.0 20.0 -150.0";
weapon_facing = "FORWARD";
},
{
view_description = "Rear Right View";
view_orientation = "0.9239 0.0 0.3827 0.0";
view_position = "106.06 20.0 -106.06";
weapon_facing = "FORWARD";
},
{
view_description = "Right View";
view_orientation = "0.7071 0.0 0.7071 0.0";
view_position = "150.0 20.0 0.0";
weapon_facing = "FORWARD";
},
{
view_description = "Front Right View";
view_orientation = "0.3827 0.0 0.9239 0.0";
view_position = "106.06 20.0 106.06";
weapon_facing = "FORWARD";
},
{
view_description = "Front View";
view_orientation = "0.0 0.0 1.0 0.0";
view_position = "0.0 20.0 150.0";
weapon_facing = "FORWARD";
},
{
view_description = "Front Left View";
view_orientation = "0.3827 0.0 -0.9239 0.0";
view_position = "-106.06 20.0 106.06";
weapon_facing = "FORWARD";
},
{
view_description = "Left View";
view_orientation = "0.7071 0.0 -0.7071 0.0";
view_position = "-150.0 20.0 0.0";
weapon_facing = "FORWARD";
},
{
view_description = "Rear Left View";
view_orientation = "0.9239 0.0 -0.3827 0.0";
view_position = "-106.06 20.0 -106.06";
weapon_facing = "FORWARD";
},
{
view_description = "Top View";
view_orientation = "-0.7071 0.7071 0.0 0.0";
view_position = "0.0 150.0 -10.0";
weapon_facing = "FORWARD";
},
{
view_description = "Bottom View";
view_orientation = "0.0 0.0 0.7071 0.7071";
view_position = "0.0 -150.0 -10.0";
weapon_facing = "FORWARD";
}
);
energy_recharge_rate = 4;
exhaust = ("0.0 0.0 -35.0 8.0 6.0 1.0");
forward_weapon_type = "WEAPON_BEAM_LASER";
fuel = 70;
has_ecm = 0.85;
has_fuel_injection = 0.5;
has_scoop = 0.99;
has_shield_booster = 0.5;
is_template = 1;
likely_cargo = 0;
max_cargo = 0;
max_energy = 350;
max_flight_pitch = 1;
max_flight_roll = 2;
max_flight_speed = 400;
max_missiles = 1;
missile_launch_position = "0.0 -5.9 17.5";
missiles = 1;
model = "asp_redux.dat";
name = "Asp Mark II";
roles = "trader-courier hunter-medium(0.75) hunter-heavy(0.75) pirate-medium-fighter(0.5) pirate-heavy-fighter(0.5) pirate-interceptor pirate-aegis-raider escort-heavy assassin-heavy asp-pirate";
scoop_position = "0.0 -5.0 -15";
smooth = yes;
thrust = 50;
view_position_aft = "0.0 5.0 -35.0";
view_position_forward = "0.0 5.31 17.5";
view_position_port = "-27.0 5.0 0.0";
view_position_starboard = "27.0 5.0 0.0";
weapon_facings = 3;
weapon_position_aft = "0.0 -5.0 -35.0";
weapon_position_forward = "0.0 0.0 22.5";
weapon_position_port = "-32.5 0.0 -7.0";
weapon_position_starboard = "32.5 0.0 -7.0";
};
"oolite_template_asp-cloaked" =
{
like_ship = "oolite_template_asp";
auto_ai = no;
bounty = 150;
escorts = 2;
escort_role = "asp-pirate";
max_cargo = 5; // needed to encourage an attack
has_ecm = no;
has_cloaking_device = yes;
has_fuel_injection = no;
has_scoop = yes;
has_shield_booster = no;
is_template = 1;
roles = "asp-cloaked";
script = "oolite-cloaking-device-target-ship.js";
};
"oolite_template_asp-player" =
{
like_ship = "oolite_template_asp";
forward_weapon_type = "WEAPON_PULSE_LASER";
is_template = 1;
roles = "player";
};
"oolite_template_asteroid" =
{
ai_type = "dumbAI.plist";
bounty = 10;
cargo_type = "CARGO_NOT_CARGO";
energy_recharge_rate = 0;
debris_role = "boulder";
density = 5;
forward_weapon_type = "WEAPON_NONE";
has_ecm = no;
has_escape_pod = no;
has_scoop = no;
heat_insulation = 5;
is_template = 1;
likely_cargo = 4;
max_energy = 100;
max_flight_pitch = 0.1;
max_flight_roll = 0.1;
max_flight_speed = 0;
missiles = 0;
model = "asteroid.dat";
name = "Asteroid";
roles = "asteroid";
scan_class = "CLASS_ROCK";
smooth = yes;
thrust = 0;
unpiloted = yes;
weapon_energy = 0;
materials =
{
"asteroid.png" =
{
shininess = 2;
specular_color = (0.1, 0.1, 0.1, 1.0);
};
};
};
// Cinders are spawned as debris in post-nova systems.
"oolite_template_cinder" = {
like_ship = "oolite_template_asteroid";
heat_insulation = 10000; // Ridiculously high to survive post-nova environment.
roles = "cinder";
};
"oolite_template_cinder-small" =
{
like_ship = "oolite_template_boulder";
heat_insulation = 10000;
is_template = 1;
roles = "cinder(0.5)";
};
"oolite_template_barrel" =
{
ai_type = "dumbAI.plist";
bounty = 1;
cargo_type = "CARGO_RANDOM";
energy_recharge_rate = 0;
forward_weapon_type = "WEAPON_NONE";
heat_insulation = 0.3;
is_template = 1;
materials =
{
"barrel_metal.png" =
{
shininess = 10;
specular_color = ( 0.3, 0.3, 0.33, 1.0 );
};
"left_metal.png" =
{
shininess = 10;
specular_color = ( 0.3, 0.3, 0.33, 1.0 );
};
};
shaders =
{
"barrel_metal.png" =
{
specular_map = "oolite-barrel-specular.png";
shininess = 60;
specular_color = whiteColor;
};
};
max_energy = 1;
max_flight_pitch = 0.5;
max_flight_roll = 0.5;
max_flight_speed = 50;
missiles = 0;
model = "barrel.dat";
name = "Cargo container";
roles = "cargopod 1t-cargopod";
scan_class = "CLASS_CARGO";
thrust = 0;
unpiloted = yes;
weapon_energy = 0;
};
"oolite_template_boa" =
{
aft_eject_position = "0.0 -15.0 -50.5";
aft_weapon_type = "WEAPON_BEAM_LASER";
ai_type = "oolite-traderAI.js";
auto_ai = yes;
auto_weapons = yes;
cargo_type = "CARGO_NOT_CARGO";
custom_views =
(
{
view_description = "Rear View";
view_orientation = "1.0 0.0 0.0 0.0";
view_position = "0.0 30.0 -200.0";
weapon_facing = "FORWARD";
},
{
view_description = "Rear Right View";
view_orientation = "0.9239 0.0 0.3827 0.0";
view_position = "141.42 30.0 -141.42";
weapon_facing = "FORWARD";
},
{
view_description = "Right View";
view_orientation = "0.7071 0.0 0.7071 0.0";
view_position = "200.0 30.0 0.0";
weapon_facing = "FORWARD";
},
{
view_description = "Front Right View";
view_orientation = "0.3827 0.0 0.9239 0.0";
view_position = "141.42 30.0 141.42";
weapon_facing = "FORWARD";
},
{
view_description = "Front View";
view_orientation = "0.0 0.0 1.0 0.0";
view_position = "0.0 30.0 200.0";
weapon_facing = "FORWARD";
},
{
view_description = "Front Left View";
view_orientation = "0.3827 0.0 -0.9239 0.0";
view_position = "-141.42 30.0 141.42";
weapon_facing = "FORWARD";
},
{
view_description = "Left View";
view_orientation = "0.7071 0.0 -0.7071 0.0";
view_position = "-200.0 30.0 0.0";
weapon_facing = "FORWARD";
},
{
view_description = "Rear Left View";
view_orientation = "0.9239 0.0 -0.3827 0.0";
view_position = "-141.42 30.0 -141.42";
weapon_facing = "FORWARD";
},
{
view_description = "Top View";
view_orientation = "-0.7071 0.7071 0.0 0.0";
view_position = "0.0 210.0 -15.0";
weapon_facing = "FORWARD";
},
{
view_description = "Bottom View";
view_orientation = "0.0 0.0 0.7071 0.7071";
view_position = "0.0 -210.0 -15.0";
weapon_facing = "FORWARD";
}
);
energy_recharge_rate = 3;
escort_roles = (
{ "role" = "escort"; min = 1; max = 3; },
{ "role" = "escort-medium"; min = -2; max = 2; },
{ "role" = "escort-heavy"; min = -3; max = 1; },
{ "role" = ""; min = 0; max = 2; },
);
exhaust = ("0.0 3.67 -56.0 16.0 16.0 2.0");
forward_weapon_type = "WEAPON_PULSE_LASER";
fuel = 70;
has_ecm = 0.75;
has_escape_pod = 0.75;
has_scoop = 0.75;
hud = "hud.plist";
is_template = 1;
likely_cargo = 100;
max_cargo = 125;
max_energy = 450;
max_flight_pitch = 1;
max_flight_roll = 2.8;
max_flight_speed = 240;
max_missiles = 4;
missile_launch_position = "0.0 -15.9 -5.8";
missiles = 4;
model = "boa_redux.dat";
name = "Boa";
roles = "trader";
scoop_position = "0.0 -16.0 -19";
thrust = 36;
view_position_aft = "0.0 20.5 -50.75";
view_position_forward = "0.0 16.25 23.9";
view_position_port = "-7.3 16.25 23.9";
view_position_starboard = "7.3 16.25 23.9";
weapon_facings = 15;
weapon_position_aft = "0.0 11.0 -56.0";
weapon_position_forward = "0.0 8.0 57.5";
weapon_position_port = "-16.25 8.0 11.0";
weapon_position_starboard = "16.25 8.0 11.0";
};
"oolite_template_boa-pirate" =
{
// like_ship = "oolite_template_boa";
like_ship = "boa"; // will switch to the template after 1.80
is_template = 1;
escort_roles = (
{ "role" = "pirate-medium-fighter"; min = 2; max = 2; }
);
forward_weapon_type = "WEAPON_BEAM_LASER";
roles = "pirate-medium-freighter(0.25) pirate-heavy-freighter";
};
"oolite_template_boa-player" =
{
like_ship = "oolite_template_boa";
is_template = 1;
forward_weapon_type = "WEAPON_PULSE_LASER";
roles = "player";
};
"oolite_template_boa-mk2" =
{
aft_eject_position = "0.0 -18.75 -50.75";
aft_weapon_type = "WEAPON_BEAM_LASER";
ai_type = "oolite-traderAI.js";
auto_ai = yes;
auto_weapons = yes;
cargo_type = "CARGO_NOT_CARGO";
custom_views =
(
{
view_description = "Rear View";
view_orientation = "1.0 0.0 0.0 0.0";
view_position = "0.0 30.0 -200.0";
weapon_facing = "FORWARD";
},
{
view_description = "Rear Right View";
view_orientation = "0.9239 0.0 0.3827 0.0";
view_position = "141.42 30.0 -141.42";
weapon_facing = "FORWARD";
},
{
view_description = "Right View";
view_orientation = "0.7071 0.0 0.7071 0.0";
view_position = "200.0 30.0 0.0";
weapon_facing = "FORWARD";
},
{
view_description = "Front Right View";
view_orientation = "0.3827 0.0 0.9239 0.0";
view_position = "141.42 30.0 141.42";
weapon_facing = "FORWARD";
},
{
view_description = "Front View";
view_orientation = "0.0 0.0 1.0 0.0";
view_position = "0.0 30.0 200.0";
weapon_facing = "FORWARD";
},
{
view_description = "Front Left View";
view_orientation = "0.3827 0.0 -0.9239 0.0";
view_position = "-141.42 30.0 141.42";
weapon_facing = "FORWARD";
},
{
view_description = "Left View";
view_orientation = "0.7071 0.0 -0.7071 0.0";
view_position = "-200.0 30.0 0.0";
weapon_facing = "FORWARD";
},
{
view_description = "Rear Left View";
view_orientation = "0.9239 0.0 -0.3827 0.0";
view_position = "-141.42 30.0 -141.42";
weapon_facing = "FORWARD";
},
{
view_description = "Top View";
view_orientation = "-0.7071 0.7071 0.0 0.0";
view_position = "0.0 210.0 -15.0";
weapon_facing = "FORWARD";
},
{
view_description = "Bottom View";
view_orientation = "0.0 0.0 0.7071 0.7071";
view_position = "0.0 -210.0 -15.0";
weapon_facing = "FORWARD";
}
);
energy_recharge_rate = 3.2;
escort_roles = (
{ "role" = "escort"; min = 1; max = 2; },
{ "role" = "escort-medium"; min = 1; max = 2; },
{ "role" = "escort-heavy"; min = -2; max = 2; },
{ "role" = ""; min = 0; max = 2; },
);
exhaust = ("9.75 1.5 -57.5 9.0 9.0 1.5", "-9.75 1.5 -57.5 9.0 9.0 1.5");
forward_weapon_type = "WEAPON_BEAM_LASER";
fuel = 70;
has_ecm = 0.95;
has_escape_pod = yes;
has_scoop = yes;
hud = "hud.plist";
is_template = 1;
likely_cargo = 125;
max_cargo = 175;
max_energy = 525;
max_flight_pitch = 1;
max_flight_roll = 2.5;
max_flight_speed = 312;
max_missiles = 5;
missile_launch_position = "0.0 -6.0 37.0";
missiles = 5;
model = "boa2_redux.dat";
name = "Boa Class Cruiser";
roles = "trader(0.25) trader-courier(0.05)";
scoop_position = "0.0 -20.0 -10.0";
thrust = 40;
view_position_aft = "0.0 22.875 -47.375";
view_position_forward = "0.0 12.5 19.4375";
view_position_port = "-20.67 11.17 -14.67";
view_position_starboard = "20.67 11.17 -14.67";
weapon_facings = 15;
weapon_position_aft = "0.0 8.625 -54.125";
weapon_position_forward = "0.0 8.0 57.5";
weapon_position_port = "-16.25 1.75 0.0";
weapon_position_starboard = "16.25 1.75 0.0";
};
"oolite_template_boa-mk2-pirate" =
{
// like_ship = "oolite_template_boa-mk2";
like_ship = "boa-mk2"; // will switch to the template after 1.80
is_template = 1;
escort_roles = (
{ "role" = "pirate-heavy-fighter"; min = 2; max = 2; }
);
roles = " pirate-heavy-freighter(0.2)";
};
"oolite_template_boa-mk2-player" =
{
like_ship = "oolite_template_boa-mk2";
is_template = 1;
roles = "player";
};
"oolite_template_boulder" =
{
ai_type = "dumbAI.plist";
bounty = 5;
cargo_type = "CARGO_NOT_CARGO";
density = 5;
energy_recharge_rate = 0;
forward_weapon_type = "WEAPON_NONE";
has_ecm = no;
has_escape_pod = no;
has_scoop = no;
is_template = 1;
max_energy = 25;
max_flight_pitch = 0.5;
max_flight_roll = 0.5;
max_flight_speed = 5;
missiles = 0;
model = "boulder.dat";
name = "Boulder";
roles = "boulder";
scan_class = "CLASS_ROCK";
smooth = yes;
thrust = 0;
unpiloted = yes;
weapon_energy = 0;
materials =
{
"asteroid.png" =
{
shininess = 0;
specular_color = (0.0, 0.0, 0.0, 1.0);
};
};
debris_role = "splinter";
heat_insulation = 3;
};
"oolite_template_buoy" =
{
ai_type = "buoyAI.plist";
beacon = "N0100 Navigation Buoy";
beacon_label = "%H Station";
cargo_type = "CARGO_NOT_CARGO";
energy_recharge_rate = 2;
forward_weapon_type = "WEAPON_NONE";
is_template = 1;
max_energy = 250;
max_flight_pitch = 2;
max_flight_roll = 2;
max_flight_speed = 0;
missiles = 0;
model = "buoy.dat";
name = "Navigation Buoy";
roles = "buoy";
thrust = 100;
unpiloted = yes;
smooth = yes;
scan_class = "CLASS_BUOY";
weapon_energy = 0;
materials =
{
"target_metal.png" =
{
shininess = 20;
specular_color = (0.8, 0.83, 0.85, 1.0);
diffuse_color = (0.8, 0.8, 0.8);
ambient_color = (0.75, 0.75, 0.75);
};
};
};
"oolite_template_buoy-witchpoint" =
{
like_ship = "oolite_template_buoy";
is_template = 1;
beacon = "W0100 Navigation Buoy (Witchpoint)";
beacon_label = "Witchpoint";
name = "Witchpoint Beacon";
roles = "buoy-witchpoint";
subentities = (
{
type = "flasher";
position = (0, 0, 60);
frequency = 0.15;
phase = -1;
size = 150;
colors = ({ hue = 60; }, { hue = 30; }, { hue = 30; saturation = 0; brightness = 0.85; });
},
{
type = "flasher";
position = (0, 0, -60);
frequency = 0.15;
phase = 1;
size = 150;
colors = ({ hue = 30; saturation = 0; brightness = 0.85; }, { hue = 60; }, { hue = 30; });
},
{
type = "flasher";
size = 25;
color = { hue = 5; };
frequency = 2;
phase = 0.0;
position = ( 0, 0, 60 );
},
{
type = "flasher";
size = 25;
color = { hue = 5; };
frequency = 2;
phase = 0.0;
position = ( 0, 0, -60 );
}
);
materials =
{
"target_metal.png" =
{
shininess = 15;
specular_color = (0.55, 0.58, 0.6, 1.0);
};
};
};
"oolite_template_cloaking-device" =
{
like_ship = "oolite_template_barrel";
cargo_type = "CARGO_SCRIPTED_ITEM";
is_template = 1;
max_energy = 5;
name = "Unusual cargo container";
roles = "cloaking-device";
script = "oolite-cloaking-device-pod.js";
};
"oolite_template_cobra3" =
{
aft_eject_position = "0.0 15.5 -33.0";
ai_type = "oolite-traderAI.js";
auto_ai = yes;
auto_weapons = yes;
cargo_type = "CARGO_NOT_CARGO";
custom_views =
(
{
view_description = "Rear View";
view_orientation = "1.0 0.0 0.0 0.0";
view_position = "0.0 30.0 -200.0";
weapon_facing = "FORWARD";
},
{
view_description = "Rear Right View";
view_orientation = "0.9239 0.0 0.3827 0.0";
view_position = "141.42 30.0 -141.42";
weapon_facing = "FORWARD";
},
{
view_description = "Right View";
view_orientation = "0.7071 0.0 0.7071 0.0";
view_position = "200.0 30.0 0.0";
weapon_facing = "FORWARD";
},
{
view_description = "Front Right View";
view_orientation = "0.3827 0.0 0.9239 0.0";
view_position = "141.42 30.0 141.42";
weapon_facing = "FORWARD";
},
{
view_description = "Front View";
view_orientation = "0.0 0.0 1.0 0.0";
view_position = "0.0 30.0 200.0";
weapon_facing = "FORWARD";
},
{
view_description = "Front Left View";
view_orientation = "0.3827 0.0 -0.9239 0.0";
view_position = "-141.42 30.0 141.42";
weapon_facing = "FORWARD";
},
{
view_description = "Left View";
view_orientation = "0.7071 0.0 -0.7071 0.0";
view_position = "-200.0 30.0 0.0";
weapon_facing = "FORWARD";
},
{
view_description = "Rear Left View";
view_orientation = "0.9239 0.0 -0.3827 0.0";
view_position = "-141.42 30.0 -141.42";
weapon_facing = "FORWARD";
},
{
view_description = "Top View";
view_orientation = "-0.7071 0.7071 0.0 0.0";
view_position = "0.0 200.0 -15.0";
weapon_facing = "FORWARD";
},
{
view_description = "Bottom View";
view_orientation = "0.0 0.0 0.7071 0.7071";
view_position = "0.0 -200.0 -15.0";
weapon_facing = "FORWARD";
}
);
energy_recharge_rate = 4;
exhaust = ("-19 0.0 -32.5 15.0 7.5 1.0", "19 0.0 -32.5 15.0 7.5 1.0");
forward_weapon_type = "WEAPON_BEAM_LASER";
fuel = 70;
has_ecm = 0.15;
has_escape_pod = 0.95;
has_scoop = 0.95;
is_template = 1;
likely_cargo = 15;
max_cargo = 20;
max_energy = 256;
max_flight_pitch = 1;
max_flight_roll = 2;
max_flight_speed = 350;
max_missiles = 4;
missile_launch_position = "0.0 -4.5 16.5";
missiles = 3;
model = "cobra3_redux.dat";
smooth = yes;
name = "Cobra Mark III";
scoop_position = "0.0 -10.0 -10.0";
thrust = 32;
view_position_aft = "0.0 7.5 -32.5";
view_position_forward = "0.0 7.25 16.25";
view_position_port = "-30.0 4.75 0.0";
view_position_starboard = "30.0 4.75 0.0";
weapon_facings = 15;
weapon_position_aft = "0.0 0.0 -32.5";
weapon_position_forward = "0.0 0.0 27.5";
weapon_position_port = "-40.0 0.0 -6.0";
weapon_position_starboard = "40.0 0.0 -6.0";
};
"oolite_template_cobra3-trader" =
{
like_ship = "oolite_template_cobra3";
is_template = 1;
max_flight_speed = 300;
thrust = 30;
roles = "trader(0.375) trader-courier(0.2) trader-smuggler(0.75) hunter-medium(0.5) pirate-heavy-fighter pirate-interceptor(0.25) pirate-aegis-raider(0.2) scavenger sunskim-trader";
};
"oolite_template_cobra3-alternate" =
{
like_ship = "oolite_template_cobra3";
has_ecm = 0.95;
is_template = 1;
max_cargo = 35;
max_flight_speed = 300;
materials =
{
"cobra3_redux.png" = { diffuse_map = "cobra3_redux1.png"; };
};
roles = "pirate-light-freighter pirate-medium-freighter(0.2) trader(0.375) hunter-heavy escort-heavy(0.25) hermit-ship sunskim-trader cobra3-alternate assassin-medium";
};
"oolite_template_cobra3-pirate" =
{
like_ship = "oolite_template_cobra3";
is_template = 1;
ai_type = "oolite-pirateAI.js";
bounty = 50;
forward_weapon_type = "WEAPON_PULSE_LASER";
has_ecm = 0.1;
has_escape_pod = 0.85;
has_scoop = yes;
has_shield_booster = 0.25;
max_cargo = 20;
max_flight_speed = 300;
missiles = 1;
roles = "pirate(0.25) pirate-medium-fighter(0.5)";
};
"oolite_template_cobra3-player" =
{
like_ship = "oolite_template_cobra3";
is_template = 1;
forward_weapon_type = "WEAPON_PULSE_LASER";
roles = "player";
};
"oolite_template_cobramk1" = {
aft_eject_position = "0.0 7.5 -21.0";
ai_type = "oolite-traderAI.js";
auto_ai = yes;
auto_weapons = yes;
cargo_type = "CARGO_NOT_CARGO";
custom_views =
(
{
view_description = "Rear View";
view_orientation = "1.0 0.0 0.0 0.0";
view_position = "0.0 20.0 -150.0";
weapon_facing = "FORWARD";
},
{
view_description = "Rear Right View";
view_orientation = "0.9239 0.0 0.3827 0.0";
view_position = "106.06 20.0 -106.06";
weapon_facing = "FORWARD";
},
{
view_description = "Right View";
view_orientation = "0.7071 0.0 0.7071 0.0";
view_position = "150.0 20.0 0.0";
weapon_facing = "FORWARD";
},
{
view_description = "Front Right View";
view_orientation = "0.3827 0.0 0.9239 0.0";
view_position = "106.06 20.0 106.06";
weapon_facing = "FORWARD";
},
{
view_description = "Front View";
view_orientation = "0.0 0.0 1.0 0.0";
view_position = "0.0 20.0 150.0";
weapon_facing = "FORWARD";
},
{
view_description = "Front Left View";
view_orientation = "0.3827 0.0 -0.9239 0.0";
view_position = "-106.06 20.0 106.06";
weapon_facing = "FORWARD";
},
{
view_description = "Left View";
view_orientation = "0.7071 0.0 -0.7071 0.0";
view_position = "-150.0 20.0 0.0";
weapon_facing = "FORWARD";
},
{
view_description = "Rear Left View";
view_orientation = "0.9239 0.0 -0.3827 0.0";
view_position = "-106.06 20.0 -106.06";
weapon_facing = "FORWARD";
},
{
view_description = "Top View";
view_orientation = "-0.7071 0.7071 0.0 0.0";
view_position = "0.0 150.0 -10.0";
weapon_facing = "FORWARD";
},
{
view_description = "Bottom View";
view_orientation = "0.0 0.0 0.7071 0.7071";
view_position = "0.0 -150.0 -10.0";
weapon_facing = "FORWARD";
}
);
energy_recharge_rate = 2.5;
exhaust = ("8.2 0.0 -27.5 6.0 4.0 1.0", "-8.2 0.0 -27.5 6.0 4.0 1.0");
forward_weapon_type = "WEAPON_PULSE_LASER";
fuel = 70;
has_scoop = 0.95;
hud = "hud-small.plist";
is_template = 1;
likely_cargo = 10;
max_cargo = 10;
max_energy = 150;
max_flight_pitch = 1.2;
max_flight_roll = 2;
max_flight_speed = 260;
max_missiles = 1;
missile_launch_position = "0.0 -2.0 14.0";
missiles = 1;
model = "cobra1_redux.dat";
name = "Cobra Mark I";
roles = "pirate(0.5) pirate-medium-fighter hunter-medium scavenger trader trader-smuggler hermit-ship escort-medium(0.75) escort-light(0.25) assassin-light";
scoop_position = "0.0 -5.0 -9";
thrust = 25;
view_position_aft = "0.0 3.75 -27.5";
view_position_forward = "0.0 2.925 15.125";
view_position_port = "-13.0 3.75 0.0";
view_position_starboard = "13.0 3.75 0.0";
weapon_facings = 3;
weapon_position_aft = "0.0 0.0 -27.5";
weapon_position_forward = "0.0 0.0 27.5";
weapon_position_port = "-35.0 -1.0 0.5";
weapon_position_starboard = "35.0 -1.0 0.5";
};
"oolite_template_cobramk1-alt" =
{
like_ship = "oolite_template_cobramk1";
is_template = 1;
ai_type = "oolite-pirateAI.js";
energy_recharge_rate = 3.75; // equivalent of Extra Energy Unit
forward_weapon_type = "WEAPON_BEAM_LASER";
has_fuel_injection = 0.25;
has_shield_booster = 0.25;
max_energy = 200;
materials =
{
"cobra1_redux.png" = { diffuse_map = "cobra1_redux1.png"; };
};
roles = "pirate(0.25) pirate-light-freighter(0.5) escort-heavy(0.5) escort-medium(0.25)";
thrust = 30;
};
"oolite_template_cobramk1-miner" =
{
like_ship = "oolite_template_cobramk1";
is_template = 1;
ai_type = "oolite-scavengerAI.js";
forward_weapon_type = "WEAPON_MINING_LASER";
has_scoop = yes;
materials =
{
"cobra1_redux.png" = { diffuse_map = "cobra1_redux2.png"; };
};
roles = "miner";
};
"oolite_template_cobramk1-player" =
{
like_ship = "oolite_template_cobramk1";
is_template = 1;
roles = "player";
};
"oolite_template_constrictor" =
{
aft_eject_position = "0.0 5.5 -19.0";
ai_type = "oolite-constrictorAI.js";
bounty = 250;
cargo_type = "CARGO_NOT_CARGO";
energy_recharge_rate = 5;
exhaust = ("0.0 0.0 -30.0 18.0 12.0 2.0");
forward_weapon_type = "WEAPON_MILITARY_LASER";
fuel = 70;
has_ecm = yes;
has_escape_pod = yes;
has_fuel_injection = yes;
is_template = 1;
likely_cargo = 3;
max_cargo = 15;
max_energy = 450;
max_flight_pitch = 1.75;
max_flight_roll = 2.5;
max_flight_speed = 600;
missile_launch_position = "0.0 -5.5 16.0";
missiles = 3;
model = "constrictor_redux.dat";
materials =
{
"constrictor_redux.png" = { shininess = 20; };
};
name = "Constrictor";
pilot = "constrictor-mission-thief"; // key to entry in characters.plist
roles = "constrictor";
thrust = 50;
weapon_facings = 15;
weapon_position_aft = "0.0 -4.5 -30.0";
weapon_position_forward = "0.0 0.0 27.5";
weapon_position_port = "-18.5 0.0 -14.0";
weapon_position_starboard = "18.5 0.0 -14.0";
};
"oolite_template_coriolis-station" =
{
ai_type = "oolite-stationAI.js";
cargo_type = "CARGO_NOT_CARGO";
energy_recharge_rate = 100;
forward_weapon_type = "WEAPON_NONE";
frangible = 0;
has_ecm = yes;
has_escape_pod = no;
has_scoop = no;
is_template = 1;
max_energy = 25000;
max_flight_pitch = 8;
max_flight_roll = 8;
max_flight_speed = 0;
missiles = 0;
model = "new_coriolis.dat";
name = "Coriolis Station";
roles = "coriolis station";
rotating = yes;
subentities =
(
{
subentity_key = "dock-flat";
orientation = ( 1, 0, 0, 1); // rotated 90 degrees
position = ( 0, 0, 500 );
is_dock = true;
},
{
subentity_key = "arc-detail";
},
{
subentity_key = "arc-detail";
orientation = ( 1, 0, 0, 1 );
},
{
subentity_key = "arc-detail";
orientation = ( 0, 0, 0, 1 );
},
{
subentity_key = "arc-detail";
orientation = ( 1, 0, 0, -1 );
},
{
type = flasher;
size = 12;
color = { hue = 60; };
frequency = 1;
phase = -1;
position = ( 0, 92, 475 );
},
{
type = flasher;
size = 12;
color = { hue = 75; };
frequency = 1;
phase = -1.2;
position = ( 0, 92, 425 );
},
{
type = flasher;
size = 12;
color = { hue = 90; };
frequency = 1;
phase = -1.4;
position = ( 0, 92, 375 );
},
{
type = flasher;
size = 12;
color = { hue = 105; };
frequency = 1;
phase = -1.6;
position = ( 0, 92, 325 );
},
{
type = flasher;
size = 12;
color = { hue = 120; };
frequency = 1;
phase = -1.8;
position = ( 0, 92, 275 );
},
{
type = flasher;
size = 12;
color = { hue = 60; };
frequency = 1;
phase = -1;
position = ( 0, -92, 475 );
},
{
type = flasher;
size = 12;
color = { hue = 75; };
frequency = 1;
phase = -1.2;
position = ( 0, -92, 425 );
},
{
type = flasher;
size = 12;
color = { hue = 90; };
frequency = 1;
phase = -1.4;
position = ( 0, -92, 375 );
},
{
type = flasher;
size = 12;
color = { hue = 105; };
frequency = 1;
phase = -1.6;
position = ( 0, -92, 325 );
},
{
type = flasher;
size = 12;
color = { hue = 120; };
frequency = 1;
phase = -1.8;
position = ( 0, -92, 275 );
},
{
type = flasher;
size = 12;
color = "orangeColor";
frequency = 1;
phase = 0.5;
position = ( 0, -16, 252 );
},
{
type = flasher;
size = 12;
color = "orangeColor";
frequency = 1;
phase = 0.5;
position = ( 0, 16, 252 );
},
{
type = flasher;
size = 12;
color = "orangeColor";
frequency = 1;
phase = 0;
position = ( 16, 0, 252 );
},
{
type = flasher;
size = 12;
color = "orangeColor";
frequency = 1;
phase = 0;
position = ( -16, 0, 252 );
}
);
thrust = 100;
weapon_energy = 0;
};
"oolite_template_dodecahedron-station" =
{
ai_type = "oolite-stationAI.js";
cargo_type = "CARGO_NOT_CARGO";
energy_recharge_rate = 100;
forward_weapon_type = "WEAPON_NONE";
frangible = 0;
has_ecm = yes;
has_escape_pod = no;
has_scoop = no;
is_template = 1;
max_energy = 25000;
max_flight_pitch = 8;
max_flight_roll = 8;
max_flight_speed = 0;
missiles = 0;
model = "new-dodo.dat";
name = "Dodecahedron Station";
roles = "dodo dodec dodecahedron station";
rotating = yes;
subentities =
(
{
subentity_key = "dock-flat";
orientation = ( 1, 0, 0, 1); // rotated 90 degrees
position = ( 0, 0, 392 );
is_dock = true;
},
"*FLASHER* 0 92 360 60.0 1 -0.50 12",
"*FLASHER* 0 92 315 75.0 1 -0.60 12",
"*FLASHER* 0 92 270 90.0 1 -0.70 12",
"*FLASHER* 0 92 225 105.0 1 -0.80 12",
"*FLASHER* 0 92 180 120.0 1 -0.90 12",
"*FLASHER* 0 -92 360 60.0 1 -0.50 12",
"*FLASHER* 0 -92 315 75.0 1 -0.60 12",
"*FLASHER* 0 -92 270 90.0 1 -0.70 12",
"*FLASHER* 0 -92 225 105.0 1 -0.80 12",
"*FLASHER* 0 -92 180 120.0 1 -0.90 12",
"*FLASHER* 0 -16 144 30.0 1 0.5 12",
"*FLASHER* 0 16 144 30.0 1 0.5 12",
"*FLASHER* 16 0 144 30.0 1 0.0 12",
"*FLASHER* -16 0 144 30.0 1 0.0 12"
);
thrust = 100;
weapon_energy = 0;
};
// ecm hardened missile (missile template is later on)
"oolite_template_ecm-proof-missile" =
{
like_ship = "oolite_template_missile";
is_template = 1;
ai_type = "oolite-missileAI.js";
name = "ECM Hardened Missile";
script_info =
{
oolite_missile_blastPower = 170;
oolite_missile_blastRadius = 32.5;
oolite_missile_blastShaping = 0.25;
oolite_missile_ecmResponse = "_ecmProofMissileResponse";
oolite_missile_proximity = 25;
oolite_missile_range = 30000;
};
roles = "missile EQ_HARDENED_MISSILE";
};
"oolite_template_escape-capsule" = {
aft_eject_position = "0.0 0.0 -2.0";
ai_type = "oolite-shuttleAI.js";
cargo_type = "CARGO_SLAVES";
energy_recharge_rate = 2;
exhaust =
(
"0.0 2.96 -1.67 0.5 0.5 1.0",
"2.56 -1.48 -1.67 0.5 0.5 1.0",
"-2.56 -1.48 -1.67 0.5 0.5 1.0"
);
forward_weapon_type = "WEAPON_NONE";
is_template = 1;
max_energy = 25;
max_flight_pitch = 0.5;
max_flight_roll = 0.5;
max_flight_speed = 50;
missile_launch_position = "0.0 0.0 4.5";
missiles = 0;
model = "escpod_redux.dat";
name = "Escape capsule";
roles = "escape-capsule";
scan_class = "CLASS_CARGO";
smooth = yes;
subentities =
(
{
type = flasher;
size = 2;
colors = (whiteColor, clearColor, clearColor);
frequency = 1.0;
phase = 0.0;
position = (0.0, 0.0, 4.42);
},
{
type = flasher;
size = 2;
color = redColor;
phase = 0.0;
position = (0.0, 4.42, -1.54);
},
{
type = flasher;
size = 2;
color = redColor;
phase = 0.0;
position = (3.83, -2.21, -1.54);
},
{
type = flasher;
size = 2;
color = redColor;
phase = 0.0;
position = (-3.83, -2.21, -1.54);
}
);
thrust = 5;
weapon_position_aft = "0.0 0.0 -1.67";
weapon_position_forward = "0.0 0.0 4.18";
weapon_position_port = "-1.31 0.76 0.34";
weapon_position_starboard = "1.31 0.76 0.34";
};
"oolite_template_ferdelance" = {
aft_eject_position = "0.0 3.0 -38.0";
ai_type = "oolite-pirateAI.js";
auto_ai = yes;
auto_weapons = yes;
cargo_type = "CARGO_NOT_CARGO";
custom_views =
(
{
view_description = "Rear View";
view_orientation = "1.0 0.0 0.0 0.0";
view_position = "0.0 20.0 -150.0";
weapon_facing = "FORWARD";
},
{
view_description = "Rear Right View";
view_orientation = "0.9239 0.0 0.3827 0.0";
view_position = "106.06 20.0 -106.06";
weapon_facing = "FORWARD";
},
{
view_description = "Right View";
view_orientation = "0.7071 0.0 0.7071 0.0";
view_position = "150.0 20.0 0.0";
weapon_facing = "FORWARD";
},
{
view_description = "Front Right View";
view_orientation = "0.3827 0.0 0.9239 0.0";
view_position = "106.06 20.0 106.06";
weapon_facing = "FORWARD";
},
{
view_description = "Front View";
view_orientation = "0.0 0.0 1.0 0.0";
view_position = "0.0 20.0 150.0";
weapon_facing = "FORWARD";
},
{
view_description = "Front Left View";
view_orientation = "0.3827 0.0 -0.9239 0.0";
view_position = "-106.06 20.0 106.06";
weapon_facing = "FORWARD";
},
{
view_description = "Left View";
view_orientation = "0.7071 0.0 -0.7071 0.0";
view_position = "-150.0 20.0 0.0";
weapon_facing = "FORWARD";
},
{
view_description = "Rear Left View";
view_orientation = "0.9239 0.0 -0.3827 0.0";
view_position = "-106.06 20.0 -106.06";
weapon_facing = "FORWARD";
},
{
view_description = "Top View";
view_orientation = "-0.7071 0.7071 0.0 0.0";
view_position = "0.0 150.0 -13.0";
weapon_facing = "FORWARD";
},
{
view_description = "Bottom View";
view_orientation = "0.0 0.0 0.7071 0.7071";
view_position = "0.0 -165.0 -12.0";
weapon_facing = "FORWARD";
}
);
energy_recharge_rate = 4.5;
exhaust = ("0.0 -5.0 -42.5 6.0 6.0 1.0");
forward_weapon_type = "WEAPON_BEAM_LASER";
fuel = 70;
has_ecm = yes;
has_escape_pod = 0.25;
has_fuel_injection = 0.75;
has_scoop = yes;
has_shield_booster = 0.5;
has_shield_enhancer = 0.5;
hud = "hud.plist";
is_template = 1;
likely_cargo = 8;
max_cargo = 12;
max_energy = 150;
max_flight_pitch = 1;
max_flight_roll = 3.6;
max_flight_speed = 300;
max_missiles = 2;
missile_launch_position = "0.0 -10.5 16.5";
missiles = 2;
model = "ferdelance_redux.dat";
name = "Fer-de-Lance";
roles = "trader-freighter(0.25) trader-courier trader-smuggler(0.5) pirate-medium-fighter(0.75) pirate-heavy-fighter(0.75) pirate-interceptor pirate-aegis-raider(0.75) pirate(0.25) hunter-medium(0.75) hunter-heavy assassin-medium";
scoop_position = "0.0 -8.0 -14";
thrust = 36;
view_position_aft = "0.0 5.0 -32.5";
view_position_forward = "0.0 0.0 9.0";
view_position_port = "-16.875 2.0 3.5";
view_position_starboard = "16.875 2.0 3.5";
weapon_facings = 15;
weapon_position_aft = "0.0 0.0 -42.5";
weapon_position_forward = "0.0 0.0 4.18";
weapon_position_port = "-16.875 -4.0 3.5";
weapon_position_starboard = "16.875 -4.0 3.5";
};
"oolite_template_ferdelance-player" =
{
like_ship = "oolite_template_ferdelance";
is_template = 1;
roles = "player";
thrust = 25;
};
"oolite_template_gecko" =
{
aft_eject_position = "0.0 4.5 -11.0";
ai_type = "oolite-pirateAI.js";
auto_ai = yes;
auto_weapons = yes;
cargo_type = "CARGO_NOT_CARGO";
energy_recharge_rate = 4;
exhaust = ("0.0 0.0 -20.0 5.0 4.0 1.0");
forward_weapon_type = "WEAPON_BEAM_LASER";
hyperspace_motor = no;
has_scoop = yes;
has_shield_booster = 0.4;
is_template = 1;
likely_cargo = 3;
max_cargo = 3;
max_energy = 250;
max_flight_pitch = 1.5;
max_flight_roll = 3;
max_flight_speed = 300;
missile_launch_position = "0.0 -2.0 10.0";
missiles = 1;
model = "gecko_redux.dat";
name = "Gecko";
roles = "hunter(0.75) pirate-light-fighter(0.5) pirate-medium-fighter(0.75) pirate(0.5) escort(0.25) escort-medium(0.5) escort-heavy";
scoop_position = "0.0 -5.0 -9";
thrust = 45;
weapon_facings = 1;
weapon_position_forward = "0.0 0.0417 16.6667";
weapon_position_port = "-13.75 -2.0625 -1.875";
weapon_position_starboard = "13.75 -2.0625 -1.875";
};
"oolite_template_icosahedron-station" =
{
ai_type = "oolite-stationAI.js";
cargo_type = "CARGO_NOT_CARGO";
energy_recharge_rate = 100;
forward_weapon_type = "WEAPON_NONE";
frangible = 0;
has_ecm = yes;
has_escape_pod = no;
has_scoop = no;
is_template = 1;
max_energy = 25000;
max_flight_pitch = 8;
max_flight_roll = 8;
max_flight_speed = 0;
missiles = 0;
model = "new-icos.dat";
name = "Icosahedron Station";
roles = "ico icosa icosahedron station";
rotating = yes;
subentities =
(
{
subentity_key = "dock-flat";
orientation = ( 1, 0, 0, 1); // rotated 90 degrees
position = ( 0, 0, 500 );
is_dock = true;
},
"*FLASHER* 0 92 475 60.0 1 -0.50 12",
"*FLASHER* 0 92 425 75.0 1 -0.60 12",
"*FLASHER* 0 92 375 90.0 1 -0.70 12",
"*FLASHER* 0 92 325 105.0 1 -0.80 12",
"*FLASHER* 0 92 275 120.0 1 -0.90 12",
"*FLASHER* 0 -92 475 60.0 1 -0.50 12",
"*FLASHER* 0 -92 425 75.0 1 -0.60 12",
"*FLASHER* 0 -92 375 90.0 1 -0.70 12",
"*FLASHER* 0 -92 325 105.0 1 -0.80 12",
"*FLASHER* 0 -92 275 120.0 1 -0.90 12",
"*FLASHER* 0 -16 252 30.0 1 0.5 12",
"*FLASHER* 0 16 252 30.0 1 0.5 12",
"*FLASHER* 16 0 252 30.0 1 0.0 12",
"*FLASHER* -16 0 252 30.0 1 0.0 12"
);
thrust = 100;
weapon_energy = 0;
};
"oolite_template_krait" =
{
aft_eject_position = "0.0 7.5 -16.5";
ai_type = "oolite-pirateAI.js";
auto_ai = yes;
auto_weapons = yes;
cargo_type = "CARGO_NOT_CARGO";
energy_recharge_rate = 2.5;
exhaust = ("-7.5 0.0 -35.58 4.0 4.0 1.0", "7.5 0.0 -35.58 4.0 4.0 1.0");
forward_weapon_type = "WEAPON_BEAM_LASER";
fuel = 70;
hyperspace_motor = no;
has_fuel_injection = 0.65;
has_scoop = 0.95;
has_shield_booster = 0.5;
has_shield_enhancer = 0.25;
is_template = 1;
likely_cargo = 2;
max_cargo = 2;
max_energy = 250;
max_flight_pitch = 1.5;
max_flight_roll = 2.75;
max_flight_speed = 300;
missile_launch_position = "0.0 -3.5 16.5";
missiles = 0;
model = "krait_redux.dat";
name = "Krait";
roles = "pirate pirate-light-fighter(0.75) hunter(0.5) escort(0.25) assassin-light";
scoop_position = "0.0 -2.0 -3";
thrust = 35;
weapon_facings = 1;
weapon_position_aft = "0.0 -5.0 -20.0";
weapon_position_forward = "0.0 0.0417 16.6667";
weapon_position_port = "-45.0 0.0 -13.5";
weapon_position_starboard = "45.0 0.0 -13.5";
};
"oolite_template_mamba" = {
aft_eject_position = "0.0 5.5 -17.0";
ai_type = "oolite-pirateAI.js";
auto_ai = yes;
auto_weapons = yes;
cargo_type = "CARGO_NOT_CARGO";
energy_recharge_rate = 3;
exhaust = ("0.0 0.0 -27.5 10.0 8.0 1.0");
forward_weapon_type = "WEAPON_PULSE_LASER";
hyperspace_motor = no;
has_scoop = 0.95;
has_shield_booster = 0.25;
is_template = 1;
likely_cargo = 3;
max_cargo = 4;
max_energy = 240;
max_flight_pitch = 1.4;
max_flight_roll = 2.1;
max_flight_speed = 320;
missile_launch_position = "0.0 -3.5 3.5";
missiles = 0;
model = "mamba_redux.dat";
name = "Mamba";
roles = "pirate pirate-light-fighter(0.5) hunter";
scoop_position = "0.0 -2.0 -3";
thrust = 32;
weapon_facings = 1;
weapon_position_aft = "0.0 -4.5 -27.5";
weapon_position_forward = "0.0 0.0 27.5";
weapon_position_port = "-16.5 -3.0 0.0";
weapon_position_starboard = "16.5 -3.0 0.0";
};
"oolite_template_mamba-escort" =
{
like_ship = "oolite_template_mamba";
forward_weapon_type = "WEAPON_BEAM_LASER";
is_template = 1;
materials =
{
"mamba_redux.png" = { diffuse_map = "mamba_redux1.png"; };
};
name = "Mamba Escort";
roles = "pirate-light-fighter(0.5) escort escort-medium(0.25)";
};
"oolite_template_missile" =
{
ai_type = "oolite-missileAI.js";
cargo_type = "CARGO_NOT_CARGO";
energy_recharge_rate = 0;
exhaust = ("0.0 0.0 -3.5 2.0 2.0 0.75");
forward_weapon_type = "WEAPON_NONE";
is_template = 1;
max_energy = 5;
max_flight_pitch = 8;
max_flight_roll = 10;
max_flight_speed = 750;
missiles = 0;
model = "missile.dat";
name = "Missile";
roles = "missile EQ_MISSILE";
scan_class = "CLASS_MISSILE";
script_info =
{
oolite_missile_blastPower = 170;
oolite_missile_blastRadius = 32.5;
oolite_missile_blastShaping = 0.25;
oolite_missile_proximity = 25;
oolite_missile_range = 30000;
};
thrust = 250;
unpiloted = yes;
weapon_energy = 4500;
};
"oolite_template_moray" =
{
aft_eject_position = "0.0 5.75 -8.0";
ai_type = "oolite-pirateAI.js";
auto_ai = yes;
auto_weapons = yes;
cargo_type = "CARGO_NOT_CARGO";
custom_views =
(
{
view_description = "Rear View";
view_orientation = "1.0 0.0 0.0 0.0";
view_position = "0.0 20.0 -150.0";
weapon_facing = "FORWARD";
},
{
view_description = "Rear Right View";
view_orientation = "0.9239 0.0 0.3827 0.0";
view_position = "106.06 20.0 -106.06";
weapon_facing = "FORWARD";
},
{
view_description = "Right View";
view_orientation = "0.7071 0.0 0.7071 0.0";
view_position = "150.0 20.0 0.0";
weapon_facing = "FORWARD";
},
{
view_description = "Front Right View";
view_orientation = "0.3827 0.0 0.9239 0.0";
view_position = "106.06 20.0 106.06";
weapon_facing = "FORWARD";
},
{
view_description = "Front View";
view_orientation = "0.0 0.0 1.0 0.0";
view_position = "0.0 20.0 150.0";
weapon_facing = "FORWARD";
},
{
view_description = "Front Left View";
view_orientation = "0.3827 0.0 -0.9239 0.0";
view_position = "-106.06 20.0 106.06";
weapon_facing = "FORWARD";
},
{
view_description = "Left View";
view_orientation = "0.7071 0.0 -0.7071 0.0";
view_position = "-150.0 20.0 0.0";
weapon_facing = "FORWARD";
},
{
view_description = "Rear Left View";
view_orientation = "0.9239 0.0 -0.3827 0.0";
view_position = "-106.06 20.0 -106.06";
weapon_facing = "FORWARD";
},
{
view_description = "Top View";
view_orientation = "-0.7071 0.7071 0.0 0.0";
view_position = "0.0 150.0 -10.0";
weapon_facing = "FORWARD";
},
{
view_description = "Bottom View";
view_orientation = "0.0 0.0 0.7071 0.7071";
view_position = "0.0 -150.0 -10.0";
weapon_facing = "FORWARD";
}
);
energy_recharge_rate = 3;
exhaust = ("0.0 -2.0 -30.0 10.0 8.0 1.0");
forward_weapon_type = "WEAPON_PULSE_LASER";
fuel = 70;
has_scoop = yes;
has_shield_booster = 0.5;
hud = "hud.plist";
is_template = 1;
likely_cargo = 5;
max_cargo = 7;
max_energy = 240;
max_flight_pitch = 1.5;
max_flight_roll = 2.5;
max_flight_speed = 300;
max_missiles = 2;
missile_launch_position = "0.0 -7.75 0.5";
missiles = 2;
model = "moray_redux.dat";
name = "Moray Star Boat";
roles = "trader(0.5) trader-courier(0.25) trader-smuggler hunter-medium pirate-medium-fighter pirate-interceptor(0.25) pirate(0.5) pirate-light-freighter(0.5) escort-medium(0.25) assassin-light";
scoop_position = "0.0 -2.0 -10.5";
thrust = 32;
view_position_aft = "0.0 8.875 5.5";
view_position_forward = "0.0 4.4 22.5";
view_position_port = "-22.5 5.25 11.875";
view_position_starboard = "22.5 5.25 11.875";
weapon_facings = 15;
weapon_position_aft = "0.0 1.625 -20.0";
weapon_position_forward = "0.0 0.0 27.5";
weapon_position_port = "-30.0 -2.0 6.25";
weapon_position_starboard = "30.0 -2.0 6.25";
};
"oolite_template_moray-player" =
{
like_ship = "oolite_template_moray";
is_template = 1;
roles = "player";
weapon_position_forward = "0.0 -10.5 30.5";
};
"oolite_template_morayMED" =
{
like_ship = "oolite_template_moray";
is_template = 1;
ai_type = "oolite-traderAI.js";
likely_cargo = 15;
max_cargo = 22;
materials =
{
"moray_redux.png" = { diffuse_map = "moray_redux1.png"; };
};
name = "Moray Medical Boat";
roles = "trader(0.5) sunskim-trader";
weapon_facings = 1;
};
"oolite_template_morayMED-player" =
{
like_ship = "oolite_template_moray";
is_template = 1;
materials =
{
"moray_redux.png" = { diffuse_map = "moray_redux1.png"; };
};
name = "Moray Medical Boat";
roles = "player";
weapon_facings = 1;
weapon_position_forward = "0.0 -10.5 30.5";
};
"oolite_template_python" =
{
aft_eject_position = "0.0 15.5 -50.0";
ai_type = "oolite-traderAI.js";
auto_ai = yes;
auto_weapons = yes;
cargo_type = "CARGO_NOT_CARGO";
custom_views =
(
{
view_description = "Rear View";
view_orientation = "1.0 0.0 0.0 0.0";
view_position = "0.0 30.0 -200.0";
weapon_facing = "FORWARD";
},
{
view_description = "Rear Right View";
view_orientation = "0.9239 0.0 0.3827 0.0";
view_position = "141.42 30.0 -141.42";
weapon_facing = "FORWARD";
},
{
view_description = "Right View";
view_orientation = "0.7071 0.0 0.7071 0.0";
view_position = "200.0 30.0 0.0";
weapon_facing = "FORWARD";
},
{
view_description = "Front Right View";
view_orientation = "0.3827 0.0 0.9239 0.0";
view_position = "141.42 30.0 141.42";
weapon_facing = "FORWARD";
},
{
view_description = "Front View";
view_orientation = "0.0 0.0 1.0 0.0";
view_position = "0.0 30.0 200.0";
weapon_facing = "FORWARD";
},
{
view_description = "Front Left View";
view_orientation = "0.3827 0.0 -0.9239 0.0";
view_position = "-141.42 30.0 141.42";
weapon_facing = "FORWARD";
},
{
view_description = "Left View";
view_orientation = "0.7071 0.0 -0.7071 0.0";
view_position = "-200.0 30.0 0.0";
weapon_facing = "FORWARD";
},
{
view_description = "Rear Left View";
view_orientation = "0.9239 0.0 -0.3827 0.0";
view_position = "-141.42 30.0 -141.42";
weapon_facing = "FORWARD";
},
{
view_description = "Top View";
view_orientation = "-0.7071 0.7071 0.0 0.0";
view_position = "0.0 230.0 -18.0";
weapon_facing = "FORWARD";
},
{
view_description = "Bottom View";
view_orientation = "0.0 0.0 0.7071 0.7071";
view_position = "0.0 -230.0 -18.0";
weapon_facing = "FORWARD";
}
);
energy_recharge_rate = 2.5;
exhaust = ("0.0 0.0 -64.5 12.0 12.0 2.0");
forward_weapon_type = "WEAPON_BEAM_LASER";
fuel = 70;
has_escape_pod = 0.75;
has_scoop = yes;
has_shield_booster = 0.75;
hud = "hud.plist";
is_template = 1;
likely_cargo = 75;
max_cargo = 100;
max_energy = 450;
max_flight_pitch = 0.8;
max_flight_roll = 2;
max_flight_speed = 200;
max_missiles = 2;
missile_launch_position = "0.0 -20.5 -18.0";
missiles = 2;
model = "python_redux.dat";
name = "Python";
roles = "trader(0.5) trader-smuggler(0.2) pirate(0.2) pirate-light-freighter(0.2)";
scoop_position = "0.0 -15.0 -21.5";
thrust = 20;
view_position_aft = "0.0 15.0 -49.5";
view_position_forward = "0.0 10.0 31.5";
view_position_port = "-16.0 4.0 15.2";
view_position_starboard = "16.0 4.0 15.2";
weapon_facings = 15;
weapon_position_aft = "0.0 10 -65.0";
weapon_position_forward = "0.0 0.0 65.0";
weapon_position_port = "-26.67 0.0 4.33";
weapon_position_starboard = "26.67 0.0 4.33";
};
"oolite_template_python-blackdog" =
{
like_ship = "oolite_template_python";
is_template = 1;
ai_type = "oolite-pirateAI.js";
energy_recharge_rate = 3.5;
escort_roles = (
{ "role" = "pirate-light-fighter"; min = 1; max = 1; },
{ "role" = "pirate-medium-fighter"; min = 1; max = 1; },
);
has_ecm = 0.75;
has_shield_booster = 0.85;
materials =
{
"python_redux.png" = { diffuse_map = "python_redux2.png"; };
};
roles = "pirate-medium-freighter pirate-heavy-freighter(0.25) blackdog";
};
"oolite_template_python-player" =
{
like_ship = "oolite_template_python";
is_template = 1;
forward_weapon_type = "WEAPON_PULSE_LASER";
roles = "player";
};
"oolite_template_python-trader" =
{
like_ship = "oolite_template_python";
is_template = 1;
escort_roles = (
{ "role" = "escort"; min = 0; max = 2; },
{ "role" = "escort-medium"; min = -2; max = 2; },
{ "role" = ""; min = 0; max = 2; }
);
has_escape_pod = yes;
materials =
{
"python_redux.png" = { diffuse_map = "python_redux1.png"; };
};
roles = "trader";
};
"oolite_template_qbomb" =
{
ai_type = "oolite-qbombAI.js";
energy_recharge_rate = 0;
is_template = 1;
max_energy = 10;
max_flight_pitch = 2;
max_flight_roll = 2;
max_flight_speed = 1000;
model = "qbomb.dat";
name = "Quirium Cascade Mine";
roles = "energy-bomb EQ_QC_MINE";
thrust = 0;
};
"oolite_template_rock-hermit" =
{
ai_type = "oolite-rockHermitAI.js";
cargo_type = "CARGO_NOT_CARGO";
energy_recharge_rate = 5;
"equipment_price_factor" = 4.5;
"equivalent_tech_level" = 1;
forward_weapon_type = "WEAPON_NONE";
frangible = 0;
has_ecm = yes;
has_escape_pod = no;
has_scoop = no;
is_template = 1;
"max_defense_ships" = 2;
max_energy = 1000;
max_flight_pitch = 8;
max_flight_roll = 8;
max_flight_speed = 0;
"max_scavengers" = 1;
missiles = 0;
model = "new-rock.dat";
name = "Rock Hermit";
roles = "rockhermit station";
requires_docking_clearance = no;
scan_class = "CLASS_ROCK";
smooth = yes;
subentities = (
{
subentity_key = "hermit-docking-slit";
is_dock = true;
},
{
subentity_key = "hermitage";
position = ( 15, -80, 210);
},
{
subentity_key = "strut";
position = ( 0, -105, 205);
},
{
subentity_key = "strut";
position = ( 30, -105, 205);
},
{
type = flasher;
size = 12;
color = { hue = 20; };
frequency = 1;
phase = 0.5;
position = ( 0.0, -16.0, -78.0);
},
{
type = flasher;
size = 12;
color = { hue = 20; };
frequency = 1;
phase = 0.5;
position = ( 0.0, 16.0, -78.0);
},
{
type = flasher;
size = 12;
color = { hue = 30; };
frequency = 1;
phase = 0.0;
position = ( 16.0, 0.0, -78.0);
},
{
type = flasher;
size = 12;
color = { hue = 30; };
frequency = 1;
phase = 0.0;
position = ( -16.0, 0.0, -78.0);
}
);
thrust = 100;
tunnel_corners = 6;
tunnel_start_angle = 0;
tunnel_aspect_ratio = 1;
weapon_energy = 0;
materials =
{
"asteroid.png" =
{
shininess = 0;
specular_color = (0.0, 0.0, 0.0, 1.0);
};
};
};
"oolite_template_scarred-alloy" = {
like_ship = "oolite_template_alloy";
is_template = 1;
model = "scarred_alloy.dat";
roles = "alloy";
materials =
{
"scarred_metal.png" =
{
shininess = 20;
specular_color = (0.75, 0.75, 0.8, 1.0);
specular_map = "oolite-scarred-metal-specular.png";
};
"metal.png" =
{
shininess = 20;
specular_color = (0.75, 0.75, 0.8, 1.0);
};
};
};
"oolite_template_shuttle" = {
aft_eject_position = "0.0 0 -18.0";
ai_type = "oolite-shuttleAI.js";
cargo_type = "CARGO_NOT_CARGO";
energy_recharge_rate = 1;
exhaust = (
"6.7 6.7 -17.5 4.0 4.0 1.5",
"-6.7 6.7 -17.5 4.0 4.0 1.5",
"6.7 -6.7 -17.5 4.0 4.0 1.5",
"-6.7 -6.7 -17.5 4.0 4.0 1.5"
);
forward_weapon_type = "WEAPON_NONE";
hyperspace_motor = no;
is_template = 1;
max_cargo = 30;
max_energy = 120;
max_flight_pitch = 0.9;
max_flight_roll = 2;
max_flight_speed = 80;
missile_launch_position = "0.0 -7.25 15.0";
missiles = 0;
model = "shuttle_redux.dat";
name = "Orbital Shuttle";
roles = "shuttle";
thrust = 16;
weapon_facings = 0;
weapon_position_aft = "0.0 0.0 -17.5";
weapon_position_forward = "0.0 -4.5 17.5";
weapon_position_port = "-9.0 0.0 11.5";
weapon_position_starboard = "9.0 0.0 11.5";
};
"oolite_template_sidewinder" = {
aft_eject_position = "0.0 7.5 -18.0";
ai_type = "oolite-pirateAI.js";
auto_ai = yes;
auto_weapons = yes;
cargo_type = "CARGO_NOT_CARGO";
energy_recharge_rate = 2;
exhaust = ("0.0 0.0 -17.0 8.0 6.0 1.0");
forward_weapon_type = "WEAPON_PULSE_LASER";
hyperspace_motor = no;
is_template = 1;
max_energy = 240;
max_flight_pitch = 1.6;
max_flight_roll = 2.8;
max_flight_speed = 370;
missile_launch_position = "0.0 -3.0 6.0";
missiles = 0;
model = "sidewinder_redux.dat";
name = "Sidewinder Scout Ship";
roles = "pirate(0.75) pirate-light-fighter(0.25) hunter";
thrust = 37;
weapon_facings = 1;
weapon_position_aft = "0.0 -6.5 -17.5";
weapon_position_forward = "0.0 -4.5 17.5";
weapon_position_port = "-24.25 0.0 0.0";
weapon_position_starboard = "24.25 0.0 0.0";
};
"oolite_template_sidewinder-escort" =
{
like_ship = "oolite_template_sidewinder";
is_template = 1;
energy_recharge_rate = 2.5;
forward_weapon_type = "WEAPON_BEAM_LASER";
max_flight_pitch = 1.8;
roles = "escort escort-medium(0.5)";
};
"oolite_template_splinter" =
{
ai_type = "dumbAI.plist";
bounty = 1;
cargo_type = "CARGO_MINERALS";
energy_recharge_rate = 0;
forward_weapon_type = "WEAPON_NONE";
has_ecm = no;
has_escape_pod = no;
has_scoop = no;
is_template = 1;
max_energy = 5;
max_flight_pitch = 1;
max_flight_roll = 1;
max_flight_speed = 10;
missiles = 0;
model = "splinter.dat";
name = "Splinter";
roles = "splinter";
scan_class = "CLASS_CARGO";
smooth = yes;
thrust = 0;
unpiloted = yes;
weapon_energy = 0;
materials =
{
"asteroid.png" =
{
shininess = 2;
specular_color = (0.1, 0.1, 0.1, 1.0);
};
};
};
"oolite_template_tharglet" =
{
ai_type = "oolite-thargletAI.js";
bounty = 50;
cargo_type = "CARGO_THARGOID";
energy_recharge_rate = 3;
forward_weapon_type = "WEAPON_PULSE_LASER";
is_template = 1;
laser_color = "greenColor";
max_energy = 150;
max_flight_pitch = 1;
max_flight_roll = 2;
max_flight_speed = 450;
missiles = 0;
model = "thargon_redux.dat";
name = "Thargoid Robot Fighter";
roles = "tharglet thargon EQ_THARGON";
scan_class = "CLASS_THARGOID";
scanner_range = 50000;
thrust = 40;
unpiloted = yes;
weapon_facings = 1;
weapon_position_aft = "0.0 0.0 -16.5";
weapon_position_forward = "0.0 -4.5 18.0";
weapon_position_port = "-19.0 -4.5 4.5";
weapon_position_starboard = "19.0 -4.5 4.5";
};
"oolite_template_thargoid" =
{
aft_eject_position = "0.0 0.0 -20.5";
aft_weapon_type = "WEAPON_THARGOID_LASER";
ai_type = "oolite-thargoidAI.js";
bounty = 100;
cargo_type = "CARGO_NOT_CARGO";
energy_recharge_rate = 4;
forward_weapon_type = "WEAPON_THARGOID_LASER";
fuel = 150;
has_ecm = yes;
is_template = 1;
laser_color = "greenColor";
max_energy = 600;
max_flight_pitch = 1;
max_flight_roll = 2;
max_flight_speed = 500;
missile_launch_position = "0.0 -46.0 91.0";
missile_role = "EQ_THARGON";
missile_load_time = 1.5;
missiles = 5;
model = "thargoid_redux.dat";
name = "Thargoid Warship";
roles = "thargoid thargoid-mothership";
scan_class = "CLASS_THARGOID";
scanner_range = 60000;
script = "oolite-thargoid-warship.js";
thrust = 50;
weapon_facings = 3;
};
"oolite_template_transporter" =
{
aft_eject_position = "0.0 5.5 -18.0";
ai_type = "oolite-shuttleAI.js";
cargo_type = "CARGO_NOT_CARGO";
energy_recharge_rate = 3;
exhaust = ("6.125 -0.75 -17.5 3.0 3.0 1.5", "-6.125 -0.75 -17.5 3.0 3.0 1.5");
forward_weapon_type = "WEAPON_PULSE_LASER";
hyperspace_motor = no;
is_template = 1;
max_cargo = 12;
max_energy = 150;
max_flight_pitch = 1;
max_flight_roll = 2;
max_flight_speed = 100;
missile_launch_position = "0.0 -5.5 0.5";
missiles = 0;
model = "transporter_redux.dat";
name = "Transporter";
roles = "shuttle";
scoop_position = "0.0 -2.0 -10.5";
thrust = 20;
weapon_facings = 1;
weapon_position_aft = "0.0 -1.0 -17.5";
weapon_position_forward = "0.0 -3.4 17.5";
weapon_position_port = "-14.25 -3.0 6.0";
weapon_position_starboard = "14.25 -3.0 6.0";
};
"oolite_template_transporter-miner" =
{
like_ship = "oolite_template_transporter";
is_template = 1;
ai_type = "oolite-scavengerAI.js";
forward_weapon_type = "WEAPON_MINING_LASER";
has_scoop = yes;
materials =
{
"transporter_redux.png" = { diffuse_map = "transporter_redux1.png"; };
};
name = "Mining Transporter";
roles = "miner";
};
"oolite_template_viper" =
{
aft_eject_position = "0.0 6.5 -28.0";
ai_type = "oolite-policeAI.js";
cargo_type = "CARGO_NOT_CARGO";
energy_recharge_rate = 4;
exhaust = ("12.5 0.0 -27.5 6.0 6.0 1.5", "-12.5 0.0 -27.5 6.0 6.0 1.5");
forward_weapon_type = "WEAPON_BEAM_LASER";
has_ecm = yes;
has_escape_pod = yes;
is_template = 1;
laser_color = "magentaColor";
max_energy = 180;
max_flight_pitch = 1.8;
max_flight_roll = 2.8;
max_flight_speed = 320;
missile_launch_position = "0.0 -8.5 -11.0";
missiles = 1;
model = "viper_redux.dat";
name = "GalCop Viper";
roles = "police";
scan_class = "CLASS_POLICE";
subentities = (
{
type = flasher;
color = { hue = 260; };
initially_on = no;
phase = 0.5;
position = (-25.0, 0.0, -27.5);
},
{
type = flasher;
color = { hue = 260; };
initially_on = no;
phase = 0.6;
position = (-21.88, 0.0, -20.63);
},
{
type = flasher;
color = { hue = 260; };
initially_on = no;
phase = 0.7;
position = (-18.75, 0.0, -13.75);
},
{
type = flasher;
color = { hue = 260; };
initially_on = no;
phase = 0.8;
position = (-15.63, 0.0, -6.88);
},
{
type = flasher;
color = { hue = 260; };
initially_on = no;
phase = 0.9;
position = (-12.50, 0.0, 0.00);
},
{
type = flasher;
color = { hue = 310; };
initially_on = no;
phase = 0.0;
position = (25, 0, -27.5);
},
{
type = flasher;
color = { hue = 310; };
initially_on = no;
phase = 0.1;
position = (21.88, 0.0, -20.63);
},
{
type = flasher;
color = { hue = 310; };
initially_on = no;
phase = 0.2;
position = (18.75, 0.0, -13.75);
},
{
type = flasher;
color = { hue = 310; };
initially_on = no;
phase = 0.3;
position = (15.63, 0.0, -6.88);
},
{
type = flasher;
color = { hue = 310; };
initially_on = no;
phase = 0.4;
position = (12.50, 0.0, 0.0);
},
{
type = flasher;
color = { hue = 260; };
initially_on = no;
phase = 0.0;
position = (-12.50, 8.0, -27.5);
},
{
type = flasher;
color = { hue = 310; };
initially_on = no;
phase = 0.25;
position = (12.50, 8.0, -27.5);
}
);
thrust = 32;
weapon_facings = 1;
weapon_position_aft = "0.0 0.0 -27.5";
weapon_position_forward = "0.0 -2.67 18.33";
weapon_position_port = "-12.5 0.0 0.0";
weapon_position_starboard = "12.5 0.0 0.0";
};
"oolite_template_viper-interceptor" =
{
aft_eject_position = "0.0 10.5 -22.0";
ai_type = "oolite-policeAI.js";
cargo_type = "CARGO_NOT_CARGO";
energy_recharge_rate = 6;
exhaust = (
"-21.6 0.0 -28.5 6.0 6.0 1.5",
"21.6 0.0 -28.5 6.0 6.0 1.5",
"0.0 0.0 -31.0 8.0 8.0 1.5"
);
forward_weapon_type = "WEAPON_MILITARY_LASER";
fuel = 160;
has_ecm = yes;
has_escape_pod = yes;
has_fuel_injection = yes;
is_template = 1;
laser_color = "magentaColor";
max_energy = 280;
max_flight_pitch = 2;
max_flight_roll = 4.2;
max_flight_speed = 520;
missile_launch_position = "0.0 -10.5 -9.0";
missiles = 3;
model = "viperi_redux.dat";
name = "GalCop Viper Interceptor";
roles = "interceptor wingman";
scan_class = "CLASS_POLICE";
smooth = yes;
subentities = (
{
type = flasher;
color = { hue = 260; };
initially_on = no;
phase = 0.5;
position = (-32.00, 0.0, -22.00);
},
{
type = flasher;
color = { hue = 260; };
initially_on = no;
phase = 0.6;
position = (-29.25, 0.0, -15.25);
},
{
type = flasher;
color = { hue = 260; };
initially_on = no;
phase = 0.7;
position = (-26.50, 0.0, -8.50);
},
{
type = flasher;
color = { hue = 260; };
initially_on = no;
phase = 0.8;
position = (-23.75, 0.0, -1.75);
},
{
type = flasher;
color = { hue = 260; };
initially_on = no;
phase = 0.9;
position = (-21.00, 0.0, 5.00);
},
{
type = flasher;
color = { hue = 310; };
initially_on = no;
phase = 0.0;
position = (32.00, 0, -22.00);
},
{
type = flasher;
color = { hue = 310; };
initially_on = no;
phase = 0.1;
position = (29.25, 0.0, -15.25);
},
{
type = flasher;
color = { hue = 310; };
initially_on = no;
phase = 0.2;
position = (26.50, 0.0, -8.50);
},
{
type = flasher;
color = { hue = 310; };
initially_on = no;
phase = 0.3;
position = (23.75, 0.0, -1.75);
},
{
type = flasher;
color = { hue = 310; };
initially_on = no;
phase = 0.4;
position = (21.00, 0.0, 5.00);
},
{
type = flasher;
color = { hue = 260; };
initially_on = no;
phase = 0.0;
position = (-16.0, 10.0, -32.0);
},
{
type = flasher;
color = { hue = 310; };
initially_on = no;
phase = 0.25;
position = (16.0, 10.0, -32.0);
}
);
thrust = 50;
weapon_facings = 1;
weapon_position_aft = "0.0 -8.0 -32.0";
weapon_position_forward = "0.0 -3.33 21.33";
weapon_position_port = "-23.75 0.0 -1.75";
weapon_position_starboard = "23.75 0.0 -1.75";
};
"oolite_template_viper-pursuit" =
{
like_ship = "oolite_template_viper";
is_template = 1;
max_flight_speed = 360;
roles = "wingman";
thrust = 36;
};
"oolite_template_worm" =
{
aft_eject_position = "0.0 5.0 -9.5";
ai_type = "oolite-shuttleAI.js";
cargo_type = "CARGO_NOT_CARGO";
energy_recharge_rate = 2;
exhaust = ("0.0 0.0 -17.5 7.0 6.0 1.5");
forward_weapon_type = "WEAPON_NONE";
hyperspace_motor = no;
is_template = 1;
likely_cargo = 1;
max_cargo = 2;
max_energy = 75;
max_flight_pitch = 1;
max_flight_roll = 2;
max_flight_speed = 110;
missile_launch_position = "0.0 -6.5 13.0";
missiles = 0;
model = "worm_redux.dat";
name = "Worm";
roles = "shuttle";
thrust = 12;
weapon_facings = 1;
weapon_position_aft = "0.0 -4.8 -17.5";
weapon_position_forward = "0.0 -4.4 15.5";
weapon_position_port = "-12.5 -3.0 -2.5";
weapon_position_starboard = "12.5 -3.0 -2.5";
};
"oolite_template_worm-miner" =
{
like_ship = "oolite_template_worm";
is_template = 1;
ai_type = "oolite-scavengerAI.js";
energy_recharge_rate = 1.85;
forward_weapon_type = "WEAPON_MINING_LASER";
has_scoop = yes;
max_cargo = 5;
max_energy = 55;
max_flight_speed = 100;
materials =
{
"worm_redux.png" = { diffuse_map = "worm_redux1.png"; };
};
roles = "miner";
};
// wreckage
"oolite_template_wreckage-component" =
{
ai_type = "nullAI.plist";
cargo_type = "CARGO_NOT_CARGO";
energy_recharge_rate = 0;
forward_weapon_type = "WEAPON_NONE";
fragment_chance = 0.2;
is_template = 1;
max_energy = 2000;
max_flight_pitch = 2;
max_flight_roll = 2;
max_flight_speed = 500;
model = "wreck1.dat";
name = "Wreckage";
roles = "wreckage";
scan_class = "CLASS_NO_DRAW";
thrust = 0;
counts_as_kill = false;
};
/* Begin entity definitions. Graphics-modifying OXPs should
* generally extend or copy these entries. OXPs should like_ship
* these entries if they want their variant to look like
* replacements provided by other OXPs. */
"adder" =
{
like_ship="oolite_template_adder";
};
"adder-player" =
{
like_ship = "oolite_template_adder-player";
};
"alloy" =
{
like_ship = "oolite_template_alloy";
};
"anaconda" =
{
like_ship = "oolite_template_anaconda";
};
"anaconda-pirate" = // Added in 1.79
{
like_ship = "oolite_template_anaconda-pirate";
};
"anaconda-player" =
{
like_ship = "oolite_template_anaconda-player";
};
"asp" =
{
like_ship = "oolite_template_asp";
};
"asp-cloaked" =
{
like_ship = "oolite_template_asp-cloaked";
};
"asp-player" =
{
like_ship = "oolite_template_asp-player";
};
"asteroid" =
{
like_ship = "oolite_template_asteroid";
};
"asteroid-alternative" =
{
like_ship = "oolite_template_asteroid";
model = "asteroid1.dat";
};
"oolite-cinder" =
{
like_ship = "oolite_template_cinder";
};
"oolite-cinder-alternative" =
{
like_ship = "oolite_template_cinder";
model = "asteroid1.dat";
};
"oolite-cinder-small" =
{
like_ship = "oolite_template_cinder-small";
};
"oolite-cinder-small-alternative" =
{
like_ship = "oolite_template_cinder-small";
model = "boulder1.dat";
};
"barrel" = {
like_ship = "oolite_template_barrel";
};
"boa" =
{
like_ship = "oolite_template_boa";
};
"boa-pirate" = // Added in 1.79
{
like_ship = "oolite_template_boa-pirate";
};
"boa-player" =
{
like_ship = "oolite_template_boa-player";
};
"boa-mk2" =
{
like_ship = "oolite_template_boa-mk2";
};
"boa-mk2-pirate" = // Added in 1.79
{
like_ship = "oolite_template_boa-mk2-pirate";
};
"boa-mk2-player" =
{
like_ship = "oolite_template_boa-mk2-player";
};
"boulder" =
{
like_ship = "oolite_template_boulder";
};
"boulder-alternative" =
{
like_ship = "oolite_template_boulder";
model = "boulder1.dat";
};
"buoy" =
{
like_ship = "oolite_template_buoy";
};
"buoy-witchpoint" =
{
"like_ship" = "oolite_template_buoy-witchpoint";
};
"cloaking-device" =
{
like_ship = "oolite_template_cloaking-device";
};
"cobra3-trader" =
{
like_ship = "oolite_template_cobra3-trader";
};
"cobra3-alternate" =
{
like_ship = "oolite_template_cobra3-alternate";
};
"cobra3-pirate" =
{
like_ship = "oolite_template_cobra3-pirate";
};
"cobra3-player" =
{
like_ship = "oolite_template_cobra3-player";
};
"cobramk1" =
{
like_ship = "oolite_template_cobramk1";
};
"cobramk1-alt" =
{
like_ship = "oolite_template_cobramk1-alt";
};
"cobramk1-miner" =
{
like_ship = "oolite_template_cobramk1-miner";
};
"cobramk1-player" =
{
like_ship = "oolite_template_cobramk1-player";
};
"constrictor" = {
"like_ship" = "oolite_template_constrictor";
};
"coriolis-station" =
{
like_ship = "oolite_template_coriolis-station";
};
"dodecahedron-station" =
{
like_ship = "oolite_template_dodecahedron-station";
};
"ecm-proof-missile" =
{
like_ship = "oolite_template_ecm-proof-missile";
};
"escape-capsule" =
{
like_ship = "oolite_template_escape-capsule";
};
"ferdelance" =
{
like_ship = "oolite_template_ferdelance";
};
"ferdelance-player" =
{
like_ship = "oolite_template_ferdelance-player";
};
"gecko" = {
like_ship = "oolite_template_gecko";
};
"icosahedron-station" =
{
like_ship = "oolite_template_icosahedron-station";
};
krait =
{
like_ship = "oolite_template_krait";
};
mamba =
{
like_ship = "oolite_template_mamba";
};
"mamba-escort" =
{
like_ship = "oolite_template_mamba-escort";
};
"missile" =
{
like_ship = "oolite_template_missile";
};
"moray" =
{
like_ship = "oolite_template_moray";
};
"moray-player" =
{
like_ship = "oolite_template_moray-player";
};
"morayMED" =
{
like_ship = "oolite_template_morayMED";
};
"morayMED-player" =
{
like_ship = "oolite_template_morayMED-player";
};
"python" =
{
like_ship = "oolite_template_python";
};
"python-blackdog" =
{
like_ship = "oolite_template_python-blackdog";
};
"python-player" =
{
like_ship = "oolite_template_python-player";
};
"python-trader" =
{
like_ship = "oolite_template_python-trader";
};
"qbomb" =
{
like_ship = "oolite_template_qbomb";
};
"rock-hermit" =
{
like_ship = "oolite_template_rock-hermit";
};
"scarred-alloy" =
{
like_ship = "oolite_template_scarred-alloy";
};
"shuttle" =
{
like_ship = "oolite_template_shuttle";
};
"sidewinder" =
{
like_ship = "oolite_template_sidewinder";
};
"sidewinder-escort" =
{
like_ship = "oolite_template_sidewinder-escort";
};
"splinter" =
{
like_ship = "oolite_template_splinter";
};
"splinter-alternative" =
{
like_ship = "oolite_template_splinter";
model = "splinter1.dat";
};
"tharglet" =
{
like_ship = "oolite_template_tharglet";
};
"thargoid" =
{
like_ship = "oolite_template_thargoid";
};
"transporter" =
{
like_ship = "oolite_template_transporter";
};
"transporter-miner" =
{
like_ship = "oolite_template_transporter-miner";
};
viper =
{
"like_ship" = "oolite_template_viper";
};
"viper-interceptor" =
{
like_ship = "oolite_template_viper-interceptor";
};
"viper-pursuit" =
{
like_ship = "oolite_template_viper-pursuit";
};
worm =
{
like_ship = "oolite_template_worm";
};
"worm-miner" =
{
like_ship = "oolite_template_worm-miner";
};
"wreckage-component" =
{
like_ship = "oolite_template_wreckage-component";
};
"more-wreckage2" =
{
like_ship = "oolite_template_wreckage-component";
model = "wreck2.dat";
};
"more-wreckage3" =
{
like_ship = "oolite_template_wreckage-component";
model = "wreck3.dat";
};
"more-wreckage4" =
{
like_ship = "oolite_template_wreckage-component";
model = "wreck4.dat";
};
"more-wreckage5" =
{
like_ship = "oolite_template_wreckage-component";
model = "wreck5.dat";
};
/* Begin subentity definitions. Subentities do not have templates. */
"arc-detail" =
{
ai_type = "nullAI.plist";
model = "arcdetail.dat";
name = "Arc Detail";
roles = "arc-detail";
smooth = yes;
};
// subentity, doesn't need template
"ballturret" =
{
/* Standard turret.
Not used by Oolite directly, but provided as a resource for OXPs
starting with Oolite 1.72.
*/
ai_type = "nullAI.plist";
laser_color = magentaColor;
model = "oolite-ball-turret.dat";
smooth = "yes";
materials =
{
"back_metal.png" =
{
shininess = 15;
specular_color = (0.75, 0.75, 0.75, 1.0);
};
"oolite-ball-turret.png" =
{
shininess = 15;
specular_color = (0.75, 0.75, 0.75, 1.0);
};
};
name = "Ball Turret";
roles = "ballturret";
setup_actions = ( initialiseTurret );
thrust = 1;
weapon_energy = 25;
};
dock =
{
ai_type = "nullAI.plist";
model = "dock.dat";
name = "Docking Slit (Vertical)";
roles = "docking-slit-vertical";
};
"dock-flat" =
{
ai_type = "nullAI.plist";
model = "dock-flat.dat";
name = "Docking Slit (horizontal)";
roles = "docking-slit-horizontal";
};
"hermit-docking-slit" =
{
ai_type = "nullAI.plist";
model = "rock-dock.dat";
name = "Docking Slit";
roles = "docking-slit";
};
"hermitage" =
{
ai_type = "nullAI.plist";
model = "rock-box.dat";
name = "Rock Hermit living area";
roles = "rock-box";
};
"strut" =
{
ai_type = "nullAI.plist";
model = "strut.dat";
name = "Strut 10-10-30";
roles = "strut";
unpiloted = yes;
};
/* Special entity definitions required by Oolite. There should be
* no need to override these by OXP. */
"oolite-cargopod-virtual" =
{
/* Used to pack holds without requiring massive allocation of
* cargo data. */
like_ship = "oolite_template_barrel";
roles = "oolite-template-cargopod";
};
"oolite-dock-virtual" =
{
/* Used for virtual docks for stations without a defined dock
* subentity. Almost all parameters are ignored; this is just
* provided for backward compatibility. */
ai_type = "nullAI.plist";
model = "alloy.dat";
name = "Docking Slit (virtual)";
roles = "docking-slit-virtual";
};
"oolite-unknown-ship" =
{
/* Pseudo-ship shown when selecting a saved game using an unknown
* ship type, or a broken demo ship model. */
materials =
{
"qmrk" =
{
diffuse_color = "42 40 40";
diffuse_map = "";
emission_color = "200 175 25";
shininess = 16;
specular_color = "20 40 115";
};
};
model = "oolite-unknown-ship.dat";
name = "Question Mark";
roles = "oolite-unknown-ship";
smooth = yes;
};
}