From 3975578e4e104561c2d752422906335f49b5d9dd Mon Sep 17 00:00:00 2001 From: Nemanja <98561806+EmoGarbage404@users.noreply.github.com> Date: Sun, 18 Jun 2023 17:56:49 -0400 Subject: [PATCH] Arsenal tech discipline (#17400) --- .../Locale/en-US/research/technologies.ftl | 13 +- .../Guns/Ammunition/Boxes/light_rifle.yml | 15 ++ .../Weapons/Guns/Ammunition/Boxes/magnum.yml | 15 ++ .../Weapons/Guns/Ammunition/Boxes/pistol.yml | 15 ++ .../Weapons/Guns/Ammunition/Boxes/rifle.yml | 15 ++ .../Ammunition/Cartridges/light_rifle.yml | 8 + .../Guns/Ammunition/Cartridges/magnum.yml | 8 + .../Guns/Ammunition/Cartridges/pistol.yml | 8 + .../Guns/Ammunition/Cartridges/rifle.yml | 8 + .../Ammunition/Projectiles/light_rifle.yml | 11 ++ .../Guns/Ammunition/Projectiles/magnum.yml | 11 ++ .../Guns/Ammunition/Projectiles/pistol.yml | 11 ++ .../Guns/Ammunition/Projectiles/rifle.yml | 11 ++ .../Guns/Ammunition/Projectiles/shotgun.yml | 9 +- .../Weapons/Guns/Battery/battery_guns.yml | 3 +- .../Weapons/Guns/Projectiles/projectiles.yml | 18 ++ .../Entities/Structures/Machines/lathe.yml | 51 ++++-- .../Entities/Structures/Machines/research.yml | 1 + .../Prototypes/Recipes/Lathes/devices.yml | 9 + .../Prototypes/Recipes/Lathes/security.yml | 167 +++++++++++++++++- Resources/Prototypes/Research/arsenal.yml | 145 +++++++++++++++ Resources/Prototypes/Research/disciplines.yml | 12 ++ .../Prototypes/Research/experimental.yml | 16 -- Resources/Prototypes/Research/industrial.yml | 15 -- .../Misc/research_disciplines.rsi/arsenal.png | Bin 0 -> 160 bytes .../Misc/research_disciplines.rsi/meta.json | 3 + .../Boxes/light_rifle.rsi/incendiary.png | Bin 0 -> 298 bytes .../Boxes/light_rifle.rsi/meta.json | 3 + .../Boxes/magnum.rsi/incendiary.png | Bin 0 -> 147 bytes .../Ammunition/Boxes/magnum.rsi/meta.json | 3 + .../Ammunition/Boxes/pistol.rsi/hvdisplay.png | Bin 0 -> 456 bytes .../Boxes/pistol.rsi/incendiary.png | Bin 0 -> 305 bytes .../Boxes/pistol.rsi/incendiarydisplay.png | Bin 0 -> 472 bytes .../Ammunition/Boxes/pistol.rsi/meta.json | 9 + .../Ammunition/Boxes/rifle.rsi/incendiary.png | Bin 0 -> 356 bytes .../Guns/Ammunition/Boxes/rifle.rsi/meta.json | 3 + 36 files changed, 560 insertions(+), 56 deletions(-) create mode 100644 Resources/Prototypes/Research/arsenal.yml create mode 100644 Resources/Textures/Interface/Misc/research_disciplines.rsi/arsenal.png create mode 100644 Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/light_rifle.rsi/incendiary.png create mode 100644 Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/magnum.rsi/incendiary.png create mode 100644 Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/pistol.rsi/hvdisplay.png create mode 100644 Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/pistol.rsi/incendiary.png create mode 100644 Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/pistol.rsi/incendiarydisplay.png create mode 100644 Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/rifle.rsi/incendiary.png diff --git a/Resources/Locale/en-US/research/technologies.ftl b/Resources/Locale/en-US/research/technologies.ftl index 5733b7e908..9f8bbf84ba 100644 --- a/Resources/Locale/en-US/research/technologies.ftl +++ b/Resources/Locale/en-US/research/technologies.ftl @@ -1,10 +1,10 @@ research-discipline-none = None research-discipline-industrial = Industrial research-discipline-biochemical = Biochemical +research-discipline-arsenal = Arsenal research-discipline-experimental = Experimental research-discipline-civilian-services = Civilian Services -research-technology-salvage-weapons = Salvage weapons research-technology-salvage-equipment = Salvage Equipment research-technology-advanced-powercells = Advanced Powercells research-technology-compact-power = Compact Power @@ -29,8 +29,17 @@ research-technology-crew-monitoring = Crew Monitoring research-technology-bluespace-chemistry = Bluespace Chemistry research-technology-cloning = Cloning +research-technology-salvage-weapons = Salvage Weapons +research-technology-draconic-munitions = Draconic Munitions +research-technology-explosive-technology = Explosive Technology +research-technology-advanced-laser-manipulation = Advanced Laser Manipulation +research-technology-nonlethal-ammunition = Nonlethal Ammunition +research-technology-optimized-ballistics = Optimized Ballistics +research-technology-concentrated-laser-weaponry = Concentrated Laser Weaponry +research-technology-wave-particle-harnessing = Wave Particle Harnessing +research-technology-handheld-electrical-propulsion = Handheld Electrical Propulsion + research-technology-basic-robotics = Basic Robotics -research-technology-signalling-tech = Signalling Tech research-technology-basic-anomalous-research = Basic Anomalous Research research-technology-basic-xenoarcheology = Basic XenoArcheology research-technology-alternative-research = Alternative Research diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Boxes/light_rifle.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Boxes/light_rifle.yml index 5ac13ad067..7018ff3764 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Boxes/light_rifle.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Boxes/light_rifle.yml @@ -103,3 +103,18 @@ - state: mag-1 map: ["enum.GunVisualLayers.Mag"] - state: rubber + +- type: entity + id: MagazineBoxLightRifleIncendiary + parent: BaseMagazineBoxLightRifle + name: ammunition box (.30 rifle incendiary) + components: + - type: BallisticAmmoProvider + proto: CartridgeLightRifleIncendiary + - type: Sprite + layers: + - state: base + map: ["enum.GunVisualLayers.Base"] + - state: mag-1 + map: ["enum.GunVisualLayers.Mag"] + - state: incendiary diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Boxes/magnum.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Boxes/magnum.yml index 44327b1878..9f7adc7868 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Boxes/magnum.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Boxes/magnum.yml @@ -82,3 +82,18 @@ - state: mag-1 map: ["enum.GunVisualLayers.Mag"] - state: rubber + +- type: entity + id: MagazineBoxMagnumIncendiary + parent: BaseMagazineBoxMagnum + name: ammunition box (.45 magnum incendiary) + components: + - type: BallisticAmmoProvider + proto: CartridgeMagnumIncendiary + - type: Sprite + layers: + - state: base + map: ["enum.GunVisualLayers.Base"] + - state: mag-1 + map: ["enum.GunVisualLayers.Mag"] + - state: incendiary diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Boxes/pistol.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Boxes/pistol.yml index 50491c9e43..d8bab16cdb 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Boxes/pistol.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Boxes/pistol.yml @@ -83,3 +83,18 @@ - state: mag-1 map: ["enum.GunVisualLayers.Mag"] - state: rubber + +- type: entity + id: MagazineBoxPistolIncendiary + parent: BaseMagazineBoxPistol + name: ammunition box (.35 auto incendiary) + components: + - type: BallisticAmmoProvider + proto: CartridgePistolIncendiary + - type: Sprite + layers: + - state: base + map: ["enum.GunVisualLayers.Base"] + - state: mag-1 + map: ["enum.GunVisualLayers.Mag"] + - state: incendiary diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Boxes/rifle.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Boxes/rifle.yml index 09a22bbafe..260237c3c0 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Boxes/rifle.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Boxes/rifle.yml @@ -123,3 +123,18 @@ - state: mag-1 map: ["enum.GunVisualLayers.Mag"] - state: rubber + +- type: entity + id: MagazineBoxRifleIncendiary + parent: BaseMagazineBoxRifle + name: ammunition box (.20 rifle incendiary) + components: + - type: BallisticAmmoProvider + proto: CartridgeRifleIncendiary + - type: Sprite + layers: + - state: base + map: ["enum.GunVisualLayers.Base"] + - state: mag-1 + map: ["enum.GunVisualLayers.Mag"] + - state: incendiary diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Cartridges/light_rifle.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Cartridges/light_rifle.yml index 3d38920eb3..248a919ced 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Cartridges/light_rifle.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Cartridges/light_rifle.yml @@ -51,3 +51,11 @@ components: - type: CartridgeAmmo proto: BulletLightRifleRubber + +- type: entity + id: CartridgeLightRifleIncendiary + name: cartridge (.30 rifle incendiary) + parent: BaseCartridgeLightRifle + components: + - type: CartridgeAmmo + proto: BulletLightRifleIncendiary diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Cartridges/magnum.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Cartridges/magnum.yml index dc500cffc5..757119ae25 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Cartridges/magnum.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Cartridges/magnum.yml @@ -52,6 +52,14 @@ - type: CartridgeAmmo proto: BulletMagnumRubber +- type: entity + id: CartridgeMagnumIncendiary + name: cartridge (.45 magnum incendiary) + parent: BaseCartridgeMagnum + components: + - type: CartridgeAmmo + proto: BulletMagnumIncendiary + - type: entity id: BaseAnomalousCartridge parent: BaseCartridgeMagnum diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Cartridges/pistol.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Cartridges/pistol.yml index eff0c4f5cf..0210b78c31 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Cartridges/pistol.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Cartridges/pistol.yml @@ -51,3 +51,11 @@ components: - type: CartridgeAmmo proto: BulletPistolRubber + +- type: entity + id: CartridgePistolIncendiary + name: cartridge (.35 auto incendiary) + parent: BaseCartridgePistol + components: + - type: CartridgeAmmo + proto: BulletPistolIncendiary diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Cartridges/rifle.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Cartridges/rifle.yml index c9949e6d8a..f30aa1a372 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Cartridges/rifle.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Cartridges/rifle.yml @@ -51,3 +51,11 @@ components: - type: CartridgeAmmo proto: BulletRifleRubber + +- type: entity + id: CartridgeRifleIncendiary + name: cartridge (.20 rifle incendiary) + parent: BaseCartridgeRifle + components: + - type: CartridgeAmmo + proto: BulletRifleIncendiary diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Projectiles/light_rifle.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Projectiles/light_rifle.yml index e4d2f35822..8bf5ce5e62 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Projectiles/light_rifle.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Projectiles/light_rifle.yml @@ -41,3 +41,14 @@ damage: types: Blunt: 3 + +- type: entity + id: BulletLightRifleIncendiary + parent: BaseBulletIncendiary + name: bullet (.20 rifle incendiary) + noSpawn: true + components: + - type: Projectile + damage: + groups: + Burn: 17 diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Projectiles/magnum.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Projectiles/magnum.yml index 261cfb8c9c..12d3e6972e 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Projectiles/magnum.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Projectiles/magnum.yml @@ -43,3 +43,14 @@ Blunt: 3 - type: StaminaDamageOnCollide damage: 35 # 3 hits to stun cuz revolver + +- type: entity + id: BulletMagnumIncendiary + parent: BaseBulletIncendiary + name: bullet (.45 magnum incendiary) + noSpawn: true + components: + - type: Projectile + damage: + groups: + Burn: 32 diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Projectiles/pistol.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Projectiles/pistol.yml index f26f7b4022..8474160ef7 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Projectiles/pistol.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Projectiles/pistol.yml @@ -41,3 +41,14 @@ damage: types: Blunt: 3 + +- type: entity + id: BulletPistolIncendiary + parent: BaseBulletIncendiary + name: bullet (.35 auto incendiary) + noSpawn: true + components: + - type: Projectile + damage: + groups: + Burn: 14 diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Projectiles/rifle.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Projectiles/rifle.yml index 606505bd68..c3a0496e18 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Projectiles/rifle.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Projectiles/rifle.yml @@ -41,3 +41,14 @@ damage: types: Blunt: 3 + +- type: entity + id: BulletRifleIncendiary + parent: BaseBulletIncendiary + name: bullet (0.20 rifle incendiary) + noSpawn: true + components: + - type: Projectile + damage: + groups: + Burn: 15 diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Projectiles/shotgun.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Projectiles/shotgun.yml index 9dde100821..6254136f3e 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Projectiles/shotgun.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Projectiles/shotgun.yml @@ -46,7 +46,7 @@ id: PelletShotgunIncendiary name: pellet (.50 incendiary) noSpawn: true - parent: BaseBullet + parent: BaseBulletIncendiary components: - type: Sprite sprite: Objects/Weapons/Guns/Projectiles/projectiles2.rsi @@ -55,13 +55,6 @@ damage: groups: Burn: 7 - - type: PointLight - enabled: true - color: "#ff4300" - radius: 2.0 - energy: 7.0 - - type: IgniteOnCollide - fireStacks: 1 - type: entity id: PelletShotgunPractice diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Battery/battery_guns.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Battery/battery_guns.yml index 00d7800bf7..dcbe38ca49 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Battery/battery_guns.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Battery/battery_guns.yml @@ -326,7 +326,6 @@ parent: BaseWeaponBatterySmall id: WeaponTaser description: A low-capacity, energy-based stun gun used by security teams to subdue targets at range. - suffix: Admin components: - type: Tag tags: @@ -350,7 +349,7 @@ path: /Audio/Weapons/Guns/Gunshots/taser.ogg - type: ProjectileBatteryAmmoProvider proto: BulletTaser - fireCost: 100 + fireCost: 200 - type: MagazineVisuals magState: mag steps: 5 diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Projectiles/projectiles.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Projectiles/projectiles.yml index 63613492ac..4bae5cf524 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Projectiles/projectiles.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Projectiles/projectiles.yml @@ -126,6 +126,24 @@ - type: StaminaDamageOnCollide damage: 22 # 5 hits to stun sounds reasonable +- type: entity + id: BaseBulletIncendiary + name: base bullet incendiary + parent: BaseBullet + noSpawn: true + components: + - type: Projectile + damage: + types: + Blunt: 14 + - type: PointLight + enabled: true + color: "#ff4300" + radius: 2.0 + energy: 7.0 + - type: IgniteOnCollide + fireStacks: 1 + # Energy projectiles - type: entity name: taser bolt diff --git a/Resources/Prototypes/Entities/Structures/Machines/lathe.yml b/Resources/Prototypes/Entities/Structures/Machines/lathe.yml index e6210a75c7..5bd4c087b2 100644 --- a/Resources/Prototypes/Entities/Structures/Machines/lathe.yml +++ b/Resources/Prototypes/Entities/Structures/Machines/lathe.yml @@ -105,6 +105,7 @@ - StationMapElectronics - FireAlarmElectronics - MailingUnitElectronics + - SignalTimerElectronics - APCElectronics - SMESMachineCircuitboard - SubstationMachineCircuitboard @@ -215,7 +216,6 @@ - SuperCapacitorStockPart - SuperMatterBinStockPart - PicoManipulatorStockPart - - SignalTimerElectronics - MopItem - Holoprojector - Mousetrap @@ -279,7 +279,6 @@ idleState: icon runningState: building dynamicRecipes: - - SignalTimerElectronics - ThermomachineFreezerMachineCircuitBoard - PortableScrubberMachineCircuitBoard - CloningPodMachineCircuitboard @@ -432,7 +431,6 @@ runningState: icon staticRecipes: - Flash - - FlashPayload - Handcuffs - Zipties - Stunbaton @@ -441,27 +439,56 @@ - RiotShield - CartridgePistol - CartridgeMagnum - - CartridgePistolRubber - - CartridgeMagnumRubber - ShellShotgun - - ShellShotgunBeanbag - ShellShotgunFlare - ShellTranquilizer - CartridgeLightRifle - CartridgeRifle - - CartridgeLightRifleRubber - - CartridgeRifleRubber + - MagazineBoxPistol + - MagazineBoxMagnum + - MagazineBoxRifle + - MagazineBoxLightRifle - TargetHuman - TargetSyndicate - TargetClown - - MagazineBoxPistol + dynamicRecipes: + - CartridgePistolRubber + - CartridgeMagnumRubber + - ShellShotgunBeanbag + - CartridgeRifleRubber + - CartridgeLightRifleRubber - MagazineBoxPistolRubber - - MagazineBoxMagnum - MagazineBoxMagnumRubber - - MagazineBoxRifle - MagazineBoxRifleRubber - - MagazineBoxLightRifle - MagazineBoxLightRifleRubber + - CartridgePistolHighVelocity + - CartridgeMagnumHighVelocity + - CartridgeLightRifleHighVelocity + - CartridgeRifleHighVelocity + - MagazineBoxPistolHighVelocity + - MagazineBoxMagnumHighVelocity + - MagazineBoxLightRifleHighVelocity + - MagazineBoxRifleHighVelocity + - ShellShotgunIncendiary + - CartridgePistolIncendiary + - CartridgeMagnumIncendiary + - CartridgeLightRifleIncendiary + - CartridgeRifleIncendiary + - MagazineBoxPistolIncendiary + - MagazineBoxMagnumIncendiary + - MagazineBoxLightRifleIncendiary + - MagazineBoxRifleIncendiary + - Signaller + - SignalTrigger + - VoiceTrigger + - TimerTrigger + - FlashPayload + - ExplosivePayload + - WeaponLaserCarbine + - WeaponAdvancedLaser + - WeaponLaserCannon + - WeaponXrayCannon + - WeaponTaser - type: MaterialStorage whitelist: tags: diff --git a/Resources/Prototypes/Entities/Structures/Machines/research.yml b/Resources/Prototypes/Entities/Structures/Machines/research.yml index 69352b8459..4f2f360ff2 100644 --- a/Resources/Prototypes/Entities/Structures/Machines/research.yml +++ b/Resources/Prototypes/Entities/Structures/Machines/research.yml @@ -15,6 +15,7 @@ supportedDisciplines: - Industrial - Biochemical + - Arsenal - Experimental - CivilianServices - type: ApcPowerReceiver diff --git a/Resources/Prototypes/Recipes/Lathes/devices.yml b/Resources/Prototypes/Recipes/Lathes/devices.yml index 1be735a391..aa722e998a 100644 --- a/Resources/Prototypes/Recipes/Lathes/devices.yml +++ b/Resources/Prototypes/Recipes/Lathes/devices.yml @@ -40,6 +40,15 @@ Glass: 50 #one fourth of what making a flash would cost +- type: latheRecipe + id: ExplosivePayload + result: ExplosivePayload + completetime: 1 + materials: + Steel: 50 + Plastic: 100 + Glass: 50 + - type: latheRecipe id: Signaller result: RemoteSignaller diff --git a/Resources/Prototypes/Recipes/Lathes/security.yml b/Resources/Prototypes/Recipes/Lathes/security.yml index cc0f870dd7..be8efde540 100644 --- a/Resources/Prototypes/Recipes/Lathes/security.yml +++ b/Resources/Prototypes/Recipes/Lathes/security.yml @@ -20,6 +20,52 @@ Steel: 300 Plastic: 300 +- type: latheRecipe + id: WeaponLaserCarbine + result: WeaponLaserCarbine + completetime: 5 + materials: + Steel: 750 + Glass: 500 + Plastic: 250 + +- type: latheRecipe + id: WeaponAdvancedLaser + result: WeaponAdvancedLaser + completetime: 5 + materials: + Steel: 1000 + Glass: 500 + Gold: 150 + +- type: latheRecipe + id: WeaponLaserCannon + result: WeaponLaserCannon + completetime: 5 + materials: + Steel: 1250 + Plastic: 750 + Gold: 100 + +- type: latheRecipe + id: WeaponXrayCannon + result: WeaponXrayCannon + completetime: 5 + materials: + Steel: 1500 + Glass: 500 + Plastic: 250 + Gold: 100 + +- type: latheRecipe + id: WeaponTaser + result: WeaponTaser + completetime: 5 + materials: + Steel: 700 + Plastic: 300 + Gold: 250 + - type: latheRecipe id: ForensicPad result: ForensicPad @@ -223,7 +269,7 @@ id: MagazineBoxRifle result: MagazineBoxRifle completetime: 5 - materials: + materials: Steel: 950 - type: latheRecipe @@ -248,3 +294,122 @@ materials: Steel: 350 Plastic: 600 + +- type: latheRecipe + id: CartridgePistolHighVelocity + result: CartridgePistolHighVelocity + completetime: 2 + materials: + Steel: 20 + +- type: latheRecipe + id: CartridgeMagnumHighVelocity + result: CartridgeMagnumHighVelocity + completetime: 2 + materials: + Steel: 40 + +- type: latheRecipe + id: CartridgeLightRifleHighVelocity + result: CartridgeLightRifleHighVelocity + completetime: 2 + materials: + Steel: 40 + +- type: latheRecipe + id: CartridgeRifleHighVelocity + result: CartridgeRifleHighVelocity + completetime: 2 + materials: + Steel: 30 + +- type: latheRecipe + id: MagazineBoxPistolHighVelocity + result: MagazineBoxPistolHighVelocity + completetime: 5 + materials: + Steel: 1250 + +- type: latheRecipe + id: MagazineBoxMagnumHighVelocity + result: MagazineBoxMagnumHighVelocity + completetime: 5 + materials: + Steel: 2450 + +- type: latheRecipe + id: MagazineBoxLightRifleHighVelocity + result: MagazineBoxLightRifleHighVelocity + completetime: 5 + materials: + Steel: 2050 + +- type: latheRecipe + id: MagazineBoxRifleHighVelocity + result: MagazineBoxRifleHighVelocity + completetime: 5 + materials: + Steel: 1850 + +- type: latheRecipe + id: ShellShotgunIncendiary + result: ShellShotgunIncendiary + completetime: 2 + materials: + Plastic: 20 + +- type: latheRecipe + id: CartridgePistolIncendiary + result: CartridgePistolIncendiary + completetime: 2 + materials: + Plastic: 10 + +- type: latheRecipe + id: CartridgeMagnumIncendiary + result: CartridgeMagnumIncendiary + completetime: 2 + materials: + Plastic: 20 + +- type: latheRecipe + id: CartridgeLightRifleIncendiary + result: CartridgeLightRifleIncendiary + completetime: 2 + materials: + Plastic: 20 + +- type: latheRecipe + id: CartridgeRifleIncendiary + result: CartridgeRifleIncendiary + completetime: 2 + materials: + Plastic: 15 + +- type: latheRecipe + id: MagazineBoxPistolIncendiary + result: MagazineBoxPistolIncendiary + completetime: 5 + materials: + Plastic: 650 + +- type: latheRecipe + id: MagazineBoxMagnumIncendiary + result: MagazineBoxMagnumIncendiary + completetime: 5 + materials: + Plastic: 1250 + +- type: latheRecipe + id: MagazineBoxLightRifleIncendiary + result: MagazineBoxLightRifleIncendiary + completetime: 5 + materials: + Plastic: 1800 + +- type: latheRecipe + id: MagazineBoxRifleIncendiary + result: MagazineBoxRifleIncendiary + completetime: 5 + materials: + Plastic: 950 diff --git a/Resources/Prototypes/Research/arsenal.yml b/Resources/Prototypes/Research/arsenal.yml new file mode 100644 index 0000000000..64f8dc3401 --- /dev/null +++ b/Resources/Prototypes/Research/arsenal.yml @@ -0,0 +1,145 @@ +# Tier 1 + +- type: technology + id: SalvageWeapons + name: research-technology-salvage-weapons + icon: + sprite: Objects/Weapons/Guns/Basic/kinetic_accelerator.rsi + state: gun + discipline: Arsenal + tier: 1 + cost: 10000 + recipeUnlocks: + - WeaponProtoKineticAccelerator + # These are roundstart but not replenishable for salvage + - WeaponCrusher + - WeaponCrusherDagger + +- type: technology + id: DraconicMunitions + name: research-technology-draconic-munitions + icon: + sprite: Objects/Weapons/Guns/Ammunition/Boxes/pistol.rsi + state: incendiarydisplay + discipline: Arsenal + tier: 1 + cost: 10000 + recipeUnlocks: + - ShellShotgunIncendiary + - CartridgePistolIncendiary + - CartridgeMagnumIncendiary + - CartridgeLightRifleIncendiary + - CartridgeRifleIncendiary + - MagazineBoxPistolIncendiary + - MagazineBoxMagnumIncendiary + - MagazineBoxLightRifleIncendiary + - MagazineBoxRifleIncendiary + +- type: technology + id: ExplosiveTechnology + name: research-technology-explosive-technology + icon: + sprite: Objects/Devices/payload.rsi + state: payload-explosive-armed + discipline: Arsenal + tier: 1 + cost: 7500 + recipeUnlocks: + - Signaller + - SignalTrigger + - VoiceTrigger + - TimerTrigger + - FlashPayload + - ExplosivePayload + +- type: technology + id: AdvancedLaserManipulation + name: research-technology-advanced-laser-manipulation + icon: + sprite: Objects/Weapons/Guns/Battery/advancedlasergun.rsi + state: icon + discipline: Arsenal + tier: 1 + cost: 10000 + recipeUnlocks: + - WeaponLaserCarbine + - WeaponAdvancedLaser + +- type: technology + id: NonlethalAmmunition + name: research-technology-nonlethal-ammunition + icon: + sprite: Objects/Weapons/Guns/Ammunition/Casings/shotgun_shell.rsi + state: beanbag + discipline: Arsenal + tier: 1 + cost: 7500 + recipeUnlocks: + - ShellShotgunBeanbag + - CartridgePistolRubber + - CartridgeMagnumRubber + - CartridgeLightRifleRubber + - CartridgeRifleRubber + - MagazineBoxPistolRubber + - MagazineBoxMagnumRubber + - MagazineBoxLightRifleRubber + - MagazineBoxRifleRubber + +# Tier 2 + +- type: technology + id: OptimizedBallistics + name: research-technology-optimized-ballistics + icon: + sprite: Objects/Weapons/Guns/Ammunition/Boxes/pistol.rsi + state: hvdisplay + discipline: Arsenal + tier: 2 + cost: 7500 + recipeUnlocks: + - CartridgePistolHighVelocity + - CartridgeMagnumHighVelocity + - CartridgeLightRifleHighVelocity + - CartridgeRifleHighVelocity + - MagazineBoxPistolHighVelocity + - MagazineBoxMagnumHighVelocity + - MagazineBoxLightRifleHighVelocity + - MagazineBoxRifleHighVelocity + +- type: technology + id: ConcentratedLaserWeaponry + name: research-technology-concentrated-laser-weaponry + icon: + sprite: Objects/Weapons/Guns/Battery/laser_cannon.rsi + state: icon + discipline: Arsenal + tier: 2 + cost: 10000 + recipeUnlocks: + - WeaponLaserCannon + +- type: technology + id: WaveParticleHarnessing + name: research-technology-wave-particle-harnessing + icon: + sprite: Objects/Weapons/Guns/Battery/xray.rsi + state: icon + discipline: Arsenal + tier: 2 + cost: 10000 + recipeUnlocks: + - WeaponXrayCannon + +# Tier 3 + +- type: technology + id: HandheldElectricalPropulsion + name: research-technology-handheld-electrical-propulsion + icon: + sprite: Objects/Weapons/Guns/Battery/taser.rsi + state: icon + discipline: Arsenal + tier: 3 + cost: 15000 + recipeUnlocks: + - WeaponTaser diff --git a/Resources/Prototypes/Research/disciplines.yml b/Resources/Prototypes/Research/disciplines.yml index bd39059fbd..7ce290d23c 100644 --- a/Resources/Prototypes/Research/disciplines.yml +++ b/Resources/Prototypes/Research/disciplines.yml @@ -22,6 +22,18 @@ 2: 0.75 3: 0.75 +- type: techDiscipline + id: Arsenal + name: research-discipline-arsenal + color: "#dc373b" + icon: + sprite: Interface/Misc/research_disciplines.rsi + state: arsenal + tierPrerequisites: + 1: 0 + 2: 0.75 + 3: 0.75 + - type: techDiscipline id: Experimental name: research-discipline-experimental diff --git a/Resources/Prototypes/Research/experimental.yml b/Resources/Prototypes/Research/experimental.yml index c2e96fd0a7..4dfff7259a 100644 --- a/Resources/Prototypes/Research/experimental.yml +++ b/Resources/Prototypes/Research/experimental.yml @@ -19,22 +19,6 @@ - Drone - ExosuitFabricatorMachineCircuitboard -- type: technology - id: SignallingTech - name: research-technology-signalling-tech - icon: - sprite: Objects/Devices/signaller.rsi - state: signaller - discipline: Experimental - tier: 1 - cost: 7500 - recipeUnlocks: - - Signaller - - SignalTrigger - - VoiceTrigger - - TimerTrigger - - SignalTimerElectronics - - type: technology id: BasicAnomalousResearch name: research-technology-basic-anomalous-research diff --git a/Resources/Prototypes/Research/industrial.yml b/Resources/Prototypes/Research/industrial.yml index 21192133c8..0061d78c3d 100644 --- a/Resources/Prototypes/Research/industrial.yml +++ b/Resources/Prototypes/Research/industrial.yml @@ -1,20 +1,5 @@ # Tier 1 -- type: technology - id: SalvageWeapons - name: research-technology-salvage-weapons - icon: - sprite: Objects/Weapons/Guns/Basic/kinetic_accelerator.rsi - state: gun - discipline: Industrial - tier: 1 - cost: 10000 - recipeUnlocks: - - WeaponProtoKineticAccelerator - # These are roundstart but not replenishable for salvage - - WeaponCrusher - - WeaponCrusherDagger - - type: technology id: SalvageEquipment name: research-technology-salvage-equipment diff --git a/Resources/Textures/Interface/Misc/research_disciplines.rsi/arsenal.png b/Resources/Textures/Interface/Misc/research_disciplines.rsi/arsenal.png new file mode 100644 index 0000000000000000000000000000000000000000..1bb171df85e4ff7635c44e5ac38307d7af9cb15f GIT binary patch literal 160 zcmeAS@N?(olHy`uVBq!ia0vp^93afW1|*O0@9PFqjKx9jP7LeL$-D$|qC8z3LnNjq zrz9jKL?|!&IiHc6qq21F#KPVg&+3_76?ZK7)TzuPx#XK+(vs wbFVB{H>_$payZ2B1VtnBR7VLH1VIo0?&7CYC8K-JF8}}l07*qoM6N<$g67?MQUCw| literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/light_rifle.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/light_rifle.rsi/meta.json index d94e6c23c1..787a519c84 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/light_rifle.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/light_rifle.rsi/meta.json @@ -22,6 +22,9 @@ { "name": "hv" }, + { + "name": "incendiary" + }, { "name": "practice" }, diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/magnum.rsi/incendiary.png b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/magnum.rsi/incendiary.png new file mode 100644 index 0000000000000000000000000000000000000000..d4d581f5bbdf8f4e95f8d6749deed9d475644d7a GIT binary patch literal 147 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz#^NA%Cx&(BWL^R}zMd|QArY;~ z2@zopr09i;aA^-pY literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/magnum.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/magnum.rsi/meta.json index 5473222995..8b856ddf13 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/magnum.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/magnum.rsi/meta.json @@ -22,6 +22,9 @@ { "name": "hv" }, + { + "name": "incendiary" + }, { "name": "practice" }, diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/pistol.rsi/hvdisplay.png b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/pistol.rsi/hvdisplay.png new file mode 100644 index 0000000000000000000000000000000000000000..f83bd2db9756302048a0df80e5a3f3dcb2c26a9c GIT binary patch literal 456 zcmV;(0XP1MP)Px$f=NU{R9J=Wk}*gEQ5eU6hBOAz=3ui_bZybnO)XKAE>5;MNP`a15IO`7x#-|@ z5Jp2w4Pr<`1cC%E*+EzkffU*%4!Sg5lgF8zckfUlxc~Ov$NPT2_wj)nH*Wqoo^i!W zrDD5L{yMG!?C<18ddjkF`p#>cU;&o`eoK+52pHi2q9QYsgol0IArUFyXFD!yQxO;k zA4GlmuR!t2%c zkVtQCjeNG_2o4rYSS%#9Xe0!LXw^=J;Pq-7&*~oc4{!P}MB$bK0F9?d0G3t`SzbgJ z8Ndh0ocAazVsKjmW+KYjrCw9tzep*k!f+u0qloe6jb`6594wZw(d?sKsblL$$63d4 yu$aK0c{-KQ0HQ%@qHs$AGZEvR8#iwLeZB#J>e8q+vdqE&0000Px#>q$gGR9J=WlD`UqP!xxMMx!)Dw0T8nbBe|qgrK#@=mC6*7Kxx2X$=CG#{R9* z(rt@!vE7EyEVJ~g)NsD(a>4U`R}MfB#E+3gKC*2)a>q|+4**!b7MW=nM(nJzNWeR} z!r1-Hd2C1_0bw}+qzx(MDOVjckSUBoVGPsR+$$vDlicUX`PVr@0dev})e2slL=Fh< zKt~=+a2~?2IE@_0xC5$VO0T~@EMIT7==Zw$FX3Q##ct(BLek2G19VM>HItq~!a+&p z!U2ASuE}sKO-x1?A$g_%0BE-wSS}_o!!80;700000NkvXXu0mjf DM^Jtd literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/pistol.rsi/incendiarydisplay.png b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Boxes/pistol.rsi/incendiarydisplay.png new file mode 100644 index 0000000000000000000000000000000000000000..1d8de97957ef2eb23d269a003d60aa48d14e6362 GIT binary patch literal 472 zcmV;}0Vn>6P)Px$l1W5CR9J=WmcL5^VHn3hiZn$-L|f<5WJO9#R96R~V=Xpoi?bBb-{24uI61Y~ z(wY>K1TLu&Hbfy_))47pOVis>+L=Gj_fTrM?{s%B_k2F@!*jd`cI?>s<2bCmluoDH zp6Rb|0zjFZXsfAdTGv`GD*~P1Q;PC+t?OMyh9Y2u1IUUv2MKrAc3VWI6ou2Xb1@Ww zUhqbqbltR$C4p}6^7w%i94yShj^86zMh~I(12lqV;2_z79lu8e)<&B5?%Hl!>y7Yy z;fBq?`e24I8dAlga)%c5l89Hi&(+&RWZ``aL_?}ra%I@q3scFa=pKERZz;Adi z^V}j*AM=rjS1rN8WC)`nRYbyDz!sHktOcISJmZ+(=IZ*PxeHl1n4AUCkSdlJrU96l z^8qkYjs7x@HzkPx$9!W$&R9J=Wld(#}Kpcm^h^vE>P{~csO+#KFAh=n#K0y)cA{1Mnp|$U!xT((} zS{Lbh0YMO~WG$SF7tV&1-Wdn+z9n}#^8bBz{|k6L9*^h06WD&x=^PU!O{Vux07OX> zfVYoV1#on*U#gj=X=S}lTLCj1D8{{h7l51FyGoH-1k7+vuisUA+-@IQiC7D)3OCUr zo(!w&;nij>;GnOe&!tRBv2({zVmoIe~M3ODRD>h?-CXO0000