Research Q&A

Answered questions about Darkstar: Idle RPG mechanics — verified through runtime testing with Frida hooks and IL2CPP code analysis. These findings are from alliance research sessions investigating how the game actually works under the hood.

v1.1.80 Runtime Verified
Runtime Confirmed

Do admirals, software, firmware, and other progression systems carry into Evo Chronos?

Most things YES, but admirals and firmware NO.

Evo Chronos loads your full progression profile — all 27 stat dictionaries from your account are applied to your ship when the battle starts. This means equipment, memory cards, gemstones, software, hardware, research, masteries, alliance bonuses, medals, colony tech, plugins, and World Boss bonus stats all contribute to your Evo Chronos performance.

The two exceptions are admirals and firmware. Evo Chronos uses a ship initialization path that does not include admiral parameters, and the firmware loading function is never called. This was confirmed across 3 test battles at levels 536 and 777.

Practical takeaway: Invest in everything except admirals and firmware for Evo Chronos. Memory cards, gemstones, equipment, software, research, masteries — all of it directly boosts your damage and survivability.

SystemCarries In?
Ship + LevelYES
SkillsYES
DronesYES
EquipmentYES
Memory CardsYES
GemstonesYES
Software / HardwareYES
ResearchYES
MasteriesYES
Alliance BonusesYES
WB Bonus StatsYES
MedalsYES
Colony TechYES
PluginsYES
Chaos Enchant CardsYES
AdmiralsNO
FirmwareNO
Runtime Confirmed

Why do I deal more damage at higher Evo Chronos levels?

Accumulated World Boss Bonus Stats, not per-level scaling.

Your ship setup is identical at every Evo Chronos level — the game uses the same initialization method regardless of boss level. We confirmed this by testing at levels 536 and 777 and seeing the same ship parameters each time.

The difference is World Boss Bonus Stats. These are massive multipliers (50,000% to 85,000%+) that accumulate as you clear more Evo Chronos levels. They're stored in your account data and get loaded every battle. So the more you play, the stronger you get — it's a snowball effect.

Flow: Clear Evo Chronos level N → earn WB Bonus Stats → next battle loads your updated stats → more damage with the same ship.

There is no per-level difficulty multiplier applied to your ship. The boss gets harder (more HP, more damage), but your ship always loads at full power.

Code Analysis

What buffs your auto attacks? Is it just "normal damage"?

Auto attacks are buffed by 8 different layers — not just "normal damage."

"Normal damage up" is just one of many multipliers. Auto attacks benefit from the full damage pipeline. Here's the complete stack:

  1. Base ATK Power — flat ATK + percentage ATK bonuses
  2. Normal Damage Up — auto-attack-specific multiplier + percentage boost
  3. Weapon-Type Normal Damage — separate bonus per weapon type (Machine Gun, Missile, Laser, Lightning)
  4. General Damage Multipliers — Total Damage Up + Increase Damage (affects ALL damage, including auto)
  5. Advanced Stats — Advanced Normal Damage Up + Advanced ATK% (second tier of bonuses)
  6. Admiral Effects — admiral's Total Normal Damage Up + Total Damage Up (if admirals active in that mode)
  7. Medal Bonuses — Medal Normal Damage Up
  8. Critical / Super Critical — crit multiplier if the hit crits

The game checks whether an attack is Normal (auto) or Active (skill) and applies different multipliers accordingly. "Normal damage up" only affects autos, but ATK%, Total Damage Up, Increase Damage, weapon-type bonuses, and crit all stack on top.

Defense note: Enemies have a specific "Normal Damage Reduction" stat that only reduces your auto attack damage, separate from general damage reduction.

Code Analysis

What is "Adv Crit" and "Adv Attack"?

Adv Crit = Super Critical (3rd hit type). Adv Attack = Advanced stat bonuses (2nd tier).

Adv Crit (Super Critical)

The game has 3 hit types, not just 2. Super Critical is a separate roll from regular Critical — when it triggers, it uses its own damage multiplier instead of the regular crit multiplier.

Normal
Standard hit
Critical
Crit multiplier
Super Critical
Separate, higher multiplier

Super Critical has its own chance stat and its own damage multiplier stat. These are independent from regular Crit — boosting Crit Damage does not affect Super Critical Damage, and vice versa.

Adv Attack (Advanced Stat Bonuses)

A second tier of stat bonuses that stack on top of the base versions. There are 10 Advanced stats covering ATK, HP, Crit Damage, Attack Speed, Drone ATK, Drone Speed, Skill Damage, Normal Damage, Boss Damage, and HP Repair.

These are independent additive multipliers. For example, base ATK% and Advanced ATK% both increase your attack power, but they're separate contributions that stack together.

World Boss has its own Advanced variants (Advanced ATK%, Advanced HP%, Advanced Skill Damage, Advanced Boss Damage) that stack on top of the regular Advanced stats.

Code Analysis

Does ship level affect Search mode (dispatch)?

Yes. Ship level scales dispatch passive bonuses linearly.

Each ship has a dispatch-specific value and a per-level scaling factor. Higher-level ships provide proportionally better passive bonuses for dispatch.

The total dispatch reward comes from multiple components:

  1. Base reward — depends on the dispatch sector
  2. Ship dispatch modifier — each ship has a fixed dispatch value
  3. Per-level scaling — a per-level bonus multiplied by ship level (linear)
  4. Dispatch level bonuses — account-wide progression from leveling up dispatch
  5. Drop tables — item drops with their own rates and quantities

Practical takeaway: Higher-level ships give better dispatch results. The scaling is linear — every level matters.

Code Analysis

How do "weak point" and "increase damage" affect damage?

There is no "weak point" hit type. "Increase Damage" is a flat additive bonus on all outgoing damage.

Weak Point

The game has only 3 hit types: Normal, Critical, and Super Critical. There is no "weak point" hit type. What players call "weak point" likely refers to one of two mechanics:

  • Weakness debuff — a status effect applied to enemies. When a target has the Weakness debuff, you deal bonus damage via a "Weakness Damage Up" stat.
  • Chronos type advantage — matching your weapon type (Machine Gun, Missile, Laser, Lightning) to the boss's weakness for bonus damage. This is a completely separate system from the Weakness debuff.

Increase Damage

"Increase Damage" is a flat additive bonus applied to all outgoing damage. It comes from the Research and Guide progression systems.

There are specialized variants that only apply to specific damage types:

VariantApplies To
Increase DamageAll damage
Servant Increase DamageDrone damage only
Skill Increase DamageSkill damage only
Boss Increase DamageBoss damage only

How damage multipliers stack

All damage multipliers stack as independent additive layers: Base damage → Normal/Skill-specific → Total Damage Up → Increase Damage → Critical/Super Critical → Weakness bonus (if target debuffed).

Code Analysis

Do you earn more volts online or offline?

Online and offline volts are completely separate reward tracks with different base values and different bonuses.

The game has two entirely separate reward pipelines for currency earnings. Each stage in the game data defines both an online kill reward and an offline reward, and they are independent values — not one derived from the other.

Online (Kill) Rewards

When you actively grind (or power-save grind), each enemy kill awards volt and credits from the stage's kill reward fields. These are boosted by:

  • Volt Reward Up — general volt earning bonus
  • Kill Volt Reward Up — kill-specific volt bonus (stacks on top)
  • SubBonus: add_volt_reward — account-wide volt multiplier
  • SubBonus: add_kill_volt_reward — kill-specific multiplier

Offline Rewards

When you close the app entirely, the server calculates offline earnings using separate stage fields and a separate set of bonuses:

  • Offline Reward Up — offline-specific earning bonus
  • SubBonus: add_offline_reward — offline multiplier
  • offline_rate — a server-side multiplier (exact value unknown, needs runtime capture)

Raw Data Comparison

Looking at the stage data, offline volt values are roughly 30x higher than kill volt values per reward period. For credits, offline exponents are sometimes +1 higher than kill exponents (at milestone stages like 500, 1500, 2500), meaning offline credits can be 10x higher at those points.

However, the total earning depends on how many kills you get per unit of time vs. how the server calculates offline time. The offline_rate multiplier and time cap are critical unknowns that we haven't captured at runtime yet.

Key insight: Boosting "Kill Volt Reward" only helps online grinding. Boosting "Offline Reward" only helps offline earnings. Boosting "Volt Reward Up" helps both. Choose your investments based on how you play.

Code Analysis

Can you earn titanium offline?

No. Titanium drops only during active combat. There is no offline titanium reward field.

Credits and volts both have dedicated offline reward fields in the stage data (iOfflineVoltReward, offline credit quotient/exponent). Titanium has no equivalent field — there is no iOfflineTitaniumReward anywhere in the game data.

How titanium actually drops

Titanium comes through the loot drop system during active grinding. When you destroy an enemy ship, the game calls a function that rolls against the stage's loot drop rate. If successful, titanium (or other loot) drops. This is tracked per-stage with kill counts and loot counts, then synced to the server periodically.

Power saving mode (screen off, app running)

The power saving handler tracks titanium count alongside volt and credit counts. This means titanium does accumulate during power-save grinding, since the app is still running and processing kills. But if you fully close the app, the offline reward calculation only covers credits, volts, and crystals — not titanium.

CurrencyOnline GrindingPower SaveTrue Offline
CreditsYESYESYES
VoltsYESYESYES
CrystalsYESYESYES
TitaniumYESYESNO
Code Analysis

What affects titanium earning rate?

Nothing player-controllable. Titanium is the only major currency with zero bonus multipliers.

Every other currency in the game has dedicated bonus stats:

CurrencyGeneral BonusKill-Specific BonusOffline Bonus
Credits Credit Reward Up Kill Credit Reward Up Offline Reward Up
Volts Volt Reward Up Kill Volt Reward Up Offline Reward Up
Titanium None None None

There is no TitaniumRewardUp_Bonus in the PropertyType enum. There is no add_titanium_reward in the SubBonus system. There is no mfKillTitaniumAddReward in UserStatusManager.

The only things that affect titanium earning are:

  • Stage progress — higher stages may have different loot drop rates
  • Kill speed — more kills per minute = more loot drop rolls
  • Colony production — separate from combat, buildings produce titanium on timers

Practical takeaway: You cannot boost titanium drops through stats or bonuses. The only way to earn more titanium from combat is to kill faster and push to higher stages. Colony production is the other independent source.

Code Analysis

Do sight range, attack range, and move speed actually affect combat?

Yes — all three are actively used. The battle engine is a real-time spatial simulation, not purely stat-based.

Each ship defines base values for these stats in GeneralShipTable. At battle start, they're copied into BasicShipStatus and then into the ShipController runtime instance. From there, the battle loop uses them every frame.

How the battle loop works

  1. Target search — each ship runs Searching() to find enemies within sight range
  2. Chase — if a target is found but outside attack range, the ship moves toward it using move speed
  3. Range checkIsInsideRange() checks whether the target is within attack range
  4. Fire — once in range, the ship attacks. Skills have their own range via BasicSkillData.fRange

What each stat does

StatPurposePlayer Bonuses?
Sight Range Target acquisition distance — how far away an enemy can be before your ship starts chasing it None — fixed per ship, no PropertyType bonus exists
Attack Range Firing distance — ship must be within this range to attack. Validated by IsInsideRange() (3 overloads) AtkRange_Abs_Bonus (PT 12) + AtkRange_Pct_Bonus (PT 13)
Move Speed How fast the ship closes distance to targets. Uses mfMoveSpeed + mvec3MoveDirection for positional movement MovSpd_Abs_Bonus (PT 23) + MovSpd_Pct_Bonus (PT 24) + Admiral MoveSpeedUp + AbnormalCondition buff

Key code paths

  • ShipController.Searching() — overrides BaseShip.Searching(), finds valid targets within sight range
  • ShipController.IsInsideRange() — checks if target is within attack range (no-arg, SkillTargetType, or Vector3+float variants)
  • ShipController.SearchEnemy(BasicSkillData, ref List<ShipPlayer>) — filters enemies based on skill range parameters
  • BattleManager.GetTargetFromDistance(BattleSide, Vector3) — finds nearest valid target from a position
  • BattleManager.UpdateShip(BattleSide, float deltaTime) — per-frame ship update including movement

Practical takeaway: Move speed and attack range are real combat stats worth investing in. Higher move speed means engaging enemies faster (especially in modes with waves of enemies). Higher attack range means firing sooner without needing to close distance. Sight range is fixed per ship and cannot be modified — it's a game balance lever the developers control, not a player stat.

Code Analysis

Is there a dominant software drive configuration? Does the ATK / ADV ATK / ADV CRIT rotation work?

The rotation is a reasonable heuristic, but later drives should go to your most starved damage bucket — and that's mode-dependent.

Drive Position Matters

Drives A through T are not equal. Each software entry has its own fEffectQuotient and iEffectExponent per drive type, and later drives (K, L, M… T) provide significantly higher values than early drives (A, B, C). The exact scaling curve is in the game’s binary data tables and has not yet been extracted — this is a prime candidate for Frida testing. Until we have the actual values, we can only reason about the structure.

Implication: Your highest-value drive slots should be assigned to whichever damage bucket gives you the best marginal return. Wasting drive T on a saturated bucket is a bigger loss than wasting drive A.

How Damage Multipliers Stack

ShipController stores different damage categories in separate fields, which means they form separate multiplicative layers in the damage formula:

ShipController FieldPropertyType(s)Bucket
mfAttackPowerBonusATK% (1), ADV ATK% (301)ATK layer
mfNormalDamageUpBonusNormal DMG (32), ADV Normal DMG (308)Normal layer
mfTotalDamageUpBonusTotal DMG (36)Total layer
mfCriticalChanceBonusCrit% (14)Crit chance
mNUCriticalDamageBonusCrit DMG (15), ADV Crit DMG (303)Crit DMG layer
mfServantDamageBonusDrone DMGDrone layer
mfArenaDamageBonusArena DMG (61, 805)Arena-only layer
Admiral fieldsAdmiral TotalDmgUp, BossDmgUp, SkillDmgUp, NormalDmgUpAdmiral layer

Within each bucket, bonuses from all sources (software, equipment, research, mastery, etc.) add together. But the buckets multiply against each other. The damage formula is roughly:

Final DMG = Base ATK × (1 + ATK layer) × (1 + Normal or Skill layer)
  × (1 + Boss layer, if target is boss) × (1 + Total DMG layer)
  × Crit multiplier (if crit) × (1 + mode-specific layers)

Are ATK% and ADV ATK% the Same Bucket?

Likely yes. ShipController has only one field for ATK power bonus (mfAttackPowerBonus), not two. Despite having separate PropertyType values (1 vs 301), both likely feed into the same additive bucket. If confirmed, this means alternating between ATK% and ADV ATK% in the rotation gives zero multiplicative benefit over stacking either one — they’re the same multiplier layer. The same logic applies to Normal DMG (32) and ADV Normal DMG (308), Crit DMG (15) and ADV Crit DMG (303), etc.

Needs Frida verification: Hook ShipController.RecalculateStatus() and compare mfAttackPowerBonus with and without ADV ATK% software equipped. If the field increases by the same amount regardless of which PropertyType the bonus came from, they’re the same bucket.

The Tipping Point: Marginal Value per Bucket

The marginal value of adding X% to any bucket depends on how much is already in it:

Marginal gain = X% / (100% + existing_total_in_bucket)

At endgame, ATK% is fed by dozens of sources (ships, equipment, research, mastery, memory cards, admirals, gems, colony tech…) and can reach thousands of percent. Meanwhile Normal DMG, Boss DMG, and Total DMG have very few sources feeding them. This means:

BucketSources Feeding ItTypical SaturationSoftware Value
ATK%Ships, Equipment, Research, Mastery, Cards, Admirals, Gems, Colony…Very HighLow marginal
Crit DMGGems, Mastery, Research, AdmiralsHighMedium
Skill DMGGems, Admirals, MedalsMediumMedium-High
Boss DMGGems, Admirals, MedalsMediumMedium-High
Normal DMGVery few sourcesLowHigh
Total DMGAdmirals onlyLowHigh
Weapon-Type DMG (651+)Almost nothingNear ZeroVery High

The tipping point is simple: whichever bucket has the lowest total from all sources is where your next drive gives the biggest gain. For most endgame players, that’s Normal DMG, Total DMG, or weapon-type bonuses — not ATK%.

Because later drives have higher values, the optimal strategy is: put your highest-value drives (late letters) into your most starved buckets.

Mode-Specific Findings

World Boss — has unique damage layers + weapon debuffs

World Boss has its own dedicated bonus stat system (PropertyType 601–608) covering WB ATK%, WB Skill DMG, WB Boss DMG, and Advanced variants. These are a separate multiplicative layer tracked in Dic_WorldBossBonusStatEffect and only active during World Boss fights. Additionally, World Boss applies weapon-type debuffs via BattleDataStore.IsContainsDebuff(AttackDamageType) that can penalize specific weapon types (MachineGun, Missile, Laser, Lightning). If your ship’s weapon type is debuffed, you take a flat damage penalty that no amount of software optimization can overcome.

For software: Check which WB bonus stats you already have — if they’re already pumping Boss DMG, put your late drives into Skill DMG or Normal DMG instead. And always check the current weapon debuffs before picking your ship.

Arena — completely separate damage path

Arena uses its own damage methods (UpdateArenaShipDamageInfo, UpdateArenaDronepDamageInfo) and stat conversion (ConvertToArenaStatus). It has dedicated bonus types: ArenaDmg_Pct_Boost_Bonus (61), ArenaReduction_Pct_Boost_Bonus (62), Medal_ArenaDmgUp_Bonus (805). Arena DMG is one of the smallest buckets in the game with almost no sources feeding it.

Chaos Mine — waves AND boss stages

Chaos Mine has both wave-clearing stages (SetChaosMineWave) and boss encounters (ResumeChaosMineBossStage), plus an attribute/elemental system on bosses. This means Boss DMG Up is not wasted here — it applies during boss stages. However, wave clearing dominates total run time, so Normal ATK DMG in your highest-value drives is likely optimal for overall throughput. The attribute system may also interact with WeaknessDamageUp_Bonus (PropertyType 37), which is another underexploited bucket.

Campaign — no special modifiers

Uses the standard UpdateDamageInfo path with no mode-specific bonuses or penalties. Normal ATK DMG and Total DMG are the most starved buckets here.

Frida Testing Opportunities

  • Drive value scaling: Hook TableDataManager.GetSoftwareTables(HardwareDriveType) for each drive type A–T and dump fEffectQuotient / iEffectExponent per entry. This reveals the exact scaling curve and whether the jump from drive A to T is linear, exponential, or stepped.
  • ATK% vs ADV ATK% bucket test: Hook ShipController.RecalculateStatus(), read mfAttackPowerBonus (offset 0x64) before and after equipping ATK% vs ADV ATK% software. If both change the same field by the same delta, they’re one bucket.
  • World Boss debuff values: Hook BattleDataStore.LoadWorldBossDebuff() and read mfWorldBossDebuffEffectValues + Lt_WorldBossDebuffList to see exactly which weapon types are penalized and by how much.
  • Software preset comparison: Use UserManager.GetSoftwareItem(int _presetId) to dump different presets and compare stat outcomes via RecalculateStatus().

Practical Recommendations (Pending Verification)

  1. Check your stat screen. Identify which multiplicative buckets are lowest relative to others.
  2. Early drives (A–F, lower values): acceptable to put in ATK% or Crit DMG (already saturated buckets where the low value matters least).
  3. Late drives (O–T, highest values): put these in your most starved bucket — likely Normal DMG, Total DMG, or Boss DMG depending on mode.
  4. Use presets: one for wave-clear modes (late drives = Normal DMG), one for boss modes (late drives = Boss DMG).
  5. If the ATK%/ADV ATK% same-bucket theory is confirmed, drop the alternation — it does nothing.
  6. Crit chance has a hard ceiling (100%). Once you’re near it, switch remaining Crit% drives to Crit DMG or another bucket.
Open Investigation

Why does Death Finger reset faster when Ghost Drones are active with the Hyper Ghost Drone card?

Mechanism unknown. All 4 known code paths to RandomResetCoolTime are eliminated for Evo Chronos. Track data and sFunctionParams confirmed empty. Leading hypothesis: race condition in cooldown timer system.

Players report that at CDR 84.9–89.4%, firing Death Finger then Ghost Drone with the Hyper Ghost Drone card equipped causes DF to reset faster than its cooldown allows — enabling permanent boss stuns in Evo Chronos. We traced every known code path and eliminated all of them. The interaction is real but the mechanism is unknown.

All 4 Paths to RandomResetCoolTime — Eliminated

The game has exactly 4 code paths that can instantly reset a random skill cooldown (RandomResetCoolTime). We traced all of them through ARM64 binary disassembly of libil2cpp.so. None work in Evo Chronos:

PathTriggerWhy Eliminated
Admiral Joy 15–35% chance per damage event Drones have iAdmiralID=0, gate at 0x1F0CDC4 blocks
Chaos Mine FT 601 Periodic reset every 3–7s (skills 6081–6085) Chaos Mine only — ChaosEnchantCardType, not available in Evo Chronos
OnDamageEnd SF 6 Tech Gemstone 5-set: reset on kill Requires kills — Evo Chronos is single boss
OnKnocked Kill event chain Requires kills — Evo Chronos is single boss

What We Eliminated

We fully disassembled the drone death chain and confirmed it does NOT directly reset cooldowns:

  • OnBatteryOver()UpdateDestroyed() + OnState_Destroyed() on the drone
  • OnDestroyedDrone() fires on the parent ship → calls OnState_DestroyedDrone()
  • OnState_DestroyedDrone() calls CheckAbnormalCondition(false)
  • CheckAbnormalCondition only calls GetDamageInfo for AbnormalConditionType.Acid (6), and calls it on the enemy ship (not the player’s), so Joy’s reset can’t fire
  • None of these methods call RandomResetCoolTime directly

Drone attacks do NOT route through the parent ship’s GetDamageInfo. Each drone is an independent ShipPlayer with iAdmiralID=0. The sFunctionParams field on skill 5206 is genuinely empty. ExpasionSkillData() (the card merge method) is a pure data merge that never touches cooldown state.

Track Data: Extracted and Empty

We extracted all 417 GeneralTrackData entries from the game’s TrackDataStore.DatabaseHolder.TrackDatas[] via Frida and parsed them through TrackParser.Parse(). Skill 5206’s track data is completely empty:

SkillsDevNameDurationKeyInfo ArraysBehaveEvents
Death Finger (3509)skill_active_93s1 AttackCollision1 HitEvent + sentinel
Ghost Drone (3012)skill_active_123sAll emptySentinel only
Card 5206memorycard_skill_20062sAll emptySentinel only (None@2.0s)
Chaos Enchant (6081)enchant_card213sAll emptySentinel only

Leading Hypothesis: Race Condition in Cooldown Timer

Full ARM64 disassembly of SkillCoolTime methods reveals potential timing issues:

  • InvokeSkill() uses non-atomic List.Add (read _size, store to _items[_size], increment _size)
  • ResetCoolTime(int) toggles eStatus between CoolTime(0) and DelayTime(1) — if called during an InvokeSkill iteration, could cause a skill to skip cooldown
  • RandomResetCoolTime() sets fCoolTime = 0 without changing eStatus — next InvokeSkill tick would see the skill as ready
  • The card adding a 3rd drone may alter timing of drone lifecycle events, creating a window where ResetCoolTime(3012) and InvokeSkill() interact unexpectedly

Next Steps

  • Hook ResetCoolTime and RandomResetCoolTime at runtime during Evo Chronos
  • Hook InvokeSkill to build a timeline of DF activations and correlate with drone events
  • Search for a 5th code path that writes fCoolTime directly
  • Compare DF activation frequency with 2 vs 3 drones (card off vs on)

Data: data/game_reference/v1.1.80/track_data_ghost_drone.jsonFull analysis: analysis/death_finger_ghost_drone_reset.md

Code Analysis

What do the stats in Settings → My Info actually show? Why don't they change when I equip different gear?

My Info shows your account-wide aggregate bonuses from all 34 progression systems combined. Single equipment swaps are too small to notice in the total.

What's on the screen

The My Info tab (UIGameSettingPopup) displays your username, level, main ship icon, and a Total Power number. Below that is an array of stat lines, each showing the aggregate bonus for one property type — things like ATK%, HP%, Crit Damage, Skill Damage, Boss Damage, Auto Repair, Drone Damage, etc. These come from a set of EzUIPropertyValueLinker components, each bound to a specific PropertyType.

What feeds into the calculation

Every stat shown on My Info is the sum of bonuses from 34 source categories, managed by the UserStatusManager singleton. Each category has its own dictionary that gets recalculated when that system changes, then all dictionaries are merged into the final values.

#Source CategoryWhat It Represents
1Ship OwnedCollection bonuses from all ships you own
2Ship EquipBonuses from your currently equipped ship
3Equipment HoldBonuses from total equipment levels (all owned)
4Equipment EquipBonuses from your equipped weapon specifically
5Skills HoldPassive bonuses from all skill levels
6Drones HoldPassive bonuses from all drone levels
7ResearchCompleted research tech bonuses
8Memory Card HoldPassive bonuses from all cards owned
9Memory Card EquipBonuses from your equipped card grid
10Collection BookAchievement collection bonuses
11HardwareHardware module bonuses
12SoftwareActive software preset bonuses
13Mining LevelMining level-up bonuses
14Build Up HoldBuilding upgrade bonuses
15MasteriesMastery tree bonuses
16AllianceAlliance/guild bonuses
17Equipment AwakeningAwakened equipment bonuses
18Skill AwakeningAwakened skill bonuses
19Drone AwakeningAwakened drone bonuses
20Stage CollectionCampaign clear milestone bonuses
21Equipment EffectAdditional equipment effects
22Dispatch LevelDispatch/Search level-up bonuses
23Chaos Enchant CardsChaos Mine enchant card bonuses (when active)
24GemstonesIndividual gemstone bonuses
25PluginsPlugin module effects
26World Boss Bonus StatsAccumulated WB bonus stat rewards
27Admiral HoldCollection bonuses from all admirals owned
28Medal HoldMedal achievement bonuses
29Building OwnedBase building bonuses
30Firmware EquipEquipped firmware/chips bonuses
31Admiral EquipBonuses from your equipped admiral
32Gemstone CollectionGemstone collection milestones
33Colony TechColony upgrade tech bonuses

When it recalculates

Recalculation is event-driven, not periodic. Each source category has a dedicated Update*Status() method that fires when that system changes (e.g., upgrading a skill calls UpdateSkillStatus(), equipping a gemstone calls UpdateGemstoneEquipEffect()). After any category updates, the system calls CalculationStatus()UpdateTotalPower() to re-aggregate everything. The My Info tab calls UpdateInfoPage() when you open it, which reads the current aggregate values.

This means: the values do update when you swap equipment. You just need to close and reopen the Settings → My Info tab to see the refreshed numbers.

Why changes seem invisible

The aggregate ATK%, HP%, Crit DMG, etc. shown on My Info is the sum of all 34 sources. By endgame, your total ATK% might be 5,000%+ from ships, equipment, research, masteries, memory cards, admirals, gemstones, and colony tech all combined. Swapping one weapon that changes the Equipment Equip contribution by 50% shifts the total from 5,000% to 5,050% — a 1% relative change that's hard to spot, especially since the display uses compressed number formatting.

The "Hold" (ownership) bonuses dominate over "Equip" bonuses because:

  • Equipment Hold includes ALL your equipment levels combined — hundreds of items. Equipment Equip is just the one weapon you have active.
  • Memory Card Hold includes ALL your card levels. Memory Card Equip is just the grid.
  • Admiral Hold includes ALL admiral levels. Admiral Equip is just one.

The aggregate is designed as a "total account strength" summary. It's not meant to show the impact of individual equipment choices.

What's NOT included

My Info shows your passive progression bonuses. Several important combat factors are not reflected:

Not ShownWhy
Ship base stats Each ship has its own base ATK, HP, speed, range. My Info shows bonuses, not the ship’s raw numbers.
Per-ship combat power Actual DPS depends on which ship you use, its weapon type, attack speed, and skill set. None of this is shown.
In-battle buffs/debuffs Abnormal conditions (stun, weakness, acid, etc.) and skill buffs only exist during combat.
Mode-specific bonuses Arena DMG, World Boss weapon debuffs, Chaos Mine attribute bonuses — these are applied per-mode at battle time, not shown on My Info.
Admiral combat abilities Admiral active effects (damage bonuses, cooldown resets) fire during battle. My Info only shows admiral passive stat bonuses.
Skill/drone actual damage Skill damage multipliers, drone DPS, and attack patterns are per-skill calculations done at battle time.

The 10 base stats

Separately from all the bonus sources above, the game tracks 10 base stats that you level up directly (the main stat screen). These are managed through a Dic_StatValue dictionary and also feed into My Info:

StatEffect
PowerBase attack power
HealthBase HP
RepairAuto-repair rate
Attack SpeedFiring rate
RangeAttack range
Critical ChanceCrit rate
Critical DamageCrit multiplier
Damage IncreaseFlat damage bonus
Fast ReloadSkill cooldown reduction
WeaknessWeakness damage bonus

Total Power formula

The TotalPower number is calculated by UpdateTotalPower() after CalculationStatus() merges all sources. It combines AttackPow, SkillPow, BossPow, HealthAmt, AutoRepairAmt, ShieldAmt, ServantPow, and CriticalDamage into one composite score. Sources can also contribute directly via the special AddTotalPower property (PropertyType 9001). The exact weighting formula hasn't been extracted yet — this would require runtime hooking of UpdateTotalPower().

Practical takeaway: My Info is a progress snapshot, not a build comparison tool. It shows how strong your account is overall, but it’s useless for comparing equipment setups or optimizing builds. To judge equipment impact, compare actual combat performance or calculate per-bucket bonuses manually. The stats do change when you equip gear, but the change is drowned out by the 33 other source categories feeding the same totals.

How We Verify

Questions marked Runtime Confirmed were tested using Frida hooks attached to a live game instance — we intercepted the actual function calls to see exactly what the game does. Questions marked Code Analysis are based on IL2CPP decompilation of the game binary (v1.1.80). Both methods are reliable, but runtime confirmation is the gold standard.