[FE7] ranged weapon modules

@Icecube
If I put a lance attribute on a sword, and gave it the reversing triangle effect; would I essentially be getting a sword that’s twice as good vs axes, neutral vs lances, and terrible vs swords?(Since WTA is doubled for the triangle effect).

Actually reaver series does NOT change your weapon attribute. It doubles WTA and inverse them, so you get -2 weapon advantage instead of 1, and -30 hit instead of 15. So, assuming your case, you will get a lance acting like a lancereaver.

@Arch
Added new module to fix them. Now transformed weapon can gives exp or not (when the weapon is changed. For example, Light Brand can be made to gives weapon exp only on sword attack, since it’s ranged attack is light magic. Note that if Light Brand is given weapon exp during magic attack, the exp gained is sword exp, not Light exp.).

Thanks for showing the glitch.

@Icecube
Yeah I know, I think you misread what I put.
Sword with Lance attributes not Lance with Sword attributes

But cool my theory was correct, this should prove interesting…

Applied the new modules - works perfectly! This also leaves open the possibility for dualWEXP. Possibly a Halberd line of axes that also give lance EXP, or something to that effect. Always better to have more options than fewer.

@Dancer_A
Oops… Sorry for misreading it then.

Updated:
Add weapon range patch to give full functionality of 0x11 to 0xFF range.
Combine Always ranged with Blessing of Eight General.

That’s pretty slick, dude. Keep up the good work!

I dunno how open you are to suggestions or ideas, but I had a thought that seems right up your alley.

A hack that would allow penalties for weapons when used at a certain range. Making most standard bows 2-3 range with a penalty to Hit/Dmg at 3, with longbows 2-5 with a penalty at 4 and a doubled penalty at 5, as an example of the concept.

Will the penalty affect your accuracy rate and critical rate?

That was the idea. Possibly damage as well? Or at least leaving the option open to that.

@Arch
The modules have been made (joined with spell weapon modules). The table is on 1008C00 (4 byte).
Each weapon has their own maximum non penalty range and base penalty. Total penalty is counted by multiplying penalty with level difference. Note that any penalty less than minimum range or more than maximum range will not affect the weapon. Same link as above.

Finally got to play with this today.

Fuckin’ perfect.

If you don’t mind, could you post the source code for the ranged penalty(and everything else would be nice as well). There’s a lot of information about how the game calculates range that I feel like your code incorporates that other, such as myself, could put to more good use.

Trying out the Hand Axe fix and it works great, except for one thing - Ninian using the Dance command plays Nils’s Bard animation instead of the Dancer one. Actual dancing rings like Thor’s Ire don’t have this issue and show the proper animation.

The installation of this in FireShell doesn’t do the half-strength thing for Light Brand, even if I set it to “If Ranged, Set to Light Magic, Crit 0” option.
Edit: Also, it still does magic damage at 1 range. I guess I’ll avoid using the light brand for now, but this seems prohibitive in the future…

Actually the properties of “if magic” is the one handling half str (at the time, I thought that the only weapon with halved str is only magic weapon, so I’m using the original method, clearing the bit of magic weapon properties).
Assuming that BE2EF8 has been changed into 30 2D BE 08, set Light Brand into 0xF6 (if ranged, if magic, transform into Light Magic, and crit 0).

Ah, okay. seems a bit unintuitive.

I’ve been trying to use the Hand Axe fix module (packaged in Fire Shell) and I’m extremely confused. I’ve set an axe (suppose it’s the Emblem Axe) to have 1-2 range; what do I actually need to do in order to get it to work properly in-game? I’ve been playing around with adjusting some of the values in the included modules and the most that I’ve done is to get an attacking character to freeze before the battle animation even comes up.

EDIT: In my eagerness to mess around with things, I seem to have fucked myself, because now any battle will cause the game to hang even if animations are off.

I’m loving these modules right now! Thanks, Icecube!

I did notice something, though. It seems like applying Spell Weapon B Module Instructions 7 and 8 (SPA 50/51.txt for use of the Range Penalty Module) disables the Negate Cricitals ability from Iron Runes and similar items - making that ability useless in the game. Was this unintentional? If so, has anyone found a way around this small issue?