Bunch of gameplay issues (#754)

* fix demiplane contetn filtering

* fix day demiplanes

* remove filled crystals from demiplanes

* remove armored zombies

* added candles in town crates

* remove 20% unefficient of mana moving spells

* fix #622

* revert random Viator commit

* Update demiplane_rifts.yml
This commit is contained in:
Ed
2025-01-14 01:41:11 +03:00
committed by GitHub
parent c7c5b4dc4c
commit 51a47eaffc
15 changed files with 87 additions and 131 deletions

View File

@@ -241,14 +241,20 @@ public sealed partial class CP14DemiplaneSystem
//Tier filter
if (passed)
{
var innerPassed = false;
foreach (var tier in modifier.Tiers)
{
if (!generator.Comp.TiersContent.ContainsKey(tier))
if (generator.Comp.TiersContent.ContainsKey(tier))
{
passed = false;
innerPassed = true;
break;
}
}
if (!innerPassed)
{
passed = false;
}
}
// Tier weight filter
@@ -257,7 +263,8 @@ public sealed partial class CP14DemiplaneSystem
var maxProb = 0f;
foreach (var tier in modifier.Tiers)
{
maxProb = Math.Max(maxProb, generator.Comp.TiersContent[tier]);
if (generator.Comp.TiersContent.ContainsKey(tier))
maxProb = Math.Max(maxProb, generator.Comp.TiersContent[tier]);
}
if (!_random.Prob(maxProb))

View File

@@ -13,7 +13,7 @@ public sealed partial class CP14SpellConsumeManaEffect : CP14SpellEffect
public bool Safe = false;
[DataField]
public float LossMultiplier = 0.8f;
public float LossMultiplier = 1.0f;
public override void Effect(EntityManager entManager, CP14SpellEffectBaseArgs args)
{

View File

@@ -42,6 +42,9 @@ public sealed partial class CP14SpellStorageSystem
private void OnClothingAddedAttune(Entity<CP14SpellStorageAccessWearingComponent> ent, ref AddedAttuneToMindEvent args)
{
if (!ent.Comp.Wearing)
return;
if (!TryComp<CP14SpellStorageComponent>(ent, out var spellStorage))
return;
@@ -51,7 +54,7 @@ public sealed partial class CP14SpellStorageSystem
if (!TryComp<ClothingComponent>(ent, out var clothing))
return;
if (clothing.InSlot is null || Transform(ent).ParentUid != args.User)
if (Transform(ent).ParentUid != args.User)
return;
TryGrantAccess((ent, spellStorage), args.User.Value);
@@ -59,6 +62,8 @@ public sealed partial class CP14SpellStorageSystem
private void OnClothingEquipped(Entity<CP14SpellStorageAccessWearingComponent> ent, ref ClothingGotEquippedEvent args)
{
ent.Comp.Wearing = true;
if (!TryComp<CP14SpellStorageComponent>(ent, out var spellStorage))
return;
@@ -67,7 +72,8 @@ public sealed partial class CP14SpellStorageSystem
private void OnClothingUnequipped(Entity<CP14SpellStorageAccessWearingComponent> ent, ref ClothingGotUnequippedEvent args)
{
ent.Comp.Wearing = false;
_actions.RemoveProvidedActions(args.Wearer, ent);
}
}

View File

@@ -6,4 +6,6 @@ namespace Content.Shared._CP14.MagicSpellStorage.Components;
[RegisterComponent, Access(typeof(CP14SpellStorageSystem))]
public sealed partial class CP14SpellStorageAccessWearingComponent : Component
{
[DataField]
public bool Wearing;
}

View File

@@ -56,6 +56,20 @@
- id: CP14BaseMop
- id: CP14ModularIronPickaxe
- id: CP14ModularIronSickle
- !type:GroupSelector
children:
- id: CP14Candle
- id: CP14CandleRed
- id: CP14CandleBlue
- id: CP14CandleBlack
- id: CP14CandleGreen
- id: CP14CandlePurple
- id: CP14CandleSmall
- id: CP14CandleRedSmall
- id: CP14CandleBlueSmall
- id: CP14CandleBlackSmall
- id: CP14CandleGreenSmall
- id: CP14CandlePurpleSmall
- !type:GroupSelector
children:
- id: CP14CrystalLampBlueEmpty

View File

@@ -0,0 +1,33 @@
- type: CP14DayCycle #
id: Default
timeEntries:
- color: '#754A4A' #Dawn
duration: 145
- color: '#E0BA87' #
duration: 145
- color: '#BFEEFF' #Day
duration: 145
- color: '#385163' #Evening
duration: 145
period: Night
- color: '#060D12' #Night
duration: 80
period: Night
- color: '#000000' #BLACK NIGHT
duration: 160
period: Night
- color: '#120906' #Night
duration: 80
period: Night
- type: CP14DayCycle
id: CP14DemiplaneEternalDay
timeEntries:
- color: '#754A4A' #Dawn
duration: 145
- color: '#E0BA87' #
duration: 145
- color: '#BFEEFF' #Day
duration: 145
- color: '#385163' #Evening
duration: 145

View File

@@ -12,25 +12,4 @@
- type: CP14DayCyclePeriod
id: Evening
name: cp14-daycycle-evening
- type: CP14DayCycle #
id: Default
timeEntries:
- duration: 145
color: '#754A4A' #Dawn
- duration: 145
color: '#E0BA87' #
- duration: 145
color: '#BFEEFF' #Day
- period: Night
duration: 145
color: '#385163' #Evening
- period: Night
duration: 80
color: '#060D12' #Night
- period: Night
duration: 160
color: '#000000' #BLACK NIGHT
- duration: 80
color: '#120906' #Night
name: cp14-daycycle-evening

View File

@@ -7,7 +7,7 @@
sprite: _CP14/Effects/Magic/spells_icons.rsi
state: mana_gift
- type: CP14MagicEffectManaCost
manaCost: 12
manaCost: 10
canModifyManacost: false
- type: CP14MagicEffect
magicType: Meta

View File

@@ -47,7 +47,7 @@
- id: CP14SpellScrollFlashLight
- id: CP14SpellScrollWaterCreation
- id: CP14SpellScrollPlantGrowth
- id: CP14EnergyCrystalSmall
- id: CP14EnergyCrystalSmallEmpty
- id: CP14BaseSharpeningStone
- id: CP14GlassShard
- id: CP14Paper
@@ -71,7 +71,7 @@
- id: CP14VialTinyLumiMushroom
- id: CP14SilverCoin5
- id: CP14BaseLockpick
- id: CP14EnergyCrystalMedium
- id: CP14EnergyCrystalMediumEmpty
- id: CP14DemiplaneKeyT1
weight: 2
- id: CP14DemiplaneKeyT2
@@ -124,7 +124,7 @@
- id: CP14SpellScrollFireball
- id: CP14SpellScrollBeerCreation
weight: 0.2
- id: CP14EnergyCrystalMedium
- id: CP14EnergyCrystalMediumEmpty
# Rare
- !type:GroupSelector
weight: 25

View File

@@ -70,8 +70,6 @@
- id: CP14MobUndeadZombieGearEasy1
- id: CP14MobUndeadZombieGearEasy2
- id: CP14MobUndeadZombieGearEasy3
- id: CP14MobUndeadZombieGearMedium1
- id: CP14MobUndeadZombieGearMedium2
- type: entity
parent: CP14BaseMobGroupSpawner

View File

@@ -22,11 +22,6 @@
- id: CP14MobUndeadZombieGearEasy1
- id: CP14MobUndeadZombieGearEasy2
- id: CP14MobUndeadZombieGearEasy3
- !type:GroupSelector
weight: 30
children:
- id: CP14MobUndeadZombieGearMedium1
- id: CP14MobUndeadZombieGearMedium2
# Animal

View File

@@ -42,22 +42,4 @@
categories: [ HideSpawnMenu ]
components:
- type: Loadout
prototypes: [ CP14MobUndeadEasy3 ]
- type: entity
id: CP14MobUndeadZombieGearMedium1
parent: CP14MobUndeadZombie
suffix: Zombie. Medium
categories: [ HideSpawnMenu ]
components:
- type: Loadout
prototypes: [ CP14MobUndeadMedium1 ]
- type: entity
id: CP14MobUndeadZombieGearMedium2
parent: CP14MobUndeadZombie
suffix: Zombie. Medium
categories: [ HideSpawnMenu ]
components:
- type: Loadout
prototypes: [ CP14MobUndeadMedium2 ]
prototypes: [ CP14MobUndeadEasy3 ]

View File

@@ -6,18 +6,13 @@
categories: [ ForkFiltered ]
components:
- type: Sprite
sprite: _CP14/Objects/Misc/books.rsi
layers:
- state: paper
- state: cover_red
map: [ "cover" ]
- state: edging_gold
map: [ "edging" ]
- state: icon_image
map: [ "icon" ]
- state: bookmark_red
map: [ "bookmark" ]
- state: cover_base
color: "#871619"
- state: decor_wingette
color: "#a3181d"
- state: icon_law
- type: GuideHelp
guides:
- CP14_RU_Imperial_Laws

View File

@@ -16,21 +16,6 @@
shoes: CP14ClothingShoesSandals
mask: CP14ClothingMaskSinner
- type: startingGear
id: CP14MobUndeadMedium1
equipment:
cloak: CP14ClothingCloakCuirass
shirt: CP14ClothingShirtCottonRed
pants: CP14ClothingPantsTrouserWhite
- type: startingGear
id: CP14MobUndeadMedium2
equipment:
cloak: CP14ClothingCloakCuirass
shirt: CP14ClothingShirtCottonRed
pants: CP14ClothingPantsTrouserWhite
head: CP14ClothingHeadBeretRed
- type: startingGear
id: CP14MobSkeleton
equipment:

View File

@@ -11,17 +11,6 @@
- type: MapLight
ambientLightColor: "#000000"
- type: cp14DemiplaneModifier
id: MapLightCycleDefault
tiers:
- 1
- 2
- 3
categories:
MapLight: 1
components:
- type: CP14DayCycle
- type: cp14DemiplaneModifier
id: MapLightDarkRed
tiers:
@@ -43,8 +32,6 @@
- type: MapLight
ambientLightColor: "#09010f"
# Open sky time entries
- type: cp14DemiplaneModifier
id: MapLightDarkNight
tiers:
@@ -53,64 +40,37 @@
- 3
categories:
MapLight: 1
requiredTags:
- CP14DemiplaneOpenSky
components:
- type: MapLight
ambientLightColor: "#010714"
- type: cp14DemiplaneModifier
id: MapLightDawn
tiers:
- 1
- 2
- 3
categories:
MapLight: 1
requiredTags:
- CP14DemiplaneOpenSky
components:
- type: MapLight
ambientLightColor: "#754A4A"
# Open sky time entries
- type: cp14DemiplaneModifier
id: MapLightMidday
id: MapLightCycleDefault
tiers:
- 1
- 2
- 3
categories:
MapLight: 1
generationWeight: 2
requiredTags:
- CP14DemiplaneOpenSky
components:
- type: MapLight
ambientLightColor: "#E0BA87"
- type: CP14DayCycle
- type: cp14DemiplaneModifier
id: MapLightMidday2
id: MapLightCycleDay
tiers:
- 1
- 2
- 3
categories:
MapLight: 1
generationWeight: 2
requiredTags:
- CP14DemiplaneOpenSky
components:
- type: MapLight
ambientLightColor: "#BFEEFF"
- type: cp14DemiplaneModifier
id: MapLightEvening
tiers:
- 1
- 2
- 3
categories:
MapLight: 1
requiredTags:
- CP14DemiplaneOpenSky
components:
- type: MapLight
ambientLightColor: "#385163"
- type: CP14DayCycle
cycleProto: CP14DemiplaneEternalDay