Venno's small ASM hacks and notes

Oh whoops, that description is outdated. The current version just works off of bitfields now, and a unit can have up to 16 types (2 bytes worth of bitfield). To have a shield that protects against multiple types or a weapon that effects multiple types, just add the bits together - so types [0x3] + [0x4] + [0x5] would come out as 0x0038.

I know that Fire Shell has your weapon rank bonuses hack, but does it also have your passive enemy hit hack? It doesn’t seem like it. In the case where the weapon rank bonuses hack already exists, what do I have to do to install only the passive enemy hit hack?

Seems like I forgot to include the passive enemy hit thing in my latest revision of the weapon rank hack…that’s been fixed now, you can find it here. Install the “Rank + Enemy Hit” dmp over wherever you had the weapon rank code before.

I’ve encountered a minor problem when using the weapon lock hack.

I’m attempting to create a B rank lance that only halberdiers can use. After installing the hack and doing the necessary repointing to an array that begins with 0x3, I’ve observed the following behavior:

  • Units who are not halberdiers but can use lances cannot use the prf lance (desired).
  • Halberdiers can use the lance at any rank (undesired).
  • Enemy generic halberdiers don’t automatically level up their lance rank (undesired).

Observation 3 probably has to do with observation 2. It seems that right now, setting the indicator bit to 0x3 still creates a soft class lock instead of a hard class lock (unless I screwed something up).

The weapon lock hack is pretty rickety tbh…another thing I ought to rewrite.

I rewrote the hack in C++ because it was giving me trouble

I don’t think this is caused by the weapon lock hack? I think any enemy equipped with a weapon with a “Prf” or locked weapon won’t get the weapon level bonus to use them.

Yes, supposedly this is fixed by changing the bytes at 0x17ABC.

1 Like

Hey Venno, should this work as a passive boost item? Because I keep getting a dummy without any effect. How should I format it? (I also put 1 in the second to last byte)

Yes, it should work as long as the item is in the leveling up unit’s inventory and the item’s stat boost pointer is nonzero. The growth mod list begins nine bytes after the offset pointed to, so that you can also have normal stat boosts.

I’ve encountered a problem with the hard mode bonuses in Eliwood hard mode. Basically, the prep screen seems to disable them or prevent them from occurring in the first place.

The change was working fine until I got to the first prep screen, but then enemies weren’t getting any hard mode bonuses, even when I made it a ridiculously noticeable amount. When I removed the prep screen it worked fine and when I tested it on a vanilla rom I encountered the same issue. HHM enemies get hard mode bonuses just fine during prep screens, though, and enemies that are loaded after the prep screen in EHM get proper hard mode bonuses.

Would you be able to fix this? It pretty much ruins the notion of adding hard mode bonuses to EHM unless you remove every prep screen.

I’ll look into that, didn’t realize it was a problem.

Alright, try this out: Write 000000000000 at 0x799D6 too. That should solve it.

Thank you very much! It seems to be working perfectly.

Hey Venno, just some information:

  1. I don’t know if the growth boost hack works as a passive item boost. I’m sure it doesn’t boost stats passively, but I haven’t been able to verify if it boosts growths or not.
    It does work when the weapon is equipped, though.
    I wanted to have items similar to the zodiac ones from FE12.
    I’ve formatted it like this:


  1. The status screen and autocursor fix doesn’t work in Ephraim mode. The autocursor is fixed, but the status screen isn’t, it keeps showing Gilliam by default instead of the first deployed unit. This is probably due to Cam’s autocursor fix hack, I dunno.

Try setting Weapon Ability Byte 3 to 0x80 for those items, it needs to have that bit set for the code to consider it a passive stat boost item.

Hmmmh… I’ve done that, but it still doesn’t give the passive +2 Speed it should.

I just did a fresh install of the passive stat boost hack and it works fine for me - you may want to reinstall to make sure it was configured to the right address.
http://puu.sh/j57YU/5686dee555.png
http://puu.sh/j581c/fd00f24b39.png
Here’s Eirika receiving bonuses from two Vulneraries.

As for the status screen, IIRC that uses a different routine than the autocursor to determine the leader. Are you saying it works perfectly on Eirika mode?

1 Like

Fixed the passive boost problem. Working like a charm- thanks Venno!

There’s a small error in the FE8 version.

ldr     r4,[r7]            @Do this once do I don't need to keep doing it.
add        r4,#0x1C        @Explicitly advance to growths -Venno
ldr        r1,[r7,r4]

Should be

ldr     r4,[r7]            @Do this once do I don't need to keep doing it.
add        r4,#0x1C        @Explicitly advance to growths -Venno
ldr        r1,[r7,0x4]

@Venno

Edit:
Also

cmp     r0,#0x63
blo     Deallocate

Should be

cmp     r0,#0x63
ble     Deallocate

(Or technically what the unsigned equivalent of ble is, but blo is exclusive. Ble works here, in any case.)