Could you make a version where you have to use the runewright Severance on the sword so that all light/heavy attacks, whril and rend have +0.5 range? I think Severance makes whril and rend too strong and other attacks are not very useful, but 1.1 range for all attacks still seems too strong to me, especially if it doesn't require any sword upgrades. Could you edit the Severance to only extend each sword attack by +0.5 range?
I managed to make this work on Next Gen W3EER or Redux Enhanced Version.
1. You need to find the Combat.ws files (PLEASE MAKE SURE TO BACKUP FIRST!)
2. Then find this line in the file, which since this file is from W3EER, you can find this line, it's different from the description in OP's advice. event OnPreAttackEvent(animEventName : name, animEventType : EAnimationEventType, data : CPreAttackEventData, animInfo : SAnimationEventAnimInfo )
4. Save, load up your game and test out the extended range on all of your swords regardless of the Runes you have installed! :)
Here's an image of my edited combat.ws from W3EER on the left, and the script I downloaded from the mod on the right.
Also note the code given in the description is WRONG. It actually shows up with an event call error. However, the code in the downloadable file is correct. That's what I modified into the combat.ws on my end.
Another note, if you already have a bunch of files editing your combat.ws, you will have to open up your FINAL combat.ws (right click on the combat.ws on the right hand side, it will give you an option to 'open merged file', and then do the same instructions from above.)
Edit 2 : Thanks for this OP, I was searching for something like this, can't believe there's only one person that's made such a mod.
After playing a few days I realized something weird.
I was getting the notification for extended range by visuals in the game, but my rend was for sure not hitting at an extended range. Which is ironic since I am a rend only player for the most part lol.
Anyways I updated the mod to NOT have extended range no normal attacks, but to have extended rend and whirl on EVERY sword, not even needing Prolongation.
Sorry to bother you, I modified the text in combat.ws as you said (I opened the link you provided and copied them) but it didn't work, can you give me some advice?
my mistake, its a test mod for my own use, i try to figure out the range, only change the date.rangeName seems no effect in game, you need to combine data.rangeName = 'runeword2_heavy'; and weaponEntity.PlayEffectSingle('heavy_trail_extended_fx');
and I search all .ws script file but couldn't found the description for runeword range, in r4play.ws there has attackLength = 1.9f; the actual range may link to entity instead of date, i will do more testiing
just like this, I tested couple hours, the range increase works, can cut down two foe with one blow, but not remarkable feel the difference between 1.1 and 1.9? I think its due to game animation
not very sure, I checked in r4play.ws if ( actionType == EBAT_SpecialAttack_Light || actionType == EBAT_SpecialAttack_Heavy ) { attackLength = 1.9f; attackAngle= 90.f; }
22 comments
1. You need to find the Combat.ws files (PLEASE MAKE SURE TO BACKUP FIRST!)
2. Then find this line in the file, which since this file is from W3EER, you can find this line, it's different from the description in OP's advice.
event OnPreAttackEvent(animEventName : name, animEventType : EAnimationEventType, data : CPreAttackEventData, animInfo : SAnimationEventAnimInfo )
3. Then underneath it paste this :
if((W3PlayerWitcher)parent)
{
if(data.attackName == 'attack_heavy_special')
{
data.rangeName = 'runeword2_heavy';
weaponEntity = thePlayer.inv.GetItemEntityUnsafe(thePlayer.inv.GetItemFromSlot(data.weaponSlot));
weaponEntity.PlayEffectSingle('heavy_trail_extended_fx');
}
else if(data.attackName == 'attack_light_special')
{
data.rangeName = 'runeword2_light';
weaponEntity = thePlayer.inv.GetItemEntityUnsafe(thePlayer.inv.GetItemFromSlot(data.weaponSlot));
weaponEntity.PlayEffectSingle('light_trail_extended_fx');
}
else if(data.attackName == 'attack_light')
{
data.rangeName = 'runeword2_light';
weaponEntity = thePlayer.inv.GetItemEntityUnsafe(thePlayer.inv.GetItemFromSlot(data.weaponSlot));
weaponEntity.PlayEffectSingle('light_trail_extended_fx');
}
else if(data.attackName == 'attack_heavy')
{
data.rangeName = 'runeword2_heavy';
weaponEntity = thePlayer.inv.GetItemEntityUnsafe(thePlayer.inv.GetItemFromSlot(data.weaponSlot));
weaponEntity.PlayEffectSingle('heavy_trail_extended_fx');
}
}
4. Save, load up your game and test out the extended range on all of your swords regardless of the Runes you have installed! :)
Here's an image of my edited combat.ws from W3EER on the left, and the script I downloaded from the mod on the right.
Also note the code given in the description is WRONG. It actually shows up with an event call error. However, the code in the downloadable file is correct. That's what I modified into the combat.ws on my end.
Another note, if you already have a bunch of files editing your combat.ws, you will have to open up your FINAL combat.ws (right click on the combat.ws on the right hand side, it will give you an option to 'open merged file', and then do the same instructions from above.)
Edit 2 : Thanks for this OP, I was searching for something like this, can't believe there's only one person that's made such a mod.
I was getting the notification for extended range by visuals in the game, but my rend was for sure not hitting at an extended range. Which is ironic since I am a rend only player for the most part lol.
Anyways I updated the mod to NOT have extended range no normal attacks, but to have extended rend and whirl on EVERY sword, not even needing Prolongation.
https://pastebin.com/G72GgVLM
How to add range for counter attack's slash with heavy slash effect??
or
how to make heavy attack only horizontal combo?
thanks :)
{
data.rangeName = 'runeword2_heavy';
weapjavascript-event-stripped thePlayer.inv.GetItemEntityUnsafe(thePlayer.inv.GetItemFromSlot(data.weaponSlot));
weaponEntity.PlayEffectSingle('heavy_trail_extended_fx');
}
{
if(data.attackName == 'attack_heavy_special')
{
data.rangeName = 'runeword2_heavy';
data.rangeName = 'runeword2_light';
weaponEntity = thePlayer.inv.GetItemEntityUnsafe(thePlayer.inv.GetItemFromSlot(data.weaponSlot));
weaponEntity.PlayEffectSingle('heavy_trail_extended_fx');
weaponEntity.PlayEffectSingle('light_trail_extended_fx');
}
else if(data.attackName == 'attack_light_special')
{
data.rangeName = 'runeword2_heavy';
weaponEntity = thePlayer.inv.GetItemEntityUnsafe(thePlayer.inv.GetItemFromSlot(data.weaponSlot));
weaponEntity.PlayEffectSingle('light_trail_extended_fx');
}
???else if(data.attackName == 'attack_light')
{
data.rangeName = 'runeword2_heavy';
weaponEntity = thePlayer.inv.GetItemEntityUnsafe(thePlayer.inv.GetItemFromSlot(data.weaponSlot));
weaponEntity.PlayEffectSingle('light_trail_extended_fx');
}
else if(data.attackName == 'attack_heavy')
{
data.rangeName = 'runeword2_heavy';
weaponEntity = thePlayer.inv.GetItemEntityUnsafe(thePlayer.inv.GetItemFromSlot(data.weaponSlot));
weaponEntity.PlayEffectSingle('light_trail_extended_fx');
}
}
red font parts are different as your description in your mod file. so I have a question.
1. I have to delete data.rangeName = 'runeword2_heavy'; or data.rangeName = 'runeword2_light'; in first red part?
2. 'runword2_heavy is 1.9f range?
you need to combine data.rangeName = 'runeword2_heavy'; and weaponEntity.PlayEffectSingle('heavy_trail_extended_fx');
and I search all .ws script file but couldn't found the description for runeword range,
in r4play.ws there has attackLength = 1.9f; the actual range may link to entity instead of date, i will do more testiing
{
data.rangeName = 'runeword2_heavy';
weapjavascript-event-stripped thePlayer.inv.GetItemEntityUnsafe(thePlayer.inv.GetItemFromSlot(data.weaponSlot));
weaponEntity.PlayEffectSingle('heavy_trail_extended_fx');
}
else if(data.attackName == 'attack_heavy')
{
data.rangeName = 'runeword2_heavy';
weapjavascript-event-stripped thePlayer.inv.GetItemEntityUnsafe(thePlayer.inv.GetItemFromSlot(data.weaponSlot));
weaponEntity.PlayEffectSingle('heavy_trail_extended_fx');
}
just like this, I tested couple hours, the range increase works, can cut down two foe with one blow, but not remarkable feel the difference between 1.1 and 1.9? I think its due to game animation
if ( actionType == EBAT_SpecialAttack_Light || actionType == EBAT_SpecialAttack_Heavy )
{
attackLength = 1.9f;
attackAngle= 90.f;
}
seems Whirl and Rend are use same 1.9f