Player: Battle 2k3 - dual wield and double attack not implemented

Created on 26 Mar 2019  路  6Comments  路  Source: EasyRPG/Player

In 2k, dual wield is treated as a combined single attack with 2 weapons.

  • [x] In 2k3, dual wield is actually 2 separate attacks.
  • [x] If the first hit kills the enemy, the second hit will randomly select a 2nd target.
  • [x] If both weapons have double attack, you will attack 4 times. Potentially killing up to 4 enemies if all the blows are lethal.
  • [x] If one weapon has double attack and the other not, you will attack 3 times.
  • [x] Weapons designed to attack multiple times and attack all targets at the same time are also unimplemented, only attacking a single target one time.
  • [x] Attack all weapons still allow you to select a target, and then it hits all enemies
  • [x] Ignore evasion flag is treated separately for each weapon
  • [x] Weapon sp cost is deducted for every hit in 2k3
  • [x] Correct CBA right and left hand animations for each weapon. Including when actor is mirrored.
  • [x] When combo is applied, actor will do all combo hits with first weapon, and then all combo hits with second weapon

We don't do any of this. Instead it looks like we just emulate the 2k behavior of doing a single combined hit.

For a double attack, we don't select a 2nd target if the first one kills.

We also don't even show the 2 weapon animations in 2k3, only the first one.

Open Questions:

  • [x] How is hit chance determined for attack? For each weapon individually or max()
  • [x] How is hit chance determined for physical skills?
  • [x] Ignore evasion flag?
Battle Patch available

All 6 comments

Weapons designed to attack multiple times and attack all targets at the same time are also unimplemented, only attacking a single target one time.

A little more background here:

RPG_RT has a RPG_Actor::usedWeapon flag that it sets for dual wield attacks. Then it has an entirely different code path for actor normal attacks, including a copy of the functions like GetAtk(), AtkHasAttribute(), etc.. which only take the usedWeapon into account instead of both weapons.

2320 implements the ability to compute stats and attack flags based on 1 weapon at a time. So that part is now done.

Answers to the open questions:

How is hit chance determined for attack? For each weapon individually or max()

In RPG Maker 2003 battles the hit chance is determined for each weapon individually. I tested this in RPG_RT with an actor who wields a 100% and a 0% hit chance weapon. The first strike (with the 100% hit chance weapon) always hits and the second strike (with the 0% hit chance weapon) always misses.

How is hit chance determined for physical skills?

The hit chance for physical skills is not affected by the weapons at all. The rules of a skill with failure_message set to 3 apply.

Thanks, these behaviors are already implemented in #2320 and confirmed in RE. I just forgot to update this issue.

All that is left to do is to:

  • [x] actually implement the multiple attack actions with correct timing and animations
  • [x] Modify Normal algo to use Game_Battler::Weapon
  • [x] Modify Normal algo states to support single or multiple weapons

This is now fully implemented in #2399

Was this page helpful?
0 / 5 - 0 ratings