In the last decades, combats and mining have been increasing steadily and have been the source of a growing number of debris floating in and outside the lanes.
Up to recently, those debris simply disintegrated on the shields of passing ships. But the newer alloys used in the construction of newer ships form much more resistant debris. The mining industry is more and more subject to profit pressures, leading miners to use methods that leave behind more and bigger rock debris.
As a result, debris that hit ships travelling at high speed do more and more often noticeable damage. The energy of the impact easily absorbed by the forward shield, but by the end of this decade, if activity on the lanes continues to increase in the current exponential way, impacts from debris are expected to wear down very quickly shields. Worse, should the shield go down, the debris may be able to pierce through the hull and cause internal damage to the ship.
As a consequence, commanders are strongly advised to keep an eye on their shields when using either their Witchdrive injectors or their Torus drive, and are strongly discouraged to use them without the protection of a shield.
---
This OXP attempts to correct the relative absence of downsides for Witchdrive injectors and Torus drive, which provide easy ways to escape compromised situations, by weakening the forward shield when the player use either of them.
This is directly inspired from the Q-charger OXP, that I try to tweak in parallel in order to achieve similar gameplay changes. But it requires serious work, so I wanted to prototype and submit those ideas with a script as simple as possible.
Here it is:
Code: Select all
this.name = "speed-fix.js";
this.author = "Astrobe";
this.copyright = "This script is hereby placed in the public domain.";
this.version = "0.1";
this.description = "High speed damages shield.";
this.licence = "see copyright";
"use strict";
this.startUp = function()
{
log(this.name, "Started correctly");
this.speedCheckTimer= new Timer(this, speedCheck, 0, 1.0);
}
this.speedCheck=function()
{
var speed=player.ship.speed;
var damage=10*Vector3D.random().magnitude();
if(damage<3) damage=0;
if(speed > 8*player.ship.maxSpeed)
{
damage*=2;
// player.ship.fuel-=0.1;
}
if(speed > 2*player.ship.maxSpeed)
{
if(player.ship.forwardShield>=damage) player.ship.forwardShield-=damage;
else
{
player.ship.takeInternalDamage();
player.ship.energy-=damage;
}
}
}
I would also like to charge a fuel cost for Torus drive, but I have yet to find a way to disengage or disable the Torus drive when the tanks are empty.