Weapon System

From Outerra
Jump to navigation Jump to search

1.0 Stations[edit | edit source]

External and internal stores, including rocket launchers, missile launchers, bombs, guns, fuel tanks, targeting pods, sensors, and laser sources, are attached to stations on the aircraft. Each station is defined by placing a dummy object, beginning with the word 'BONE', at the position where the store will be attached on the aircraft. These can be used to attach internal and external stores, and as well as ones which are fixed can be used for stations which move, such as internal weapon racks, or a sensor mounted to a pan-tilt gimbal. Each station's position and rotation is called in the aircraft's JavaScript file from the function initialize(reload), and can also be checked each update call if the station is expected to change position or rotation relative to the aircraft. Each station is numbered sequentially, typically left to right from the pilot's perspective.

Table 1.1 AH-64D/E Apache Longbow Block External Stations[edit | edit source]

Type BONE_station_## position rotation (deg)
Stations BONE_station_01 left wing tip x:0, y:90, z:0
BONE_station_02 left outboard pylon x:3.5, y:0, z:0
BONE_station_03 left inboard pylon x:3.5, y:0, z:0
BONE_station_04 right inboard pylon x:3.5, y:0, z:0
BONE_station_05 right outboard pylon x:3.5, y:0, z:0
BONE_station_06 right wing tip x:0, y:-90, z:0

Table 1.2 AH-64D/E Apache Longbow Station Weapon Loadout Capacity[edit | edit source]

Weapon Launcher Type 1 2 3 4 5 6
AGM-114 Hellfire LAU-M299 RAIL 4 4 4 4
AGM-122 Sidearm LAU-7 RAIL 1 1
MK 66 Hydra-70 LAU-M261 TUBE 19 19 19 19
MK 66 Hydra-70 LAU-M260 TUBE 9 9 9 9
AIM-9 Sidewinder LAU-7 RAIL 1 1
AIM-92 Stinger ATAS RAIL 2 2
230 lb Fuel Tank NONE NONE 1 1 1 1

JavaScript Implementation[edit | edit source]

Get Position and Rotation of Fixed Station

"use strict";

//declare global variables
var geom;
var station_01_joint, station_01_pos, station_01_rot;

function initialize(reload){
  this.geom = this.get_geomob(0); // get first geometry isntance

  station_01_joint = this.geom.get_joint('station_01')
  station_01_pos = this.geom.get_joint_model_pos(station_01_joint);
  station_01_rot = this.geom.get_rot(station_01_join);
}

Update Position and Rotation of Station

function update(dt){
  station_01_pos = this.geom.get_joint_model_pos(station_01_joint);
  station_01_rot = this.geom.get_rot(station_01_join);
}

Get World ECEF Position of Station

function update(dt){
  station_01_ecef_pos = this.geom.get_pos_offset(station_01_joint);
}

Stores, Weapons and Launchers[edit | edit source]