diff --git a/Content.Server/Mood/MoodComponent.cs b/Content.Server/Mood/MoodComponent.cs index caa221fe18e..765c93c247c 100644 --- a/Content.Server/Mood/MoodComponent.cs +++ b/Content.Server/Mood/MoodComponent.cs @@ -34,19 +34,19 @@ public sealed partial class MoodComponent : Component /// The lowest point that low morale can multiply our movement speed by. Lowering speed follows a linear curve, rather than geometric. /// [DataField] - public float MinimumSpeedModifier = 0.75f; + public float MinimumSpeedModifier = 0.85f; /// /// The maximum amount that high morale can multiply our movement speed by. This follows a significantly slower geometric sequence. /// [DataField] - public float MaximumSpeedModifier = 1.15f; + public float MaximumSpeedModifier = 1.25f; [DataField] - public float IncreaseCritThreshold = 1.2f; + public float IncreaseCritThreshold = 1.35f; [DataField] - public float DecreaseCritThreshold = 0.9f; + public float DecreaseCritThreshold = 0.85f; [ViewVariables(VVAccess.ReadOnly)] public FixedPoint2 CritThresholdBeforeModify; @@ -59,13 +59,13 @@ public sealed partial class MoodComponent : Component { { MoodThreshold.Perfect, 100f }, { MoodThreshold.Exceptional, 80f }, - { MoodThreshold.Great, 70f }, - { MoodThreshold.Good, 60f }, - { MoodThreshold.Neutral, 50f }, - { MoodThreshold.Meh, 40f }, - { MoodThreshold.Bad, 30f }, - { MoodThreshold.Terrible, 20f }, - { MoodThreshold.Horrible, 10f }, + { MoodThreshold.Great, 60f }, + { MoodThreshold.Good, 50f }, + { MoodThreshold.Neutral, 35f }, + { MoodThreshold.Meh, 30f }, + { MoodThreshold.Bad, 20f }, + { MoodThreshold.Terrible, 10f }, + { MoodThreshold.Horrible, 5f }, { MoodThreshold.Dead, 0f } }; diff --git a/Content.Shared/CCVar/CCVars.Mood.cs b/Content.Shared/CCVar/CCVars.Mood.cs index 4d778062f0f..b3fc1b70453 100644 --- a/Content.Shared/CCVar/CCVars.Mood.cs +++ b/Content.Shared/CCVar/CCVars.Mood.cs @@ -10,20 +10,20 @@ public sealed partial class CCVars public static readonly CVarDef MoodEnabled = #if RELEASE - CVarDef.Create("mood.enabled", false, CVar.SERVER); + CVarDef.Create("mood.enabled", true, CVar.SERVER); #else - CVarDef.Create("mood.enabled", false, CVar.SERVER); + CVarDef.Create("mood.enabled", true, CVar.SERVER); #endif public static readonly CVarDef MoodIncreasesSpeed = CVarDef.Create("mood.increases_speed", true, CVar.SERVER); public static readonly CVarDef MoodDecreasesSpeed = - CVarDef.Create("mood.decreases_speed", false, CVar.SERVER); + CVarDef.Create("mood.decreases_speed", true, CVar.SERVER); public static readonly CVarDef MoodModifiesThresholds = CVarDef.Create("mood.modify_thresholds", false, CVar.SERVER); public static readonly CVarDef MoodVisualEffects = - CVarDef.Create("mood.visual_effects", true, CVar.CLIENTONLY | CVar.ARCHIVE); + CVarDef.Create("mood.visual_effects", false, CVar.CLIENTONLY | CVar.ARCHIVE); } diff --git a/Resources/Locale/en-US/_Crescent/reagent/medicine.ftl b/Resources/Locale/en-US/_Crescent/reagent/medicine.ftl index cc8f72938aa..2a80dcd9f47 100644 --- a/Resources/Locale/en-US/_Crescent/reagent/medicine.ftl +++ b/Resources/Locale/en-US/_Crescent/reagent/medicine.ftl @@ -14,4 +14,7 @@ reagent-name-bloodeye = blood-eye reagent-desc-bloodeye = A chemical cocktail of combat drugs known to invoke violent tendencies within the user. Blood-eye was originally produced by Shinohara Heavy Industries, but later taken off the shelves after narcotic regulations were put into place. reagent-name-jv201 = JV-201 -reagent-desc-jv201 = A versatile lubricant gel. It will increase the efficiency of living tissue, even if against organic will. Sourced from Carthage Industries. \ No newline at end of file +reagent-desc-jv201 = A versatile lubricant gel. It will increase the efficiency of living tissue, even if against organic will. Sourced from Carthage Industries. + +reagent-name-scop = Scop +reagent-desc-scop = A disgusting mixture of "nutrients", the texture is similar to blended bone and sand. diff --git a/Resources/Prototypes/Mood/categories.yml b/Resources/Prototypes/Mood/categories.yml index 88a4652788b..7c696bddd7d 100644 --- a/Resources/Prototypes/Mood/categories.yml +++ b/Resources/Prototypes/Mood/categories.yml @@ -14,5 +14,8 @@ - type: moodCategory id: NicotineAddiction +- type: moodCategory + id: StimulantAddiction + - type: moodCategory id: Thirst diff --git a/Resources/Prototypes/Mood/drugs.yml b/Resources/Prototypes/Mood/drugs.yml index c10c9dc1d95..50b97fe9e39 100644 --- a/Resources/Prototypes/Mood/drugs.yml +++ b/Resources/Prototypes/Mood/drugs.yml @@ -30,18 +30,25 @@ # Non-Addictive Drugs - type: moodEffect id: EthanolBenefit - moodChange: 3 + moodChange: 10 timeout: 300 #5 minutes - type: moodEffect id: SpaceDrugsBenefit - moodChange: 7 + moodChange: 10 timeout: 300 #5 minutes - type: moodEffect id: StrongStimulant - moodChange: 10 - timeout: 300 #5 minutes + moodChange: 20 + timeout: 50 + moodletOnEnd: StimulantWithdrawal + +- type: moodEffect + id: StimulantWithdrawal + moodChange: -20 #No timeout + timeout: 300 + category: "StimulantAddiction" # Floor Juice - type: moodEffect @@ -186,3 +193,8 @@ id: TastyEffect moodChange: 3 timeout: 1800 #30 minutes + +- type: moodEffect + id: RationEffect + moodChange: -5 + timeout: 300 #5 minutes diff --git a/Resources/Prototypes/Mood/genericNeeds.yml b/Resources/Prototypes/Mood/genericNeeds.yml index aeb43bcd3fd..05250797d21 100644 --- a/Resources/Prototypes/Mood/genericNeeds.yml +++ b/Resources/Prototypes/Mood/genericNeeds.yml @@ -1,43 +1,43 @@ -# Hunger +# Hunger - type: moodEffect id: HungerOverfed - moodChange: 10 + moodChange: 15 category: "Hunger" - type: moodEffect id: HungerOkay - moodChange: 7 + moodChange: 10 category: "Hunger" - type: moodEffect id: HungerPeckish - moodChange: -3 + moodChange: -5 category: "Hunger" - type: moodEffect id: HungerStarving - moodChange: -7 + moodChange: -10 category: "Hunger" # Thirst - type: moodEffect id: ThirstOverHydrated - moodChange: 10 + moodChange: 15 category: "Thirst" - type: moodEffect id: ThirstOkay - moodChange: 7 + moodChange: 10 category: "Thirst" - type: moodEffect id: ThirstThirsty - moodChange: -3 + moodChange: -5 category: "Thirst" - type: moodEffect id: ThirstParched - moodChange: -7 + moodChange: -10 category: "Thirst" # Health @@ -60,4 +60,4 @@ - type: moodEffect id: HealthHeavyDamage moodChange: -20 - category: "Health" \ No newline at end of file + category: "Health" diff --git a/Resources/Prototypes/Mood/genericNegativeEffects.yml b/Resources/Prototypes/Mood/genericNegativeEffects.yml index e9a46d2ccba..4384ef6acc9 100644 --- a/Resources/Prototypes/Mood/genericNegativeEffects.yml +++ b/Resources/Prototypes/Mood/genericNegativeEffects.yml @@ -7,6 +7,12 @@ moodChange: -7 timeout: 6 +- type: moodEffect + id: BeingPet + moodChange: -20 + timeout: 120 + category: PositiveInteraction + - type: moodEffect id: OnFire moodChange: -10 diff --git a/Resources/Prototypes/Mood/genericPositiveEffects.yml b/Resources/Prototypes/Mood/genericPositiveEffects.yml index 4b30007611a..fef57bea928 100644 --- a/Resources/Prototypes/Mood/genericPositiveEffects.yml +++ b/Resources/Prototypes/Mood/genericPositiveEffects.yml @@ -3,13 +3,7 @@ moodChange: 3 timeout: 120 category: PositiveInteraction - -- type: moodEffect - id: BeingPet - moodChange: 3 - timeout: 120 - category: PositiveInteraction - + - type: moodEffect id: ArcadePlay moodChange: 3 diff --git a/Resources/Prototypes/_Crescent/Entities/Objects/Consumables/Food/fleshbeastmeatchunk.yml b/Resources/Prototypes/_Crescent/Entities/Objects/Consumables/Food/fleshbeastmeatchunk.yml index 290540c4b71..bac9a02e71a 100644 --- a/Resources/Prototypes/_Crescent/Entities/Objects/Consumables/Food/fleshbeastmeatchunk.yml +++ b/Resources/Prototypes/_Crescent/Entities/Objects/Consumables/Food/fleshbeastmeatchunk.yml @@ -27,4 +27,4 @@ - type: Tag tags: - Raw - - Meat \ No newline at end of file + - Meat diff --git a/Resources/Prototypes/_Crescent/Entities/Objects/Consumables/Food/rationcompsdsm.yml b/Resources/Prototypes/_Crescent/Entities/Objects/Consumables/Food/rationcompsdsm.yml index 2e1f8135c01..898d3f95ada 100644 --- a/Resources/Prototypes/_Crescent/Entities/Objects/Consumables/Food/rationcompsdsm.yml +++ b/Resources/Prototypes/_Crescent/Entities/Objects/Consumables/Food/rationcompsdsm.yml @@ -1,4 +1,4 @@ -#All of the MRE components that can spawn in the DSM Ration Packs. +#All of the MRE components that can spawn in the DSM Ration Packs. #Bases - type: entity parent: FoodBase @@ -15,10 +15,12 @@ reagents: - ReagentId: Nutriment Quantity: 40 + - ReagentId: Scop + Quantity: 5 - type: Item sprite: _Crescent/Objects/Consumables/Food/ration.rsi size: Small - + - type: entity parent: FoodBase id: RationComponentBaseSide @@ -34,15 +36,17 @@ reagents: - ReagentId: Nutriment Quantity: 20 + - ReagentId: Scop + Quantity: 5 - type: Item sprite: _Crescent/Objects/Consumables/Food/ration.rsi size: Small -#Mains +#Mains - type: entity name: Ration Component (Menu 1, Soy Patty, Beef Flavored) parent: RationComponentBaseMain id: RationComponentMainSoyBeef - description: A squishy rectangular "patty", made out of soy protein, and cheaply altered to taste like beef. + description: A squishy rectangular "patty", made out of soy protein, and cheaply altered to taste like beef. components: - type: FlavorProfile flavors: @@ -124,7 +128,7 @@ - type: Food trash: - RationCompMainTrash - + - type: entity name: Ration Component (Menu 6, Beans in Savory Sauce) parent: RationComponentBaseMain @@ -147,7 +151,7 @@ name: Ration Component (Side 1, Water Flavored Sustenance Bar) parent: RationComponentBaseSide id: RationComponentSideBrickWater - description: A brick of nutrients, made to taste like purified water. + description: A brick of nutrients, made to taste like purified water. components: - type: FlavorProfile flavors: @@ -165,7 +169,7 @@ name: Ration Component (Side 2, Chocolate Flavored Sustenance Bar) parent: RationComponentBaseSide id: RationComponentSideBrickChocolate - description: A brick of nutrients, made to taste like chocolate. + description: A brick of nutrients, made to taste like chocolate. components: - type: FlavorProfile flavors: @@ -271,4 +275,4 @@ - type: Sprite sprite: _Crescent/Objects/Consumables/Food/ration.rsi state: dsmrationcompsideopen - - type: Item \ No newline at end of file + - type: Item diff --git a/Resources/Prototypes/_Crescent/Entities/Objects/Consumables/Food/rationcompsncwl.yml b/Resources/Prototypes/_Crescent/Entities/Objects/Consumables/Food/rationcompsncwl.yml index 8a79fe179b6..be992f2788c 100644 --- a/Resources/Prototypes/_Crescent/Entities/Objects/Consumables/Food/rationcompsncwl.yml +++ b/Resources/Prototypes/_Crescent/Entities/Objects/Consumables/Food/rationcompsncwl.yml @@ -1,4 +1,4 @@ -#All of the MRE components that can spawn in the NCWL Ration Packs. +#All of the MRE components that can spawn in the NCWL Ration Packs. #Bases - type: entity abstract: true @@ -6,7 +6,7 @@ id: NcwlRationComponentBase name: NCWL Ration Can description: A ration can, manufactured by the NCWL - components: + components: - type: SolutionContainerManager solutions: food: @@ -14,13 +14,14 @@ reagents: - ReagentId: Nutriment Quantity: 20 + - ReagentId: Scop + Quantity: 5 - type: Openable openableByHand: true sound: path: /Audio/Items/can_open3.ogg - type: Item size: Small - - type: entity abstract: true parent: BaseItem @@ -49,7 +50,7 @@ - type: Food trash: - NcwlRationComponentTrashMoth - + - type: entity name: Ration Can (Menu 2, Soy Protein Chunks, Beef Flavor) parent: NcwlRationComponentBase @@ -67,7 +68,7 @@ - type: Food trash: - NcwlRationComponentTrashSoybeef - + - type: entity name: Ration Can (Menu 3, Lard with Protein) parent: NcwlRationComponentBase @@ -86,7 +87,7 @@ - type: Food trash: - NcwlRationComponentTrashLard - + - type: entity name: Ration Can (Menu 4, Soy Balls in Sauce) parent: NcwlRationComponentBase @@ -135,7 +136,7 @@ sprite: _Crescent/Objects/Consumables/Food/ncwlrationmoth.rsi state: trash - type: Item - + - type: entity categories: [ HideSpawnMenu ] parent: FoodPacketTrash @@ -146,7 +147,7 @@ sprite: _Crescent/Objects/Consumables/Food/ncwlrationsoybeef.rsi state: trash - type: Item - + - type: entity categories: [ HideSpawnMenu ] parent: FoodPacketTrash @@ -157,7 +158,7 @@ sprite: _Crescent/Objects/Consumables/Food/ncwlrationlard.rsi state: trash - type: Item - + - type: entity categories: [ HideSpawnMenu ] parent: FoodPacketTrash @@ -168,7 +169,7 @@ sprite: _Crescent/Objects/Consumables/Food/ncwlrationsoyballs.rsi state: trash - type: Item - + - type: entity categories: [ HideSpawnMenu ] parent: FoodPacketTrash @@ -178,4 +179,4 @@ - type: Sprite sprite: _Crescent/Objects/Consumables/Food/ncwlrationsoup.rsi state: trash - - type: Item \ No newline at end of file + - type: Item diff --git a/Resources/Prototypes/_Crescent/Entities/Objects/Consumables/Food/rations.yml b/Resources/Prototypes/_Crescent/Entities/Objects/Consumables/Food/rations.yml index 6d9544e4a6e..ec6d07d079c 100644 --- a/Resources/Prototypes/_Crescent/Entities/Objects/Consumables/Food/rations.yml +++ b/Resources/Prototypes/_Crescent/Entities/Objects/Consumables/Food/rations.yml @@ -3,7 +3,7 @@ parent: BaseStorageItem id: DsmRationPack name: Imperial Army/Navy Ration Package - description: A standard, ready to eat, ration pack utilized by the Imperial Army and Navy. These contain one meal worth of food, and have an essentially infinite shelf life. + description: A standard, ready to eat, ration pack utilized by the Imperial Army and Navy. These contain one meal worth of food, and have an essentially infinite shelf life. components: - type: Sprite sprite: _Crescent/Objects/Consumables/Food/ration.rsi @@ -40,12 +40,12 @@ orGroup: side2 - id: RationComponentSideBrickVanilla orGroup: side2 - + - type: entity parent: BaseStorageItem id: NcwlRationPack name: NCWL Homeguard Ration - description: A cobbled together ration pack in use by the NCWL Homeguard. Contains two meals (Two cans, two PSBs) + description: A cobbled together ration pack in use by the NCWL Homeguard. Contains two meals (Two cans, two PSBs) components: - type: Sprite sprite: _Crescent/Objects/Consumables/Food/ration.rsi @@ -85,4 +85,4 @@ - id: FoodPSB orGroup: side3 - id: FoodPSB - orGroup: side4 \ No newline at end of file + orGroup: side4 diff --git a/Resources/Prototypes/_Crescent/Entities/Reagents/medicine.yml b/Resources/Prototypes/_Crescent/Entities/Reagents/medicine.yml index a21ce69bf83..e3defd36c18 100644 --- a/Resources/Prototypes/_Crescent/Entities/Reagents/medicine.yml +++ b/Resources/Prototypes/_Crescent/Entities/Reagents/medicine.yml @@ -60,3 +60,26 @@ key: Drunk # make people a little dizzy, narcan has side effects time: 3 type: Add + +- type: reagent + id: Scop + name: reagent-name-scop + group: Foods + desc: reagent-desc-scop + physicalDesc: reagent-physical-desc-opaque + flavor: nutriment + color: "#24591F" + metabolisms: + Food: + effects: + - !type:AdjustReagent + reagent: Nutriment + amount: 0.75 + - !type:ChemAddMoodlet + moodPrototype: RationEffect + plantMetabolism: + - !type:PlantAdjustNutrition + amount: 1.5 + - !type:PlantAdjustHealth + amount: 0.75 + pricePerUnit: 2 diff --git a/Resources/Prototypes/_Crescent/Entities/Reagents/narcotics.yml b/Resources/Prototypes/_Crescent/Entities/Reagents/narcotics.yml index 7c58db3de64..9c7131ade09 100644 --- a/Resources/Prototypes/_Crescent/Entities/Reagents/narcotics.yml +++ b/Resources/Prototypes/_Crescent/Entities/Reagents/narcotics.yml @@ -16,6 +16,8 @@ Poison: 1.5 Narcotic: effects: + - !type:ChemAddMoodlet + moodPrototype: StrongStimulant - !type:ChemVomit probability: 0.05 conditions: @@ -68,6 +70,7 @@ time: 15 refresh: false + - type: reagent id: Exile name: reagent-name-exile @@ -89,6 +92,8 @@ Burn: -2 Narcotic: effects: + - !type:ChemAddMoodlet + moodPrototype: StrongStimulant - !type:AdjustTemperature conditions: - !type:ReagentThreshold @@ -129,6 +134,8 @@ Medicine: metabolismRate: 5 effects: + - !type:ChemAddMoodlet + moodPrototype: StrongStimulant - !type:HealthChange damage: groups: @@ -156,6 +163,8 @@ metabolisms: Medicine: effects: + - !type:ChemAddMoodlet + moodPrototype: StrongStimulant - !type:HealthChange damage: groups: @@ -185,6 +194,8 @@ Medicine: metabolismRate: 1 effects: + - !type:ChemAddMoodlet + moodPrototype: StrongStimulant - !type:HealthChange damage: groups: @@ -201,7 +212,7 @@ - !type:ReagentThreshold min: 35 amount: 50000 - + - type: reagent id: JV201 name: reagent-name-jv201 @@ -215,13 +226,15 @@ Medicine: metabolismRate: 0.5 effects: + - !type:ChemAddMoodlet + moodPrototype: StrongStimulant # While ≥ 5u: It sets chem contribution - !type:ChemApplyCritModifier value: 99 conditions: - !type:ReagentThreshold min: 1 - # While < 5u: It sets chem contribution to 0 + # While < 5u: It sets chem contribution to 0 - !type:ChemApplyCritModifier value: 0 conditions: @@ -242,4 +255,4 @@ key: Stutter component: ScrambledAccent type: add - time: 2 \ No newline at end of file + time: 2