Proposals/Obsolete Proposals/Off-base Installations
Off-base Installations
Summary
Off-base installations are facilities built, owned and used by PHALANX. They appear on the geoscape just like bases, but unlike bases they serve a single purpose, and can not be customized by the player.
Off-base installations cost money to build and maintain. They can also be targeted and destroyed by the aliens in UFO bombing runs. Bombing runs are generated by the campaign framework, as part of the mission category that is used to make UFOs intercept PHALANX craft.
Currently planned off-base installations include the following types:
Radar Tower
These act much like the radar facility in PHALANX bases, but have inferior range.
SAM Site
These installations will attack UFOs in a small radius on the geoscape. They are excellent for providing extra defences for bases or other off-base installations, or for strengthening PHALANX' presence in areas where bases have little coverage.
UFO Yard
PHALANX stores captured UFOs in in-base UFO hangars. This is not practical for several reasons. One reason is that in tactical missions, the UFO that is supposed to be in the UFO hangar can't be displayed (some UFOs are as large as half the base). ANother reason is that UFO hangars can only hold one UFO, which has generally been ill-received.
Solution Design
The following features apply to all installation types:
- Can be placed on the geoscape at any location
- All installations can be bombed and, if they receive enough damage, destroyed.
- bombing runs are generated within the campaign framework via the "attack PHALANX craft" mission. This mission will generate a bombing run based on specified percentage.
- All installations will appear on the geoscape immediately. But each Intallation type will have a timeframe before it will become active.
Initial installation creation
- New button on the geoscape below the "Create base" button called "Create installation"
- When the button is selected, the process will be the same as base creation, the main difference will be that the popup will allow you to select which type of installation you wish to create.
- Popup
- Horizontal bar for each installation type
- Each bar will contain (from left to right) price, icon, name.
- The whole bar will be the button and will work like a standard button.
Radar Towers
Radar tower specific features:
- Radar Installations, when bombed, will instantly destroy the installation.
- Costs 10,000 Credits
Screen Design
TBD
SAM Sites
- Sam Sites, when bombed, will instantly destroy the installation.
- Costs 20,000 Credits
Screen Design
TBD
UFO yard
The proposed solution is to discard the in-base UFO hangars, and replace them with an off-base UFO Yard. The UFO yard will allow the player to store his captured UFOs there (up to a certain limit).
The UFO Yard can be targeted by the aliens. Mission spawned in the campaign framework of the "attack PHALANX craft" type should sometimes result in a UFO trying to bomb the UFO Yard. A successful bombing will destroy some or all the UFOs stored there.
- The ufo yard is the ONLY way to store ufo's in game.
- Stores ufos up to a configured limit
- Captured ufo's can be directed to any ufo yard through the standard U.N. Transfer mechanism.
- Ufo yards when bombed have a percent chance of having some or all of the stored ufo's destroyed.
- Ufo's in ufo yards are for all intents and purposes treated as though they are part of every PHALANX base
- All operations on ufo's will be modified by the distance of the base to the yard.
- Event PHALANX base may perform R&D on UFO's stored in the UFO yard, but it will take longer than normal to perform this type of R&D depending on distance of base to the ufo yard. The farther away, the slower the progress.
- Costs 30,000 Credits
Screen Design
TBD
Technical Design
Proposed struct to hold the off-base installation data.
/** @brief A installation with all it's data */ typedef struct installation_s { int idx; /**< Self link. Index in the global installation-list. */ char name[MAX_VAR]; /**< Name of the installation */ installationType_t installationType; /** type of installation. Radar, Sam Site or UFO Yard **/ qboolean founded; /**< already founded? */ vec3_t pos; /**< pos on geoscape */ /** All ufo aircraft in this installation. This used for UFO Yards. **/ aircraft_t aircraft[MAX_AIRCRAFT]; int numAircraftInInstallation; /**< How many aircraft are in this installation. */ capacities_t aircraftCapacitiy; /**< Capacity of UFO Yard. */ installationStatus_t installationStatus; /**< the current installation status */ float alienInterest; /**< How much aliens know this installation (and may attack it) */ radar_t radar; baseWeapon_t batteries[MAX_INSTALLATION_BATTERIES]; /**< Missile/Laser batteries assigned to this installation. For Sam Sites Only. */ int numBatteries; int installationDamage; /**< Hit points of base */ } installation_t;