diff --git a/Resources/Migrations/migration.yml b/Resources/Migrations/migration.yml index a8f9f4cdab..42f24e1c35 100644 --- a/Resources/Migrations/migration.yml +++ b/Resources/Migrations/migration.yml @@ -464,14 +464,6 @@ PosterLegitEnlist: null PosterLegitNoErp: null PosterContrabandEnlistGorlex: null -# 2025-04-26 -WeaponTetherGun: null -WeaponForceGun: null -WeaponGrapplingGun: null -BorgModuleGrapplingGun: null -WeaponForceGunAdmin: null -WeaponTetherGunAdmin: null - # Lavaland EE stuff TreasureDatadiskEncrypted: null VendingMachineBoozeSyndicate: VendingMachineBooze diff --git a/Resources/Prototypes/Catalog/VendingMachines/Inventories/salvage.yml b/Resources/Prototypes/Catalog/VendingMachines/Inventories/salvage.yml index ad47a59bb7..00e21b1e58 100644 --- a/Resources/Prototypes/Catalog/VendingMachines/Inventories/salvage.yml +++ b/Resources/Prototypes/Catalog/VendingMachines/Inventories/salvage.yml @@ -8,7 +8,7 @@ FlashlightLantern: 2 HandheldGPSBasic: 2 RadioHandheld: 2 - # WeaponGrapplingGun: 2 + WeaponGrapplingGun: 2 WeaponProtoKineticAccelerator: 4 # WD EDIT START contrabandInventory: diff --git a/Resources/Prototypes/DeltaV/Catalog/VendingMachines/Inventories/salvage_points.yml b/Resources/Prototypes/DeltaV/Catalog/VendingMachines/Inventories/salvage_points.yml index 016a01a237..fc6edc1982 100644 --- a/Resources/Prototypes/DeltaV/Catalog/VendingMachines/Inventories/salvage_points.yml +++ b/Resources/Prototypes/DeltaV/Catalog/VendingMachines/Inventories/salvage_points.yml @@ -20,8 +20,8 @@ cost: 500 - id: SeismicCharge cost: 1000 -# - id: WeaponGrapplingGun -# cost: 300 + - id: WeaponGrapplingGun + cost: 300 # TODO: laser pointer 300, toy facehugger 300 # TODO: stabilizing serum for 400 - id: FultonBeacon diff --git a/Resources/Prototypes/Entities/Markers/Spawners/Random/Salvage/tables_loot.yml b/Resources/Prototypes/Entities/Markers/Spawners/Random/Salvage/tables_loot.yml index b5601cacd8..050889103f 100644 --- a/Resources/Prototypes/Entities/Markers/Spawners/Random/Salvage/tables_loot.yml +++ b/Resources/Prototypes/Entities/Markers/Spawners/Random/Salvage/tables_loot.yml @@ -210,7 +210,7 @@ weight: 0.5 - id: OxygenTankFilled - id: WelderIndustrial - # - id: WeaponGrapplingGun + - id: WeaponGrapplingGun - !type:GroupSelector children: - id: ClothingHeadHatWelding diff --git a/Resources/Prototypes/Entities/Objects/Specific/Robotics/borg_modules.yml b/Resources/Prototypes/Entities/Objects/Specific/Robotics/borg_modules.yml index 2c05e18e4c..27c944f2eb 100644 --- a/Resources/Prototypes/Entities/Objects/Specific/Robotics/borg_modules.yml +++ b/Resources/Prototypes/Entities/Objects/Specific/Robotics/borg_modules.yml @@ -259,21 +259,21 @@ - type: BorgModuleIcon icon: { sprite: Interface/Actions/actions_borg.rsi, state: pka-module } -# - type: entity -# id: BorgModuleGrapplingGun -# parent: [ BaseBorgModuleCargo, BaseProviderBorgModule ] -# name: grappling gun cyborg module -# components: -# - type: Sprite -# layers: -# - state: cargo -# - state: icon-grappling-gun -# - type: ItemBorgModule -# items: -# - WeaponGrapplingGun -# - HandheldGPSBasic -# - type: BorgModuleIcon -# icon: { sprite: Interface/Actions/actions_borg.rsi, state: grappling-module } +- type: entity + id: BorgModuleGrapplingGun + parent: [ BaseBorgModuleCargo, BaseProviderBorgModule ] + name: grappling gun cyborg module + components: + - type: Sprite + layers: + - state: cargo + - state: icon-grappling-gun + - type: ItemBorgModule + items: + - WeaponGrapplingGun + - HandheldGPSBasic + - type: BorgModuleIcon + icon: { sprite: Interface/Actions/actions_borg.rsi, state: grappling-module } # engineering modules - type: entity diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Launchers/launchers.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Launchers/launchers.yml index b8ff662f92..304823405b 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Launchers/launchers.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Launchers/launchers.yml @@ -202,229 +202,229 @@ shape: - 0,0,5,1 -# - type: entity -# name: tether gun -# parent: -# - BaseItem -# - PowerCellSlotMediumItem -# id: WeaponTetherGun -# description: Manipulates gravity around objects to fling them at high velocities. -# components: -# - type: Item -# storedRotation: -90 -# size: Large # WWDP Guns resize -# shape: -# - 0,0,5,1 -# - type: TetherGun -# frequency: 5 -# dampingRatio: 4 -# - type: ItemToggle -# onUse: false -# - type: PowerCellDraw -# - type: ToggleCellDraw -# - type: Sprite -# sprite: Objects/Weapons/Guns/Launchers/tether_gun.rsi -# layers: -# - state: base -# - state: base-unshaded -# map: [ "unshaded" ] -# shader: unshaded -# visible: false -# - type: ToggleableLightVisuals -# spriteLayer: unshaded -# inhandVisuals: -# left: -# - state: inhand-left-unshaded -# shader: unshaded -# right: -# - state: inhand-right-unshaded -# shader: unshaded -# - type: Appearance -# - type: GenericVisualizer -# visuals: -# enum.TetherVisualsStatus.Key: -# unshaded: -# True: { visible: true } -# False: { visible: false } +- type: entity + name: tether gun + parent: + - BaseItem + - PowerCellSlotMediumItem + id: WeaponTetherGun + description: Manipulates gravity around objects to fling them at high velocities. + components: + - type: Item + storedRotation: -90 + size: Large # WWDP Guns resize + shape: + - 0,0,5,1 + - type: TetherGun + frequency: 5 + dampingRatio: 4 + - type: ItemToggle + onUse: false + - type: PowerCellDraw + - type: ToggleCellDraw + - type: Sprite + sprite: Objects/Weapons/Guns/Launchers/tether_gun.rsi + layers: + - state: base + - state: base-unshaded + map: [ "unshaded" ] + shader: unshaded + visible: false + - type: ToggleableLightVisuals + spriteLayer: unshaded + inhandVisuals: + left: + - state: inhand-left-unshaded + shader: unshaded + right: + - state: inhand-right-unshaded + shader: unshaded + - type: Appearance + - type: GenericVisualizer + visuals: + enum.TetherVisualsStatus.Key: + unshaded: + True: { visible: true } + False: { visible: false } -# - type: entity -# name: force gun -# parent: -# - BaseItem -# - PowerCellSlotMediumItem -# id: WeaponForceGun -# description: Manipulates gravity around objects to fling them at high velocities. -# components: -# - type: Item -# storedRotation: -90 -# size: Large # WWDP Guns resize -# shape: -# - 0,0,5,1 -# - type: ForceGun -# frequency: 15 -# dampingRatio: 4 -# massLimit: 50 -# lineColor: "#18a2d5" -# soundLaunch: -# path: /Audio/Weapons/soup.ogg -# params: -# volume: 2 -# - type: ItemToggle -# onUse: false -# - type: PowerCellDraw -# - type: ToggleCellDraw -# - type: Sprite -# sprite: Objects/Weapons/Guns/Launchers/force_gun.rsi -# layers: -# - state: base -# - state: base-unshaded -# map: [ "unshaded" ] -# shader: unshaded -# visible: false -# - type: ToggleableLightVisuals -# spriteLayer: unshaded -# inhandVisuals: -# left: -# - state: inhand-left-unshaded -# shader: unshaded -# right: -# - state: inhand-right-unshaded -# shader: unshaded -# - type: Appearance -# - type: GenericVisualizer -# visuals: -# enum.TetherVisualsStatus.Key: -# unshaded: -# True: { visible: true } -# False: { visible: false } +- type: entity + name: force gun + parent: + - BaseItem + - PowerCellSlotMediumItem + id: WeaponForceGun + description: Manipulates gravity around objects to fling them at high velocities. + components: + - type: Item + storedRotation: -90 + size: Large # WWDP Guns resize + shape: + - 0,0,5,1 + - type: ForceGun + frequency: 15 + dampingRatio: 4 + massLimit: 50 + lineColor: "#18a2d5" + soundLaunch: + path: /Audio/Weapons/soup.ogg + params: + volume: 2 + - type: ItemToggle + onUse: false + - type: PowerCellDraw + - type: ToggleCellDraw + - type: Sprite + sprite: Objects/Weapons/Guns/Launchers/force_gun.rsi + layers: + - state: base + - state: base-unshaded + map: [ "unshaded" ] + shader: unshaded + visible: false + - type: ToggleableLightVisuals + spriteLayer: unshaded + inhandVisuals: + left: + - state: inhand-left-unshaded + shader: unshaded + right: + - state: inhand-right-unshaded + shader: unshaded + - type: Appearance + - type: GenericVisualizer + visuals: + enum.TetherVisualsStatus.Key: + unshaded: + True: { visible: true } + False: { visible: false } -# - type: entity -# name: grappling gun -# parent: BaseItem -# id: WeaponGrapplingGun -# components: -# - type: AmmoCounter -# - type: GrapplingGun -# - type: Gun -# soundGunshot: /Audio/Weapons/Guns/Gunshots/harpoon.ogg -# fireRate: 0.5 -# clumsyProof: true -# - type: BasicEntityAmmoProvider -# proto: GrapplingHook -# capacity: 1 -# - type: Sprite -# sprite: Objects/Weapons/Guns/Launchers/grappling_gun.rsi -# layers: -# - state: base -# - state: base-unshaded -# map: [ "unshaded" ] -# visible: true -# - type: UseDelay -# delay: 1.5 -# - type: Appearance -# - type: GenericVisualizer -# visuals: -# enum.TetherVisualsStatus.Key: -# unshaded: -# True: { state: base-unshaded } -# False: { state: base-unshaded-off } -# - type: Item # WWDP Guns resize -# size: Small -# shape: -# - 0,0,1,0 -# - 0,1,0,1 +- type: entity + name: grappling gun + parent: BaseItem + id: WeaponGrapplingGun + components: + - type: AmmoCounter + - type: GrapplingGun + - type: Gun + soundGunshot: /Audio/Weapons/Guns/Gunshots/harpoon.ogg + fireRate: 0.5 + clumsyProof: true + - type: BasicEntityAmmoProvider + proto: GrapplingHook + capacity: 1 + - type: Sprite + sprite: Objects/Weapons/Guns/Launchers/grappling_gun.rsi + layers: + - state: base + - state: base-unshaded + map: [ "unshaded" ] + visible: true + - type: UseDelay + delay: 1.5 + - type: Appearance + - type: GenericVisualizer + visuals: + enum.TetherVisualsStatus.Key: + unshaded: + True: { state: base-unshaded } + False: { state: base-unshaded-off } + - type: Item # WWDP Guns resize + size: Small + shape: + - 0,0,1,0 + - 0,1,0,1 -# # Admeme -# - type: entity -# name: tether gun -# parent: BaseItem -# id: WeaponTetherGunAdmin -# suffix: Admeme -# description: Manipulates gravity around objects to fling them at high velocities. -# components: -# - type: TetherGun -# canTetherAlive: true -# canUnanchor: true -# maxForce: 10000 -# massLimit: 10000 -# dampingRatio: 4 -# frequency: 20 -# - type: Sprite -# sprite: Objects/Weapons/Guns/Launchers/tether_gun.rsi -# layers: -# - state: base -# - state: base-unshaded -# map: [ "unshaded" ] -# shader: unshaded -# visible: false -# - type: ToggleableLightVisuals -# spriteLayer: unshaded -# inhandVisuals: -# left: -# - state: inhand-left-unshaded -# shader: unshaded -# right: -# - state: inhand-right-unshaded -# shader: unshaded -# - type: Appearance -# - type: GenericVisualizer -# visuals: -# enum.TetherVisualsStatus.Key: -# unshaded: -# True: { visible: true } -# False: { visible: false } -# - type: GiftIgnore # WD EDIT -# - type: Item # WWDP guns resize -# size: Large -# shape: -# - 0,0,5,1 +# Admeme +- type: entity + name: tether gun + parent: BaseItem + id: WeaponTetherGunAdmin + suffix: Admeme + description: Manipulates gravity around objects to fling them at high velocities. + components: + - type: TetherGun + canTetherAlive: true + canUnanchor: true + maxForce: 10000 + massLimit: 10000 + dampingRatio: 4 + frequency: 20 + - type: Sprite + sprite: Objects/Weapons/Guns/Launchers/tether_gun.rsi + layers: + - state: base + - state: base-unshaded + map: [ "unshaded" ] + shader: unshaded + visible: false + - type: ToggleableLightVisuals + spriteLayer: unshaded + inhandVisuals: + left: + - state: inhand-left-unshaded + shader: unshaded + right: + - state: inhand-right-unshaded + shader: unshaded + - type: Appearance + - type: GenericVisualizer + visuals: + enum.TetherVisualsStatus.Key: + unshaded: + True: { visible: true } + False: { visible: false } + - type: GiftIgnore # WD EDIT + - type: Item # WWDP guns resize + size: Large + shape: + - 0,0,5,1 -# - type: entity -# name: force gun -# parent: BaseItem -# id: WeaponForceGunAdmin -# suffix: Admeme -# description: Manipulates gravity around objects to fling them at high velocities. -# components: -# - type: ForceGun -# canTetherAlive: true -# canUnanchor: true -# maxForce: 10000 -# massLimit: 10000 -# frequency: 15 -# dampingRatio: 4 -# throwForce: 50 -# throwDistance: 100 -# lineColor: "#18a2d5" -# - type: Sprite -# sprite: Objects/Weapons/Guns/Launchers/force_gun.rsi -# layers: -# - state: base -# - state: base-unshaded -# map: [ "unshaded" ] -# shader: unshaded -# visible: false -# - type: ToggleableLightVisuals -# spriteLayer: unshaded -# inhandVisuals: -# left: -# - state: inhand-left-unshaded -# shader: unshaded -# right: -# - state: inhand-right-unshaded -# shader: unshaded -# - type: Appearance -# - type: GenericVisualizer -# visuals: -# enum.TetherVisualsStatus.Key: -# unshaded: -# True: { visible: true } -# False: { visible: false } -# - type: GiftIgnore # WD EDIT -# - type: Item # WWDP guns resize -# size: Large -# shape: -# - 0,0,5,1 +- type: entity + name: force gun + parent: BaseItem + id: WeaponForceGunAdmin + suffix: Admeme + description: Manipulates gravity around objects to fling them at high velocities. + components: + - type: ForceGun + canTetherAlive: true + canUnanchor: true + maxForce: 10000 + massLimit: 10000 + frequency: 15 + dampingRatio: 4 + throwForce: 50 + throwDistance: 100 + lineColor: "#18a2d5" + - type: Sprite + sprite: Objects/Weapons/Guns/Launchers/force_gun.rsi + layers: + - state: base + - state: base-unshaded + map: [ "unshaded" ] + shader: unshaded + visible: false + - type: ToggleableLightVisuals + spriteLayer: unshaded + inhandVisuals: + left: + - state: inhand-left-unshaded + shader: unshaded + right: + - state: inhand-right-unshaded + shader: unshaded + - type: Appearance + - type: GenericVisualizer + visuals: + enum.TetherVisualsStatus.Key: + unshaded: + True: { visible: true } + False: { visible: false } + - type: GiftIgnore # WD EDIT + - type: Item # WWDP guns resize + size: Large + shape: + - 0,0,5,1 - type: entity name: meteor launcher diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Projectiles/projectiles.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Projectiles/projectiles.yml index 0fe50e9636..df06273d16 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Projectiles/projectiles.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Projectiles/projectiles.yml @@ -982,40 +982,40 @@ color: orange energy: 0.5 -# - type: entity -# id: GrapplingHook -# name: grappling hook -# categories: [ HideSpawnMenu ] -# components: -# - type: EmbeddableProjectile -# deleteOnRemove: true -# - type: Clickable -# - type: InteractionOutline -# - type: Sprite -# noRot: false -# sprite: Objects/Weapons/Guns/Launchers/grappling_gun.rsi -# layers: -# - state: hook -# - type: Physics -# bodyType: Dynamic -# linearDamping: 0 -# angularDamping: 0 -# - type: Projectile -# deleteOnCollide: false -# damage: -# types: -# Blunt: 0 -# - type: Fixtures -# fixtures: -# projectile: -# shape: -# !type:PhysShapeAabb -# bounds: "-0.1,-0.1,0.1,0.1" -# hard: false -# mask: -# - Impassable -# - HighImpassable -# - type: GrapplingProjectile +- type: entity + id: GrapplingHook + name: grappling hook + categories: [ HideSpawnMenu ] + components: + - type: EmbeddableProjectile + deleteOnRemove: true + - type: Clickable + - type: InteractionOutline + - type: Sprite + noRot: false + sprite: Objects/Weapons/Guns/Launchers/grappling_gun.rsi + layers: + - state: hook + - type: Physics + bodyType: Dynamic + linearDamping: 0 + angularDamping: 0 + - type: Projectile + deleteOnCollide: false + damage: + types: + Blunt: 0 + - type: Fixtures + fixtures: + projectile: + shape: + !type:PhysShapeAabb + bounds: "-0.1,-0.1,0.1,0.1" + hard: false + mask: + - Impassable + - HighImpassable + - type: GrapplingProjectile - type: entity name : disabler bolt smg diff --git a/Resources/Prototypes/Entities/Virtual/tether.yml b/Resources/Prototypes/Entities/Virtual/tether.yml index c5b9d00dd9..9459fd2088 100644 --- a/Resources/Prototypes/Entities/Virtual/tether.yml +++ b/Resources/Prototypes/Entities/Virtual/tether.yml @@ -1,5 +1,3 @@ -# File: Resources/Prototypes/Entities/Virtual/tether.yml - - type: entity id: TetherEntity categories: [ HideSpawnMenu ] diff --git a/Resources/Prototypes/Recipes/Lathes/Packs/science.yml b/Resources/Prototypes/Recipes/Lathes/Packs/science.yml index 68e64903b3..dea553d561 100644 --- a/Resources/Prototypes/Recipes/Lathes/Packs/science.yml +++ b/Resources/Prototypes/Recipes/Lathes/Packs/science.yml @@ -65,10 +65,10 @@ id: ScienceWeapons recipes: - WeaponPistolCHIMP - # - WeaponForceGun - EE EDIT + - WeaponForceGun - WeaponLaserSvalinn - WeaponProtoKineticAccelerator - # - WeaponTetherGun - EE EDIT + - WeaponTetherGun - WeaponGauntletGorilla # EE EDIT START # - WeaponCivilianDisabler - WD EDIT diff --git a/Resources/Prototypes/Recipes/Lathes/devices.yml b/Resources/Prototypes/Recipes/Lathes/devices.yml index d40233d801..b0e1938330 100644 --- a/Resources/Prototypes/Recipes/Lathes/devices.yml +++ b/Resources/Prototypes/Recipes/Lathes/devices.yml @@ -151,15 +151,15 @@ Steel: 600 Glass: 200 -# - type: latheRecipe -# id: WeaponForceGun -# result: WeaponForceGun -# category: Tools -# completetime: 5 -# materials: -# Steel: 500 -# Glass: 400 -# Silver: 200 +- type: latheRecipe + id: WeaponForceGun + result: WeaponForceGun + category: Tools + completetime: 5 + materials: + Steel: 500 + Glass: 400 + Silver: 200 - type: latheRecipe id: DeviceQuantumSpinInverter @@ -180,25 +180,25 @@ Glass: 500 Silver: 100 -# - type: latheRecipe -# id: WeaponTetherGun -# result: WeaponTetherGun -# category: Tools -# completetime: 5 -# materials: -# Steel: 500 -# Glass: 400 -# Silver: 100 +- type: latheRecipe + id: WeaponTetherGun + result: WeaponTetherGun + category: Tools + completetime: 5 + materials: + Steel: 500 + Glass: 400 + Silver: 100 -# - type: latheRecipe -# id: WeaponGrapplingGun -# result: WeaponGrapplingGun -# category: Tools -# completetime: 5 -# materials: -# Steel: 500 -# Glass: 400 -# Gold: 100 +- type: latheRecipe + id: WeaponGrapplingGun + result: WeaponGrapplingGun + category: Tools + completetime: 5 + materials: + Steel: 500 + Glass: 400 + Gold: 100 - type: latheRecipe id: ClothingEyesNightVisionGoggles diff --git a/Resources/Prototypes/Research/experimental.yml b/Resources/Prototypes/Research/experimental.yml index 44e2be8e70..b7c833e5a3 100644 --- a/Resources/Prototypes/Research/experimental.yml +++ b/Resources/Prototypes/Research/experimental.yml @@ -137,19 +137,19 @@ - PicoManipulatorStockPart softCapContribution: 1.2 -# - type: technology -# id: GravityManipulation -# name: research-technology-gravity-manipulation -# icon: -# sprite: Objects/Weapons/Guns/Launchers/tether_gun.rsi -# state: base -# discipline: Experimental -# tier: 3 -# cost: 10000 -# recipeUnlocks: -# - WeaponForceGun -# - WeaponTetherGun -# softCapContribution: 1.5 +- type: technology + id: GravityManipulation + name: research-technology-gravity-manipulation + icon: + sprite: Objects/Weapons/Guns/Launchers/tether_gun.rsi + state: base + discipline: Experimental + tier: 3 + cost: 10000 + recipeUnlocks: + - WeaponForceGun + - WeaponTetherGun + softCapContribution: 1.5 - type: technology id: QuantumLeaping diff --git a/Resources/Prototypes/Research/industrial.yml b/Resources/Prototypes/Research/industrial.yml index 72790c514a..daa4dca1c3 100644 --- a/Resources/Prototypes/Research/industrial.yml +++ b/Resources/Prototypes/Research/industrial.yml @@ -11,6 +11,7 @@ cost: 7500 recipeUnlocks: - MiningDrill + - WeaponGrapplingGun - MineralScannerEmpty - MechEquipmentDrill # Goobstation - OreProcessorIndustrialMachineCircuitboard diff --git a/Resources/Prototypes/borg_types.yml b/Resources/Prototypes/borg_types.yml index adf980e200..de624c7f29 100644 --- a/Resources/Prototypes/borg_types.yml +++ b/Resources/Prototypes/borg_types.yml @@ -82,7 +82,7 @@ - BorgModuleCargo defaultModules: -# - BorgModuleGrapplingGun + - BorgModuleGrapplingGun - BorgModuleMining - BorgModuleAppraisal - BorgModulePKA # Lavaland diff --git a/Resources/ServerInfo/Guidebook/Science/Science.xml b/Resources/ServerInfo/Guidebook/Science/Science.xml index e85b1e2f4f..e8c2fdfa4a 100644 --- a/Resources/ServerInfo/Guidebook/Science/Science.xml +++ b/Resources/ServerInfo/Guidebook/Science/Science.xml @@ -29,7 +29,7 @@ - +