Add fragment cannon modifications

This commit is contained in:
Cmdr McDonald
2016-11-30 12:18:47 +00:00
parent 0257098a08
commit 72b206cfef
8 changed files with 120 additions and 49 deletions

View File

@@ -1,3 +1,7 @@
#2.2.5
* Fix rate of fire for burst lasers
* Add fragment cannon modifications
#2.2.4
* Fix incorrect ID for class 5 luxury passenger cabin
* Add damage type modifier

60
dist/index.js vendored
View File

@@ -6286,7 +6286,7 @@ module.exports = {
power: .65,
range: 3e3,
rating: "F",
rof: 4.735,
rof: 2,
thermload: .4,
type: "T"
}, {
@@ -6297,7 +6297,7 @@ module.exports = {
burstrof: 17,
class: 1,
cost: 8600,
damage: 1.22,
damage: 1.2,
distdraw: .27,
edID: 128049404,
eddbID: 835,
@@ -6310,7 +6310,7 @@ module.exports = {
power: .64,
range: 3e3,
rating: "G",
rof: 5.28,
rof: 2.23,
thermload: .3,
type: "T"
}, {
@@ -6334,7 +6334,7 @@ module.exports = {
power: .6,
range: 3e3,
rating: "G",
rof: 4.795,
rof: 1.92,
thermload: .2,
type: "T"
}, {
@@ -6360,7 +6360,7 @@ module.exports = {
pp: "Archon Delaine",
range: 600,
rating: "F",
rof: 7.615,
rof: 1.98,
thermload: .3,
type: "T"
}, {
@@ -6371,7 +6371,7 @@ module.exports = {
burstrof: 11,
class: 2,
cost: 23e3,
damage: 3.53,
damage: 3.5,
distdraw: .63,
edID: 128049401,
eddbID: 833,
@@ -6384,7 +6384,7 @@ module.exports = {
power: 1.05,
range: 3e3,
rating: "E",
rof: 3.695,
rof: 1.6,
thermload: .8,
type: "T"
}, {
@@ -6408,7 +6408,7 @@ module.exports = {
power: 1.04,
range: 3e3,
rating: "F",
rof: 4.2,
rof: 1.78,
thermload: .7,
type: "T"
}, {
@@ -6419,7 +6419,7 @@ module.exports = {
burstrof: 15,
class: 2,
cost: 162800,
damage: 1.72,
damage: 1.74,
distdraw: .31,
edID: 128049408,
eddbID: 839,
@@ -6432,7 +6432,7 @@ module.exports = {
power: .98,
range: 3e3,
rating: "F",
rof: 3.93,
rof: 1.57,
thermload: .4,
type: "T"
}, {
@@ -6443,7 +6443,7 @@ module.exports = {
burstrof: 7,
class: 3,
cost: 140400,
damage: 7.74,
damage: 7.75,
distdraw: 1.39,
edID: 128049402,
eddbID: 834,
@@ -6456,7 +6456,7 @@ module.exports = {
power: 1.66,
range: 3e3,
rating: "D",
rof: 2.685,
rof: 1.2,
thermload: 1.7,
type: "T"
}, {
@@ -6467,7 +6467,7 @@ module.exports = {
burstrof: 9,
class: 3,
cost: 281600,
damage: 5.16,
damage: 5.18,
distdraw: 1.16,
edID: 128049406,
eddbID: 837,
@@ -6480,7 +6480,7 @@ module.exports = {
power: 1.65,
range: 3e3,
rating: "E",
rof: 3.215,
rof: 1.4,
thermload: 1.4,
type: "T"
}, {
@@ -6491,7 +6491,7 @@ module.exports = {
burstrof: 11,
class: 3,
cost: 800400,
damage: 3.53,
damage: 3.54,
distdraw: .63,
edID: 128049409,
eddbID: 840,
@@ -6504,7 +6504,7 @@ module.exports = {
power: 1.57,
range: 3e3,
rating: "E",
rof: 3.115,
rof: 1.272,
thermload: .8,
type: "T"
}, {
@@ -6528,7 +6528,7 @@ module.exports = {
power: 2.58,
range: 3e3,
rating: "E",
rof: 1.565,
rof: .8,
thermload: 4.5,
type: "T"
}, {
@@ -6552,7 +6552,7 @@ module.exports = {
power: 2.59,
range: 3e3,
rating: "E",
rof: 2.14,
rof: 1,
thermload: 3.3,
type: "T"
} ],
@@ -13602,7 +13602,7 @@ module.exports = {
name: "Low emissions"
},
ProspectingLimpet_LightWeight: {
id: 63,
id: 65,
name: "Lightweight"
},
ProspectingLimpet_Reinforced: {
@@ -13735,6 +13735,12 @@ module.exports = {
type: "numeric",
method: "multiplicative"
},
burstrof: {
id: 41,
name: "burst",
type: "numeric",
method: "multiplicative"
},
clip: {
id: 4,
name: "clip",
@@ -14119,11 +14125,18 @@ module.exports = {
mod_weapon_burst_interval: {
rof: 1
},
mod_weapon_burst_rof: {},
mod_weapon_burst_size: {},
mod_weapon_burst_rof: {
burstrof: 1
},
mod_weapon_burst_size: {
burst: 1
},
mod_weapon_clip_size: {
clip: 1
},
mod_weapon_clip_size_override: {
clip: 1
},
mod_weapon_damage: {
damage: 1
},
@@ -14173,6 +14186,9 @@ module.exports = {
special_scramble_spectrum: {
rof: .1111111111111111
},
special_screening_shell: {
reload: -.5
},
special_shiftlock_canister: {
damage: -.2
},
@@ -14305,7 +14321,7 @@ module.exports = {
name: "Drag munitions"
},
special_emissive_munitions: {
id: 9,
id: 8,
name: "Emissive munitions"
},
special_feedback_cascade: {

60
dist/index.json vendored
View File

@@ -8192,7 +8192,7 @@
"power": 0.65,
"range": 3000,
"rating": "F",
"rof": 4.735,
"rof": 2,
"thermload": 0.4,
"type": "T"
},
@@ -8204,7 +8204,7 @@
"burstrof": 17,
"class": 1,
"cost": 8600,
"damage": 1.22,
"damage": 1.2,
"distdraw": 0.27,
"edID": 128049404,
"eddbID": 835,
@@ -8217,7 +8217,7 @@
"power": 0.64,
"range": 3000,
"rating": "G",
"rof": 5.28,
"rof": 2.23,
"thermload": 0.3,
"type": "T"
},
@@ -8242,7 +8242,7 @@
"power": 0.6,
"range": 3000,
"rating": "G",
"rof": 4.795,
"rof": 1.92,
"thermload": 0.2,
"type": "T"
},
@@ -8269,7 +8269,7 @@
"pp": "Archon Delaine",
"range": 600,
"rating": "F",
"rof": 7.615,
"rof": 1.98,
"thermload": 0.3,
"type": "T"
},
@@ -8281,7 +8281,7 @@
"burstrof": 11,
"class": 2,
"cost": 23000,
"damage": 3.53,
"damage": 3.5,
"distdraw": 0.63,
"edID": 128049401,
"eddbID": 833,
@@ -8294,7 +8294,7 @@
"power": 1.05,
"range": 3000,
"rating": "E",
"rof": 3.695,
"rof": 1.6,
"thermload": 0.8,
"type": "T"
},
@@ -8319,7 +8319,7 @@
"power": 1.04,
"range": 3000,
"rating": "F",
"rof": 4.2,
"rof": 1.78,
"thermload": 0.7,
"type": "T"
},
@@ -8331,7 +8331,7 @@
"burstrof": 15,
"class": 2,
"cost": 162800,
"damage": 1.72,
"damage": 1.74,
"distdraw": 0.31,
"edID": 128049408,
"eddbID": 839,
@@ -8344,7 +8344,7 @@
"power": 0.98,
"range": 3000,
"rating": "F",
"rof": 3.93,
"rof": 1.57,
"thermload": 0.4,
"type": "T"
},
@@ -8356,7 +8356,7 @@
"burstrof": 7,
"class": 3,
"cost": 140400,
"damage": 7.74,
"damage": 7.75,
"distdraw": 1.39,
"edID": 128049402,
"eddbID": 834,
@@ -8369,7 +8369,7 @@
"power": 1.66,
"range": 3000,
"rating": "D",
"rof": 2.685,
"rof": 1.2,
"thermload": 1.7,
"type": "T"
},
@@ -8381,7 +8381,7 @@
"burstrof": 9,
"class": 3,
"cost": 281600,
"damage": 5.16,
"damage": 5.18,
"distdraw": 1.16,
"edID": 128049406,
"eddbID": 837,
@@ -8394,7 +8394,7 @@
"power": 1.65,
"range": 3000,
"rating": "E",
"rof": 3.215,
"rof": 1.4,
"thermload": 1.4,
"type": "T"
},
@@ -8406,7 +8406,7 @@
"burstrof": 11,
"class": 3,
"cost": 800400,
"damage": 3.53,
"damage": 3.54,
"distdraw": 0.63,
"edID": 128049409,
"eddbID": 840,
@@ -8419,7 +8419,7 @@
"power": 1.57,
"range": 3000,
"rating": "E",
"rof": 3.115,
"rof": 1.272,
"thermload": 0.8,
"type": "T"
},
@@ -8444,7 +8444,7 @@
"power": 2.58,
"range": 3000,
"rating": "E",
"rof": 1.565,
"rof": 0.8,
"thermload": 4.5,
"type": "T"
},
@@ -8469,7 +8469,7 @@
"power": 2.59,
"range": 3000,
"rating": "E",
"rof": 2.14,
"rof": 1,
"thermload": 3.3,
"type": "T"
}
@@ -15998,7 +15998,7 @@
"name": "Low emissions"
},
"ProspectingLimpet_LightWeight": {
"id": 63,
"id": 65,
"name": "Lightweight"
},
"ProspectingLimpet_Reinforced": {
@@ -16131,6 +16131,12 @@
"type": "numeric",
"method": "multiplicative"
},
"burstrof": {
"id": 41,
"name": "burst",
"type": "numeric",
"method": "multiplicative"
},
"clip": {
"id": 4,
"name": "clip",
@@ -16515,11 +16521,18 @@
"mod_weapon_burst_interval": {
"rof": 1
},
"mod_weapon_burst_rof": {},
"mod_weapon_burst_size": {},
"mod_weapon_burst_rof": {
"burstrof": 1
},
"mod_weapon_burst_size": {
"burst": 1
},
"mod_weapon_clip_size": {
"clip": 1
},
"mod_weapon_clip_size_override": {
"clip": 1
},
"mod_weapon_damage": {
"damage": 1
},
@@ -16569,6 +16582,9 @@
"special_scramble_spectrum": {
"rof": 0.1111111111111111
},
"special_screening_shell": {
"reload": -0.5
},
"special_shiftlock_canister": {
"damage": -0.2
},
@@ -16701,7 +16717,7 @@
"name": "Drag munitions"
},
"special_emissive_munitions": {
"id": 9,
"id": 8,
"name": "Emissive munitions"
},
"special_feedback_cascade": {

View File

@@ -63,7 +63,7 @@
"PowerPlant_Armoured": { "id": 62, "name": "Armoured" },
"PowerPlant_Boosted": { "id": 63, "name": "Overcharged" },
"PowerPlant_Stealth": { "id": 64, "name": "Low emissions" },
"ProspectingLimpet_LightWeight": { "id": 63, "name": "Lightweight" },
"ProspectingLimpet_LightWeight": { "id": 65, "name": "Lightweight" },
"ProspectingLimpet_Reinforced": { "id": 66, "name": "Reinforced" },
"ProspectingLimpet_Shielded": { "id": 67, "name": "Shielded" },
"ShieldBooster_Explosive": { "id": 68, "name": "Blast resistant" },

View File

@@ -3,6 +3,7 @@
"boot": {"id": 1, "name": "boot", "type": "numeric", "method": "multiplicative"},
"brokenregen": {"id": 2, "name": "brokenregen", "type": "numeric", "method": "multiplicative"},
"burst": {"id": 3, "name": "burst", "type": "numeric", "method": "multiplicative"},
"burstrof": {"id": 41, "name": "burst", "type": "numeric", "method": "multiplicative"},
"clip": {"id": 4, "name": "clip", "type": "numeric", "method": "multiplicative"},
"damage": {"id": 5, "name": "damage", "type": "numeric", "method": "multiplicative"},
"distdraw": {"id": 6, "name": "distdraw", "type": "numeric", "method": "multiplicative"},

View File

@@ -159,11 +159,18 @@
"mod_weapon_burst_interval": {
"rof": 1
},
"mod_weapon_burst_rof": {},
"mod_weapon_burst_size": {},
"mod_weapon_burst_rof": {
"burstrof": 1
},
"mod_weapon_burst_size": {
"burst": 1
},
"mod_weapon_clip_size": {
"clip": 1
},
"mod_weapon_clip_size_override": {
"clip": 1
},
"mod_weapon_damage": {
"damage": 1
},
@@ -213,6 +220,9 @@
"special_scramble_spectrum": {
"rof": 0.1111111111111111
},
"special_screening_shell": {
"reload": -0.5
},
"special_shiftlock_canister": {
"damage": -0.2
},

View File

@@ -7,7 +7,7 @@
"special_dispersal_field": {"id": 5, "name": "Dispersal field"},
"special_distortion_field": {"id": 6, "name": "Distortion field"},
"special_drag_munitions": {"id": 7, "name": "Drag munitions"},
"special_emissive_munitions": {"id": 9, "name": "Emissive munitions"},
"special_emissive_munitions": {"id": 8, "name": "Emissive munitions"},
"special_feedback_cascade": {"id": 9, "name": "Feedback cascade"},
"special_force_shell": {"id": 10, "name": "Force shell"},
"special_high_yield_shell": {"id": 11, "name": "High yield shell"},

View File

@@ -168,7 +168,31 @@ describe('JSON Data', function() {
const blueprint = Modifications.blueprints[k];
expect(ids[blueprint.id]).toBeFalsy('ID already exists: ' + blueprint.id);
expect(blueprint.name).toBeDefined('Blueprint has no name, ID:' + blueprint.id);
ids[blueprint.idid] = true;
ids[blueprint.id] = true;
}
});
it('has valid modifications', function() {
var ids = {};
for (var k in Modifications.modifications) {
const modification = Modifications.modifications[k];
expect(ids[modification.id]).toBeFalsy('ID already exists: ' + modification.id);
expect(modification.name).toBeDefined('Modification has no name, ID:' + modification.id);
expect(modification.type).toBeDefined('Modification has no type, ID:' + modification.id);
expect(modification.method).toBeDefined('Modification has no method, ID:' + modification.id);
ids[modification.id] = true;
}
});
it('has valid specials', function() {
var ids = {};
for (var k in Modifications.specials) {
const special = Modifications.specials[k];
expect(ids[special.id]).toBeFalsy('ID already exists: ' + special.id);
expect(special.name).toBeDefined('Special has no name, ID:' + special.id);
ids[special.id] = true;
}
});