Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

big salvage and miners update #208

Merged
merged 6 commits into from
Jul 31, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Content.Server/Salvage/SalvageSystem.Expeditions.cs
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ public sealed partial class SalvageSystem
* Handles setup / teardown of salvage expeditions.
*/

private const int MissionLimit = 3;
private const int MissionLimit = 5;

private readonly JobQueue _salvageQueue = new();
private readonly List<(SpawnSalvageMissionJob Job, CancellationTokenSource CancelToken)> _salvageJobs = new();
Expand Down
2 changes: 1 addition & 1 deletion Content.Shared/CCVar/CCVars.cs
Original file line number Diff line number Diff line change
Expand Up @@ -1450,7 +1450,7 @@ public static readonly CVarDef<string>
/// Cooldown for successful missions.
/// </summary>
public static readonly CVarDef<float>
SalvageExpeditionCooldown = CVarDef.Create("salvage.expedition_cooldown", 300f, CVar.REPLICATED);
SalvageExpeditionCooldown = CVarDef.Create("salvage.expedition_cooldown", 150f, CVar.REPLICATED);

public static readonly CVarDef<float>
SalvageExpeditionFailedCooldown = CVarDef.Create("salvage.expedition_failed_cooldown", 900f, CVar.REPLICATED);
Expand Down
Binary file not shown.
Original file line number Diff line number Diff line change
Expand Up @@ -76,3 +76,9 @@ ent-BoxEncryptionKeySyndie = коробка ключей шифрования с
ent-BoxDeathRattleImplants = коробка имплантатов предсмертнохрип
.desc = Шесть имплантатов предсмертнохрип и глобальных систем позиционирования для всего отряда.
.suffix = { "" }
ent-BoxArtifactMiners = коробка шахтерского артефакта
.desc = Содержит в себе артефакты добытые шахтерами.
.suffix = { "" }
ent-BoxCursedKatana = коробка с проклятой катаной
.desc = Содержит в себе ужасающий осколок неизвестного происхождения.
.suffix = { "" }
Original file line number Diff line number Diff line change
Expand Up @@ -22,3 +22,9 @@ ent-BoxMouthSwab = коробка стерильных палочек
ent-BoxBodyBag = коробка мешков для тел
.desc = Содержит мешки для тел.
.suffix = { "" }
ent-BoxCardboardMedPens = коробка с медпенами
.desc = Содержит различные медпены.
.suffix = { "" }
ent-Boxluxmedpen = коробка с роскошными медпенами
.desc = Содержит роскошные медпены, для крайне тяжелых травм.
.suffix = { "" }
Original file line number Diff line number Diff line change
Expand Up @@ -13,3 +13,9 @@ ent-CratePartsT3T4 = ящик деталей 3/4 уровня
ent-CratePartsT4 = ящик деталей 4 уровня
.desc = Содержит 5 случайных деталей 4 уровня для улучшения оборудования.
.suffix = { "" }
ent-CrateMinerEquipment = ящик шахтерских инструментов
.desc = Содержит набор инструментов для двух шахтеров
.suffix = Заполненный
ent-CrateMinerAdvancedEquipment = ящик продвинутых шахтерских инструментов
.desc = Содержит набор продвинутых инструментов для двух шахтеров
.suffix = Заполненный
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
ent-CargoPallet = грузовой поддон
.desc = Определяет предметы для продажи Центкому при отзыве шаттла.
.suffix = { "" }
ent-CargoCrateMinerEquipment = ящик шахтерских инструментов
.desc = Содержит набор инструментов для двух шахтеров
.suffix = { "" }
ent-CargoCrateMinerAdvancedEquipment = ящик продвинутых шахтерских инструментов
.desc = Содержит набор продвинутых инструментов для двух шахтеров
.suffix = { "" }
Original file line number Diff line number Diff line change
Expand Up @@ -31,3 +31,6 @@ ent-Hypopen = ручка
ent-HypopenBox = коробка с гипоручкой
.desc = Небольшая коробка, содержащая гипоручку. Упаковка распадается при вскрытии, не оставляя после себя никаких улик.
.suffix = { "" }
ent-Luxurymedpen = роскошный медпен
.desc = Содержит смесь химических веществ, способных поднять буквально с того света.
.suffix = { "" }
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
ent-OreBag = мешок для руды
.desc = Прочная сумка для утилизаторов и шахтеров для переноски больших объемов руды.
.suffix = { "" }
ent-OreBagBluespace = бездонный мешок для руды
.desc = Прочная сумка для утилизаторов и шахтеров для переноски ОЧЕНЬ больших объемов руды.
.suffix = { "" }
Original file line number Diff line number Diff line change
Expand Up @@ -52,3 +52,9 @@ ent-MiniatureEnergyCrossbow = энергетический мини арбале
ent-WeaponBehonkerLaser = глаз бехонкера
.desc = Глаз бехонкера, стреляет лазером при сжатии.
.suffix = { "" }
ent-WeaponCutter = ионный резак
.desc = Инструмент шахтеров, предназначенный для расчистки горных пород.
.suffix = { "" }
ent-WeaponCutterAdv = улучшенный ионный резак
.desc = Инструмент шахтеров, предназначенный для расчистки горных пород. Обладает усовершенствованной батареей и усиленной концентрирующей линзой.
.suffix = { "" }
Original file line number Diff line number Diff line change
Expand Up @@ -13,3 +13,9 @@ ent-Claymore = клеймор
ent-Cutlass = катлас
.desc = Язвительно изогнутый клинок, часто встречающийся в руках космических пиратов.
.suffix = { "" }
ent-Katanacursed = проклятая катана
.desc = Проклятая катана. Результат работы дворфов. Осквернена душами убитых.
.suffix = { "" }
ent-KatanacursedShard = проклятый осколок
.desc = Загадочный осколок, созданный неизвестным существом.
.suffix = { "" }
23 changes: 22 additions & 1 deletion Resources/Prototypes/Catalog/Cargo/cargo_cargo.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,25 @@
product: CargoPallet
cost: 250
category: Cargo
group: market
group: market

- type: cargoProduct
id: CargoCrateMinerEquipment
icon:
sprite: Objects/Weapons/Guns/Battery/cutter.rsi
state: icon
product: CrateMinerEquipment
cost: 7500
category: Cargo
group: market

- type: cargoProduct
id: CargoCrateMinerAdvancedEquipment
icon:
sprite: Objects/Weapons/Guns/Battery/cutteradv.rsi
state: icon
product: CrateMinerAdvancedEquipment
cost: 12500
category: Cargo
group: market

22 changes: 22 additions & 0 deletions Resources/Prototypes/Catalog/Fills/Boxes/general.yml
Original file line number Diff line number Diff line change
Expand Up @@ -414,3 +414,25 @@
layers:
- state: box
- state: syringe

- type: entity
name: miner artifact
parent: BoxCardboard
id: BoxArtifactMiners
description: This box is filled with mousetraps. Try not to get your hand stuck in one.
components:
- type: Sprite
layers:
- state: box_of_doom
- state: heart_black

- type: entity
name: box of magazines
parent: BoxArtifactMiners
id: BoxCursedKatana
description: A box full of medpens.
components:
- type: StorageFill
contents:
- id: KatanacursedShard
- id: ClothingOuterDogi
22 changes: 22 additions & 0 deletions Resources/Prototypes/Catalog/Fills/Boxes/medical.yml
Original file line number Diff line number Diff line change
Expand Up @@ -119,3 +119,25 @@
whitelist:
tags:
- BodyBag

- type: entity
name: box of magazines
parent: BoxCardboard
id: BoxCardboardMedPens
description: A box full of medpens.
components:
- type: Sprite
layers:
- state: box_of_doom
- state: dna

- type: entity
name: box of lux medpens
parent: BoxCardboardMedPens
id: Boxluxmedpen
description: A box full of medpens.
components:
- type: StorageFill
contents:
- id: Luxurymedpen
amount: 6
29 changes: 29 additions & 0 deletions Resources/Prototypes/Catalog/Fills/Crates/salvage.yml
Original file line number Diff line number Diff line change
Expand Up @@ -146,3 +146,32 @@
contents:
- id: SalvagePartsT4Spawner
amount: 5

- type: entity
id: CrateMinerEquipment
name: "mining"
description: For the daring.
suffix: Filled
parent: CrateGenericSteel
components:
- type: StorageFill
contents:
- id: WeaponCutter
amount: 2
- id: OreBagBluespace
amount: 2

- type: entity
id: CrateMinerAdvancedEquipment
name: "mining advanced"
description: For the daring.
suffix: Filled
parent: CrateGenericSteel
components:
- type: StorageFill
contents:
- id: WeaponCutterAdv
amount: 2
- id: OreBagBluespace
amount: 2

Original file line number Diff line number Diff line change
Expand Up @@ -277,3 +277,40 @@
- id: Hypopen
sound:
path: /Audio/Effects/unwrap.ogg

- type: entity
name: Luxury Medipen
parent: ChemicalMedipen
id: Luxurymedpen
description: Contains enough stimulants for you to have the chemical's effect for 30 seconds. Use it when you're sure you're ready to throw down.
components:
- type: Sprite
sprite: Objects/Specific/Medical/medipen.rsi
layers:
- state: luxpen
map: ["enum.SolutionContainerLayers.Fill"]
- type: Item
sprite: Objects/Specific/Medical/medipen.rsi
size: 5
- type: SolutionContainerManager
solutions:
pen:
maxVol: 34
reagents:
- ReagentId: Epinephrine
Quantity: 15
- ReagentId: Ichor
Quantity: 15
- ReagentId: TranexamicAcid
Quantity: 4
- type: SolutionContainerVisuals
maxFillLevels: 1
changeColor: false
emptySpriteName: luxpen_empty
- type: Hypospray
solutionName: pen
transferAmount: 30
- type: StaticPrice
price: 500
- type: Tag
tags: []
26 changes: 26 additions & 0 deletions Resources/Prototypes/Entities/Objects/Specific/Salvage/ore_bag.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,3 +22,29 @@
tags:
- Ore
- type: Dumpable

- type: entity
name: ore bag bluespace
id: OreBagBluespace
parent: BaseStorageItem
description: A robust bag for salvage specialists and miners alike to carry large amounts of ore.
components:
- type: Sprite
sprite: Objects/Specific/Mining/ore_bag_bluespace.rsi
state: icon
- type: Clothing
sprite: Objects/Specific/Mining/ore_bag_bluespace.rsi
quickEquip: false
slots:
- belt
- type: Item
size: 176
- type: Storage
capacity: 2400
quickInsert: true
areaInsert: true
areaInsertRadius: 14
whitelist:
tags:
- Ore
- type: Dumpable
Original file line number Diff line number Diff line change
Expand Up @@ -484,4 +484,40 @@
- type: MagazineVisuals
magState: mag
steps: 2
zeroVisible: true
zeroVisible: true

- type: entity
name: Cutter
parent: BaseWeaponBatterySmall
id: WeaponCutter
description: A self-defense weapon that exhausts organic targets, weakening them until they collapse.
components:
- type: Sprite
sprite: Objects/Weapons/Guns/Battery/cutter.rsi
state: icon
- type: Gun
fireRate: 6
soundGunshot:
path: /Audio/Weapons/Guns/Gunshots/plasma_cutter.ogg
- type: ProjectileBatteryAmmoProvider
proto: BulletCutter
fireCost: 10
- type: Appearance

- type: entity
name: Advanced Cutter
parent: BaseWeaponBatterySmall
id: WeaponCutterAdv
description: A self-defense weapon that exhausts organic targets, weakening them until they collapse.
components:
- type: Sprite
sprite: Objects/Weapons/Guns/Battery/cutteradv.rsi
state: icon
- type: Gun
fireRate: 8
soundGunshot:
path: /Audio/Weapons/Guns/Gunshots/plasma_cutter.ogg
- type: ProjectileBatteryAmmoProvider
proto: BulletCutter
fireCost: 5
- type: Appearance
Original file line number Diff line number Diff line change
Expand Up @@ -766,3 +766,27 @@
lifetime: 0.4
- type: StaminaDamageOnCollide
damage: 65

- type: entity
id: BulletCutter
name: Cutter bolt
parent: BaseBullet
noSpawn: true
description: Not too bad, but you still don't want to get hit by it.
components:
- type: Reflective
reflective:
- NonEnergy
- type: Sprite
noRot: false
sprite: Objects/Weapons/Guns/Projectiles/projectiles.rsi
layers:
- state: scatterlaser
- type: GatheringProjectile
- type: Projectile
damage:
types:
Heat: 0.5
# Short lifespan
- type: TimedDespawn
lifetime: 0.4
40 changes: 40 additions & 0 deletions Resources/Prototypes/Entities/Objects/Weapons/Melee/sword.yml
Original file line number Diff line number Diff line change
Expand Up @@ -123,3 +123,43 @@
size: 15
sprite: Objects/Weapons/Melee/cutlass.rsi
- type: DisarmMalus

- type: entity
name: Cursed katana
parent: BaseItem
id: Katanacursed
description: Ancient craftwork made with not so ancient plasteel.
components:
- type: Sharp
- type: Unremoveable
- type: Tag
tags:
- Katana
- type: Sprite
sprite: Objects/Weapons/Melee/katana_cursed.rsi
state: icon
- type: MeleeWeapon
damage:
types:
Slash: 35
soundHit:
path: /Audio/Weapons/bladeslice.ogg
- type: Item
size: 15
sprite: Objects/Weapons/Melee/katana_cursed.rsi
- type: DisarmMalus

- type: entity
parent: BaseItem
id: KatanacursedShard
name: Strange shard
description: A small box containing a hypopen. Packaging disintegrates when opened, leaving no evidence behind.
components:
- type: Sprite
sprite: Objects/Weapons/Melee/katana_cursed.rsi
state: katana-shard
- type: SpawnItemsOnUse
items:
- id: Katanacursed
sound:
path: /Audio/Effects/bite.ogg
Loading
Loading