NPC-shields OXP

From Elite Wiki
Jump to: navigation, search

Introduction

This OXP gives shields to NPCs, together with an optical effect if your hit their shields. (The optical effect requires 'full shaders' mode.)

Overview

One difference between the player ship and NPCs in Oolite is that the player ship has shields as an extra layer of protection, while NPCs haven't. They rely on their energy only.

This OXP simulates shields for NPCs. Each ship will get a value for its shield strength when it is created, adding a layer of protection against damage, just like with the player ship. This makes it harder to kill NPCs, therefore this OXP has a direct impact on game play.

All ships get a shield strength of 128, just like player shields. The only difference being that the player ship has two separate front and aft shields, while NPCs only have one.

As long as there is still shield strength left, the ship won't sustain energy damage. Instead the shield strength will decrease until there is nothing left. When the shields are absorbing a hit, the ship will glow red. This optical effect only works with full shaders.

Shields are recharged from the energy banks, as long as the ship has full energy.

Disabling shields (note to ship designers)

You can exclude any ship of yours from getting shields through this OXP. You can do this by using the script_info-key in shipdata.plist. Insert a value named npc_shields and set it to no. Now your ship won't get shields through this OXP.

If you want to copy and paste, this is what it looks like in OpenStep:

"script_info" =         {
    "npc_shields" = no;
};

And this is what it looks like in XML:

<key>script_info</key>
<dict>
	<key>npc_shields</key>
	<string>no</string>
</dict>

Minimum Requirements

NPC-shields.oxp v 1.1 requires at least Oolite 1.75.

Download Location

NPC-shields.oxp v 1.1 is available for download via box.com.

Installation

Move or copy the file NPC-shields.oxp from its folder into your AddOns folder. Where that resides depends on your installation. Restart Oolite.