FE_Builder_GBA -- If you have any questions, attach report7z

How would I go about adding in new affinities? I can extend the data and all but how do I add in a additional icon and name for the spaces I added in?

Please read this thread.

1 Like

Thanks!!

I created an event to load a unit on turn 3 that had left the map a turn earlierï»żï»żï»żï»żï»ż, as well as to play a cutscene. The unit loads, and the cutscene plays, but then he disappears. Help?

The Event:ï»żï»żï»żï»żï»ż

Well, your error must be caused by the command (LOAD 2) , try to use the command with (LOAD 1) for join units to your player team, good luck :smile:

Hello, is there a way to add more “extra” unlockable units? Like Caellach and Lyon? I just used the Febuilder tool to add another Unit in the Caellach status list, while it modifies Caellach and his inventory, it does not load the other unit.
So maybe could yo add an extend list option to add extra flags for new units to be unclocked?

The Extra Unit is implemented differently in FE8U and FE8J.
Probably, if it is FE8U, I think that the list can be expanded.
I have implemented the expansion button.
However, I did not do the operation test because the test takes time.
Please let me know if there is a problem.

1 Like

Just checked, It did not work, not sure if the flag was wrong on my end, I used 8B, I rather Settled on using normal unit loading for additional characters.

Please send report7z.

is it possible to change the event where glen dies i cant find it
and another thing that talk at castle frelia its not in the text editor
bye

Possible.
There are also remodeled works where glen participates in the party.
The glen UnitID is 0x25. Because it is within 0x45, you can add him to the party.
In vanilla, he has not participated in any party.
He dies at the event.
At this time, he has not joined the party.
The event he fights with Valter is ch11’s EndEvent.
If you’re not sure, play the game and check the events in the Debugger.


There is a issue with the spell animation editor in FEBuilder. I have not edited the rom at all and tested previous backup roms which all seems to have that thing now, so it does not depend on on the roms.

Imported spells still works but when you export them back, they become screenstretched and the frames are half the canvas. Before that update in FEBuilder, there was no problem with it.

Please send report7z.

This bug has been fixed in the latest version.
Thank you for bug report.

1 Like

In the latest version, myooon correction can be applied to mid2agb.
If the sound is distorted by MOD or BEND, turn it ON.

4 Likes

Don’t know if this is the correct way to post this, but I want to report a bug. I’ve been using the skill system version 2019-04-04 in my hack without any problems, but upon updating it to the latest version 2019-07-08, all the status ailments won’t expire by themselves. The counter will hit 0, but units will still suffer from it, and the only way to remove them is by using items or the restore staff.

1 Like

This was an issue with skill system that I caused, I have fixed it:


https://github.com/sme23/SkillSystem_FE8/blob/DriveSkills/Engine%20Hacks/SkillSystem/Other%20Skills/Boon.dmp

I assume 7743 updating just a single file in the febuilder patch version is simpler than updating the entire thing, so this fix can probably be added quickly.

1 Like

Because the file size has increased, I cannot make a patch.
If make a simple patch, the data behind it will be destroyed.

old boon.dmp 52 byte
new boon.dmp 68 bytes

Maybe we should update SkillSystems
?
However, I think it is just after “Str / Mag Split” is implemented.
In most cases, after a major fix, it often becomes unstable, so I want to see a little until it stabilizes.

The easiest way seems to be to disable the boon hook.
hmm
 , to me, the routine hook itself seems dangerous.

//Boon and i guess anything else that may want to mess with status healing in the future
ORG $188F6
BYTE $40 $B4
callHack_r6(Boon)

callHack_r6 consumes 12 bytes.
In other words, this hook consumes 2 + 12 = 14 bytes.

080188F4 D004   beq #0x8018900
    080188F6 0918   lsr r0 ,r3 ,#0x4 <<<<< Hook Point
    080188F8 3801   sub r0, #0x1
    080188FA 0100   lsl r0 ,r0 ,#0x4
    080188FC 4310   orr r0 ,r2
    080188FE 7008   strb r0, [r1, #0x0]
08018900 7809   ldrb r1, [r1, #0x0]

I think that the margin available is only 2 * 5 = 10 bytes.
Will your hook destroy 0x08018900?
In that case, does “080188F4 D004 beq #0x8018900” work correctly?

Looking at the disassembly of the boon hook, it still seems to be a problem.

080188F4 D004   BEQ #0x8018900  >> 
    080188F6 B440   PUSH {r6}
    080188F8 4E01   LDR r6, [PC, #0x4] # pointer:08018900 -> 08B53BE9
    080188FA F0B8 FFED   BL 0x080D18D8   //_call_via_r6
    080188FE E001   B 0x8018904
08018900 3BE9 08B5   //LDRDATA  << !?
08018904 4008   AND r0 ,r1
08018906 2800   CMP r0, #0x0
08018908 D108   BNE #0x801891C
1 Like

Wow.

I have absolutely no idea what you two are talking about lol

BEQ #0x8018900 is preceded by a check for status type 0xA, which is not a valid status (at least in FE8) and does absolutely nothing even when applied; in practice, that will never branch and as such overwriting its destination will not have any side effects.
Boon’s function does return over the second half of the literal for the function location. However, this miraculously seems not to break anything besides making the rest of the function inert and returning one function later will cause all statuses to be healed in a single turn regardless of remaining turns. Since the pointer to the function’s location can be variable, this may not always function properly. The solution to this was as simple as relocating one more instruction to Boon’s routine and pushing the return point back by 1 instruction and changing which register is used to return.
The corrected function is now an additional 2 bytes in length:


https://github.com/sme23/SkillSystem_FE8/blob/DriveSkills/Engine%20Hacks/SkillSystem/Other%20Skills/Boon.dmp