Enemies
Rival Octolings
Enm_Rival(WEAPONNAME)(Octa) is the obejct used to create an enemy Octoling.
- DbgWeaponMainId: !l -1
DbgWeaponSubId: !l -1
DbgWeaponTrigFrame: !l -1
EscapeRestHpBorder: !l 100
HeroDeadType: !l 0
HeroWeaponLv: !l 0
IsDistanceSwitch: true
IsHiddenWait: true
IsHokoSwitch: false
IsKeepout: false
IsLinkDest: false
IsShotSwitch: false
IsSleepWait: false
IsStrongHero: false
ItemDropableParams__DropNum: !l 0
LayerConfigName: Cmn
Links: {}
PlanType: !l 0
RespawnNum: !l 0
RespawnWaitFrame: !l 0
SpawnType: !l 0
Special: !l 0
SpecialChargeFrame: !l 0
SpecialReChargeFrame: !l 0
SubWeapon: !l 0
SwitchType: !l 0
UseSuperLandingInSuperJump: false
You might notice some parameters that would apply to Agent 3. This author does not currently believe that these have any effect on non-Hero Rival objects.
- IsHiddenWait: used to prevent the enm from acting until activated by a Switch link.
- RespawnNum: describes how many “lives” the enemy gets, if IsHiddenWait is true than the activating Switch will consume one life.
- SubWeapon: describes the type of Sub the Rival will use.
- Splat Bomb
- Burst Bomb
- Unknown
- Auto Bomb
- Curling Bomb
- Special: describes the type of Special the Rival will use. Official levels have this set as -1 if the Octoling should not have a special, although leaving it as 0 appears to have the same result. Note that the IDs used here are different from the IDs found in Mush.release.pack/WeaponInfo_Special.byml:
- Ink Armor
- Tenta Missiles
- Sting Ray
- Bubble Blower
- Splat Bomb Launcher
- Inkjet
- Burst Bomb Launcher
- Curling Bomb Launcher
- Auto Bomb Launcher
- Splashdown
- Baller
- Bubble Blower
Rival Super Jump Target
RivalRespawnPos is used so that an Octoling Super Jumps to a location upon spawning.
Links:
OctaSpawner:
- {DefinitionName: OctaSpawner, DestUnitId: objX, UnitFileName: ''}
where the objX is the Rival enm that you want to jump here. This connection is not mutually exclusive and multiple Rivals can jump to the same RivalRespawnPos.
Move Limits
RivalMoveLimitAreaBoxOcta is used to delimit a rival's area of movement.
- GroupID: !l 5
- GroupID: used to connect multiple areas to act as one.
On the Rival object itself, you must use this link
MoveLimitArea:
- {DefinitionName: MoveLimitArea, DestUnitId: objXXX, UnitFileName: ''}
where objXXX is the RivalMoveLimitAreaBoxOcta object.
Agent 3
Obj_RivalHeroOcta is a very lightly modified version of enemy Octolings. It is capable of being altered in the same way as Octolings (different Subs, Specials) and uses the same method to control its Super Jump.
The following is the object used in the first phase of Inner Agent 3 (OctShowdown):
- DbgWeaponMainId: !l -1
DbgWeaponSubId: !l -1
DbgWeaponTrigFrame: !l -1
EscapeRestHpBorder: !l 100
HeroDeadType: !l 0
HeroWeaponLv: !l 1
Id: obj60
IsDistanceSwitch: false
IsHiddenWait: false
IsHokoSwitch: false
IsKeepout: false
IsLinkDest: true
IsShotSwitch: false
IsSleepWait: true
IsStrongHero: true
ItemDropableParams__DropNum: !l 1
LayerConfigName: Cmn
Links:
MoveLimitArea:
- {DefinitionName: MoveLimitArea, DestUnitId: obj81, UnitFileName: ''}
ToSwitchAllDead:
- {DefinitionName: ToSwitchAllDead, DestUnitId: obj105, UnitFileName: ''}
ModelName: null
ParameterName: null
PlanType: !l 0
RespawnNum: !l 0
RespawnWaitFrame: !l 0
Rotate: {X: 0.00000, Y: -45.00000, Z: 0.00000}
Scale: {X: 1.00000, Y: 1.00000, Z: 1.00000}
SpawnType: !l 0
Special: !l 6
SpecialChargeFrame: !l 300
SpecialReChargeFrame: !l 600
SubWeapon: !l 4
SwitchType: !l 1
Team: !l 2
Translate: {X: 185.00000, Y: 2000.00000, Z: -185.00000}
UnitConfigName: Enm_RivalHeroOcta
UseSuperLandingInSuperJump: true
- HeroDeadType: controls the way Agent 3 reacts upon being splatted. 0 causes armour break and Agent 3 will Super Jump away (this is all visual, any action normally taken upon enemy death such as dropping Power Eggs or activating SwitchAllDead will stick occur). 1 causes Agent 3 to be visually splatted like any other Rival. 2 is used for the Agent 3 dramatic splat animation (Demo11_KnockOut)
- IsStrongHero: Used to switch between Sanitised Agent 3 and Inner Agent 3 behaviour.
- Special: When special 10 Splashdown (SuperLanding) is used by an Agent 3 object, it becomes Super Splashdown Rush. IsStrongHero reduces the time between Super Splashdowns
Missile Octocopter
Copied from Escape 3: Belly Phase (Fld_OctLastBoss02_OctMsn)
- AirBallIkuraDropNum: !l 0
AmbushConstraint: !l 7
AmbushSearchRadius: 250.00000
BindType: !l 0
EnemyRailableParams__SolveType: !l 0
IsAttachAirBall: false
IsFaceToPlayerOnActivate: false
IsLinkDest: true
IsReviveBySwitch: false
IsUnbindOnActivate: false
ItemDropableParams__DropNum: !l 1
LayerConfigName: Cmn
Links: {}
ModelName: null
NoCulling: false
OverwriteAttackBreakTime: !l 500
PatrolFrontDirFixed: false
PlayerChaseType: !l 0
Team: !l 2
UnitConfigName: Enm_TakopterMissileBoostOcta
UseFrontWithBindable: false
UsePaintDrone: false
- OverwriteAttackBreakTime: Can be used to set a new time between attacks. The period is very small if this is left as 0.
Octocommanders
From E08 Da Bomb Station (OctBomb)
- AirBallIkuraDropNum: !l 0
BindType: !l 0
CheckInitialLaserCol: false
Id: obj570
IsAttachAirBall: false
IsFaceToPlayerOnActivate: false
IsLinkDest: false
IsReviveBySwitch: false
IsUnbindOnActivate: false
ItemDropableParams__DropNum: !l 1
LayerConfigName: Cmn
Links:
ToSwitchAllDead:
- {DefinitionName: ToSwitchAllDead, DestUnitId: obj438, UnitFileName: ''}
ModelName: null
RotPatrole360: false
Rotate: {X: 0.00000, Y: 0.00000, Z: 0.00000}
Scale: {X: 1.00000, Y: 1.00000, Z: 1.00000}
Team: !l 2
Translate: {X: 300.00000, Y: 215.00000, Z: -555.00000}
UnitConfigName: Enm_SpinnerOcta
UseFrontWithBindable: false
ViewAngle: -1.00000