CombatMFD

From Elite Wiki
The Combat MFD is the top left. The top 4 lines are your status, the next 5 lines are the targets, the 10th line a second target. The top right MFD is from Telescope, showing the closest targets - the bracketed one is the current target

Overview

The Combat MFD (Multi-Function Display) displays information about your ship and your enemies.

Information about your ship

Information about your target

  • name,
  • distance, mass and speed,
  • shield radius, then Front/Aft orientation display and Damaged!/Weak!/Derelict flag,
  • laser weapon type and range (after a shot),
  • status: Clean/Offender/Fugitive, if derelict then Trap or Treasure/Empty/Mined/Usable (see Towbar OXP).
  • fired missiles counter with "Hard" flag.

More information

Telescope can display the most recently detected target in the last line.

Usage & Purchase

Use the ";" and ":" keys to select an MFD and enjoy the view. ;)

  • Costs 1,000₢ and is available from TL5 and higher.
  • See MFD for more detail on managing MFDs & Priming Equipment for more details on priming oxp's such as CombatMFD.

Detail

Compatible with Telescope OXP (if locking distant targets) and ShieldEqualizer+Capacitors OXP: if shields are over 100% then either Shield Boosters are installed or Shield Capacitors are also filled.

The "Damaged!" flag is shown when the target's exhaust plumes are blinking (below 40% energy) and "Weak!" is shown when blinking strongly and sparking too with CustomShields OXP (below 20%).

If your HUD has support for this (like NumericHUDv3.25) then you will see these words near your crosshairs too. Such support means the following lines will appear in the legends section of your hud.plist:

{ equipment_required="EQ_DTADAM"; x=30; y=40; y_origin=0; height=20; width=16; text="Damaged"; alpha=0.5; },
{ equipment_required="EQ_DTAWEA"; x=30; y=40; y_origin=0; height=20; width=16; text="Weak"; alpha=0.5; },
{ equipment_required="EQ_DTADER"; x=30; y=40; y_origin=0; height=20; width=16; text="Derelict"; },

SEE indicator

The top right corner shows letters indicating how many shields, and how much armour and energy are remaining. Each letter represents 2 energy banks in strength and is ordered from the outside to the inside. Small letters indicate that only one side is up.


"SEE" indicates that you have basic Shields (2 banks=128 points) and 2*2 Energy banks filled (4 banks=256 points): as a starting Cobra Mark III at Lave.

The total length is relative to your ship's defensive strength. The strongest Andromeda has CCCCCCCCMBSAAAAAAAAHHHEEEEEEEE. :)

A letter will be changed to "-" on dropping below the half of the banks represented by this letter. "-E" indicates that less than three and more than one bank is filled.

Underscore "_" indicates equipment damage preventing regeneration: you should fix it when docked. Checked damages:


The number in the corner show the total value in your energy banks (64 points).

If you see "LAST BANK!" here instead of letters then ... well, ... you know! (Flee! ;))

Equipment indicator

Next to the shield values there are letters which show if the following equipment is installed and primed:

One-shot indicator

The space to the right from your shield percentages shows letters to indicate one-shot equipment. In order:


Custom HUD dials

  • For a more comprehensible introduction to this, see Phkb's post here.
  • The only HUD which currently (July 2023) uses these custom dials is the Vimana HUD

Oolite v1.81 provides drawCustomText: a HUD dial displaying information without an MFD.

You still must buy the CombatMFD equipment for the following but you need not display the MFD if your HUD has support for these (such as the Large and Small HUDs which come with HUDSelector).

CombatMFD fills up the following dials with values, so HUD designers can use these:

Alphabetic order                                                                    Thematic order	(target information, then player ship)
data_source   	description                                                         data_source   	description
combatAftSh	aft shield numeric value, including capacitors                      combatSCTDist	distance of space compass target
combatAftShP	aft shield percent value, over 100% if upgraded                     combatNewTelT	name of the newest target detected by Telescope
combatAlt	altitude over the nearest planet, moon or sun in km                 combatTName		full name of the current target
combatAltR	altitude over a planet, moon or sun in radius                       combatTDist 	distance of the current target
combatCredits	credits of player                                                   combatTSpeed	speed of the current target
combatCTemp	cabin temperature                                                   combatTRadius 	shield radius of the current target
combatDmgEq	name of the last damaged piece of equipment                         combatTEnergy 	energy of the current target, use for debug only
combatDEqNum	number of damaged pieces of equipment                               combatTDmg 		damaged/weak/derelict status of the current target
combatEnergy	energy of player ship in numeric form                               combatTLaser	laser weapon of the current target
combatEnergyP	energy of player ship in percent                                    combatTLRange	range of the target's laser weapon
combatFwSh	forward shield numeric value, including capacitors                  combatTMissNum	number of missiles fired by the target so far
combatFwShP 	forward shield percent value, over 100% if upgraded                 combatTMissile	missile type fired by the target: Normal/Hard/Unknown
combatFuel 	remaining fuel in the main tank in ly  (min. 0.0, max. 7.0)         combatTLegal	legal status of the current target (or Towbar status)
combatFuelReq	required fuel of a declared hyperjump                               combatAlt		altitude over the nearest planet, moon or sun in km
combatFuelRes 	reserve fuel in extra tanks (integer)                               combatAltR		altitude over a planet, moon or sun in radius
combatLegal	legal status of player (Clean/Offender/Fugitive)                    combatFwSh		forward shield numeric value, including capacitors
combatLegalNum	legal status of player, bounty                                      combatFwShP 	forward shield percent value, over 100% if upgraded
combatNewTelT	name of the newest target detected by Telescope                     combatAftSh		aft shield numeric value, including capacitors
combatOneShot	letters of one-shot equipment indicator (BCEGHPRU as above)         combatAftShP	aft shield percent value, over 100% if upgraded
combatSCTDist	distance of space compass target                                    combatEnergy	energy of player ship in numeric form
combatSEE	letters of SEE indicator about the player ship (CMBSAHE)            combatEnergyP	energy of player ship in percent
combatSEEMax	maximum number of ship durability: max of shield+armour+energy      combatSEEMax	maximum # of ship durability (shield+armour+energy)
combatSEENum	number of ship durability: shield+armour+energy                     combatSEENum	# of ship durability (shield+armour+energy)
combatSpeed	actual speed of player ship in m/s                                  combatSEE		letters of SEE indicator for player ship (CMBSAHE)
combatTDist 	distance of the current target                                      combatDmgEq		name of the last damaged piece of equipment
combatTDmg 	damaged/weak/derelict status of the current target                  combatDEqNum	number of damaged pieces of equipment
combatTEnergy 	energy of the current target, use for debug only                    combatOneShot	letters of one-shot equipment indicator (BCEGHPRU)
combatTLaser	laser weapon of the current target                                  combatFuel 		remaining fuel in main tank (ly: min. 0.0, max. 7.0)
combatTLegal	legal status of the current target, if derelict then Towbar status  combatFuelRes 	reserve fuel in extra tanks (integer)
combatTLRange	range of the target's laser weapon                                  combatFuelReq	required fuel of a declared hyperjump
combatTMissile	missile type fired by the target, Normal/Hard/Unknown               combatSpeed		actual speed of player ship in m/s
combatTMissNum	number of missiles fired by the target so far                       combatCTemp		cabin temperature
combatTName	full name of the current target                                     combatCredits	credits of player
combatTRadius 	shield radius of the current target                                 combatLegal		legal status of player (Clean/Offender/Fugitive)
combatTSpeed	speed of the current target                                         combatLegalNum	legal status of player, bounty

The current target is that which has been targeted on the View Screen (visible if STE is installed), the space compass target is that of the Compass (or the ASC), the Telescope "targets" are those listed on the Telescope MFD

Numeric values are centered in a 28 character wide field by default, texts are left aligned (you can align to right in a hud plist with align=1).

The default width of centered fields is adjustable in the worldScripts.combat_MFD.$DW variable.

If $DW is 0, then all fields will be left aligned.

If $DW is negative, then right aligned in the given width.


Using the drawCustomBar: selector HUDs can give graphical feedback about the following values:

data_source   	description
combatAftShBar	aft shield bar including capacitors
combatCargoBar	how filled the cargo bay of player ship
combatFwShBar	forward shield bar including capacitors
combatSEEBar	total durability bar of player ship based on the SEE indicator
combatSLBar	service level bar of player ship

See this example to add a service level bar to your HUD (the yellow "hull" bar below in the left middle of the HUD) - see Maintenance.


Original and Large HUDs use many custom dials (available in HUDSelector): CombatMFD1.9.png


For example the speed value needs the following code in the dials section in the plist of your HUD:

{
	data_source = "combatSpeed";
	selector = "drawCustomText:";
//	alert_conditions = 2; //uncomment if you want to see in green alert only
	alpha = 1.0;
	height = 13;
	width = 15;
	x = 151;
	y = 87;
	y_origin = -1;
},


OXP developers can reach all data in worldScripts.combat_MFD.$Data object using the same data_source key names, so for speed use $Data.combatSpeed .

The access of worldScript name is slow, so you should get a pointer once in startUp:

this.startUp = function() {
	this.$combatWS = worldScripts.combat_MFD; //slow access for the pointer, one time only
}
this.$displaySpeed = function() {
	if( this.$combatWS ) //must check CombatMFD existence to prevent an error
		player.consoleMessage( this.$combatWS.$Data.combatSpeed ); //fast access
	else log(this.name, "Can not display speed value, CombatMFD OXP is missing");
}


The $DataArray contain all available data_source keys.

this.$combatKeyIsExists = function( key ) {
	if( this.$combatWS && this.$combatWS.$DataArray.indexOf( key ) > -1 )
		return true;
	else return false;
}


The $DataShow can disable the display of any data in the HUD:

this.$disableKey = function(combatKey) {
	if( this.$combatWS ) this.$combatWS.$DataShow[combatKey] = false;
}

Dependencies

Oolite 1.79 or later.

Instructions

Do not unzip the .oxz file, just move into the AddOns folder of your Oolite installation.

License

This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License version 4.0. If you are re-using any piece of this OXP, please let me know by sending an e-mail to norbylite@gmail.com.

Downloads

Forum

Make your comments in this topic.


Changelog

2024.04.18. v1.19 Added closure in $showCombatInfo function.
                  Limited altimeter value to 3 decimal places when less than 1km.
2024.02.24. v1.18 Small code tweaks.
2023.10.24. v1.17 Better handling of Shield Cycler (previous version). 
                  Correct player speed value display when FICC in use.
2023.10.22. v1.16 Hide compass distance for Manual Witchspace Alignment jump target.
2023.10.15. v1.15 Speed values are taken directly from entity speed property when below the maxspeed value.
2020.11.23. v1.14 Adds target's mass to MFD.
2020.11.18. v1.13 Shows Shield Cycler mode (Equal, Forward, Aft or Disabled).
2015.10.03. v1.12 Show Auto ECM and Turret Toggler active status if installed.
                  Do not display 0 as bounty and damaged equipments if none.
                  Fixed a bug if both HardShips and IronHide Armour are installed.
2015.05.18. v1.11 Speed formula updated for time forwarding in TorusToSun v1.5.
2015.01.08. v1.10 Small fix of a harmless message in Oolite 1.80, thanks to phkb.
2014.10.20. v1.9  Custom dials of player always calculated, dials of target need the equipment.
                  Altitude custom dial in km added.
2014.10.16. v1.8  HUD dials added, needing Oolite 1.81 and support in HUD plist.
2014.10.11. v1.7  Telescope displays the newest detected target in the last line.
                  Fuel display counts additional FuelTank, DuplexFuelTank, ExtraFuelTanks and
                  the reserve fuel of Andromeda as well.
                  Better energy feedback for ships with a single energy bank.
2014.08.11. v1.6  Damaged, Weak and Derelict display on HUDs with support for this feature.
                  Show FW instead of 8x when TorusToSun use time forwarding at max. speed.
2014.07.24. v1.5  Equipment cost raised to 1000cr due to the MFD pricing thread.
                  Show Torus multiplier after player speed if Torus To Sun is installed.
                  Line length fine tune with hair spaces, thanks to spara.
2014.07.09. v1.4  SEE and One shot indicators added.
                  Player legal status added.
                  Missile counter with "Hard" flag added.
                  Energy and Shields percents are rounded to 10 for better readability.
                  Target Front/Aft orientation display.
                  Speed display uses velocity for Q-Charger.
                  A fix against garbage-collected timer in log.
2014.07.07. v1.3  Information added in top and bottom right hand corners.
                  Speed labels removed to prevent twitching.
                  A small fix about Telescope's distant targets.
2014.07.06. v1.2  Show the name of the most recent damaged piece of equipment.
                  Show the target's laser type and range after a shot.
                  Energy and Shields are displayed in percentages only.
2014.07.05. v1.1  Must buy Combat MFD as equipment.
                  Legal status display now needs Scanner Targeting Enhancement.
                  Show Telescope distant target names without km.
                  Can show Empty, Mined and Usable ship status with Towbar.
                  Wormhole target supported with Wormhole Scanner equipment.
2014.07.02. v1.0  Some more information displayed by Norby.
2014.06.30. v0.1  Some information displayed by Zireael.

Quick Facts

Levelindicator0.png
0-{{{2}}}
Version Released License Features Category Author(s) Feedback
1.19 2024-04-19 CC BY-NC-SA 4 Data about your ship and your target HUDs OXPs Norby BB-Link


Gameplay and Balance Indicator

Tag-colour-blue.png

Vital information about your target's shields, lasers, missiles fired etc.