Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- This is a draft. I may not update it further.
- 1) Determine whether to use wisdom or will as the magic stat. White magic spells
- use will. Everything else uses wisdom.
- 2) Set the accuracy to the spell's base accuracy + magic // 2.
- 3) If the actor has the darkness status, divide accuracy by two.
- 4) If the actor is in slot zero, multiply accuracy by 5/4. If this overflows,
- the high byte will be lost.
- 5) If the spell is a hit/miss spell, set the number of attempts to 1. Otherwise,
- set the number of attempts equal to magic // 4 + 1.
- 6) Determine the number of hits using that accuracy and number of attempts.
- 7) If the spell is being cast by an item, set the number of hits to eight.
- Loop through the targets:
- 1) If the target has Wall, select a random target on the other side that isn't
- swoon or stone. Use that target's stats for all calculations.
- 2) For most spells, the spell power listed in the bytes is multiplied by four.
- Call spells are instead multiplied by eight. This value is the per-hit
- attack power.
- 3) If a party member is casting a spell against another party member, set the
- defense value to zero. Otherwise, it's set to the target's magic defense base.
- 4) Set the evade accuracy to the target's evade value.
- 5) If the target has the darkness status, divide their evade accuracy by two.
- 6) IF the ACTOR is in slot zero (either party or monster), multiply the target's
- evade by 5/4. Yes, this is silly. If this overflows, the high byte is lost.
- 7) The number of evade attempts is the target's magic defense multiplier.
- 8) If the spell is a hit/miss spell, cap the evade attempts at 1.
- 9) If the target is a toad or is charging (Yang's Power), set the number of
- evade attempts to zero.
- 10) If the target is a monster and has a magic defense base of 255, set their
- evade accuracy and attempts to 99.
- 11) Calculate the number of evades.
- 12) If a party member is casting against another party member, there is no
- evade, so load the number of hits. Otherwise, load the number of hits minus
- the number of evades. If the target is a boss and the spell is boss immune,
- assume zero hits. This is the total number of hits.
- 13) If there were no successful hits, it's mostly a failure except for certain
- monster spells, where the number of hits will be set to 1. OTherwise, this
- target is missed.
- 14) If a monster is being targeted by something other than itself and if monsters
- are invincible, cancel the successful hit unless the spell is the Crystal.
- 15) If a summon spell (either Call or Grimoire) and the spell is not Asura and is
- trying to target a party member, set the hits to zero.
- 16) Dispatch to the spell effect handler.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement