Abomihoney
¶
Assumptions¶
It is assumed that this enemy gets loaded with an onhitaction of 3 so this enemy's hitaction
logic works.
data
usage¶
During the action, if data
is null or empty, it's initialised to be 1 element with a starting value of 0. An unitialised value is possible, but it will be treated the same was as if it was 0.
data[0]
: This remains at 0 until the bomb transformation move is used where it's set to 1. The value being 1 means the bomb explosion move will be used on the next actor turn
HardMode changes¶
HardMode being true does the following changes:
- The RNG check required to use the Ahoneynation healing move when all other conditions are fufilled has its odds changed to 51% from 41%
- The HPPercent threshold required to use the bomb transform move when all other conditions are fufilled changes to being below 0.75 from 0.5
- The RNG check required to use the bomb transform move when all other conditions are fufilled has its odds changed to 41% from 31%
- In the bomb transformation move, this enemy gets a DefenseUp condition for 99999 main turns (effectively infinite)
hitaction support¶
This enemy supports hitaction
logic and it will be performed when hitaction
is true instead of any moves
Logic sequence¶
- If position is
Ground
and eitherdata[0]
is 0 or wasn't initialised yet (meaning the bomb explosion move isn't slated to be used on the next actor turn):- animstate set to 104
Puddle
sound plays- Yield for 0.5 seconds
digging
set to true- animstate set to 0 (
Idle
) - position set to
Underground
- The local startstate is set to 31 (
Dig
)
Move selection¶
5 moves are possible:
- A single target grounded bite attack
- A single target underground bite attack
- Sacrifice themselves to heal all their remaining
hp
to a Ahoneynation - Turns into a bomb that will explode on their next actor turn
- Explode as a bomb which kills themselve, but dealing damages to everyone except other other
Abomihoney
and Ahoneynation which gets healed
Every moves requires specific conditions to be used and some of them requires an RNG check. Here is the decision process done in order:
- If position is
Underground
, move 2 is used - Otherwise, if all of the following conditions are fufilled, move 3 is used:
- A Ahoneynation is present
- The first Ahoneynation in
enemydata
has an HPPercent below 0.6 locktri
is true (this can only happen under normal gameplay if this enemy was summoned by Ahoneynation)- A 41% RNG check passes (51% instead if hardmode is true)
- Otherwise, if
data[0]
is 1 (meaning move 4 was used on their last actor turn), move 5 is used - Otherwise, move 4 is used if all of the following conditions are fufilled:
locktri
is false (meaning this isn't an enemy summoned by Ahoneynation)- HPPercent is less than 0.5 (0.75 instead if hardmode is true)
- A 31% RNG check passes (41% instead if hardmode is true)
- Otherwise (no other moves was slated for usage), move 1 is used
Move 1 - Grounded bite¶
A single target grounded bite attack.
DoDamage calls¶
# | Conditions | attacker | target | damageammount | property | overrides | block |
---|---|---|---|---|---|---|---|
1 | Always happen | This enemy | playertargetID after GetSingleTarget |
3 | null | null | commandsuccess |
Logic sequence¶
- GetSingleTarget called
- Camera moves to look near
playerdata[playertargetID]
- MoveTowards
playertargetentity
+ (1.5, 0.0, -0.1) with 1.0 multiplier (2.0 instead if this enemy x position is higher than 3.0) PuddleMove
sound plays via PlayMoveSound on loop usingsounds[9]
with 1.15 pitch- Yield all frames until
forcemove
is done sound
is set to stop looping and stopped- Yield for a frame
- animstate set to 100
Bite3
sound plays- Yield for 0.65 seconds
- animstate set to 102
Bite2
sound plays- DoDamage 1 call happens
- Yield for 0.7 seconds
Move 2 - Underground bite¶
A single target underground bite attack.
DoDamage calls¶
# | Conditions | attacker | target | damageammount | property | overrides | block |
---|---|---|---|---|---|---|---|
1 | Always happen | This enemy | playertargetID after GetSingleTarget |
3 | Pierce1 | null | commandsuccess |
1: Enemy piercing damages are disabled so this property does nothing, see the CalculateBaseDamage documentation to learn more
Logic sequence¶
- GetSingleTarget called
- Camera moves to look near
playerdata[playertargetID]
PuddleMove
sound plays on this enemysound
is set to loop- MoveTowards
playertargetentity
+ (0.0, 0.0, -0.1) with 1.6 multiplier - Yield all frames until
forcemove
is done sound
is set to stop looping and stopped- animstate set to 106
Bite4
sound plays- Yield for 0.1 seconds
- Jump called with an h of 15.0
- DoDamage 1 call happens
- Yield for 0.75 seconds
- MoveTowards + 2.75 in x with 2.0 multiplier
- Yield all frames until
forcemove
is done - animstate set to 105
- Yield for 0.5 seconds
- animstate set to 0 (
Idle
) - position set to
Ground
- The local startstate is set to 0 (
Idle
)
Move 3 - Sacrifice and heals a Ahoneynation¶
Sacrifice themselves to heal all their remaining hp
to a Ahoneynation. No damages are dealt.
Logic sequence¶
- The
enemydata
index of the first Ahoneynation is obtained - Jump called on this enemy
Jump
sound plays- y
spin
set to 10.0 - Yield for 0.5 seconds
- animstate set to 108
Puddle
sound plays- Yield all frames until this enemy is
onground
- Over the course of 31.0 frames, this enemy moves to the
Ahoneynation
position + 0.1 in z via a BeizierCurve3 with a ymax of 3.0 - Heal called to heal the
Ahoneynation
'shp
by this enemy'shp
selfsacrifice
set to true which prevents some logic to happen in post action since this enemy is set to die soon- CleanKill called on this enemy which turns this enemy into a blank actor shell placing their battleentity at startp
Move 4 - Bomb transformation¶
Turns into a bomb that will explode on their next actor turn. No damages are dealt.
Logic sequence¶
- Jump called with an h of 15.0
Jump
sound plays- y
spin
set to 15.0 - Yield for 0.3 seconds
poisonres
,numbres
,sleepres
andfreezeres
are all set to 110 (all immune)Fuse
sound plays with 1.1 pitch- If hardmode is true, StatusEffect is called on this enemy to inflict the DefenseUp condition for 99999 main turns with effect
originalid
andanimid
of this enemy's entity set to 217 (Abomihoney
). This shouldn't change anything under normal gameplay- animstate set to 0 (
Idle
) data
is initialised to be one element with a value of 1 which means the bomb explosion move will be used on the next actor turn- A SpriteBounce is added to
rotater
with a MessageBounce with a 1.5 multiplier and abasescale
of 1.25x - Yield all frames until this enemy is
onground
. Before each frame yield, thebasescale
of the SpriteBounce is set to 1.25x destroytype
set to ExplodeAnimonhitaction
set to -1 which should prevent this enemy from performing theirhitaction
logicspin
zeroed out- angles zeroed out
- Yield for 0.5 seconds
- The
basescale
of the SpriteBounce is set to 1.25x
Move 5 - Bomb explosion¶
Explode as a bomb which kills themselve, but deals damages to everyone except other other Abomihoney
and Ahoneynation which gets healed.
DoDamage calls¶
# | Conditions | attacker | target | damageammount | property | overrides | block |
---|---|---|---|---|---|---|---|
1 | Always happen to each player party members whose hp is above 0 |
null | The player party member | 10 (5 instead if the player party member has the Shield which also will make the attack non lethal after this call) | null | null | false |
2 | Always happen to every enemy party members except this enemy, other Abomihoney and other Ahoneynation |
null | The enemy party member | 10 | null | null | false |
Logic sequence¶
- The
Hold
animation clip is played onanim
Fuse
sound plays- Over the course of 61.0 frames, the
basescale
of therotater
's SpriteBounce changes to 2x via a lerp - ShakeSprite called with an intensity of (0.1, 0.0, 0.0) and 40.0 frametimer
- Yield for 0.66 seconds
explosion
particles plays at this enemy positionExplosion3
sound playsSplat2
sound playssprite
gets disabledshadow
gets disabled- ShakeScreen called with an ammount of 0.25 and time of 0.75
- For each player party members:
- If their
hp
is above 0, DoDamage 1 call happens - If they had the Shield condition before the DoDamage 1 call, their
hp
gets clamped from 1 to theirmaxhp
which makes the DoDamage 1 call non lethal
- If their
- For each enemy party member other than this enemy:
- If it's an Ahoneynation or another
Abomihoney
, Heal is called on them to heal 10 of theirhp
- Otherwise, DoDamage 2 call happens on them
- If it's an Ahoneynation or another
- 3 new sprite objects are created and appears with the following properties:
- Named
splatX
whereX
is a number from 0 to 2 - Childed to the
GUICamera
- sprite of
Sprites/Objects/splatter
- Positioned in one of 3 hardcoded Vector3
- Scale of Vector3.zero
- size of one of 3 hardcoded Vector3
- color of FFFFBF (mostly orange)
- sortorder of -5 - X where X is a number from 0 to 2
- flipX of false except for the second sprite where it's true
- A DialogueAnim is added with a
targetscale
of Vector3.one and ashrinkspeed
of 0.15 - Yield for 0.025 seconds after each creation
- Named
- Over the course of 100.0 frames, each
Sprites/Objects/splatter
color's alpha changes to 0.0 via a lerp, but only over on the last 50.0 frames of the full yields (the first 50.0 are just frame yields) sprite
gets disabled- All
Sprites/Objects/splatter
gets destroyed - Yield for 0.5 seconds
selfsacrifice
set to true which prevents some logic to happen in post action since this enemy is set to die soon- CleanKill called on this enemy which turns this enemy into a blank actor shell placing their battleentity at startp