Vesly's ASM

AoE rotations

Added the ability to rotate the area of effect. Also made it preview range display while hovering over a command.

11 Likes

Now do frontals : D

(Basically 1 range aoe with forced rotation)

Nice! This is huge!

These are cool i guess but i don’t really want to make them, sorry. I think you might be able to change it to be frontals only, but i think it’d be annoying to make it play nicely with how i’ve set it up as a config option.

On another note, I made bracketed level ups! Pending feedback from pokemblem playtesters, I might merge it with skillsys github.

Eg. Units with Str 3 levels below average will always gain that stat. And units with +5 Str above average will never gain the stat. (These numbers are configurable.)

3 Likes

Dmg Calc (Spreadsheet)

Given Char, Class, and Item for each side, this calculates the damage dealt.

image image image

Most importantly, you can link your tables to it so that it will automatically update whenever you open the document.

Auto updating

You may need to adjust your macro security to have it automatically update from your other spreadsheets.

You can also paste in your own definitions (I’m assuming they aren’t already CSVs lol).

image

Of course, it is missing stuff like Support Bonuses and Skills, but whatever lol.

I will be using this to quickly simulate battles without having to play the game! Maybe someone else will find it useful, too. Enjoy!

11 Likes

I calculate I can beat 500 geese in a fist fight (they have no fists) and I didn’t even need a calculator to work that out.

4 Likes

Draw Sprite Animation

  • Displays an animation up to 64x64 pixels & 16 colours per frame
  • Callable as an ASMC - simply give it map coordinates
  • Can occur during battles (when regular animations are turned off)
  • Also displays damage dealt during battle (with anims off)
  • Usable for my cool AoE hack!

Original art used:
Spell animation spritesheets | OpenGameArt.org
More Pixelated Attack/Hit Animations | OpenGameArt.org
Credits: Viktor Hahn

ezgif.com-gif-maker (12)

Formatted some defaults to use, as I know most people are lazy and won’t bother making their own.

JTHwPQL9km

3wx5TyKilY

VbzI5QSc31

Edit: It now works properly against the edges of the map

Another edit:
Default animations are now exactly 28 frames, which is the length that vanilla pauses here. Some of the above gifs might be 30-40 frames long animations, which felt off to people.

Thanks to 7743’s efforts, this is now an febuilder patch! Enjoy.

ezgif.com-gif-maker (13)

17 Likes

I have added the functionality for #1 now - you can set a text id per table entry, rather than calling everything “use” or “special”.

I think for #2, you should just use Teq’s UNCR patch. If you use SET_ACTIVE 0, then UNCR((-1), 0x42), then they will be able to act again. I don’t think #3 is necessary. I think that those sorts of usability routines are better left up to the user who knows asm than to give them just a couple of options like only being able to use it at low hp or with a certain wexp level. But maybe in the future it could be added, I guess.

I’ve also now hooked vanilla to prevent text from showing up as greyed out if it was on an item that you couldn’t use in the item menu. This does not conflict with skill systems, but for the two people who use the EquippableAccessories hack, it probably conflicts with that.

qOv2L1w0kr

3 Likes

I have a bug to report.
If I select Use(Sword) in ItemSpecialEffect when the item’s durability is 1, the event is not executed and the item freezes.
Looking at it in the debugger, I think there is something wrong with the timing of clearing the item, as the problem occurs after exiting this routine.

1 Like

Thanks. Fixed this & added restrictions by character, class, and hp %. Eg. you must be 66% hp or lower to use the item.

can you put a readme on how to use the asm, that’d be really helpful

What are you having trouble with?

modular summoning

Edit the Installer.event to your preferences and then use “Insert EA”.

You must also add an entry to the unit menu, as shown in line 9. With febuilder, this is under Advanced → Menus.

Line 16, 18, and 20 are table entries for Eirika, Seth, and ONeil. This determines who can summon. You could do this by unit, class, level, etc.

Line 41 is Eirika’s summon unit group. This is the same data as febuilder’s unit placer.

1 Like

Character Select

By Vesly & Snek

mGBA_9eDweuz7qF

Given unit IDs of up to 5 characters, display them as options in a fancy menu.
If the menu is exited without choosing a character, it returns 0x100 (#256) to memory slot C. If you select a character, it charges you that much gold and returns the unit ID that you selected to memory slot C.

On its own, the menu doesn’t load or delete characters, so you’ll have to have an event handle it. Eg.

Summary
LOAD1 0x1 UnitsToChooseFrom // eg. Seth, Amelia, Ross, Colm, Neimi 
ENUN 
SelectCharacter(Seth, Amelia, Ross, Colm, Neimi, 3000, 500, 1500, 1000, 0) 

// Delete characters that were not selected. 
BEQ 0x9000 sC s1 
DISA Seth
LABEL 0x9000 

BEQ 0x9001 sC s2 
DISA Amelia 
LABEL 0x9001 

BEQ 0x9002 sC s3 
DISA Ross
LABEL 0x9002 

BEQ 0x9003 sC s4
DISA Colm 
LABEL 0x9003 

BEQ 0x9004 sC s5
DISA Neimi
LABEL 0x9004 

I did this for flexibility, in case you don’t want to delete all characters that were not selected. Maybe I’ll write a little ASMC to simply delete the characters that weren’t chosen. But for right now, this is fine.

24 Likes

They BLINK??? Unusable

3 Likes

Wowcers :eyes: like wow. This is honestly a neat thing. though it looks super fun to look around with it. even fun to hire Units too.

1 Like

Map Camera Preview

this is very simple asm, but why not
mGBA_1rnZv3WmJV

It’s literally just 5 ASMCs in a row that sends the camera to coordinates on the screen.

Why not use CAM1? Because this gets the corner coordinates for you.

Simply CALL ExampleCameraEvent in your events to use it. If you want to show the map every chapter, this makes your life just a tad easier.

image

I tried investigating into camera speed, but I wasn’t able to figure anything out, sorry. If you want slow camera movement, I think the only way is to load an invisible unit that can walk through walls and to set EVBIT_T 9 (Follow moving units).

2 Likes

Thanks to @GodsPetTurtle pointing out that AoE doesn’t grant exp, I’ve now made it do so!

mGBA_uaXmqGuFnN

I also fixed that bug from the GiveExp febuilder patch where a unit would disappear for a few frames.

It works by adding an ASMC to the animation event for AoE. This way, it doesn’t edit any of the code for the febuilder patch, which is convenient.
image

The installer for this ASMC is called AoE_Exp_Installer.event.

Edit: Healing no longer grants exp per enemy in range. It now grants 10 exp per ally healed.

4 Likes

Promote Unit

mGBA_fRIgXLapYv

This adds a unit menu command called “promote” which does just that. It displays conditionally based on the list. Here I’ve made it so everyone except pidgeotto may promote.

PromotionMenuList:
// Unit Class RequiredLevel ChapterID BoolException 0 Flag 
BYTE 0 0 20 0xFF 	False 0 ; SHORT 0 
// Anyone can promote at level 20 
BYTE Eirika 0 0 0xFF 	True 0 ; SHORT AmeliaDeathFlag 
// Except Eirika cannot promote if Amelia has died. 
BYTE 0 Archer 12 ScorchedSandCh 0 0; SHORT 0 
// But archers can promote at level 12+ if in chapter Scorched Sand or later, including Eirika Archer. 
WORD 0xFFFFFFFF 0xFFFFFFFF // Terminator. 

(Please put your most generic cases at the top of the list.)

This way you can prevent main characters from promoting this way, if you’d like, or only allow certain classes to promote this way.

Enjoy!

12 Likes