CustomShields

From Elite Wiki
Revision as of 14:51, 8 November 2022 by Cholmondely (talk | contribs) (Added rating & a_c's tweak)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
CustomShields.jpg

Overview

CommonSense 'Outside-the-Box' Design Studios Ltd. is happy to bring you the long awaited realization of shield flasher and damage effects to Oolite. As well, in this oxp is the first realistic forward/aft shield simulation for the npcs that works nearly identical to that found on the players own ship and which offers a new mix of balance and strategy to player ship combat, dogfighting in particular. The oxp is customizable for both eye candy and game mechanics. Compatibility and balance with other oxps is therefore insured. Have it your way and enjoy.

See more description and screenshots in this forum topic.

Detail

Shield flasher effects at last!!!

A brainstorm happened to me in the first week of August 2012 and after taking a modified NPC-shields OXP and attaching some code as a test I realized that it would be possible to use flashers as shield effects without modifying any ships and would be 100% compatible with most oxps. The real challenge was using vectors, as I used to suck at them, but now I have a little understanding.

The other thing I realized only a few weeks later was how to give a more 3-D feel to the effect by adding flashers to represent the tunneling of lasers through the shield. It adds a lot to the effect and feel of it. Currently I use vectors to plot the impact point of the attackers laser with the shield and this will improve in 1.77 for accuracy and speed with all the new JS commands. The direction from the player's ship to the impact on the player's ship is used to position a shield flash effect so one can see the flash of impact as well as the normal tunneling effect.

When the shields are down, hits on the hull produce sparks and even blown panels occasionally. Rarely, an unprotected hit can produce a visible ship damage effect to both player and npc. This part is still a work-in-progress with 5 or 6 effects still to be completed. Still, one is included that works reasonably well. This is a fuel leak caused by a hull breach with a visible venting of a dull blue gas from the ship of which some can be scooped by player or npcs. This was created with flashers as well. Anyway, this is something to play with until all the other damage effects are finished.

I know a lot of people have been wanting this for a long time and I was tired of waiting so here you go, enjoy, and have fun!

Credits

  • Commander McLane for the NPCshields.oxp to use as an experimental template.
  • cim for providing a link to a one-poly model.
spara, JazHaz, Shipbuilder and Commander McLane for playtesting, comments and posting results on potential bugs and other issues, many thanks.
Thargoid for suggesting to use the shipAttackedByCloaked event.
Eric Walch for a good scripted cargo example in Cargo Wrecks and teasers.
  • All the viewtopics and people that talked about this and gave me ideas. Everyone that said it could not be done, which made me go ahead and do it.
-Sincerely, CommonSenseOTB.

License

  • Author: CommonSenseOTB
  • License: CC BY-NC-SA 3 with clauses, see below
  • Version: 0.83
  • Requires: Oolite v.1.79 or newer

License clauses

This OXP is released under the Creative Commons Attribution - Non-Commercial - Share Alike 3.0 license with the following clauses:

  • Attribution to the author CommonSenseOTB
  • Whilst you are free (and encouraged) to re-use any of the scripting in this OXP, the usage must be distinct from that within this OXP. Unique identifiers such as (but not limited to) unique shipdata.plist entity keys, mission variables, script names (this.name), equipment identity strings (EQ_), description list arrays and entity roles must not be re-used without prior agreement. Basically if it's unique or would identify or overwrite anything in the original OXP, then you may not re-use it (for obvious compatibility reasons).
  • rebundling of this OXP within another distribution is permitted as long as it is unchanged.
The following derivates however are permitted and except from the above:
  • the conversion of files between XML and openStep.
  • the merging of files with other files of the same type from other OXPs.
  • The license information (either as this file or merged into a larger one) must be included in the OXP.
  • Even though it is not compulsory, if you are re-using any sizable or recognisable piece of this OXP, please let me know :)


Downloads

or

Tweaks

The shields awarded to the NPCs make them much tougher - but this is tweakable.

  • 1. Extract the oxz to the AddOns folder using the Expansions Manager.
  • 2. Remove the oxz from the Managed Addons folder by selecting the Remove Expansion Pack option in the Expansion Manager.
  • 3. Rename the extracted expansion pack by changing its .off extension to .oxp.
  • 4. Go inside the Scripts folder of the extracted oxp and open the file customshields.js using a text editor.
  • 5. Find this block at the start:
//------------------YOU MAY CHANGE THESE DEFAULTS--------------
//
//----------------------------------------------------------------------------------------------------
this.customshieldsshieldtype = "advanced";     //choices: "advanced" , "basic" , "off"
//----------------------------------------------------------------------------------------------------
this.customshieldsshieldtypethargoid = "basic";     //choices: "basic" , "off"
//----------------------------------------------------------------------------------------------------
this.customshieldsshieldcolor = "multicolor";     //choices: "multicolor" , "blue" , "pink"
//----------------------------------------------------------------------------------------------------
this.customshieldsshieldcolorthargoid = "green";     //choices: "green"
//----------------------------------------------------------------------------------------------------
this.customshieldsdamageeffects = "sparks";     //choices: "damage" , "blownpanels" , "sparks" , "off"
//----------------------------------------------------------------------------------------------------
this.customshieldsmissilemineexplosioneffects = "on";     //choices: "on" , "off" 
//----------------------------------------------------------------------------------------------------
//
//-------------DO NOT CHANGE ANYTHING BELOW THIS POINT---------[/code]
  • 6. Change the line
this.customshieldsshieldtype = "advanced";     //choices: "advanced" , "basic" , "off"
   to
this.customshieldsshieldtype = "basic";     //choices: "advanced" , "basic" , "off"

Done. Now the game is back to its original balance (and the visual effects are still present).

Tweak courtesy of a_c

Links

Similar OXP's

  • Battle Damage causes damage to hulls when the shields are down (together with quick fixes, fuel leaks, visible damage with some oxp's, etc)
  • NPC-shields OXP - Commander McLane's original
  • N-Shields - Ngalo's 2020 version

Gameplay and Balance Indicator

Tag-colour-red.png

The awarding of shields to NPCs makes them much tougher in combat (but the game more fair!).

To change this, see Tweaks above