Vesly's ASM / C

6 Likes

Fire Emblem Heroes character has a weapon description so long that it eats  up half of the gameplay screen. : r/gachagaming

12 Likes

Perhaps I am mistaken, but I believe Group AI and Canto+ AI conflict as they both write to 0x39C44?

Either way, this seems really easy to fix as you just need to port the “AIMoveDistance”, remembering to rename any constants, at the start of GroupAIDanger.asm where it would normally handle the vanilla routine anyway.

1 Like

Charge seems to hook 0x39C44 to update the tiles moved. Previously, the AI would never get a bonus from charge if you had installed group ai here. As far as I can see, it is totally unrelated to canto+. I’ve copied over the code from AiMoveDistance as you suggested. I’ve also made it not install the AggroIfInDanger part by default now. If enemies are in danger, you may or may not want them to charge at you. If you want this and you’re using a buildfile, install GroupAi after charge or comment out this line in your buildfile.

1 Like

The issue overwriting charge would cause, at least from my testing, is that charge was needed to write the amount of spaces moved for Canto+ AI, as such a feature doesn’t exist in vanilla. So an enemy would move with canto+, but their move count would never update, so they would have full movement after attacking/moving.

1 Like

I’ve made a PR to skill sys adding the following skills:

Draw Back: Unit moves 1 space away from target ally. Ally moves to unit’s previous space.
Sacrifice: Drains the user’s HP to restore the HP of another allied unit. It also cures status effects, with no HP cost to the user.
Ardent Sacrifice: Restores 10 HP to target, but drops user’s HP by 10.
Reciprocal Aid: User and target ally switch their current HP totals.

mGBA_FsZ0XLv0Ic

mGBA_4pFRGmgcgY

Thanks to @Mikey_Seregon for commissioning these skills and making them free to use.

22 Likes

These look AMAZING! Draw Back seems especially useful

1 Like

Question about Unit Expansion.

To NOT take over the link Arena and just have 51 extra slots rather than 97, do I just comment out line 17 in Installer.event? Or is there somethingelse I need to do?

Just that, I think

1 Like

Hey, I have found a circumstance where the fix is not applied with this patch. After going into the item menu and selecting “equip” or “discard” on any item, the glitchy portraits re-appear.

1 Like

If you find a few places where the graphics glitch out I can try to fix them all at once. There must be more instances where it pops up.

Yes. Other than the two instances that I told you of, I managed to find another 2 instances. One being when you “play” or “dance” with a dancer ring in your inventory (on the screen where you select which one to use). The other being when you attack with a ballista. I couldn’t find any more instances other than these.

1 Like

Shop ASMC

Just a quick asmc that will call a shop with whatever items you save via memory slots.

image

mGBA_fizs1F2vbw

Example event:

In case you want to randomize your shop. As usual, shops are limited to 20 items. If you are using shop expansion, this is limited to about 59 items, I believe.

Enjoy.

15 Likes

An addendum to my previous post:

I actually found a few more instances relating to the preparations screen and thought I ought to let you know.

  • When the character’s portrait appears in the background when viewing their items in the item menu.

  • When trading with another unit from the preparation screen.

  • When viewing the item list from the preparation screen.

  • When a character’s minimug appears when picking units from the preparation screen.

2 Likes

Looking at this now and I’m like a little kid at a candy store, hats off to all your dedication and creativity.

I have a question regarding the Cannot Die patch:

So does that mean if I install the cannot die patch the skillsys healing skills will not work? Or have I misunderstood? What of SkillSys will not work due to this ASM?

1 Like

Just install this hack after skillsys.

GetCharClassItemData

Here are a few ASMCs for getting data from the Character / Class / Item editors.

Slot 1 is the unitID / classID / itemID and slot 3 is the offset in the editor.

image

The selection box says +0x9 for affinity, so memory slot 3 holds 0x9. When the ASMC is called, it puts this value into memory slot C - eg. 2 in this case.

Enjoy.

10 Likes

Multiscale

Swarm

Flank / Infiltrator

The % more damage is configurable for swarm / flanking.

now a PR for skillsys master.

PS. I need icons for the following skills:

DrawBackID
SacrificeID
ArdentSacrificeID
ReciprocalAidID
MultiscaleID
FlankID
SwarmID

17 Likes

Draw Back:
DrawBack
Sacrifice
Sacrifice
Multiscale:
Multiscale
Flank:
Flank

8 Likes

I gotchu with Draw Back:
DrawBack

I had made this Icon a while ago. I made it with the same style as the other movement skills, while having the imagery be the same as in Engage.

Also, if you made an edit to Flank/Infiltrator and made it give a guaranteed follow-up instead of a +50% damage, then you can recreate Pincer Attack from Engage

Or you could just call THIS skill Pincer Attack, since it’s so similar. Either way, I have an Icon for that too (2 variants):
image image

6 Likes