diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/15inchItal/OTO381Azimuth.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/15inchItal/OTO381Azimuth.mwm new file mode 100644 index 000000000..34e46eec4 Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/15inchItal/OTO381Azimuth.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/15inchItal/OTO381Barrel.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/15inchItal/OTO381Barrel.mwm new file mode 100644 index 000000000..daf63a212 Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/15inchItal/OTO381Barrel.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/15inchItal/OTO381Elevation.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/15inchItal/OTO381Elevation.mwm new file mode 100644 index 000000000..817b062dc Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/15inchItal/OTO381Elevation.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/15inchItal/OTO381mm.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/15inchItal/OTO381mm.mwm new file mode 100644 index 000000000..588c3bd38 Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/15inchItal/OTO381mm.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/15inchItal/OTO381mm_BS1.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/15inchItal/OTO381mm_BS1.mwm new file mode 100644 index 000000000..6b429955e Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/15inchItal/OTO381mm_BS1.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/15inchItal/OTO381mm_BS2.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/15inchItal/OTO381mm_BS2.mwm new file mode 100644 index 000000000..2bf53f5bb Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/15inchItal/OTO381mm_BS2.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/15inchItal/OTO381mm_BS3.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/15inchItal/OTO381mm_BS3.mwm new file mode 100644 index 000000000..6ce6e4965 Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/15inchItal/OTO381mm_BS3.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/16InchBrit/UK16Inch45Azi.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/16InchBrit/UK16Inch45Azi.mwm new file mode 100644 index 000000000..a69a82f0d Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/16InchBrit/UK16Inch45Azi.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/16InchBrit/UK16Inch45Barrel.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/16InchBrit/UK16Inch45Barrel.mwm new file mode 100644 index 000000000..09d81dcb1 Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/16InchBrit/UK16Inch45Barrel.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/16InchBrit/UK16Inch45Elevation.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/16InchBrit/UK16Inch45Elevation.mwm new file mode 100644 index 000000000..561ce92ad Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/16InchBrit/UK16Inch45Elevation.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/16InchBrit/UK16Inch45Mark1.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/16InchBrit/UK16Inch45Mark1.mwm new file mode 100644 index 000000000..3191110ff Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/16InchBrit/UK16Inch45Mark1.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/16InchBrit/UK16Inch45Mark1_BS1.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/16InchBrit/UK16Inch45Mark1_BS1.mwm new file mode 100644 index 000000000..0f358ebc2 Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/16InchBrit/UK16Inch45Mark1_BS1.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/16InchBrit/UK16Inch45Mark1_BS2.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/16InchBrit/UK16Inch45Mark1_BS2.mwm new file mode 100644 index 000000000..740244376 Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/16InchBrit/UK16Inch45Mark1_BS2.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/16InchBrit/UK16Inch45Mark1_BS3.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/16InchBrit/UK16Inch45Mark1_BS3.mwm new file mode 100644 index 000000000..d4bc8d9ad Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/16InchBrit/UK16Inch45Mark1_BS3.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/16InchBrit/UK_16InchAPShell.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/16InchBrit/UK_16InchAPShell.mwm new file mode 100644 index 000000000..e2acc05df Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/16InchBrit/UK_16InchAPShell.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/4.5 inch/4_5EleTwin.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/4.5 inch/4_5EleTwin.mwm new file mode 100644 index 000000000..c67031455 Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/4.5 inch/4_5EleTwin.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/4.5 inch/4_5Inch45.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/4.5 inch/4_5Inch45.mwm new file mode 100644 index 000000000..060e3b4c3 Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/4.5 inch/4_5Inch45.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/4.5 inch/4_5Inch45_BS1.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/4.5 inch/4_5Inch45_BS1.mwm new file mode 100644 index 000000000..9c866d17a Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/4.5 inch/4_5Inch45_BS1.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/4.5 inch/4_5Inch45_BS2.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/4.5 inch/4_5Inch45_BS2.mwm new file mode 100644 index 000000000..6fb87ba04 Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/4.5 inch/4_5Inch45_BS2.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/4.5 inch/4_5Inch45_BS3.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/4.5 inch/4_5Inch45_BS3.mwm new file mode 100644 index 000000000..659c2caad Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/4.5 inch/4_5Inch45_BS3.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/4.5 inch/4_5InchAziTwin.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/4.5 inch/4_5InchAziTwin.mwm new file mode 100644 index 000000000..bf2abd5cd Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/4.5 inch/4_5InchAziTwin.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/4.5 inch/4_5InchTwinBarrelFlat.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/4.5 inch/4_5InchTwinBarrelFlat.mwm new file mode 100644 index 000000000..6bcbf7ff9 Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/4.5 inch/4_5InchTwinBarrelFlat.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15Cm55TwinAzimuth.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15Cm55TwinAzimuth.mwm new file mode 100644 index 000000000..a04be9470 Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15Cm55TwinAzimuth.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15Cm55TwinBarrel.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15Cm55TwinBarrel.mwm new file mode 100644 index 000000000..112384c69 Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15Cm55TwinBarrel.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15Cm55TwinCasemate.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15Cm55TwinCasemate.mwm new file mode 100644 index 000000000..2604382e6 Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15Cm55TwinCasemate.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15Cm55TwinCasemate_BS1.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15Cm55TwinCasemate_BS1.mwm new file mode 100644 index 000000000..2a1db3256 Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15Cm55TwinCasemate_BS1.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15Cm55TwinCasemate_BS2.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15Cm55TwinCasemate_BS2.mwm new file mode 100644 index 000000000..9cf362745 Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15Cm55TwinCasemate_BS2.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15Cm55TwinCasemate_BS3.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15Cm55TwinCasemate_BS3.mwm new file mode 100644 index 000000000..03604747a Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15Cm55TwinCasemate_BS3.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15Cm55TwinElevation.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15Cm55TwinElevation.mwm new file mode 100644 index 000000000..f0e280cbd Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15Cm55TwinElevation.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15CmBarrel.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15CmBarrel.mwm new file mode 100644 index 000000000..38a0758b9 Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15CmBarrel.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15cm45CaseAzimuth.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15cm45CaseAzimuth.mwm new file mode 100644 index 000000000..c9851fc82 Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15cm45CaseAzimuth.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15cm45CaseBarrel.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15cm45CaseBarrel.mwm new file mode 100644 index 000000000..4a11040a9 Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15cm45CaseBarrel.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15cm45CaseElevation.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15cm45CaseElevation.mwm new file mode 100644 index 000000000..39bf17759 Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15cm45CaseElevation.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15cm45Casemate.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15cm45Casemate.mwm new file mode 100644 index 000000000..d0316ecf8 Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15cm45Casemate.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15cm45Casemate_BS1.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15cm45Casemate_BS1.mwm new file mode 100644 index 000000000..c9224324d Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15cm45Casemate_BS1.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15cm45Casemate_BS2.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15cm45Casemate_BS2.mwm new file mode 100644 index 000000000..716accfbf Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15cm45Casemate_BS2.mwm differ diff --git a/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15cm45Casemate_BS3.mwm b/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15cm45Casemate_BS3.mwm new file mode 100644 index 000000000..6a64ec71a Binary files /dev/null and b/Weapon Mods/Stable/TaitMod_Fletcher/Models/Casemates/15cm45Casemate_BS3.mwm differ diff --git a/Weapon Mods/TaitMod_Fletcher/Data/BlockCategories.sbc b/Weapon Mods/TaitMod_Fletcher/Data/BlockCategories.sbc index d02ebc39b..6a48cc19c 100644 --- a/Weapon Mods/TaitMod_Fletcher/Data/BlockCategories.sbc +++ b/Weapon Mods/TaitMod_Fletcher/Data/BlockCategories.sbc @@ -23,9 +23,12 @@ ConveyorSorter/Mk25Rangefinder ConveyorSorter/20InchTwin ConveyorSorter/203mmTwin + ConveyorSorter/15cm45Casemate + ConveyorSorter/15Cm55TwinCasemate ConveyorSorter/FAM2BrowningTurret ConveyorSorter/OerlikonDual ConveyorSorter/OerlikonMain + ConveyorSorter/4_5Inch45 diff --git a/Weapon Mods/TaitMod_Fletcher/Data/CubeBlocks/15Cm55TwinCasemate.sbc b/Weapon Mods/TaitMod_Fletcher/Data/CubeBlocks/15Cm55TwinCasemate.sbc new file mode 100644 index 000000000..10455dc6d --- /dev/null +++ b/Weapon Mods/TaitMod_Fletcher/Data/CubeBlocks/15Cm55TwinCasemate.sbc @@ -0,0 +1,49 @@ + + + + + + ConveyorSorter + 15Cm55TwinCasemate + + [FAS] Graf Zeppelin + + [Turret Range: 5000] + [Reload: 3 Seconds/Barrel] + + [Ammo Types: HE | AP] + [Shell Range: 7km] + [Shell Speed: 1000m/s | 1100m/s] + [Damage Types: Energy | Kinetic] + + + Textures\GUI\Icons\15Cm55TwinCasemate.dds + Large + TriangleMesh + + + Models\Casemates\15Cm55TwinCasemate.mwm + + + + + + + + + + + + + + + + + + + 15Cm55TwinCasemate + Y + 150 + + + diff --git a/Weapon Mods/TaitMod_Fletcher/Data/CubeBlocks/15cm45Casemate.sbc b/Weapon Mods/TaitMod_Fletcher/Data/CubeBlocks/15cm45Casemate.sbc new file mode 100644 index 000000000..a7d404b53 --- /dev/null +++ b/Weapon Mods/TaitMod_Fletcher/Data/CubeBlocks/15cm45Casemate.sbc @@ -0,0 +1,50 @@ + + + + + + ConveyorSorter + 15cm45Casemate + + [FAS] Baden + + [Turret Range: 5000] + [Reload: 3 Seconds/Barrel] + + [Ammo Types: HE | AP] + [Shell Range: 7km] + [Shell Speed: 1000m/s | 1100m/s] + [Damage Types: Energy | Kinetic] + + + Textures\GUI\Icons\15cm45Casemate.dds + Large + TriangleMesh + + + Models\Casemates\15cm45Casemate.mwm + + + + + + + + + + + + + + + + + + + + 15cm45Casemate + Y + 150 + + + \ No newline at end of file diff --git a/Weapon Mods/TaitMod_Fletcher/Data/CubeBlocks/4_5Inch45.sbc b/Weapon Mods/TaitMod_Fletcher/Data/CubeBlocks/4_5Inch45.sbc new file mode 100644 index 000000000..ae6764780 --- /dev/null +++ b/Weapon Mods/TaitMod_Fletcher/Data/CubeBlocks/4_5Inch45.sbc @@ -0,0 +1,47 @@ + + + + + + ConveyorSorter + 4_5Inch45 + + [FAS] Dido + + [Turret Range: 4000] + [Reload: 1.5 Seconds/Barrel] + + [Ammo Types: HE | SAP] + [Shell Range: 5km] + [Shell Speed: 850m/s | 1500m/s] + [Damage Types: Energy | Kinetic] + [AMS capable: 50] + + Textures\GUI\Icons\4_5Inch45.dds + Large + TriangleMesh + + + Models\4.5 inch\4_5Inch45.mwm + + + + + + + + + + + + 150 + Z + Y + + + + 4_5Inch45 + 100 + + + \ No newline at end of file diff --git a/Weapon Mods/TaitMod_Fletcher/Data/CubeBlocks/OTO381mm.sbc b/Weapon Mods/TaitMod_Fletcher/Data/CubeBlocks/OTO381mm.sbc new file mode 100644 index 000000000..5151ef13e --- /dev/null +++ b/Weapon Mods/TaitMod_Fletcher/Data/CubeBlocks/OTO381mm.sbc @@ -0,0 +1,46 @@ + + + + + + ConveyorSorter + OTO381mm + + [FAS] Roma + + [Turret Range: 7000] + [Reload: 3 Seconds/Barrel] + + [Ammo Types: HE | AP] + [Shell Range: 10km] + [Shell Speed: 1200m/s | 1300m/s] + [Damage Types: Energy | Kinetic] + + Textures\GUI\Icons\OTO381mm.dds + Large + TriangleMesh + + + Models\15inchItal\OTO381mm.mwm + + + + + + + + + + + + + + + + OTO381mm + Z + Y + 225 + + + \ No newline at end of file diff --git a/Weapon Mods/TaitMod_Fletcher/Data/CubeBlocks/UK16Inch45Mark1.sbc b/Weapon Mods/TaitMod_Fletcher/Data/CubeBlocks/UK16Inch45Mark1.sbc new file mode 100644 index 000000000..c2d1ad8f2 --- /dev/null +++ b/Weapon Mods/TaitMod_Fletcher/Data/CubeBlocks/UK16Inch45Mark1.sbc @@ -0,0 +1,47 @@ + + + + + + ConveyorSorter + UK16Inch45Mark1 + + [FAS] Nelson + + [Turret Range: 7000] + [Reload: 3 Seconds/Barrel] + + [Ammo Types: HE | AP] + [Shell Range: 10km] + [Shell Speed: 1200m/s | 1300m/s] + [Damage Types: Energy | Kinetic] + + Textures\GUI\Icons\UK16Inch45Mark1.dds + Large + TriangleMesh + + + Models\16InchBrit\UK16Inch45Mark1.mwm + Damage_WeapExpl_Damaged + + + + + + + + + + + + + + + + UK16Inch45Mark1 + Z + Y + 225 + + + \ No newline at end of file diff --git a/Weapon Mods/TaitMod_Fletcher/Data/Scripts/CoreParts/Guided/25InSemiGuideTorp.cs b/Weapon Mods/TaitMod_Fletcher/Data/Scripts/CoreParts/Guided/25InSemiGuideTorp.cs index c80d3fcb5..4f71f7a6c 100644 --- a/Weapon Mods/TaitMod_Fletcher/Data/Scripts/CoreParts/Guided/25InSemiGuideTorp.cs +++ b/Weapon Mods/TaitMod_Fletcher/Data/Scripts/CoreParts/Guided/25InSemiGuideTorp.cs @@ -507,7 +507,7 @@ partial class Parts }, Grids = new GridSizeDef { - Large = 1f, // Multiplier for damage against large grids. + Large = 1.5f, // Multiplier for damage against large grids. Small = -1f, // Multiplier for damage against small grids. }, Armor = new ArmorDef diff --git a/Weapon Mods/TaitMod_Fletcher/Data/Scripts/CoreParts/Guided/25InchQuinTorpLaunch.cs b/Weapon Mods/TaitMod_Fletcher/Data/Scripts/CoreParts/Guided/25InchQuinTorpLaunch.cs index c81d9f61b..f47b9c2fa 100644 --- a/Weapon Mods/TaitMod_Fletcher/Data/Scripts/CoreParts/Guided/25InchQuinTorpLaunch.cs +++ b/Weapon Mods/TaitMod_Fletcher/Data/Scripts/CoreParts/Guided/25InchQuinTorpLaunch.cs @@ -85,7 +85,7 @@ partial class Parts { HardPoint = new HardPointDef { PartName = "Neptune quintuple torpedo launcher", // Name of the weapon in terminal, should be unique for each weapon definition that shares a SubtypeId (i.e. multiweapons). - DeviateShotAngle = 1f, // Projectile inaccuracy in degrees. + DeviateShotAngle = 15f, // Projectile inaccuracy in degrees. AimingTolerance = 35f, // How many degrees off target a turret can fire at. 0 - 180 firing angle. AimLeadingPrediction = Accurate, // Level of turret aim prediction; Off, Basic, Accurate, Advanced DelayCeaseFire = 0, // Measured in game ticks (6 = 100ms, 60 = 1 second, etc..). Length of time the weapon continues firing after trigger is released - while a target is available. diff --git a/Weapon Mods/TaitMod_Fletcher/Data/Scripts/CoreParts/Large Calibre/508HE.cs b/Weapon Mods/TaitMod_Fletcher/Data/Scripts/CoreParts/Large Calibre/508HE.cs index 81bf86dde..a61f04f54 100644 --- a/Weapon Mods/TaitMod_Fletcher/Data/Scripts/CoreParts/Large Calibre/508HE.cs +++ b/Weapon Mods/TaitMod_Fletcher/Data/Scripts/CoreParts/Large Calibre/508HE.cs @@ -106,7 +106,7 @@ partial class Parts }, Shields = new ShieldDef { - Modifier = 5f, // Multiplier for damage against shields. + Modifier = 7.5f, // Multiplier for damage against shields. Type = Default, // Damage vs healing against shields; Default, Heal BypassModifier = -1f, // If greater than zero, the percentage of damage that will penetrate the shield. }, diff --git a/Weapon Mods/TaitMod_Fletcher/Data/Scripts/CoreParts/Large Calibre/BL 16 Inch 45 Mark 1.cs b/Weapon Mods/TaitMod_Fletcher/Data/Scripts/CoreParts/Large Calibre/BL 16 Inch 45 Mark 1.cs new file mode 100644 index 000000000..4898756d7 --- /dev/null +++ b/Weapon Mods/TaitMod_Fletcher/Data/Scripts/CoreParts/Large Calibre/BL 16 Inch 45 Mark 1.cs @@ -0,0 +1,202 @@ +using static Scripts.Structure; +using static Scripts.Structure.WeaponDefinition; +using static Scripts.Structure.WeaponDefinition.ModelAssignmentsDef; +using static Scripts.Structure.WeaponDefinition.HardPointDef; +using static Scripts.Structure.WeaponDefinition.HardPointDef.Prediction; +using static Scripts.Structure.WeaponDefinition.TargetingDef.BlockTypes; +using static Scripts.Structure.WeaponDefinition.TargetingDef.Threat; +using static Scripts.Structure.WeaponDefinition.HardPointDef.HardwareDef; +using static Scripts.Structure.WeaponDefinition.HardPointDef.HardwareDef.HardwareType; + +namespace Scripts { + partial class Parts { + // Don't edit above this line + WeaponDefinition FA16Inch45Mark1 => new WeaponDefinition + { + Assignments = new ModelAssignmentsDef + { + MountPoints = new[] { + new MountPointDef { + SubtypeId = "UK16Inch45Mark1", // Block Subtypeid. Your Cubeblocks contain this information + SpinPartId = "", // For weapons with a spinning barrel such as Gatling Guns. Subpart_Boomsticks must be written as Boomsticks. + MuzzlePartId = "MissileTurretBarrels", // The subpart where your muzzle empties are located. This is often the elevation subpart. Subpart_Boomsticks must be written as Boomsticks. + AzimuthPartId = "MissileTurretBase1", // Your Rotating Subpart, the bit that moves sideways. + ElevationPartId = "MissileTurretBarrels", // Your Elevating Subpart, that bit that moves up. + DurabilityMod = 0.25f, // GeneralDamageMultiplier, 0.25f = 25% damage taken. + IconName = "TestIcon.dds" // Overlay for block inventory slots, like reactors, refineries, etc. + }, + + }, + Muzzles = new[] { + "muzzle_missile_1", + "muzzle_missile_2", + "muzzle_missile_3", + + + + + }, + Ejector = "", // Optional; empty from which to eject "shells" if specified. + Scope = "camera", // Where line of sight checks are performed from. Must be clear of block collision. + }, + Targeting = new TargetingDef + { + Threats = new[] { + Grids, // Types of threat to engage: Grids, Projectiles, Characters, Meteors, Neutrals + }, + SubSystems = new[] { + Thrust, Utility, Offense, Power, Production, Any, // Subsystem targeting priority: Offense, Utility, Power, Production, Thrust, Jumping, Steering, Any + }, + ClosestFirst = true, // Tries to pick closest targets first (blocks on grids, projectiles, etc...). + IgnoreDumbProjectiles = false, // Don't fire at non-smart projectiles. + LockedSmartOnly = false, // Only fire at smart projectiles that are locked on to parent grid. + MinimumDiameter = 0, // Minimum radius of threat to engage. + MaximumDiameter = 0, // Maximum radius of threat to engage; 0 = unlimited. + MaxTargetDistance = 7000, // Maximum distance at which targets will be automatically shot at; 0 = unlimited. + MinTargetDistance = 0, // Minimum distance at which targets will be automatically shot at. + TopTargets = 4, // Maximum number of targets to randomize between; 0 = unlimited. + TopBlocks = 0, // Maximum number of blocks to randomize between; 0 = unlimited. + StopTrackingSpeed = 0, // Do not track threats traveling faster than this speed; 0 = unlimited. + }, + HardPoint = new HardPointDef + { + PartName = "16 Inch 45 Mark 1", // Name of the weapon in terminal, should be unique for each weapon definition that shares a SubtypeId (i.e. multiweapons). + DeviateShotAngle = 0.15f, // Projectile inaccuracy in degrees. + AimingTolerance = 1f, // How many degrees off target a turret can fire at. 0 - 180 firing angle. + AimLeadingPrediction = Advanced, // Level of turret aim prediction; Off, Basic, Accurate, Advanced + DelayCeaseFire = 0, // Measured in game ticks (6 = 100ms, 60 = 1 second, etc..). Length of time the weapon continues firing after trigger is released - while a target is available. + AddToleranceToTracking = true, // Allows turret to track to the edge of the AimingTolerance cone instead of dead centre. + CanShootSubmerged = false, // Whether the weapon can be fired underwater when using WaterMod. + + Ui = new UiDef + { + RateOfFire = false, // Enables terminal slider for changing rate of fire. + DamageModifier = false, // Enables terminal slider for changing damage per shot. + ToggleGuidance = false, // Enables terminal option to disable smart projectile guidance. + EnableOverload = false, // Enables terminal option to turn on Overload; this allows energy weapons to double damage per shot, at the cost of quadrupled power draw and heat gain, and 2% self damage on overheat. + }, + Ai = new AiDef + { + TrackTargets = true, // Whether this weapon tracks its own targets, or (for multiweapons) relies on the weapon with PrimaryTracking enabled for target designation. Turrets Need this set to True. + TurretAttached = true, // Whether this weapon is a turret and should have the UI and API options for such. Turrets Need this set to True. + TurretController = true, // Whether this weapon can physically control the turret's movement. Turrets Need this set to True. + PrimaryTracking = true, // For multiweapons: whether this weapon should designate targets for other weapons on the platform without their own tracking. + LockOnFocus = false, // If enabled, weapon will only fire at targets that have been HUD selected AND locked onto by pressing Numpad 0. + SuppressFire = false, // If enabled, weapon can only be fired manually. + OverrideLeads = false, // Disable target leading on fixed weapons, or allow it for turrets. + }, + HardWare = new HardwareDef + { + RotateRate = 0.004f, // Max traversal speed of azimuth subpart in radians per tick (0.1 is approximately 360 degrees per second). + ElevateRate = 0.004f, // Max traversal speed of elevation subpart in radians per tick. + MinAzimuth = -180, + MaxAzimuth = 180, + MinElevation = -10, + MaxElevation = 45, + HomeAzimuth = 0, // Default resting rotation angle + HomeElevation = 4, // Default resting elevation + InventorySize = 1f, // Inventory capacity in kL. + IdlePower = 0.25f, // Constant base power draw in MW. + FixedOffset = false, // Deprecated. + Offset = Vector(x: 0, y: 0, z: 0), // Offsets the aiming/firing line of the weapon, in metres. + Type = BlockWeapon, // What type of weapon this is; BlockWeapon, HandWeapon, Phantom + CriticalReaction = new CriticalDef + { + Enable = false, // Enables Warhead behaviour. + DefaultArmedTimer = 120, // Sets default countdown duration. + PreArmed = false, // Whether the warhead is armed by default when placed. Best left as false. + TerminalControls = true, // Whether the warhead should have terminal controls for arming and detonation. + AmmoRound = "", // Optional. If specified, the warhead will always use this ammo on detonation rather than the currently selected ammo. + }, + }, + Other = new OtherDef + { + ConstructPartCap = 0, // Maximum number of blocks with this weapon on a grid; 0 = unlimited. + RotateBarrelAxis = 0, // For spinning barrels, which axis to spin the barrel around; 0 = none. + EnergyPriority = 0, // Deprecated. + MuzzleCheck = false, // Whether the weapon should check LOS from each individual muzzle in addition to the scope. + Debug = false, // Force enables debug mode. + RestrictionRadius = 9f, // Prevents other blocks of this type from being placed within this distance of the centre of the block. + CheckInflatedBox = false, // If true, the above distance check is performed from the edge of the block instead of the centre. + CheckForAnyWeapon = false, // If true, the check will fail if ANY weapon is present, not just weapons of the same subtype. + }, + Loading = new LoadingDef + { + RateOfFire = 600, // Set this to 3600 for beam weapons. This is how fast your Gun fires. + BarrelsPerShot = 1, // How many muzzles will fire a projectile per fire event. + TrajectilesPerBarrel = 1, // Number of projectiles per muzzle per fire event. + SkipBarrels = 0, // Number of muzzles to skip after each fire event. + ReloadTime = 1, // Measured in game ticks (6 = 100ms, 60 = 1 seconds, etc..). + MagsToLoad = 3, // Number of physical magazines to consume on reload. + DelayUntilFire = 0, // How long the weapon waits before shooting after being told to fire. Measured in game ticks (6 = 100ms, 60 = 1 seconds, etc..). + HeatPerShot = 1, // Heat generated per shot. + MaxHeat = 70000, // Max heat before weapon enters cooldown (70% of max heat). + Cooldown = .95f, // Percentage of max heat to be under to start firing again after overheat; accepts 0 - 0.95 + HeatSinkRate = 9000000, // Amount of heat lost per second. + DegradeRof = false, // Progressively lower rate of fire when over 80% heat threshold (80% of max heat). + ShotsInBurst = 1, // Use this if you don't want the weapon to fire an entire physical magazine in one go. Should not be more than your magazine capacity. + DelayAfterBurst = 180, // How long to spend "reloading" after each burst. Measured in game ticks (6 = 100ms, 60 = 1 seconds, etc..). + FireFull = false, // Whether the weapon should fire the full magazine (or the full burst instead if ShotsInBurst > 0), even if the target is lost or the player stops firing prematurely. + GiveUpAfter = false, // Whether the weapon should drop its current target and reacquire a new target after finishing its magazine or burst. + BarrelSpinRate = 0, // Visual only, 0 disables and uses RateOfFire. + DeterministicSpin = false, // Spin barrel position will always be relative to initial / starting positions (spin will not be as smooth). + SpinFree = true, // Spin barrel while not firing. + StayCharged = false, // Will start recharging whenever power cap is not full. + MaxActiveProjectiles = 0, // Maximum number of projectiles in flight + MaxReloads = 0, // Maximum number of reloads in the LIFETIME of a weapon + }, + Audio = new HardPointAudioDef + { + PreFiringSound = "", // Audio for warmup effect. + FiringSound = "FAHeavyShot", // Audio for firing. + FiringSoundPerShot = true, // Whether to replay the sound for each shot, or just loop over the entire track while firing. + ReloadSound = "", // Sound SubtypeID, for when your Weapon is in a reloading state + NoAmmoSound = "", + HardPointRotationSound = "RotateTurretL", // Audio played when turret is moving. + BarrelRotationSound = "WepShipGatlingRotation", + FireSoundEndDelay = 120, // How long the firing audio should keep playing after firing stops. Measured in game ticks(6 = 100ms, 60 = 1 seconds, etc..). + FireSoundNoBurst = true, // Don't stop firing sound from looping when delaying after burst. + }, + Graphics = new HardPointParticleDef + { + + Effect1 = new ParticleDef + { + Name = "Tait_Big_Gun_Go_Boom", // Smoke_LargeGunShot + Color = Color(red: 1, green: 1, blue: 1, alpha: 1), + Offset = Vector(x: 0, y: 0, z: 0), + + Extras = new ParticleOptionDef + { + Loop = false, + Restart = false, + MaxDistance = 1500, + MaxDuration = 0, + Scale = 1.0f, + }, + }, + Effect2 = new ParticleDef + { + Name = "",//Muzzle_Flash_Large + Color = Color(red: 10, green: 0, blue: 0, alpha: 1), + Offset = Vector(x: 0, y: 0, z: 0), + + Extras = new ParticleOptionDef + { + Loop = false, + Restart = false, + MaxDistance = 350, + MaxDuration = 0, + Scale = 0.3f, + }, + }, + }, + }, + Ammos = new[] { + FA380mmShell,FA380mmAPShell // Must list all primary, shrapnel, and pattern ammos. + }, + //Upgrades = UpgradeModules, + }; + // Don't edit below this line. + } +} diff --git a/Weapon Mods/TaitMod_Fletcher/Data/Scripts/CoreParts/Large Calibre/OTO 381mm.cs b/Weapon Mods/TaitMod_Fletcher/Data/Scripts/CoreParts/Large Calibre/OTO 381mm.cs new file mode 100644 index 000000000..df7c9bfbd --- /dev/null +++ b/Weapon Mods/TaitMod_Fletcher/Data/Scripts/CoreParts/Large Calibre/OTO 381mm.cs @@ -0,0 +1,202 @@ +using static Scripts.Structure; +using static Scripts.Structure.WeaponDefinition; +using static Scripts.Structure.WeaponDefinition.ModelAssignmentsDef; +using static Scripts.Structure.WeaponDefinition.HardPointDef; +using static Scripts.Structure.WeaponDefinition.HardPointDef.Prediction; +using static Scripts.Structure.WeaponDefinition.TargetingDef.BlockTypes; +using static Scripts.Structure.WeaponDefinition.TargetingDef.Threat; +using static Scripts.Structure.WeaponDefinition.HardPointDef.HardwareDef; +using static Scripts.Structure.WeaponDefinition.HardPointDef.HardwareDef.HardwareType; + +namespace Scripts { + partial class Parts { + // Don't edit above this line + WeaponDefinition FA381mmOTO => new WeaponDefinition + { + Assignments = new ModelAssignmentsDef + { + MountPoints = new[] { + new MountPointDef { + SubtypeId = "OTO381mm", // Block Subtypeid. Your Cubeblocks contain this information + SpinPartId = "", // For weapons with a spinning barrel such as Gatling Guns. Subpart_Boomsticks must be written as Boomsticks. + MuzzlePartId = "MissileTurretBarrels", // The subpart where your muzzle empties are located. This is often the elevation subpart. Subpart_Boomsticks must be written as Boomsticks. + AzimuthPartId = "MissileTurretBase1", // Your Rotating Subpart, the bit that moves sideways. + ElevationPartId = "MissileTurretBarrels", // Your Elevating Subpart, that bit that moves up. + DurabilityMod = 0.25f, // GeneralDamageMultiplier, 0.25f = 25% damage taken. + IconName = "TestIcon.dds" // Overlay for block inventory slots, like reactors, refineries, etc. + }, + + }, + Muzzles = new[] { + "muzzle_missile_1", + "muzzle_missile_2", + "muzzle_missile_3", + + + + + }, + Ejector = "", // Optional; empty from which to eject "shells" if specified. + Scope = "camera", // Where line of sight checks are performed from. Must be clear of block collision. + }, + Targeting = new TargetingDef + { + Threats = new[] { + Grids, // Types of threat to engage: Grids, Projectiles, Characters, Meteors, Neutrals + }, + SubSystems = new[] { + Thrust, Utility, Offense, Power, Production, Any, // Subsystem targeting priority: Offense, Utility, Power, Production, Thrust, Jumping, Steering, Any + }, + ClosestFirst = true, // Tries to pick closest targets first (blocks on grids, projectiles, etc...). + IgnoreDumbProjectiles = false, // Don't fire at non-smart projectiles. + LockedSmartOnly = false, // Only fire at smart projectiles that are locked on to parent grid. + MinimumDiameter = 0, // Minimum radius of threat to engage. + MaximumDiameter = 0, // Maximum radius of threat to engage; 0 = unlimited. + MaxTargetDistance = 7000, // Maximum distance at which targets will be automatically shot at; 0 = unlimited. + MinTargetDistance = 0, // Minimum distance at which targets will be automatically shot at. + TopTargets = 4, // Maximum number of targets to randomize between; 0 = unlimited. + TopBlocks = 0, // Maximum number of blocks to randomize between; 0 = unlimited. + StopTrackingSpeed = 0, // Do not track threats traveling faster than this speed; 0 = unlimited. + }, + HardPoint = new HardPointDef + { + PartName = "OTO 381mm", // Name of the weapon in terminal, should be unique for each weapon definition that shares a SubtypeId (i.e. multiweapons). + DeviateShotAngle = 0.15f, // Projectile inaccuracy in degrees. + AimingTolerance = 1f, // How many degrees off target a turret can fire at. 0 - 180 firing angle. + AimLeadingPrediction = Advanced, // Level of turret aim prediction; Off, Basic, Accurate, Advanced + DelayCeaseFire = 0, // Measured in game ticks (6 = 100ms, 60 = 1 second, etc..). Length of time the weapon continues firing after trigger is released - while a target is available. + AddToleranceToTracking = true, // Allows turret to track to the edge of the AimingTolerance cone instead of dead centre. + CanShootSubmerged = false, // Whether the weapon can be fired underwater when using WaterMod. + + Ui = new UiDef + { + RateOfFire = false, // Enables terminal slider for changing rate of fire. + DamageModifier = false, // Enables terminal slider for changing damage per shot. + ToggleGuidance = false, // Enables terminal option to disable smart projectile guidance. + EnableOverload = false, // Enables terminal option to turn on Overload; this allows energy weapons to double damage per shot, at the cost of quadrupled power draw and heat gain, and 2% self damage on overheat. + }, + Ai = new AiDef + { + TrackTargets = true, // Whether this weapon tracks its own targets, or (for multiweapons) relies on the weapon with PrimaryTracking enabled for target designation. Turrets Need this set to True. + TurretAttached = true, // Whether this weapon is a turret and should have the UI and API options for such. Turrets Need this set to True. + TurretController = true, // Whether this weapon can physically control the turret's movement. Turrets Need this set to True. + PrimaryTracking = true, // For multiweapons: whether this weapon should designate targets for other weapons on the platform without their own tracking. + LockOnFocus = false, // If enabled, weapon will only fire at targets that have been HUD selected AND locked onto by pressing Numpad 0. + SuppressFire = false, // If enabled, weapon can only be fired manually. + OverrideLeads = false, // Disable target leading on fixed weapons, or allow it for turrets. + }, + HardWare = new HardwareDef + { + RotateRate = 0.004f, // Max traversal speed of azimuth subpart in radians per tick (0.1 is approximately 360 degrees per second). + ElevateRate = 0.004f, // Max traversal speed of elevation subpart in radians per tick. + MinAzimuth = -180, + MaxAzimuth = 180, + MinElevation = -10, + MaxElevation = 45, + HomeAzimuth = 0, // Default resting rotation angle + HomeElevation = 4, // Default resting elevation + InventorySize = 1f, // Inventory capacity in kL. + IdlePower = 0.25f, // Constant base power draw in MW. + FixedOffset = false, // Deprecated. + Offset = Vector(x: 0, y: 0, z: 0), // Offsets the aiming/firing line of the weapon, in metres. + Type = BlockWeapon, // What type of weapon this is; BlockWeapon, HandWeapon, Phantom + CriticalReaction = new CriticalDef + { + Enable = false, // Enables Warhead behaviour. + DefaultArmedTimer = 120, // Sets default countdown duration. + PreArmed = false, // Whether the warhead is armed by default when placed. Best left as false. + TerminalControls = true, // Whether the warhead should have terminal controls for arming and detonation. + AmmoRound = "", // Optional. If specified, the warhead will always use this ammo on detonation rather than the currently selected ammo. + }, + }, + Other = new OtherDef + { + ConstructPartCap = 0, // Maximum number of blocks with this weapon on a grid; 0 = unlimited. + RotateBarrelAxis = 0, // For spinning barrels, which axis to spin the barrel around; 0 = none. + EnergyPriority = 0, // Deprecated. + MuzzleCheck = false, // Whether the weapon should check LOS from each individual muzzle in addition to the scope. + Debug = false, // Force enables debug mode. + RestrictionRadius = 9f, // Prevents other blocks of this type from being placed within this distance of the centre of the block. + CheckInflatedBox = false, // If true, the above distance check is performed from the edge of the block instead of the centre. + CheckForAnyWeapon = false, // If true, the check will fail if ANY weapon is present, not just weapons of the same subtype. + }, + Loading = new LoadingDef + { + RateOfFire = 600, // Set this to 3600 for beam weapons. This is how fast your Gun fires. + BarrelsPerShot = 1, // How many muzzles will fire a projectile per fire event. + TrajectilesPerBarrel = 1, // Number of projectiles per muzzle per fire event. + SkipBarrels = 0, // Number of muzzles to skip after each fire event. + ReloadTime = 1, // Measured in game ticks (6 = 100ms, 60 = 1 seconds, etc..). + MagsToLoad = 3, // Number of physical magazines to consume on reload. + DelayUntilFire = 0, // How long the weapon waits before shooting after being told to fire. Measured in game ticks (6 = 100ms, 60 = 1 seconds, etc..). + HeatPerShot = 1, // Heat generated per shot. + MaxHeat = 70000, // Max heat before weapon enters cooldown (70% of max heat). + Cooldown = .95f, // Percentage of max heat to be under to start firing again after overheat; accepts 0 - 0.95 + HeatSinkRate = 9000000, // Amount of heat lost per second. + DegradeRof = false, // Progressively lower rate of fire when over 80% heat threshold (80% of max heat). + ShotsInBurst = 1, // Use this if you don't want the weapon to fire an entire physical magazine in one go. Should not be more than your magazine capacity. + DelayAfterBurst = 180, // How long to spend "reloading" after each burst. Measured in game ticks (6 = 100ms, 60 = 1 seconds, etc..). + FireFull = false, // Whether the weapon should fire the full magazine (or the full burst instead if ShotsInBurst > 0), even if the target is lost or the player stops firing prematurely. + GiveUpAfter = false, // Whether the weapon should drop its current target and reacquire a new target after finishing its magazine or burst. + BarrelSpinRate = 0, // Visual only, 0 disables and uses RateOfFire. + DeterministicSpin = false, // Spin barrel position will always be relative to initial / starting positions (spin will not be as smooth). + SpinFree = true, // Spin barrel while not firing. + StayCharged = false, // Will start recharging whenever power cap is not full. + MaxActiveProjectiles = 0, // Maximum number of projectiles in flight + MaxReloads = 0, // Maximum number of reloads in the LIFETIME of a weapon + }, + Audio = new HardPointAudioDef + { + PreFiringSound = "", // Audio for warmup effect. + FiringSound = "FAHeavyShot", // Audio for firing. + FiringSoundPerShot = true, // Whether to replay the sound for each shot, or just loop over the entire track while firing. + ReloadSound = "", // Sound SubtypeID, for when your Weapon is in a reloading state + NoAmmoSound = "", + HardPointRotationSound = "RotateTurretL", // Audio played when turret is moving. + BarrelRotationSound = "WepShipGatlingRotation", + FireSoundEndDelay = 120, // How long the firing audio should keep playing after firing stops. Measured in game ticks(6 = 100ms, 60 = 1 seconds, etc..). + FireSoundNoBurst = true, // Don't stop firing sound from looping when delaying after burst. + }, + Graphics = new HardPointParticleDef + { + + Effect1 = new ParticleDef + { + Name = "Tait_Big_Gun_Go_Boom", // Smoke_LargeGunShot + Color = Color(red: 1, green: 1, blue: 1, alpha: 1), + Offset = Vector(x: 0, y: 0, z: 0), + + Extras = new ParticleOptionDef + { + Loop = false, + Restart = false, + MaxDistance = 1500, + MaxDuration = 0, + Scale = 1.0f, + }, + }, + Effect2 = new ParticleDef + { + Name = "",//Muzzle_Flash_Large + Color = Color(red: 10, green: 0, blue: 0, alpha: 1), + Offset = Vector(x: 0, y: 0, z: 0), + + Extras = new ParticleOptionDef + { + Loop = false, + Restart = false, + MaxDistance = 350, + MaxDuration = 0, + Scale = 0.3f, + }, + }, + }, + }, + Ammos = new[] { + FA380mmShell,FA380mmAPShell // Must list all primary, shrapnel, and pattern ammos. + }, + //Upgrades = UpgradeModules, + }; + // Don't edit below this line. + } +} diff --git a/Weapon Mods/TaitMod_Fletcher/Data/Scripts/CoreParts/MasterConfig.cs b/Weapon Mods/TaitMod_Fletcher/Data/Scripts/CoreParts/MasterConfig.cs index be6566915..8d8f105ed 100644 --- a/Weapon Mods/TaitMod_Fletcher/Data/Scripts/CoreParts/MasterConfig.cs +++ b/Weapon Mods/TaitMod_Fletcher/Data/Scripts/CoreParts/MasterConfig.cs @@ -23,8 +23,8 @@ internal Parts() FA16InchGun, FA380mmMLE, RangeFinderMK24, - - + FA381mmOTO, + FA16Inch45Mark1, FaBoforSingleRemodel, FaBoforTwinRemodel, FaBoforQuadRemodel, @@ -35,10 +35,12 @@ internal Parts() QuinTorpLauncher, twin508, FaM2Turret, - + FA4InchMk2, FaOerlikon20mmRemodel, - FaOerlikon20mmDualRemodel + FaOerlikon20mmDualRemodel, + FA15Cm45Casemate, + FA15Cm55TwinCasemate ); } diff --git a/Weapon Mods/TaitMod_Fletcher/Data/Scripts/CoreParts/Medium Calibre/15 Cm 45 Casemate.cs b/Weapon Mods/TaitMod_Fletcher/Data/Scripts/CoreParts/Medium Calibre/15 Cm 45 Casemate.cs new file mode 100644 index 000000000..213d8f945 --- /dev/null +++ b/Weapon Mods/TaitMod_Fletcher/Data/Scripts/CoreParts/Medium Calibre/15 Cm 45 Casemate.cs @@ -0,0 +1,199 @@ +using static Scripts.Structure; +using static Scripts.Structure.WeaponDefinition; +using static Scripts.Structure.WeaponDefinition.ModelAssignmentsDef; +using static Scripts.Structure.WeaponDefinition.HardPointDef; +using static Scripts.Structure.WeaponDefinition.HardPointDef.Prediction; +using static Scripts.Structure.WeaponDefinition.TargetingDef.BlockTypes; +using static Scripts.Structure.WeaponDefinition.TargetingDef.Threat; +using static Scripts.Structure.WeaponDefinition.HardPointDef.HardwareDef; +using static Scripts.Structure.WeaponDefinition.HardPointDef.HardwareDef.HardwareType; + +namespace Scripts { + partial class Parts { + // Don't edit above this line + WeaponDefinition FA15Cm45Casemate => new WeaponDefinition + { + Assignments = new ModelAssignmentsDef + { + MountPoints = new[] { + new MountPointDef { + SubtypeId = "15cm45Casemate", // Block Subtypeid. Your Cubeblocks contain this information + SpinPartId = "", // For weapons with a spinning barrel such as Gatling Guns. Subpart_Boomsticks must be written as Boomsticks. + MuzzlePartId = "MissileTurretBarrels", // The subpart where your muzzle empties are located. This is often the elevation subpart. Subpart_Boomsticks must be written as Boomsticks. + AzimuthPartId = "MissileTurretBase1", // Your Rotating Subpart, the bit that moves sideways. + ElevationPartId = "MissileTurretBarrels", // Your Elevating Subpart, that bit that moves up. + DurabilityMod = 0.25f, // GeneralDamageMultiplier, 0.25f = 25% damage taken. + IconName = "TestIcon.dds" // Overlay for block inventory slots, like reactors, refineries, etc. + }, + + }, + Muzzles = new[] { + "muzzle_missile_1", + + + }, + Ejector = "", // Optional; empty from which to eject "shells" if specified. + Scope = "camera", // Where line of sight checks are performed from. Must be clear of block collision. + }, + Targeting = new TargetingDef + { + Threats = new[] { + Grids, // Types of threat to engage: Grids, Projectiles, Characters, Meteors, Neutrals + }, + SubSystems = new[] { + Thrust, Utility, Offense, Power, Production, Any, // Subsystem targeting priority: Offense, Utility, Power, Production, Thrust, Jumping, Steering, Any + }, + ClosestFirst = true, // Tries to pick closest targets first (blocks on grids, projectiles, etc...). + IgnoreDumbProjectiles = false, // Don't fire at non-smart projectiles. + LockedSmartOnly = false, // Only fire at smart projectiles that are locked on to parent grid. + MinimumDiameter = 0, // Minimum radius of threat to engage. + MaximumDiameter = 0, // Maximum radius of threat to engage; 0 = unlimited. + MaxTargetDistance = 5000, // Maximum distance at which targets will be automatically shot at; 0 = unlimited. + MinTargetDistance = 0, // Minimum distance at which targets will be automatically shot at. + TopTargets = 4, // Maximum number of targets to randomize between; 0 = unlimited. + TopBlocks = 8, // Maximum number of blocks to randomize between; 0 = unlimited. + StopTrackingSpeed = 0, // Do not track threats traveling faster than this speed; 0 = unlimited. + }, + HardPoint = new HardPointDef + { + PartName = "15cm45 Casemate", // Name of the weapon in terminal, should be unique for each weapon definition that shares a SubtypeId (i.e. multiweapons). + DeviateShotAngle = 0.15f, // Projectile inaccuracy in degrees. + AimingTolerance = 2f, // How many degrees off target a turret can fire at. 0 - 180 firing angle. + AimLeadingPrediction = Advanced, // Level of turret aim prediction; Off, Basic, Accurate, Advanced + DelayCeaseFire = 0, // Measured in game ticks (6 = 100ms, 60 = 1 second, etc..). Length of time the weapon continues firing after trigger is released - while a target is available. + AddToleranceToTracking = false, // Allows turret to track to the edge of the AimingTolerance cone instead of dead centre. + CanShootSubmerged = false, // Whether the weapon can be fired underwater when using WaterMod. + + Ui = new UiDef + { + RateOfFire = false, // Enables terminal slider for changing rate of fire. + DamageModifier = false, // Enables terminal slider for changing damage per shot. + ToggleGuidance = false, // Enables terminal option to disable smart projectile guidance. + EnableOverload = false, // Enables terminal option to turn on Overload; this allows energy weapons to double damage per shot, at the cost of quadrupled power draw and heat gain, and 2% self damage on overheat. + }, + Ai = new AiDef + { + TrackTargets = true, // Whether this weapon tracks its own targets, or (for multiweapons) relies on the weapon with PrimaryTracking enabled for target designation. Turrets Need this set to True. + TurretAttached = true, // Whether this weapon is a turret and should have the UI and API options for such. Turrets Need this set to True. + TurretController = true, // Whether this weapon can physically control the turret's movement. Turrets Need this set to True. + PrimaryTracking = true, // For multiweapons: whether this weapon should designate targets for other weapons on the platform without their own tracking. + LockOnFocus = false, // If enabled, weapon will only fire at targets that have been HUD selected AND locked onto by pressing Numpad 0. + SuppressFire = false, // If enabled, weapon can only be fired manually. + OverrideLeads = false, // Disable target leading on fixed weapons, or allow it for turrets. + }, + HardWare = new HardwareDef + { + RotateRate = 0.008f, // Max traversal speed of azimuth subpart in radians per tick (0.1 is approximately 360 degrees per second). + ElevateRate = 0.006f, // Max traversal speed of elevation subpart in radians per tick. + MinAzimuth = -50, + MaxAzimuth = 50, + MinElevation = -15, + MaxElevation = 25, + HomeAzimuth = 0, // Default resting rotation angle + HomeElevation = 4, // Default resting elevation + InventorySize = 1f, // Inventory capacity in kL. + IdlePower = 0.25f, // Constant base power draw in MW. + FixedOffset = false, // Deprecated. + Offset = Vector(x: 0, y: 0, z: 0), // Offsets the aiming/firing line of the weapon, in metres. + Type = BlockWeapon, // What type of weapon this is; BlockWeapon, HandWeapon, Phantom + CriticalReaction = new CriticalDef + { + Enable = false, // Enables Warhead behaviour. + DefaultArmedTimer = 120, // Sets default countdown duration. + PreArmed = false, // Whether the warhead is armed by default when placed. Best left as false. + TerminalControls = true, // Whether the warhead should have terminal controls for arming and detonation. + AmmoRound = "", // Optional. If specified, the warhead will always use this ammo on detonation rather than the currently selected ammo. + }, + }, + Other = new OtherDef + { + ConstructPartCap = 0, // Maximum number of blocks with this weapon on a grid; 0 = unlimited. + RotateBarrelAxis = 0, // For spinning barrels, which axis to spin the barrel around; 0 = none. + EnergyPriority = 0, // Deprecated. + MuzzleCheck = false, // Whether the weapon should check LOS from each individual muzzle in addition to the scope. + Debug = false, // Force enables debug mode. + RestrictionRadius = 7, // Prevents other blocks of this type from being placed within this distance of the centre of the block. + CheckInflatedBox = false, // If true, the above distance check is performed from the edge of the block instead of the centre. + CheckForAnyWeapon = false, // If true, the check will fail if ANY weapon is present, not just weapons of the same subtype. + }, + Loading = new LoadingDef + { + RateOfFire = 600, // Set this to 3600 for beam weapons. This is how fast your Gun fires. + BarrelsPerShot = 1, // How many muzzles will fire a projectile per fire event. + TrajectilesPerBarrel = 1, // Number of projectiles per muzzle per fire event. + SkipBarrels = 0, // Number of muzzles to skip after each fire event. + ReloadTime = 1, // Measured in game ticks (6 = 100ms, 60 = 1 seconds, etc..). + MagsToLoad = 1, // Number of physical magazines to consume on reload. + DelayUntilFire = 0, // How long the weapon waits before shooting after being told to fire. Measured in game ticks (6 = 100ms, 60 = 1 seconds, etc..). + HeatPerShot = 1, // Heat generated per shot. + MaxHeat = 70000, // Max heat before weapon enters cooldown (70% of max heat). + Cooldown = .95f, // Percentage of max heat to be under to start firing again after overheat; accepts 0 - 0.95 + HeatSinkRate = 9000000, // Amount of heat lost per second. + DegradeRof = false, // Progressively lower rate of fire when over 80% heat threshold (80% of max heat). + ShotsInBurst = 1, // Use this if you don't want the weapon to fire an entire physical magazine in one go. Should not be more than your magazine capacity. + DelayAfterBurst = 100, // How long to spend "reloading" after each burst. Measured in game ticks (6 = 100ms, 60 = 1 seconds, etc..). + FireFull = false, // Whether the weapon should fire the full magazine (or the full burst instead if ShotsInBurst > 0), even if the target is lost or the player stops firing prematurely. + GiveUpAfter = false, // Whether the weapon should drop its current target and reacquire a new target after finishing its magazine or burst. + BarrelSpinRate = 0, // Visual only, 0 disables and uses RateOfFire. + DeterministicSpin = false, // Spin barrel position will always be relative to initial / starting positions (spin will not be as smooth). + SpinFree = true, // Spin barrel while not firing. + StayCharged = false, // Will start recharging whenever power cap is not full. + MaxActiveProjectiles = 0, // Maximum number of projectiles in flight + MaxReloads = 0, // Maximum number of reloads in the LIFETIME of a weapon + }, + + Audio = new HardPointAudioDef + { + PreFiringSound = "", // Audio for warmup effect. + FiringSound = "FALargeShot", // Audio for firing. + FiringSoundPerShot = true, // Whether to replay the sound for each shot, or just loop over the entire track while firing. + ReloadSound = "", // Sound SubtypeID, for when your Weapon is in a reloading state + NoAmmoSound = "", + HardPointRotationSound = "WepTurretGatlingRotate", // Audio played when turret is moving. + BarrelRotationSound = "WepShipGatlingRotation", + FireSoundEndDelay = 120, // How long the firing audio should keep playing after firing stops. Measured in game ticks(6 = 100ms, 60 = 1 seconds, etc..). + FireSoundNoBurst = true, // Don't stop firing sound from looping when delaying after burst. + }, + Graphics = new HardPointParticleDef + { + + Effect1 = new ParticleDef + { + Name = "Tait_Stole_Muzzle_Medium", // Smoke_LargeGunShot + Color = Color(red: 1, green: 1, blue: 1, alpha: 1), + Offset = Vector(x: 0, y: 0, z: 0), + + Extras = new ParticleOptionDef + { + Loop = false, + Restart = false, + MaxDistance = 1500, + MaxDuration = 0, + Scale = 1.0f, + }, + }, + Effect2 = new ParticleDef + { + Name = "",//Muzzle_Flash_Large + Color = Color(red: 10, green: 0, blue: 0, alpha: 1), + Offset = Vector(x: 0, y: 0, z: 0), + + Extras = new ParticleOptionDef + { + Loop = false, + Restart = false, + MaxDistance = 350, + MaxDuration = 0, + Scale = 0.3f, + }, + }, + }, + }, + Ammos = new[] { + APShell203, HEShell203 // Must list all primary, shrapnel, and pattern ammos. + }, + //Upgrades = UpgradeModules, + }; + // Don't edit below this line. + } +} diff --git a/Weapon Mods/TaitMod_Fletcher/Data/Scripts/CoreParts/Medium Calibre/15 Cm 55 Twin Casemate.cs b/Weapon Mods/TaitMod_Fletcher/Data/Scripts/CoreParts/Medium Calibre/15 Cm 55 Twin Casemate.cs new file mode 100644 index 000000000..f021c5f59 --- /dev/null +++ b/Weapon Mods/TaitMod_Fletcher/Data/Scripts/CoreParts/Medium Calibre/15 Cm 55 Twin Casemate.cs @@ -0,0 +1,200 @@ +using static Scripts.Structure; +using static Scripts.Structure.WeaponDefinition; +using static Scripts.Structure.WeaponDefinition.ModelAssignmentsDef; +using static Scripts.Structure.WeaponDefinition.HardPointDef; +using static Scripts.Structure.WeaponDefinition.HardPointDef.Prediction; +using static Scripts.Structure.WeaponDefinition.TargetingDef.BlockTypes; +using static Scripts.Structure.WeaponDefinition.TargetingDef.Threat; +using static Scripts.Structure.WeaponDefinition.HardPointDef.HardwareDef; +using static Scripts.Structure.WeaponDefinition.HardPointDef.HardwareDef.HardwareType; + +namespace Scripts { + partial class Parts { + // Don't edit above this line + WeaponDefinition FA15Cm55TwinCasemate => new WeaponDefinition + { + Assignments = new ModelAssignmentsDef + { + MountPoints = new[] { + new MountPointDef { + SubtypeId = "15Cm55TwinCasemate", // Block Subtypeid. Your Cubeblocks contain this information + SpinPartId = "", // For weapons with a spinning barrel such as Gatling Guns. Subpart_Boomsticks must be written as Boomsticks. + MuzzlePartId = "MissileTurretBarrels", // The subpart where your muzzle empties are located. This is often the elevation subpart. Subpart_Boomsticks must be written as Boomsticks. + AzimuthPartId = "MissileTurretBase1", // Your Rotating Subpart, the bit that moves sideways. + ElevationPartId = "MissileTurretBarrels", // Your Elevating Subpart, that bit that moves up. + DurabilityMod = 0.25f, // GeneralDamageMultiplier, 0.25f = 25% damage taken. + IconName = "TestIcon.dds" // Overlay for block inventory slots, like reactors, refineries, etc. + }, + + }, + Muzzles = new[] { + "muzzle_missile_1", + "muzzle_missile_2", + + + }, + Ejector = "", // Optional; empty from which to eject "shells" if specified. + Scope = "camera", // Where line of sight checks are performed from. Must be clear of block collision. + }, + Targeting = new TargetingDef + { + Threats = new[] { + Grids, // Types of threat to engage: Grids, Projectiles, Characters, Meteors, Neutrals + }, + SubSystems = new[] { + Thrust, Utility, Offense, Power, Production, Any, // Subsystem targeting priority: Offense, Utility, Power, Production, Thrust, Jumping, Steering, Any + }, + ClosestFirst = true, // Tries to pick closest targets first (blocks on grids, projectiles, etc...). + IgnoreDumbProjectiles = false, // Don't fire at non-smart projectiles. + LockedSmartOnly = false, // Only fire at smart projectiles that are locked on to parent grid. + MinimumDiameter = 0, // Minimum radius of threat to engage. + MaximumDiameter = 0, // Maximum radius of threat to engage; 0 = unlimited. + MaxTargetDistance = 5000, // Maximum distance at which targets will be automatically shot at; 0 = unlimited. + MinTargetDistance = 0, // Minimum distance at which targets will be automatically shot at. + TopTargets = 4, // Maximum number of targets to randomize between; 0 = unlimited. + TopBlocks = 8, // Maximum number of blocks to randomize between; 0 = unlimited. + StopTrackingSpeed = 0, // Do not track threats traveling faster than this speed; 0 = unlimited. + }, + HardPoint = new HardPointDef + { + PartName = "15cm55 Twin Casemate", // Name of the weapon in terminal, should be unique for each weapon definition that shares a SubtypeId (i.e. multiweapons). + DeviateShotAngle = 0.15f, // Projectile inaccuracy in degrees. + AimingTolerance = 2f, // How many degrees off target a turret can fire at. 0 - 180 firing angle. + AimLeadingPrediction = Advanced, // Level of turret aim prediction; Off, Basic, Accurate, Advanced + DelayCeaseFire = 0, // Measured in game ticks (6 = 100ms, 60 = 1 second, etc..). Length of time the weapon continues firing after trigger is released - while a target is available. + AddToleranceToTracking = false, // Allows turret to track to the edge of the AimingTolerance cone instead of dead centre. + CanShootSubmerged = false, // Whether the weapon can be fired underwater when using WaterMod. + + Ui = new UiDef + { + RateOfFire = false, // Enables terminal slider for changing rate of fire. + DamageModifier = false, // Enables terminal slider for changing damage per shot. + ToggleGuidance = false, // Enables terminal option to disable smart projectile guidance. + EnableOverload = false, // Enables terminal option to turn on Overload; this allows energy weapons to double damage per shot, at the cost of quadrupled power draw and heat gain, and 2% self damage on overheat. + }, + Ai = new AiDef + { + TrackTargets = true, // Whether this weapon tracks its own targets, or (for multiweapons) relies on the weapon with PrimaryTracking enabled for target designation. Turrets Need this set to True. + TurretAttached = true, // Whether this weapon is a turret and should have the UI and API options for such. Turrets Need this set to True. + TurretController = true, // Whether this weapon can physically control the turret's movement. Turrets Need this set to True. + PrimaryTracking = true, // For multiweapons: whether this weapon should designate targets for other weapons on the platform without their own tracking. + LockOnFocus = false, // If enabled, weapon will only fire at targets that have been HUD selected AND locked onto by pressing Numpad 0. + SuppressFire = false, // If enabled, weapon can only be fired manually. + OverrideLeads = false, // Disable target leading on fixed weapons, or allow it for turrets. + }, + HardWare = new HardwareDef + { + RotateRate = 0.008f, // Max traversal speed of azimuth subpart in radians per tick (0.1 is approximately 360 degrees per second). + ElevateRate = 0.006f, // Max traversal speed of elevation subpart in radians per tick. + MinAzimuth = -50, + MaxAzimuth = 50, + MinElevation = -15, + MaxElevation = 25, + HomeAzimuth = 0, // Default resting rotation angle + HomeElevation = 4, // Default resting elevation + InventorySize = 1f, // Inventory capacity in kL. + IdlePower = 0.25f, // Constant base power draw in MW. + FixedOffset = false, // Deprecated. + Offset = Vector(x: 0, y: 0, z: 0), // Offsets the aiming/firing line of the weapon, in metres. + Type = BlockWeapon, // What type of weapon this is; BlockWeapon, HandWeapon, Phantom + CriticalReaction = new CriticalDef + { + Enable = false, // Enables Warhead behaviour. + DefaultArmedTimer = 120, // Sets default countdown duration. + PreArmed = false, // Whether the warhead is armed by default when placed. Best left as false. + TerminalControls = true, // Whether the warhead should have terminal controls for arming and detonation. + AmmoRound = "", // Optional. If specified, the warhead will always use this ammo on detonation rather than the currently selected ammo. + }, + }, + Other = new OtherDef + { + ConstructPartCap = 0, // Maximum number of blocks with this weapon on a grid; 0 = unlimited. + RotateBarrelAxis = 0, // For spinning barrels, which axis to spin the barrel around; 0 = none. + EnergyPriority = 0, // Deprecated. + MuzzleCheck = false, // Whether the weapon should check LOS from each individual muzzle in addition to the scope. + Debug = false, // Force enables debug mode. + RestrictionRadius = 7, // Prevents other blocks of this type from being placed within this distance of the centre of the block. + CheckInflatedBox = false, // If true, the above distance check is performed from the edge of the block instead of the centre. + CheckForAnyWeapon = false, // If true, the check will fail if ANY weapon is present, not just weapons of the same subtype. + }, + Loading = new LoadingDef + { + RateOfFire = 600, // Set this to 3600 for beam weapons. This is how fast your Gun fires. + BarrelsPerShot = 1, // How many muzzles will fire a projectile per fire event. + TrajectilesPerBarrel = 1, // Number of projectiles per muzzle per fire event. + SkipBarrels = 0, // Number of muzzles to skip after each fire event. + ReloadTime = 1, // Measured in game ticks (6 = 100ms, 60 = 1 seconds, etc..). + MagsToLoad = 2, // Number of physical magazines to consume on reload. + DelayUntilFire = 0, // How long the weapon waits before shooting after being told to fire. Measured in game ticks (6 = 100ms, 60 = 1 seconds, etc..). + HeatPerShot = 1, // Heat generated per shot. + MaxHeat = 70000, // Max heat before weapon enters cooldown (70% of max heat). + Cooldown = .95f, // Percentage of max heat to be under to start firing again after overheat; accepts 0 - 0.95 + HeatSinkRate = 9000000, // Amount of heat lost per second. + DegradeRof = false, // Progressively lower rate of fire when over 80% heat threshold (80% of max heat). + ShotsInBurst = 1, // Use this if you don't want the weapon to fire an entire physical magazine in one go. Should not be more than your magazine capacity. + DelayAfterBurst = 100, // How long to spend "reloading" after each burst. Measured in game ticks (6 = 100ms, 60 = 1 seconds, etc..). + FireFull = false, // Whether the weapon should fire the full magazine (or the full burst instead if ShotsInBurst > 0), even if the target is lost or the player stops firing prematurely. + GiveUpAfter = false, // Whether the weapon should drop its current target and reacquire a new target after finishing its magazine or burst. + BarrelSpinRate = 0, // Visual only, 0 disables and uses RateOfFire. + DeterministicSpin = false, // Spin barrel position will always be relative to initial / starting positions (spin will not be as smooth). + SpinFree = true, // Spin barrel while not firing. + StayCharged = false, // Will start recharging whenever power cap is not full. + MaxActiveProjectiles = 0, // Maximum number of projectiles in flight + MaxReloads = 0, // Maximum number of reloads in the LIFETIME of a weapon + }, + + Audio = new HardPointAudioDef + { + PreFiringSound = "", // Audio for warmup effect. + FiringSound = "FALargeShot", // Audio for firing. + FiringSoundPerShot = true, // Whether to replay the sound for each shot, or just loop over the entire track while firing. + ReloadSound = "", // Sound SubtypeID, for when your Weapon is in a reloading state + NoAmmoSound = "", + HardPointRotationSound = "WepTurretGatlingRotate", // Audio played when turret is moving. + BarrelRotationSound = "WepShipGatlingRotation", + FireSoundEndDelay = 120, // How long the firing audio should keep playing after firing stops. Measured in game ticks(6 = 100ms, 60 = 1 seconds, etc..). + FireSoundNoBurst = true, // Don't stop firing sound from looping when delaying after burst. + }, + Graphics = new HardPointParticleDef + { + + Effect1 = new ParticleDef + { + Name = "Tait_Stole_Muzzle_Medium", // Smoke_LargeGunShot + Color = Color(red: 1, green: 1, blue: 1, alpha: 1), + Offset = Vector(x: 0, y: 0, z: 0), + + Extras = new ParticleOptionDef + { + Loop = false, + Restart = false, + MaxDistance = 1500, + MaxDuration = 0, + Scale = 1.0f, + }, + }, + Effect2 = new ParticleDef + { + Name = "",//Muzzle_Flash_Large + Color = Color(red: 10, green: 0, blue: 0, alpha: 1), + Offset = Vector(x: 0, y: 0, z: 0), + + Extras = new ParticleOptionDef + { + Loop = false, + Restart = false, + MaxDistance = 350, + MaxDuration = 0, + Scale = 0.3f, + }, + }, + }, + }, + Ammos = new[] { + APShell203, HEShell203 // Must list all primary, shrapnel, and pattern ammos. + }, + //Upgrades = UpgradeModules, + }; + // Don't edit below this line. + } +} diff --git a/Weapon Mods/TaitMod_Fletcher/Data/Scripts/CoreParts/Small Calibre/4_5 inch Mark II.cs b/Weapon Mods/TaitMod_Fletcher/Data/Scripts/CoreParts/Small Calibre/4_5 inch Mark II.cs new file mode 100644 index 000000000..171341262 --- /dev/null +++ b/Weapon Mods/TaitMod_Fletcher/Data/Scripts/CoreParts/Small Calibre/4_5 inch Mark II.cs @@ -0,0 +1,199 @@ +using static Scripts.Structure; +using static Scripts.Structure.WeaponDefinition; +using static Scripts.Structure.WeaponDefinition.ModelAssignmentsDef; +using static Scripts.Structure.WeaponDefinition.HardPointDef; +using static Scripts.Structure.WeaponDefinition.HardPointDef.Prediction; +using static Scripts.Structure.WeaponDefinition.TargetingDef.BlockTypes; +using static Scripts.Structure.WeaponDefinition.TargetingDef.Threat; +using static Scripts.Structure.WeaponDefinition.HardPointDef.HardwareDef; +using static Scripts.Structure.WeaponDefinition.HardPointDef.HardwareDef.HardwareType; + +namespace Scripts { + partial class Parts { + // Don't edit above this line + WeaponDefinition FA4InchMk2 => new WeaponDefinition + { + Assignments = new ModelAssignmentsDef + { + MountPoints = new[] { + new MountPointDef { + SubtypeId = "4_5Inch45", // Block Subtypeid. Your Cubeblocks contain this information + SpinPartId = "", // For weapons with a spinning barrel such as Gatling Guns. Subpart_Boomsticks must be written as Boomsticks. + MuzzlePartId = "MissileTurretBarrels", // The subpart where your muzzle empties are located. This is often the elevation subpart. Subpart_Boomsticks must be written as Boomsticks. + AzimuthPartId = "MissileTurretBase1", // Your Rotating Subpart, the bit that moves sideways. + ElevationPartId = "MissileTurretBarrels", // Your Elevating Subpart, that bit that moves up. + DurabilityMod = 0.25f, // GeneralDamageMultiplier, 0.25f = 25% damage taken. + IconName = "TestIcon.dds" // Overlay for block inventory slots, like reactors, refineries, etc. + }, + + }, + Muzzles = new[] { + "muzzle_missile_1", + "muzzle_missile_2", + + + }, + Ejector = "", // Optional; empty from which to eject "shells" if specified. + Scope = "camera", // Where line of sight checks are performed from. Must be clear of block collision. + }, + Targeting = new TargetingDef + { + Threats = new[] { + Grids,Projectiles, // Types of threat to engage: Grids, Projectiles, Characters, Meteors, Neutrals + }, + SubSystems = new[] { + Thrust, Utility, Offense, Power, Production, Any, // Subsystem targeting priority: Offense, Utility, Power, Production, Thrust, Jumping, Steering, Any + }, + ClosestFirst = true, // Tries to pick closest targets first (blocks on grids, projectiles, etc...). + IgnoreDumbProjectiles = false, // Don't fire at non-smart projectiles. + LockedSmartOnly = false, // Only fire at smart projectiles that are locked on to parent grid. + MinimumDiameter = 0, // Minimum radius of threat to engage. + MaximumDiameter = 0, // Maximum radius of threat to engage; 0 = unlimited. + MaxTargetDistance = 4000, // Maximum distance at which targets will be automatically shot at; 0 = unlimited. + MinTargetDistance = 0, // Minimum distance at which targets will be automatically shot at. + TopTargets = 4, // Maximum number of targets to randomize between; 0 = unlimited. + TopBlocks = 8, // Maximum number of blocks to randomize between; 0 = unlimited. + StopTrackingSpeed = 0, // Do not track threats traveling faster than this speed; 0 = unlimited. + }, + HardPoint = new HardPointDef + { + PartName = "4.5 Inch Mark 12 Remodel", // Name of the weapon in terminal, should be unique for each weapon definition that shares a SubtypeId (i.e. multiweapons). + DeviateShotAngle = 0.25f, // Projectile inaccuracy in degrees. + AimingTolerance = 1f, // How many degrees off target a turret can fire at. 0 - 180 firing angle. + AimLeadingPrediction = Advanced, // Level of turret aim prediction; Off, Basic, Accurate, Advanced + DelayCeaseFire = 0, // Measured in game ticks (6 = 100ms, 60 = 1 second, etc..). Length of time the weapon continues firing after trigger is released - while a target is available. + AddToleranceToTracking = false, // Allows turret to track to the edge of the AimingTolerance cone instead of dead centre. + CanShootSubmerged = false, // Whether the weapon can be fired underwater when using WaterMod. + + Ui = new UiDef + { + RateOfFire = false, // Enables terminal slider for changing rate of fire. + DamageModifier = false, // Enables terminal slider for changing damage per shot. + ToggleGuidance = false, // Enables terminal option to disable smart projectile guidance. + EnableOverload = false, // Enables terminal option to turn on Overload; this allows energy weapons to double damage per shot, at the cost of quadrupled power draw and heat gain, and 2% self damage on overheat. + }, + Ai = new AiDef + { + TrackTargets = true, // Whether this weapon tracks its own targets, or (for multiweapons) relies on the weapon with PrimaryTracking enabled for target designation. Turrets Need this set to True. + TurretAttached = true, // Whether this weapon is a turret and should have the UI and API options for such. Turrets Need this set to True. + TurretController = true, // Whether this weapon can physically control the turret's movement. Turrets Need this set to True. + PrimaryTracking = true, // For multiweapons: whether this weapon should designate targets for other weapons on the platform without their own tracking. + LockOnFocus = false, // If enabled, weapon will only fire at targets that have been HUD selected AND locked onto by pressing Numpad 0. + SuppressFire = false, // If enabled, weapon can only be fired manually. + OverrideLeads = false, // Disable target leading on fixed weapons, or allow it for turrets. + }, + HardWare = new HardwareDef + { + RotateRate = 0.01f, // Max traversal speed of azimuth subpart in radians per tick (0.1 is approximately 360 degrees per second). + ElevateRate = 0.01f, // Max traversal speed of elevation subpart in radians per tick. + MinAzimuth = -180, + MaxAzimuth = 180, + MinElevation = -15, + MaxElevation = 85, + HomeAzimuth = 0, // Default resting rotation angle + HomeElevation = 5, // Default resting elevation + InventorySize = 1f, // Inventory capacity in kL. + IdlePower = 0.25f, // Constant base power draw in MW. + FixedOffset = false, // Deprecated. + Offset = Vector(x: 0, y: 0, z: 0), // Offsets the aiming/firing line of the weapon, in metres. + Type = BlockWeapon, // What type of weapon this is; BlockWeapon, HandWeapon, Phantom + CriticalReaction = new CriticalDef + { + Enable = false, // Enables Warhead behaviour. + DefaultArmedTimer = 120, // Sets default countdown duration. + PreArmed = false, // Whether the warhead is armed by default when placed. Best left as false. + TerminalControls = true, // Whether the warhead should have terminal controls for arming and detonation. + AmmoRound = "", // Optional. If specified, the warhead will always use this ammo on detonation rather than the currently selected ammo. + }, + }, + Other = new OtherDef + { + ConstructPartCap = 0, // Maximum number of blocks with this weapon on a grid; 0 = unlimited. + RotateBarrelAxis = 0, // For spinning barrels, which axis to spin the barrel around; 0 = none. + EnergyPriority = 0, // Deprecated. + MuzzleCheck = false, // Whether the weapon should check LOS from each individual muzzle in addition to the scope. + Debug = false, // Force enables debug mode. + RestrictionRadius = 0, // Prevents other blocks of this type from being placed within this distance of the centre of the block. + CheckInflatedBox = false, // If true, the above distance check is performed from the edge of the block instead of the centre. + CheckForAnyWeapon = false, // If true, the check will fail if ANY weapon is present, not just weapons of the same subtype. + }, + Loading = new LoadingDef + { + RateOfFire = 600, // Set this to 3600 for beam weapons. This is how fast your Gun fires. + BarrelsPerShot = 1, // How many muzzles will fire a projectile per fire event. + TrajectilesPerBarrel = 1, // Number of projectiles per muzzle per fire event. + SkipBarrels = 0, // Number of muzzles to skip after each fire event. + ReloadTime = 1, // Measured in game ticks (6 = 100ms, 60 = 1 seconds, etc..). + MagsToLoad = 2, // Number of physical magazines to consume on reload. + DelayUntilFire = 0, // How long the weapon waits before shooting after being told to fire. Measured in game ticks (6 = 100ms, 60 = 1 seconds, etc..). + HeatPerShot = 1, // Heat generated per shot. + MaxHeat = 70000, // Max heat before weapon enters cooldown (70% of max heat). + Cooldown = .95f, // Percentage of max heat to be under to start firing again after overheat; accepts 0 - 0.95 + HeatSinkRate = 9000000, // Amount of heat lost per second. + DegradeRof = false, // Progressively lower rate of fire when over 80% heat threshold (80% of max heat). + ShotsInBurst = 1, // Use this if you don't want the weapon to fire an entire physical magazine in one go. Should not be more than your magazine capacity. + DelayAfterBurst = 75, // How long to spend "reloading" after each burst. Measured in game ticks (6 = 100ms, 60 = 1 seconds, etc..). + FireFull = false, // Whether the weapon should fire the full magazine (or the full burst instead if ShotsInBurst > 0), even if the target is lost or the player stops firing prematurely. + GiveUpAfter = false, // Whether the weapon should drop its current target and reacquire a new target after finishing its magazine or burst. + BarrelSpinRate = 0, // Visual only, 0 disables and uses RateOfFire. + DeterministicSpin = false, // Spin barrel position will always be relative to initial / starting positions (spin will not be as smooth). + SpinFree = true, // Spin barrel while not firing. + StayCharged = false, // Will start recharging whenever power cap is not full. + MaxActiveProjectiles = 0, // Maximum number of projectiles in flight + MaxReloads = 0, // Maximum number of reloads in the LIFETIME of a weapon + }, + Audio = new HardPointAudioDef + { + PreFiringSound = "", // Audio for warmup effect. + FiringSound = "FAMediumShot", // Audio for firing. + FiringSoundPerShot = true, // Whether to replay the sound for each shot, or just loop over the entire track while firing. + ReloadSound = "", // Sound SubtypeID, for when your Weapon is in a reloading state + NoAmmoSound = "", + HardPointRotationSound = "WepTurretGatlingRotate", // Audio played when turret is moving. + BarrelRotationSound = "WepShipGatlingRotation", + FireSoundEndDelay = 120, // How long the firing audio should keep playing after firing stops. Measured in game ticks(6 = 100ms, 60 = 1 seconds, etc..). + FireSoundNoBurst = true, // Don't stop firing sound from looping when delaying after burst. + }, + Graphics = new HardPointParticleDef + { + + Effect1 = new ParticleDef + { + Name = "Tait_Stole_Muzzle_Medium", // Smoke_LargeGunShot + Color = Color(red: 1, green: 1, blue: 1, alpha: 1), + Offset = Vector(x: 0, y: 0, z: 0), + + Extras = new ParticleOptionDef + { + Loop = false, + Restart = false, + MaxDistance = 1500, + MaxDuration = 0.81f, + Scale = 0.5f, + }, + }, + Effect2 = new ParticleDef + { + Name = "",//Muzzle_Flash_Large + Color = Color(red: 10, green: 0, blue: 0, alpha: 1), + Offset = Vector(x: 0, y: 0, z: 0), + + Extras = new ParticleOptionDef + { + Loop = false, + Restart = false, + MaxDistance = 350, + MaxDuration = 5, + Scale = 0.3f, + }, + }, + }, + }, + Ammos = new[] { + FA5InchShell,FA5SAPShell // Must list all primary, shrapnel, and pattern ammos. + }, + //Upgrades = UpgradeModules, + }; + // Don't edit below this line. + } +} diff --git a/Weapon Mods/TaitMod_Fletcher/Data/TTBlockVariantGroups.sbc b/Weapon Mods/TaitMod_Fletcher/Data/TTBlockVariantGroups.sbc index 28fc07b53..51a3a9762 100644 --- a/Weapon Mods/TaitMod_Fletcher/Data/TTBlockVariantGroups.sbc +++ b/Weapon Mods/TaitMod_Fletcher/Data/TTBlockVariantGroups.sbc @@ -27,6 +27,7 @@ + @@ -40,7 +41,9 @@ - + + + @@ -52,6 +55,8 @@ + + diff --git a/Weapon Mods/TaitMod_Fletcher/Textures/GUI/Icons/15Cm55TwinCasemate.dds b/Weapon Mods/TaitMod_Fletcher/Textures/GUI/Icons/15Cm55TwinCasemate.dds new file mode 100644 index 000000000..d35352b1a Binary files /dev/null and b/Weapon Mods/TaitMod_Fletcher/Textures/GUI/Icons/15Cm55TwinCasemate.dds differ diff --git a/Weapon Mods/TaitMod_Fletcher/Textures/GUI/Icons/15cm45Casemate.dds b/Weapon Mods/TaitMod_Fletcher/Textures/GUI/Icons/15cm45Casemate.dds new file mode 100644 index 000000000..a97cd177c Binary files /dev/null and b/Weapon Mods/TaitMod_Fletcher/Textures/GUI/Icons/15cm45Casemate.dds differ diff --git a/Weapon Mods/TaitMod_Fletcher/Textures/GUI/Icons/4_5Inch45.dds b/Weapon Mods/TaitMod_Fletcher/Textures/GUI/Icons/4_5Inch45.dds new file mode 100644 index 000000000..b91228599 Binary files /dev/null and b/Weapon Mods/TaitMod_Fletcher/Textures/GUI/Icons/4_5Inch45.dds differ diff --git a/Weapon Mods/TaitMod_Fletcher/Textures/GUI/Icons/8Inch55Main.dds b/Weapon Mods/TaitMod_Fletcher/Textures/GUI/Icons/8Inch55Main.dds new file mode 100644 index 000000000..0805e1f3b Binary files /dev/null and b/Weapon Mods/TaitMod_Fletcher/Textures/GUI/Icons/8Inch55Main.dds differ diff --git a/Weapon Mods/TaitMod_Fletcher/Textures/GUI/Icons/8Inch55RF.dds b/Weapon Mods/TaitMod_Fletcher/Textures/GUI/Icons/8Inch55RF.dds new file mode 100644 index 000000000..bcd3edbc5 Binary files /dev/null and b/Weapon Mods/TaitMod_Fletcher/Textures/GUI/Icons/8Inch55RF.dds differ diff --git a/Weapon Mods/TaitMod_Fletcher/Textures/GUI/Icons/Cubes/8Inch55Main.dds b/Weapon Mods/TaitMod_Fletcher/Textures/GUI/Icons/Cubes/8Inch55Main.dds index 1d8164b03..bcd3edbc5 100644 Binary files a/Weapon Mods/TaitMod_Fletcher/Textures/GUI/Icons/Cubes/8Inch55Main.dds and b/Weapon Mods/TaitMod_Fletcher/Textures/GUI/Icons/Cubes/8Inch55Main.dds differ diff --git a/Weapon Mods/TaitMod_Fletcher/Textures/GUI/Icons/OTO381mm.dds b/Weapon Mods/TaitMod_Fletcher/Textures/GUI/Icons/OTO381mm.dds new file mode 100644 index 000000000..831532cf0 Binary files /dev/null and b/Weapon Mods/TaitMod_Fletcher/Textures/GUI/Icons/OTO381mm.dds differ diff --git a/Weapon Mods/TaitMod_Fletcher/Textures/GUI/Icons/UK16Inch45Mark1.dds b/Weapon Mods/TaitMod_Fletcher/Textures/GUI/Icons/UK16Inch45Mark1.dds new file mode 100644 index 000000000..03ed3d07f Binary files /dev/null and b/Weapon Mods/TaitMod_Fletcher/Textures/GUI/Icons/UK16Inch45Mark1.dds differ