Skip to content

Archived on 2026-10-24. The Godot rewrite is cancelled. This handoff is historical evidence, not an active Unity task or verified runtime behavior. See the current documentation.

Audit correction (2026-10-24): material GUID a97c105638bdf8b4a8650670310a4cd3 resolves to URP Runtime/Materials/Sprite-Lit-Default.mat.meta in the installed package cache. The unresolved-material claim below is superseded.

Phase 9 Soldier Frenzy migration manifest

Scope: evidence-only extraction for production Soldier (SOLDIER) starting ability Frenzy. No Unity source or binary content is included.

Asset and GUID map

Evidence GUID / identity Confirmed use Receiving field(s)
Assets/Resources/Character/Soldier.asset character id SOLDIER References Frenzy GUID; max stamina 100; literal ability name; localized description; availability fields; icon; Soldier weapon character_id, source_name, description_key, icon_guid, clean formulas, notes
Assets/Scriptable Object/Ability/Character/Frenzy.asset.meta 9db9a838493ecca429eacc1008a8aa56 Exact fixed GUID resolution source_guid, source_path
Assets/Scriptable Object/Ability/Character/Frenzy.asset type enum value 3 / Frenzy cooldown 30, stamina 0, mutable cooldown fields cooldown/cost/runtime move list
Assets/Script/Shared/ScriptableObjects/Ability.cs script GUID b84e1e85621e6324a8b921c1399e7029 Declares Ability, AbilityType.Frenzy, and all serialized fields stable id and ownership split
Assets/Language/Table/Character/Character Shared Data.asset table GUID 39e307ac92f4d5c48b7d378f1218c10e key id 18032062464 resolves to Skill_Soldier description_key=Character/Skill_Soldier
Assets/Sprites/Icons/Icon_Characters-Ability.png b67cdf844d626d24d8d0b8a7c9ea6b67 Soldier asset icon reference icon_guid, feedback provenance
Assets/Prefab/Player/Player.prefab Frenzy child fileID 9152161303192489000 Initially inactive child used as base Frenzy visual feedback and cleanup
Assets/Sprites/CharacterMainSkills/Soldier_Frenzy.png e4455ba13d64ed7439fe73bd71c9c8fe Frenzy child sprite feedback provenance
Assets/Animation/Character/Soldier/Soldier_Skill_Frenzy_Animator.controller f25de0cd40e3d9f4b964b71b6ba8e028 Frenzy child animator feedback provenance
Assets/Animation/Character/Soldier/Soldier_Character_Animator.controller ca270ce45dbe2894bb828308985081e5 Contains a Frenzy state, but runtime does not trigger it feedback note / unresolved animation
Assets/Prefab/Player/Soldier/Soldier_Gun.prefab 52b0d040dc8b2bf478cadb6aea14369c attack rate 1.5, reload rate 0.4, ammo 10 clean Soldier formulas

The Player prefab's Frenzy renderer references material GUID a97c105638bdf8b4a8650670310a4cd3; no matching .meta was found, so it is provenance-only and unresolved rather than promoted.

Script, method, event, and formula map

Evidence Confirmed behavior Receiving field(s)
AbilityHolder.PlayerSettingsAbilityFirstTime Adds selected character ability and clears isOnCooldown; no explicit currentCooldownTime reset tags, runtime fields, pooling notes
AbilityHolder.Update -> FrenzyActivator Per-frame automatic dispatch; no input or combat event trigger_type, activation requirements/sequence
AbilityFunction.UseAbility Silent return if absent/on cooldown; starts cooldown before behavior cooldown start/failure behavior
AbilityFunction.CooldownTimer Sets flag immediately; scaled waits total 30 seconds at modifier 1 cooldown and pause semantics
AbilityFunction.CurrentCooldownTimer Sets 30, decrements 0.1 after scaled ticks AbilityInstance ownership
AbilityHolder.Frenzy flag true -> VFX on -> scaled duration -> VFX off -> flag false activation, duration, cleanup
PlayerModifier Frenzy attack formula interval divided by 2 + SoldierFrenzyASBonus; clean bonus 0 attack modifier/formulas
PlayerModifier Frenzy reload formula interval divided by 4 reload modifier/formulas
PlayerWeapon.WeaponTimer / ReloadAmmo timers use scaled delta; reload coroutine snapshots argument active behavior/interruption notes
PlayerWeapon.UIUpdate reload UI denominator multiplies by 2 during Frenzy feedback inconsistency/unresolved
GameStateService.UpdateTimeScale pause, reward, or game-over sets Time.timeScale=0 pause_time_behavior
Player.Death / OnDisable disables player; no Frenzy-specific restoration interruption and pooling/reset notes

Serialized field classification

Field Evidence value Ownership
Ability.type Frenzy immutable AbilityData
Ability.cooldownTime 30 immutable AbilityData
Ability.staminaCost 0 immutable AbilityData
Ability.isOnCooldown serialized true, initialization clears false per-player AbilityInstance
Ability.currentCooldownTime serialized 2.699998 per-player AbilityInstance
AbilityHolder.SoldierIsFrenzy runtime bool Frenzy behavior state
AbilityHolder.soldierFrenzyEffect prefab child reference feedback-only reference/state controlled by behavior
SoldierFrenzyCDModif clean initialization 1 excluded upgrade extension point
SoldierFrenzyASBonus clean initialization 0 excluded upgrade extension point
SoldierDashReloadPercentage clean initialization 0 excluded dash upgrade extension point

No base Frenzy gameplay event signal, animation trigger, audio call, projectile modifier, dash event, hit/kill event, resource spend, charge, or stack operation was found.