Artifact System
New gameplay layer added in v1.1.1.0. Artifacts are equippable modifiers that apply flat stat boosts or combat-behavior overrides at the start of battle. They are defined as concrete C# classes in MainScripts.dll (HotUpdate), not as DataTable rows.
Status (2026-05-14): Code present in MainScripts.dll (e3f9f8c4). Player-facing UI and acquisition flows not yet observed in live game — likely activates alongside a future content patch. Source: data-session/intermediate/decompile_diff_full.cs lines 17–1115.
Base class
// decompile_diff_full.cs line 21
public class ArtifactBase : BattleModifier
{
public int level;
public int value0;
public int value1;
}
Each artifact has level, value0, and value1. The level field likely governs scaling (not yet visible in DataTable). value0 and value1 are the two primary stat parameters.
RacePassiveArtifactBase<T> is a second base class (generic wrapper over a SubSkill type T) — the decompiler could not fully resolve the generic definition, but the usage pattern is clear: BS31041 : RacePassiveArtifactBase<BD20010> means the artifact applies the BD20010 sub-skill effect as if the unit had that passive.
Artifact catalog (78 BS-prefix classes)
BS00 — Single-stat boosts (6 artifacts)
| ID |
Effect |
Code |
BS00001 |
STR += value0 |
ChangeAttrFirst |
BS00002 |
INT (SPI) += value0 |
ChangeAttrFirst |
BS00003 |
DEX (AGI) += value0 |
ChangeAttrFirst |
BS01001 |
CONS (HP) += value0 |
ChangeAttrFirst |
BS01002 |
SPD += value0 |
ChangeAttrFirst |
BS01003 |
Tough += value0 |
ChangeAttrFirst |
BS10 / BS11 — Dual-stat boosts (6 artifacts)
| ID |
Effect |
BS10001 |
STR += value0, INT += value1 |
BS10002 |
STR += value0, DEX += value1 |
BS10003 |
DEX += value0, INT += value1 |
BS11001 |
CONS += value0, SPD += value1 |
BS11002 |
CONS += value0, Tough += value1 |
BS11003 |
Tough += value0, SPD += value1 |
BS20 / BS21 — Mana and team-count modifiers (4 artifacts)
| ID |
Effect |
Override |
BS20001 |
InitialMagic (Starting Mana) += value0 |
ChangeAttrFirst |
BS20002 |
Extra support teammate count += value0 |
ExtraTeammateCount |
BS21002 |
Extra support teammate count += value0 |
ExtraTeammateCount |
BS21061–BS21068 — Target-sort overrides (8 artifacts): These set an ExternalComparer on the unit's normal attack and unique skill at battle start, changing which targets are prioritized. Behaviors:
| ID |
Sort priority |
BS21061 |
Targets sorted by highest DEF stat (attack-type skills only) |
BS21062 |
Targets sorted by lowest ATK stat (attack-type skills only) |
BS21063 |
Targets sorted by position index ascending (attack-type) |
BS21064 |
Middle target (index % 3 == 1) prioritized last (attack-type) |
BS21065 |
Targets sorted by position index descending (attack-type) |
BS21066 |
Owner excluded from targeting priority (heal-type skills only) |
BS21067 |
Targets sorted by highest DEF stat (heal-type skills only) |
BS21068 |
Targets sorted by lowest ATK stat (heal-type skills only) |
BS30 — Combat modifiers (21 artifacts)
Stat regen
| ID |
Effect |
BS30001 |
Luck += value0 |
BS30002 |
ActionMagic (Action Mana) += value0 |
Damage boosts (flat, applied via ChangeDamageBeforeResolveGlobal or ModifyResult*)
| ID |
Trigger |
Effect |
BS30004 |
Any outgoing damage |
+value0 flat DMG |
BS30006 |
Toughness damage dealt |
-value0 Tough reduction (i.e. unit deals more Tough damage) |
BS30016 |
Normal attack (isAttack) |
+value0% DMG |
BS30017 |
Follow-up attack (isAttack) |
+value0% follow DMG |
BS30018 |
Counter/revenge (isDefending) |
+value0% revenge DMG |
BS30019 |
Single-hit skill (Times == 1) |
+value0% skill DMG |
BS30020 |
Single-target skill (MaxTarget == 1) |
+value0% skill DMG |
BS30021 |
Multi-target skill (MaxTarget > 1) |
+value0% skill DMG |
BS30022 |
Multi-hit skill (Times > 1) |
+value0% skill DMG |
Extra actions
| ID |
Effect |
BS30011 |
+value0 extra counter/revenge actions |
BS30012 |
+value0 extra follow-up actions |
BS30013 |
+value0 extra normal attack targets |
BS30014 |
+value0 extra targets for Special-type skill |
BS30015 |
+value0 extra hits for multi-hit skill (Times > 1) |
Heal boosts
| ID |
Trigger |
Effect |
BS30031 |
Normal heal |
+value0 extra heal targets |
BS30032 |
Heal-type skill |
+value0 extra skill heal targets |
BS30033 |
Normal heal (isAttack context) |
+value0% normal heal amount |
BS30034 |
Single-hit skill heal (Times == 1) |
+value0% skill heal |
BS30035 |
Multi-hit skill heal (Times > 1) |
+value0% skill heal |
BS30036 |
Single-target skill heal (MaxTarget == 1) |
+value0% skill heal |
BS30037 |
Multi-target skill heal (MaxTarget > 1) |
+value0% skill heal |
BS31 — Mana flow and race-passive artifacts (32 artifacts)
Mana modifiers
| ID |
Trigger |
Effect |
BS31002 |
Any mana gain (dest == self) |
+value0 mana on gain |
BS31005 |
Any mana loss (dest == self) |
+value0 mana recovered on loss |
BS31008 |
Flat stat |
MaxMagic (Max Mana) += value0 |
BS31009 |
Flat stat |
HitMagic (Hit Mana) += value0 |
Race-passive wraps (BS31041–BS31068, 28 artifacts)
These artifacts inject a SubSkill passive (normally a set-bond effect or race passive) directly onto the unit as an artifact effect, bypassing the normal bond-equip requirement. Each BS3104x/BS3106x is RacePassiveArtifactBase<BD<id>>:
| Artifact |
Wrapped SubSkill |
BS31041 |
BD20010 |
BS31042 |
BD20008 |
BS31043 |
BD20104 |
BS31044 |
BD20103 |
BS31045 |
BD20102 |
BS31046 |
BD20101 |
BS31047 |
BD20007 |
BS31048 |
BD20005 |
BS31049 |
BD20106 |
BS31050 |
BD20105 |
BS31051 |
BD20107 |
BS31052 |
BD20009 |
BS31053 |
BD20002 |
BS31054 |
BD20003 |
BS31055 |
BD20006 |
BS31056 |
BD20004 |
BS31057 |
BD20108 |
BS31058 |
BD20011 |
BS31059 |
BD20016 |
BS31060 |
BD20017 |
BS31061 |
BD20013 |
BS31062 |
BD20012 |
BS31063 |
BD20014 |
BS31064 |
BD20015 |
BS31065 |
BD20501 |
BS31066 |
BD20111 (new in 1.1.1.0 — Tough-floor mechanic) |
BS31067 |
BD20110 (new — Fear-on-attached) |
BS31068 |
BD20109 (new — Slow-on-attaching / Peel-on-attached) |
To look up the effect of a wrapped SubSkill, cross-reference its BD-id in SubSkillDataTable.md.
Summary table
| Family |
Count |
Mechanism |
| BS00 / BS01 |
6 |
Single flat stat |
| BS10 / BS11 |
6 |
Dual flat stats |
| BS20 / BS21 |
12 |
Mana / extra teammate count / target sort |
| BS30 |
21 |
Combat modifiers (DMG, heal, extra actions) |
| BS31 |
32 |
Mana flow + race-passive wraps |
| Total |
78 |
|
Decompile references
ArtifactBase definition: decompile_diff_full.cs line 21
- All BS classes: lines 85–1115
RacePassiveArtifactBase definition: decompiler error on generic resolution (line 3653–3670) — usage pattern clear from concrete subclasses