Posted May 08, 2021 by Another RPG Enthusiast
Hitlist
class has been defined to facilitate this. It is an array that takes a set of targets and tracks the chance of selection for each. Smart targeting effects have been placed in a method function, addFactors
.setup
variables FIREFLY_FACTOR
and WALLFLOWER_FACTOR
.threatTarget
is now automatically provided by the Hitlist
constructor.THREAT_DECAY
.guardCheck
and protectionCheck
are now static methods of Hitlist
and are automatically called whenever the returnTarget
method of Hitlist
is used.targetMod
has been altered to automatically return relevant mods for the action. For example, piercing moves will add pierce
and debuff-inflicting moves will add effect
.effectCount
now takes an argument that will exclude sticky effects.database-enemies
to a new file, logic-functions.js
.dispelTarget
has been adapted into the logic function dispelCheck
.cureCheck
, has been created. This is the ailment version of dispelCheck
, for enemies that use curative moves.threat
. This is the value checked by dispelCheck
and cureCheck
, rather than just a straight count. This allows you to weight certain effects more highly. By default, all effects have a threat of 1, except for Blessing and Curse, which have 3. Effects with indefinite durations have their threat doubled, and effects with definite durations have their threat increased by the duration over 4.multihit
function has been slightly altered to avoid using widgets. It now lacks the potential for spread functionality; use multihitCustom
for that.immortal
, large
, and maskhp
are now canonized as official Actor
properties; you can assign them to database entries without needing to go through specialInit
.Action
properties to make them easier to edit. You'll no longer need to preface your properties with underscores.Actor
property: lastDmg
. This tracks the amount of damage the character inflicts with their attacks. It is reset at the start of every battle and every turn. This can be used for additional targeting logic, e.g. prioritizing the most dangerous character.Effect
property: unique
. This prevents multiple instances of the effect from existing in a party. A handler for dealing with this functionality has been added to addEffect
.enemy-actions.js
file in the custom
folder; it is separate from the database-actions
file to keep that file clean. Currently, only Dipper and Mabel are done.