From 4fdfa9386b77e6dd09cdd6235dd1136f521d03df Mon Sep 17 00:00:00 2001 From: Nemanja <98561806+EmoGarbage404@users.noreply.github.com> Date: Sun, 18 May 2025 02:40:59 -0400 Subject: [PATCH] De-loot salvage, add reward crates (#37561) --- .../Prototypes/Catalog/Cargo/cargo_cargo.yml | 10 ++ .../Catalog/Cargo/salvage_rewards.yml | 83 +++++++++++++ .../Catalog/Fills/Crates/salvage.yml | 113 ++++++++++++++++++ .../Entities/Clothing/Neck/cloaks.yml | 6 +- .../Magnet/space_debris_templates.yml | 3 - Resources/Prototypes/Procedural/vgroid.yml | 18 +-- Resources/migration.yml | 3 + 7 files changed, 216 insertions(+), 20 deletions(-) create mode 100644 Resources/Prototypes/Catalog/Cargo/salvage_rewards.yml diff --git a/Resources/Prototypes/Catalog/Cargo/cargo_cargo.yml b/Resources/Prototypes/Catalog/Cargo/cargo_cargo.yml index e415953a0d..050aa647b8 100644 --- a/Resources/Prototypes/Catalog/Cargo/cargo_cargo.yml +++ b/Resources/Prototypes/Catalog/Cargo/cargo_cargo.yml @@ -27,3 +27,13 @@ cost: 750 category: cargoproduct-category-name-cargo group: market + +- type: cargoProduct + id: CargoCrusherDagger + icon: + sprite: Objects/Weapons/Melee/crusher_dagger.rsi + state: icon + product: CrateCrusherDagger + cost: 2500 + category: cargoproduct-category-name-cargo + group: market diff --git a/Resources/Prototypes/Catalog/Cargo/salvage_rewards.yml b/Resources/Prototypes/Catalog/Cargo/salvage_rewards.yml new file mode 100644 index 0000000000..19fea1f55f --- /dev/null +++ b/Resources/Prototypes/Catalog/Cargo/salvage_rewards.yml @@ -0,0 +1,83 @@ +# Rank 2 +- type: cargoProduct + id: CargoDoubleEmergencyTank + icon: + sprite: Objects/Tanks/emergency_double.rsi + state: icon + product: CrateDoubleEmergencyTank + cost: 2400 + category: cargoproduct-category-name-cargo + group: SalvageJobReward2 + +- type: cargoProduct + id: CargoSeismicCharge + icon: + sprite: Objects/Weapons/Bombs/seismic.rsi + state: icon + product: CrateSeismicCharge + cost: 1800 + category: cargoproduct-category-name-cargo + group: SalvageJobReward2 + +- type: cargoProduct + id: CargoCrusher + icon: + sprite: Objects/Weapons/Melee/crusher.rsi + state: icon + product: CrateCrusher + cost: 5000 + category: cargoproduct-category-name-cargo + group: SalvageJobReward2 + +- type: cargoProduct + id: CargoSalvageHardsuit + icon: + sprite: Clothing/OuterClothing/Hardsuits/salvage.rsi + state: icon + product: CrateSalvageHardsuit + cost: 7500 + category: cargoproduct-category-name-cargo + group: SalvageJobReward2 + +# Rank 3 +- type: cargoProduct + id: CargoFulton + icon: + sprite: /Textures/Objects/Tools/fulton.rsi + state: extraction_pack + product: CrateFulton + cost: 3000 + category: cargoproduct-category-name-cargo + group: SalvageJobReward3 + +- type: cargoProduct + id: CargoVoidJetpack + icon: + sprite: Objects/Tanks/Jetpacks/void.rsi + state: icon + product: CrateVoidJetpack + cost: 4000 + category: cargoproduct-category-name-cargo + group: SalvageJobReward3 + +- type: cargoProduct + id: CargoCrusherGlaive + icon: + sprite: Objects/Weapons/Melee/crusher_glaive.rsi + state: icon + product: CrateCrusherGlaive + cost: 8000 + category: cargoproduct-category-name-cargo + group: SalvageJobReward3 + +# Max Rank + +- type: cargoProduct + id: CargoSupremeSalvagerCloak + icon: + sprite: Clothing/Neck/Cloaks/miner.rsi + state: icon + product: CrateSupremeSalvagerCloak + cost: 25000 + category: cargoproduct-category-name-cargo + group: SalvageJobRewardMAX diff --git a/Resources/Prototypes/Catalog/Fills/Crates/salvage.yml b/Resources/Prototypes/Catalog/Fills/Crates/salvage.yml index 7bae4ecd77..020fc71a8c 100644 --- a/Resources/Prototypes/Catalog/Fills/Crates/salvage.yml +++ b/Resources/Prototypes/Catalog/Fills/Crates/salvage.yml @@ -90,6 +90,119 @@ - id: WeaponRevolverMateba prob: 0.0001 +- type: entity + parent: CrateGenericSteel + id: CrateCrusherDagger + name: crusher dagger crate + description: Contains 4 crusher daggers for use by salvage. + components: + - type: EntityTableContainerFill + containers: + entity_storage: + id: WeaponCrusherDagger + amount: 4 + +# Salvage rewards +- type: entity + parent: CrateGenericSteel + id: CrateSeismicCharge + name: seismic charge crate + description: Contains 6 seismic charges for use by salvage. + components: + - type: EntityTableContainerFill + containers: + entity_storage: + id: SeismicCharge + amount: 6 + +- type: entity + parent: CrateGenericSteel + id: CrateDoubleEmergencyTank + name: double emergency tank crate + description: Contains 2 double emergency oxygen tanks and 2 double emergency nitrogen tanks + components: + - type: EntityTableContainerFill + containers: + entity_storage: !type:AllSelector + children: + - id: DoubleEmergencyOxygenTankFilled + amount: 2 + - id: DoubleEmergencyNitrogenTankFilled + amount: 2 + +- type: entity + parent: CrateGenericSteel + id: CrateCrusher + name: crusher crate + description: Contains 2 crushers for use by salvage. + components: + - type: EntityTableContainerFill + containers: + entity_storage: + id: WeaponCrusher + amount: 2 + +- type: entity + parent: CrateGenericSteel + id: CrateFulton + name: fulton crate + description: Contains a fulton beacon and 8 fultons. + components: + - type: EntityTableContainerFill + containers: + entity_storage: !type:AllSelector + children: + - id: FultonBeacon + - id: Fulton + amount: 8 + +- type: entity + parent: CrateGenericSteel + id: CrateVoidJetpack + name: void jetpack crate + description: Contains a single void jetpack. + components: + - type: EntityTableContainerFill + containers: + entity_storage: + id: JetpackVoidFilled + +- type: entity + parent: CrateGenericSteel + id: CrateSalvageHardsuit + name: salvage hardsuit crate + description: Contains a salvage hardsuit, breath mask, and oxygen tank. + components: + - type: EntityTableContainerFill + containers: + entity_storage: !type:AllSelector + children: + - id: ClothingOuterHardsuitSalvage + - id: ClothingMaskBreath + - id: OxygenTankFilled + +- type: entity + parent: CrateGenericSteel + id: CrateCrusherGlaive + name: crusher glaive crate + description: Contains a crusher glaive for use by salvage. + components: + - type: EntityTableContainerFill + containers: + entity_storage: + id: WeaponCrusherGlaive + +- type: entity + parent: CrateGenericSteel + id: CrateSupremeSalvagerCloak + name: supreme salvager cloak crate + description: Contains a cloak only to be worn by supreme salvagers. Wearing it undeservedly will result in your doom. + components: + - type: EntityTableContainerFill + containers: + entity_storage: + id: ClothingNeckCloakSalvagerSupreme + - type: entity parent: CrateGenericSteel id: CratePartsT3 diff --git a/Resources/Prototypes/Entities/Clothing/Neck/cloaks.yml b/Resources/Prototypes/Entities/Clothing/Neck/cloaks.yml index facafd0458..10c2a0f3e6 100644 --- a/Resources/Prototypes/Entities/Clothing/Neck/cloaks.yml +++ b/Resources/Prototypes/Entities/Clothing/Neck/cloaks.yml @@ -128,9 +128,9 @@ - type: entity parent: ClothingNeckBase - id: ClothingNeckCloakMiner - name: miner's cloak - description: Worn by the most skilled miners, for one who has moved mountains and filled valleys. + id: ClothingNeckCloakSalvagerSupreme + name: supereme salvager's cloak + description: Worn by the most skilled salvagers, for one who has mastered space and made the mining asteroid his domain. They don't just hand these things out, y'know? components: - type: Sprite sprite: Clothing/Neck/Cloaks/miner.rsi diff --git a/Resources/Prototypes/Procedural/Magnet/space_debris_templates.yml b/Resources/Prototypes/Procedural/Magnet/space_debris_templates.yml index cc08f51755..47aa47fce4 100644 --- a/Resources/Prototypes/Procedural/Magnet/space_debris_templates.yml +++ b/Resources/Prototypes/Procedural/Magnet/space_debris_templates.yml @@ -96,10 +96,7 @@ entities: - SalvageSpawnerTreasure - SalvageSpawnerTreasure - - SalvageSpawnerEquipment - - SalvageSpawnerEquipment - SalvageSpawnerTreasureValuable - - SalvageSpawnerEquipmentValuable - !type:BiomeEntityLayer allowedTiles: - FloorSteel diff --git a/Resources/Prototypes/Procedural/vgroid.yml b/Resources/Prototypes/Procedural/vgroid.yml index 7547072c4d..0caa9f0e1f 100644 --- a/Resources/Prototypes/Procedural/vgroid.yml +++ b/Resources/Prototypes/Procedural/vgroid.yml @@ -163,25 +163,15 @@ table: !type:NestedSelector tableId: SalvageScrapSpawnerValuable - !type:EntityTableDunGen - minCount: 15 - maxCount: 25 + minCount: 30 + maxCount: 45 table: !type:NestedSelector tableId: SalvageTreasureSpawnerCommon - !type:EntityTableDunGen - minCount: 15 - maxCount: 25 - table: !type:NestedSelector - tableId: SalvageEquipmentSpawnerCommon - - !type:EntityTableDunGen - minCount: 15 - maxCount: 20 + minCount: 30 + maxCount: 45 table: !type:NestedSelector tableId: SalvageTreasureSpawnerValuable - - !type:EntityTableDunGen - minCount: 15 - maxCount: 20 - table: !type:NestedSelector - tableId: SalvageEquipmentSpawnerValuable - !type:MobsDunGen minCount: 8 maxCount: 15 diff --git a/Resources/migration.yml b/Resources/migration.yml index 6cdc3f10da..02076fa757 100644 --- a/Resources/migration.yml +++ b/Resources/migration.yml @@ -635,3 +635,6 @@ CigaretteBread: CigaretteBbqSauce ClothingOuterHardsuitBasic: ClothingOuterHardsuitEVA ClothingHeadHelmetHardsuitBasic: null SuitStorageBasic: SuitStorageEVA + +# 2025-05-18 +ClothingNeckCloakMiner: null -- 2.51.2