Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines
(1 edit)

This plugin has been extremely wonderful but i've been having one teensy issue with it, that being I have an actor who can wield both One-Hand (Dual Wield) & Two-Handed Weapons. For whatever reason, when the actor uses a two-hand weapon, the attack will play out as is but then will seemingly deal an additional attack that misses.

At first i thought it had to do with the issue of the "Barehand Attack" being enabled, so i disabled it and its still occurs for whatever reason.

What i do know is that it doesn't seem to be much of an issue with other characters (who use similar invoked skills), as they aren't dual wielding. So I am only guessing that its something to do with dual wielding characters.

Also i am now just noticing you addressed a bug like this in v2.73, which is actually the same problem i am currently facing, yet I am using v2.74..? Did i do something wrong then?

My load order:

YEP_CoreEngine

YEP_BattleEngineCore

YEP_X_BattleSysATB

YEP_X_ActSeqPack1 (& 2)

Ramza_DualWield


UPDATE, after re-configuring the load order (hoping that it would address the issue in some manner, it did not), my load order now represents the recommended Yanfly Load Order.

Hello there.

When the actor is using a twohanded weapon, do they have something in their offhand, like a shield, or is that slot  completely empty?

Is the two handed weapon tagged as <twohanded>?

Are you using the Monkey Grip extension, and is the actor monkeygripping?

I did fix a bug like this in a previous version but it may not have been the exact situation you have going on right now.

~Ramza

I do not have the monkey grip plugin and there is nothing equipped in my offhand, sorry for the late replay, I only just now noticed the comment.


Additionally, yes, I do have it set to "<twohanded>" and the attack in question is set to invoke a skill that is using YEP_ActSequence so it can attack all enemies at once but another <twohanded> weapon that doesn't use that skill (instead it's attack hits one target) has the same issue where it seemingly strikes twice.

So the weapon is not using the standard attack skill, but some other skill?

Is that via the Yanfly Weapon unleash plugin? What are the note tags you're using on the skill that it is using? Is it tagged as a dual wield skill? Does it have a unique action sequence?

~Ramza

Deleted 176 days ago
Deleted 176 days ago
(6 edits)

its through weapon unleash yes, however said skill is VERY similar to the base attack, its just under a different name. (Instead of "Attack" its called "Shoot")

[here is the one without the Action Sequence stuff that still has the issue when its assigned to a two-handed weapon]

Here's the other one, still very much the same but it strikes all targets (i've assigned this one to shotguns) & has the action sequence stuff attached (I did this due to a problem i was facing last month where it would individually strike each and every target individually rather than all at once, and as I've stated, its only applied to shotguns)

I should note that i've tried mostly everything i could think of in regards to attempting to fix it, including just putting both Mainhand & Twohanded Tags, also after taking these images, i replaced the weapon skill plugin note tag with a weapon unleash notetag and its still attacking twice somehow, (also i am just learning i can attach more than one image, whoops! sorry for the multiple replies! I will update this one to include the multiple replies i made)

Also! Here is the plugin list in its entirety (it uploaded backwards..)! + Plugin Itself

(i tried adding in some of the extra plugins the DualWield Plugin had compatability, hoping that would resolve the issue, it sadly did not)

(UPDATE, i used another weapon that is assigned to the very first skill, which i then renamed back to "Attack" to see if it has something to do with the name, still attacks twice, what did i do to cause this bug to come back??? I'm honestly flabbergasted at myself because i feel like this is inadvertently my fault and i dont know how)

Unfortunately, weapon unleash isn't exactly compatible with the dual wield plugin, so I wonder if the problem is coming from that?

Can you try, for experimentation sake, using the twohanded weapon without weapon unleash to see the 'normal attack' skill that it would usually use and see if it also hits twice? I'm not entirely sure how weapon unleash codes its skill usage, but dual wield only 'detects' a skill as dual wielding automatically if it's the first skill in the skill list, or if it's tagged specifically as a <dual wield> skill, but the only effect this would have would be to have sequential attacks switch weapons (and damage) within that skill.

Moreover, the problem seems to be that the game is deciding that your actor is dual wielding, when he's not, which is triggering the extra attack even when he isn't.

During battle, can you open the console (f12) and put in the following script?

$gameParty.members()[0].isCurrentlyDualWielding()

Replace the 0 with the index of the party slot where the guy with the two handed weapon is. If he's the lead, he'll be index 0, if he's the second in line it's index 1, etc.

For someone who's actually actively got two weapons equipped, this should return true, but for someone using a twohander, it should be false. It should also return false if you have the barehanded attack parameter disabled, and he's got a one handed weapon and nothing in his off hand, or if he's got a shield in his offhand.

If that's coming back true, we probably know where the problem is, it's that the engine is detecting the user as dual wielding when he's not, and I can go from there to figure out why.

If it isn't detecting him as dual wielding via that script, then something is adding an extra attack to your skill, and that could be the skill unleash incompatibility I was talking about earlier. The dual wield plugin does make some 'secret' changes to the action sequence of the attack skill, and to any skills tagged with the skill tags.

It could also be something simple, like a trait adding an extra attack to the actor, which would also make the regular attack skill hit twice.

~Ramza

(7 edits)

So i disabled Weapon Unleashed, now the weapons are not using <Replace Attack: X> as a command.

(also i made sure to get rid of the <skill_id:x> notetag from Weapon Skill, a default plugin that RPG Maker MV provides)

(UPDATE: I disabled the Weapon Skill Plugin and it still occurs)

It still performed a second attack, in addition, i found something strange in the console

(this is the second party member, they are currently wielding the "Mobster Full-Auto" and absolutely nothing else in their offhand, it still registered a second attack being executed)

(Here is the loadout thats being used, while this is in the "Troop Battle Test" System, i can confirm this still occurs outside of it)

Something else i would also like to clarify is that the dual wield weapons are using the same notetag, so its not interchanging notetags with one another, in fact, i had to acutally alter this a while ago and remove a couple of weapons because i couldn't get them to behave like RPG Maker 2003's Weapons nor could I locate a proper solution)
(To better describe this, basically i have two sets of skills, one that attack a single target, and the other that attacks multiple targets all at once, i had to remove dual wield weapons that struck all targets at once as i had realized dual wielding could only go so far, so now dual wield weapons are only one hit targets while things like shotguns stick to being all hit targets but two handed).
The Mobster Full-Auto is meant to be a two-handed weapon however.

(Also, another reason I am using weapon unleashed is so i can replace the "Defend" Command, which is also why ive got Weapon Skill to the side)

Okay, that is weird. 

So where the battle system is picking up that the actor is currently dual wielding, even when he isn't,  one of two things is happening:

  • The weapon isn't actually twohanded
    • Maybe something broke the notetag, or the function that turns the weapon twohanded?
  • The function that checks if the actor is currently dual wielding isn't properly detecting the actor as wielding a two handed weapon.

To test for the first thing, in battle, from the console, we can use almost the same script as before:

$gameParty.members()[1].equips()[0]._isTwoHanded

This will return true if the weapon in the main hand of the actor is tagged as two handed. 

If the script returns false:

  • The <twohanded> note tag on the weapon is not present, or is otherwise not being parsed, maybe it's inside of another tag by mistake, or has been typo'd
  • The note tag is being parsed, but it's being removed by something else, this would be the weirdest compatibility problem I'd have encountered, as something would need to be specifically removing that value from every item after my plugin loaded, which would almost be malicious.
  • The note tag exists, but you're using an older save file from before this plugin was installed to test, meaning the items in your savegame's database are from before this note tag was present to be parsed.

If the script returns true:

  • Something might be removing your weapon temporarily during the attack sequence. This could be a state, or an action sequence. If at some point during the skill use you don't have a weapon, the system considers dual wielding barehands as dual wielding, so it would call your actor dual wielding.
    • If that was the case though, it wouldn't consider you as currently dual wielding via the previous script call except for in the middle of the attack sequence, meaning it should show false on that above script check during the idle part of battle.
  • There is a problem with the logic in my function that determines if someone is dual wielding, that isn't taking into account a two handed weapon. That's be a major bug, and it'd be weird if no one had noticed it until now, but could be possible.

For transparency sake, I haven't tried to recreate this problem yet, as I had recently fully reinstalled windows and haven't set up my test environment yet. If the second option above is true, I should be able to easily reproduce the problem, though.

Anyways, put the above script into the console and see what it gives out, I'll get my test environment going here and start seeing if I can reproduce the problem.

~Ramza

(1 edit)

So, i tested it out again, it came back as true.


Something else i should note is that during gameplay (where two-handed weapon removes offhand item, making it empty), it does behave as intended, HOWEVER, i am reminded of something, there was an instance where I've had the plugin act funny:

When i had first encountered the issue of the two-handed weapons attacking twice, i tried out my own solutions at first, that being i turned every character into a "Normal Slot-Type" character until they equipped a "Dual Wield" Weapon, where in which they'd become "Dual Wield Slot-Types" from a trait inside the respective weapon.


So i had it set it so "dual wielding" would be activated by equipping one weapon (basically I set it so the slot-type would change upon equipping said weapon) yet for whatever reason, when i had done so, the game did something really weird during combat, where my character was attacking with dual wielded seperate attacks (as intended), but after the first attack, it immediately auto corrected to a "Normal"-Slot Type character (MID-Battle, not like... after battle but MID BATTLE), any weapon with the dual wield slot type trait did not switch my character back to dual wielding, just kept  it in "Weapon; Attachment" rather than going to "Weapon; Weapon".

Additionally, when this oddity occurred, it did the "double" attack. One normal, one blank.

Okay, well that thing is unrelated to the other thing. That's actually a known issue with how dual wield attacks work in the system.

During the act of attacking, each weapon is unequipped for the attack of the other hand. That means if the only source of the dual wield trait on the actor is one of his weapons, when it is removed, he's no longer dual wielding. That causes all kinds of wonky behavior, and that's why you want the trait on either the actor, or his class, or a permanent state (from the yep passive states plugin).

Good news, I fixed the problem. The issue was from the new parameter in 2.74, equip only mode, which most people wouldn't be using. I'd messed up a check for if that parameter was enabled, which was causing the isCurrentlyDualWielding() function to return true without doing any checks to see if the actor was actually dual wielding.

The idea behind this check was that if out of battle, OR if the plugin parameter was enabled, it would only ever return the actual slotType of the actor (for which 0 is normal and 1 is dual wield type). This was to maintain compatibility with in combat plugins that also relied on knowing if the actor was dual wield type or not, like the YEP equip change in battle plugin.

But since I'd accidentally reversed this check, if the parameter was disabled, it would trigger that check, which was returning if the actor was dual wield type, and not if he was actively dual wielding, as expected. Which leads to your problem, where a two handed weapon was considered dual wielding. It likely also had the same problem with actors using a shield in their offhand, although I didn't test for that.

I have uploaded v2.75 which corrected this bug. Everything should work fine now. Thanks for the report, and sorry it took me a while to find the culprit, as I said, I didn't have my test environment running on my new windows install, so I was honestly trying to avoid doing that as much as I could by asking many questions from you about your specific use case.

~Ramza