/// By how much unlocking state should be prolonged for each node that was unlocked.
/// </summary>
[DataField]
- public TimeSpan UnlockStateIncrementPerNode = TimeSpan.FromSeconds(5);
+ public TimeSpan UnlockStateIncrementPerNode = TimeSpan.FromSeconds(10);
/// <summary>
/// Minimum waiting time between unlock states.
/// </summary>
[DataField]
- public TimeSpan UnlockStateRefractory = TimeSpan.FromSeconds(10);
+ public TimeSpan UnlockStateRefractory = TimeSpan.FromSeconds(5);
/// <summary>
/// When next unlock session can be triggered.
/// The amount of points a node is worth with no scaling
/// </summary>
[DataField, AutoNetworkedField]
- public float BasePointValue = 5000;
+ public float BasePointValue = 4000;
/// <summary>
/// Amount of points available currently for extracting.
: 1f + durabilityEffect;
var predecessorNodes = GetPredecessorNodes((artifact, artifact), node);
- nodeComponent.ResearchValue = (int)(Math.Pow(1.25, predecessorNodes.Count) * nodeComponent.BasePointValue * durabilityMultiplier);
+ nodeComponent.ResearchValue = (int)(Math.Pow(1.25, Math.Pow(predecessorNodes.Count, 1.5f)) * nodeComponent.BasePointValue * durabilityMultiplier);
}
}
if (TryGetNodeFromUnlockState(ent, out var node))
{
SetNodeUnlocked((ent, artifactComponent), node.Value);
+ ActivateNode((ent, ent), (node.Value, node.Value), null, null, Transform(ent).Coordinates, false);
unlockAttemptResultMsg = "artifact-unlock-state-end-success";
// as an experiment - unlocking node doesn't activate it, activation is left for player to decide.
state: ano01
- type: RandomSpawner
prototypes:
- - SimpleXenoArtifact
- - MediumXenoArtifact
- - MediumXenoArtifact
- - MediumXenoArtifact
- - MediumXenoArtifact
- ComplexXenoArtifact
- ComplexXenoArtifact
- - ComplexXenoArtifact
- - SimpleXenoArtifactItem
- - MediumXenoArtifactItem
- ComplexXenoArtifactItem
chance: 1
tableId: XenoArtifactEffectsHandheldOnlyTable
weight: 2
-- type: entity
- parent: BaseXenoArtifactItem
- id: SimpleXenoArtifactItem
- suffix: hand-sized Simple
- components:
- - type: XenoArtifact
- nodeCount:
- min: 2
- max: 5
-
-- type: entity
- parent: BaseXenoArtifactItem
- id: MediumXenoArtifactItem
- suffix: hand-sized Medium
- components:
- - type: XenoArtifact
- nodeCount:
- min: 5
- max: 9
-
- type: entity
parent: BaseXenoArtifactItem
id: ComplexXenoArtifactItem
- suffix: hand-sized Complex
+ suffix: Hand-Sized
components:
- type: XenoArtifact
nodeCount:
min: 9
max: 13
-# this exists for crafting item artifacts so that the final result can be simple, medium, or complex.
-- type: entity
- parent: BaseXenoArtifactItem
- id: VariedXenoArtifactItem
- suffix: hand-sized Varied
- components:
- - type: XenoArtifact
- nodeCount:
- min: 2
- max: 13
-
- type: entity
id: ArtifactFragment
parent: BaseItem
mask:
- MachineMask
-- type: entity
- parent: BaseXenoArtifactStructure
- id: SimpleXenoArtifact
- suffix: Simple
- components:
- - type: XenoArtifact
- nodeCount:
- min: 2
- max: 5
-
-- type: entity
- parent: BaseXenoArtifactStructure
- id: MediumXenoArtifact
- suffix: Medium
- components:
- - type: XenoArtifact
- nodeCount:
- min: 5
- max: 9
-
- type: entity
parent: BaseXenoArtifactStructure
id: ComplexXenoArtifact
- suffix: Complex
components:
- type: XenoArtifact
nodeCount:
amount: 4
doAfter: 5
- node: done
- entity: VariedXenoArtifactItem
+ entity: ComplexXenoArtifactItem
- type: entity
id: XenoArtifactAnomalySpawn
- parent: BaseXenoArtifactEffect
+ parent: BaseOneTimeXenoArtifactEffect
description: Creates anomaly
components:
- - type: XenoArtifactNode
- maxDurability: 2
- maxDurabilityCanDecreaseBy:
- min: 0
- max: 1
- type: XAEApplyComponents
applyIfAlreadyHave: true
refreshOnReactivate: true
## Artifact Nodes
<Box>
<GuideEntityEmbed Entity="ComplexXenoArtifact" Caption=""/>
-<GuideEntityEmbed Entity="SimpleXenoArtifactItem" Caption=""/>
+<GuideEntityEmbed Entity="ComplexXenoArtifactItem" Caption=""/>
</Box>
Artifacts consist of a randomly-generated tree of nodes. These nodes have a "[color=#a4885c]depth[/color]", representing how dangerous the node is, and the number of other nodes connected to it, called "[color=#a4885c]edges[/color]",
MailCentcommRetributionSpam: MailSpamLetter
MailEvilLizardSpam: MailSpamLetter
MailParentsNeedMoneySpam: MailSpamLetter
+
+# 2025-04-15
+SimpleXenoArtifact: ComplexXenoArtifact
+MediumXenoArtifact: ComplexXenoArtifact
+SimpleXenoArtifactItem: ComplexXenoArtifactItem
+MediumXenoArtifactItem: ComplexXenoArtifactItem
+VariedXenoArtifactItem: ComplexXenoArtifactItem