[FE8] Skill System v1.0 - 254 skills done, more on the way

Honestly the best way around this is to just move classes around on the Class Table so that all of your player classes appear before 7F. Correct me if I’m wrong, but I don’t think you can go past that point, even with the patch. Enemies don’t care though.

1 Like

The patch let you go past 7F. I used it in the patches I’ve released for my own hacks.

1 Like

So I was messing around with this and I found a pretty strange bug. Not sure if this is already known or not, but somehow player units had randomly been taking stat debuffs at the start of each chapter and I wasn’t entirely sure why. After messing around with the chapter events I found that for whatever reason, the number of units placed in the initial enemy list was causing this. For example

[details=Chapter 6 Events]label32:
UNIT 0x80 0x4E 0x0 0x3D [14,9] 0b 0x0 0x0 0x0 [0x14,0x0,0x0,0x0] [0x0,0x3,0x0,0x0]
UNIT 0x80 0x4E 0x0 0x3D [15,7] 0b 0x0 0x0 0x0 [0x1C,0x14,0x0,0x0] [0x0,0x3,0x0,0x0]
UNIT 0x80 0x3F 0x0 0x35 [16,9] 0b 0x0 0x0 0x0 [0x22,0x0,0x0,0x0] [0x0,0x3,0x0,0x0]
UNIT 0x80 0x25 0x0 0x35 [18,5] 0b 0x0 0x0 0x0 [0x39,0x0,0x0,0x0] [0x0,0x3,0x0,0x0]
UNIT 0x80 0x4E 0x0 0x35 [14,11] 0b 0x0 0x0 0x0 [0x14,0x0,0x0,0x0] [0x0,0x3,0x0,0x0]
UNIT 0x80 0xF 0x0 0x35 [14,14] 0b 0x0 0x0 0x0 [0x1,0x0,0x0,0x0] [0x0,0x3,0x0,0x0]
UNIT 0x80 0x9 0x0 0x35 [16,12] 0b 0x0 0x0 0x0 [0x14,0x0,0x0,0x0] [0x0,0x3,0x0,0x0]
UNIT 0x80 0x9 0x0 0x35 [16,13] 0b 0x0 0x0 0x0 [0x14,0x0,0x0,0x0] [0x0,0x3,0x0,0x0]
UNIT 0x80 0x45 0x0 0x35 [18,9] 0b 0x0 0x0 0x0 [0x4C,0x0,0x0,0x0] [0x0,0x3,0x0,0x0]
UNIT 0x80 0x2D 0x0 0x35 [18,14] 0b 0x0 0x0 0x0 [0x45,0x0,0x0,0x0] [0x0,0x3,0x0,0x0]
UNIT 0x80 0x3F 0x0 0x35 [15,15] 0b 0x0 0x0 0x0 [0x20,0x0,0x0,0x0] [0x0,0x3,0x0,0x0]
UNIT 0x80 0xF 0x0 0x35 [15,10] 10b 0x0 0x0 0x0 [0x5,0x0,0x0,0x0] [0x0,0x3,0x0,0x0]
UNIT 0x7F 0x5 0x0 0x3D [8,1] 0b 0x0 0x0 0x0 [0x5,0x0,0x0,0x0] [0x0,0x12,0x0,0x0]
UNIT 0x80 0x5 0x0 0x35 [7,1] 0b 0x0 0x0 0x0 [0x1,0x0,0x0,0x0] [0x0,0x12,0x0,0x0]
UNIT 0x80 0x5 0x0 0x35 [11,0] 0b 0x0 0x0 0x0 [0x14,0x0,0x0,0x0] [0x0,0x12,0x0,0x0]
UNIT 0x80 0x4B 0x0 0x35 [10,0] 10b 0x0 0x0 0x0 [0x4C,0x6D,0x0,0x0] [0x0,0x12,0x0,0x0]
UNIT 0xB0 0x58 0x0 0xD [27,4] 0b 0x0 0x0 0x0 [0xAF,0x0,0x0,0x0] [0x0,0x0,0x0,0x0]
UNIT 0x4B 0x2D 0x0 0x54 [20,5] 0b 0x0 0x0 0x0 [0x45,0x0,0x0,0x0] [0x3,0x3,0x0,0x0]
UNIT 0x80 0x19 0x0 0x35 [12,4] 0b 0x0 0x0 0x0 [0x2D,0x0,0x0,0x0] [0x0,0x3,0x0,0x0]
UNIT 0xF9 0x6E 0x0 0xB [26,12] 0b 0x0 0x0 0x0 [0x0,0x0,0x0,0x0] [0x6,0x3,0x0,0x0]
UNIT 0xFA 0x71 0x0 0xB [25,13] 0b 0x0 0x0 0x0 [0x0,0x0,0x0,0x0] [0x6,0x3,0x60,0x0]
UNIT 0xFB 0x72 0x0 0xB [25,12] 0b 0x0 0x0 0x0 [0x0,0x0,0x0,0x0] [0x6,0x3,0x0,0x0]
UNIT 0x80 0x4E 0x0 0x3D [14,16] 0b 0x0 0x0 0x0 [0x14,0x0,0x0,0x0] [0x0,0x0,0x0,0x0]
UNIT 0x80 0x4E 0x0 0x3D [20,7] 0b 0x0 0x0 0x0 [0x14,0x0,0x0,0x0] [0x0,0x3,0x0,0x0]
UNIT 0x80 0x9 0x0 0x35 [21,13] 0b 0x0 0x0 0x0 [0x1B,0x1C,0x0,0x0] [0x0,0x3,0x0,0x0]
UNIT 0x80 0x4E 0x0 0x3D [19,13] 0b 0x0 0x0 0x0 [0x14,0x0,0x0,0x0] [0x0,0x3,0x0,0x0]
UNIT 0x80 0x3F 0x0 0x2D [13,6] 10b 0x0 0x0 0x0 [0x1F,0x25,0x0,0x0] [0x0,0x3,0x0,0x0]
UNIT[/details]
causes things like this

but by loading the same enemies, with some of them as Turn 1 reinforcements, everything works fine.

For the record, the only things I have done to my file, beyond relatively small event changes (adding/re-positioning enemies and stuff like that) are adding the Free Range patch (correctly displays non-default attack ranges) and Nintenlord’s AS patch. I also added several learnsets to skill_lists.event, though as far as I can tell they work perfectly fine and this is somehow tied to enemy unit lists.

1 Like

This has been found a week ago or so on the discord. It is a bug caused by the debuff system that happens when you load more than 16 units at once. You want to separate your larger unit groups into smaller ones of 16 max each to work around it. As to why it happens, idunno we’ll have to wait for colorz (made the debuff stuff) to look at it.

I plan on using this in my next project because this just looks so cool, but I want to test it in a clean FE8 ROM.[quote=“circleseverywhere, post:128, topic:2312”]
Lucky for you @MarkyJoe1990 did that for you:
[/quote]
I downloaded this to find about 1200 unorganized files after decompressing it. It seems to be every single file used to create this.[quote=“circleseverywhere, post:1, topic:2312”]
free to use and modify
[/quote]
All right. Makes sense for modification.

I sift through the files to find the UPS patch, which seems to be the only thing that could be the aforementioned easy patch.(?)
I apply it to a clean FE8 ROM and go to the prologue. Seth’s health bar works fine, so something must have happened, but scrolling over a skill icon with he info bar causes it to crash, and moving to the 4th screen after selecting a unit causes a crash. Also, it doesn’t seem that any skills activate.
I’m clearly doing something wrong. This looks really neat, but I’m just confused now.

What I’m trying to ask is how would one go about applying this into a clean ROM?

@Snakey1 rename your ROM FE8_clean and put it in the skills system folder. Run the makehack command file and you should be good to go.

So I’m not sure if this has been brought up (I imagine it has, but there’s not a list of known issues anywhere that I can see), but this hack has a tendency to generate a bit of lag every now and again from what I can tell. Of course, it’s kind of to be expected with something like this, but when I had progressed to Chapter 9A, the game became entirely unplayable.

Running my emulator at around 10x normal speed, it would still take literal seconds for me to select one single tile when trying to move a unit, literal seconds when selecting items in the menu, and literal seconds to transition into battle. Interestingly enough, whenever I selected enemy units, they didn’t seem to have this issue, as their movement range came up instantaneously as usual, and could move around at normal speed on enemy phase. I’m tempted to say that part of this is because of the number of enemies I have initially deployed on this map (~40ish), yet I had a similar amount on Chapter 8 which while laggy, was well within reason for a system overhaul this massive. Strangely, I also suffered similar lag in Chapter 6 without Fog of War, but by reapplying it the lag all but vanished in its entirety. I haven’t had as much time to mess around with this as I would have liked, but if anyone knows of a good solution to this, it would be appreciated.

Hmm… I seem to run into a couple error messages in the command prompt, and no changes are made.

‘∩╗┐cd’ is not recognized as an internal or external command,
operable program or batch file.

C:.…\Skill Test\Stuff>cd “C:.…\Skill Test\Stuff\Tables”
The system cannot find the path specified.

BIT ZIPPER WHY?
Bit Zipper decided to remove all folders in the file, so I had 1200 files floating around one file. 7 Zip handled it much better.
Anyway, I got it working. The command prompt kept giving me problems, so I assembled what looked like the master event file.
Thanks for making this @circleseverywhere. I would have never dreamed of anything like this before I saw this! You truly are a wizard.

Update: Some of you are probably familiar with my FE8 Display Growths hack. I am proud to report that (with much wailing and gnashing of teeth) it has now been implemented into the Modular Stat Screen (and by extension, the skill system) and is better than ever before.

Features:

  • Press Select to toggle between displaying stats and growths on the Personal Data page. Only works for player characters.

  • Stat names reflect the growth of that stat by color. More importantly, you’re no longer restricted to the regular text colors (grey, white, blue, yellow, and glowy-green). Two unused palette banks are now free, for a total of 10 unique options, which can also be changed (of course, you’re still welcome to use the old ones if you so like). Once again, this is also only for player units. Credit to @L95 for the pretty colors. NOTE: Debuffs use the last color.

  • Fixed growths mode! This is toggleable by a permanent event id (default is 0xB0), so you could, for instance, only apply it on hard mode.

  • Rescuing arrows and the travelling icon now show up in the right place (can be edited in ModularStatScreen.event).

  • FE5-style crusader scrolls. Based on @Venno’s growth modifiers hack (ok, it’s pretty much the same, except it doesn’t freeze the game if you get a 0-stat level-up). The growth modifiers are signed, and there’s also an option to make multiple ‘scrolls’ stack.

Crusader scrolls work as follows: Set the first bit in byte 0x22 of the item’s data. This will tell the game it’s a growth booster. Then, go to the Stat Bonuses pointer (pointed to at 0xC in item data). The first 0x8 bytes of the struct are used for actual stat bonuses, and 0x9 is reserved for a possible magic bonus, so begin at 0xA past and write your growth modifiers in the order HP, Str, Skl, Spd, Def, Res, Luk. These values are signed, so you can have negative bonuses (-128 to +127).
Example: Stat bonuses pointer is 0x8B2B000, and the scroll gives +10 hp, +10 str, 0 skl, -10 spd, +20 def, 0 res, and -20 luk. You would go to B2B00A and write 0A 0A 00 F6 14 0 EC.
NOTE: As it stands, if a player character or boss has a scroll in their inventory and autolevelling is on, the scroll(s) will affect the levels gained during autolevelling.

Everything that is modifiable can be found in Engine Hacks/MSS/Display Growths Options. Have fun!

http://i.imgur.com/d75CmMD.png
http://i.imgur.com/kAb2DBa.png

14 Likes

str/mag split when?

Those colors are great, far superior to what I was using. Bravo.

Does the green glow when it reaches 100%?

It’s about 70% done, but I think I’d have to redo a fair amount of it, and making it play nice with the other hacks out there is going to be an enormous pain in the neck. So, not anytime soon.[quote=“Klokinator, post:152, topic:2312”]
Does the green glow when it reaches 100%?
[/quote]

Yep.

1 Like


Chargeup skills are implemented… ish

5 Likes

Starting after chapter 5, all of my units start getting random debuffs at the begining of each new chapter.

EDIT: Yep. Splitting the UNIT groups fixed it. What was weird is that I just screwed up the first time I tried fixing it, and I put 17 UNIT codes in a group. The amount of status debuffs was significantly less than before. If you want to screw over a player… it seems that this effect can be controlled.
To paraphrase @Klokinator, I will find an evil way to utilize this.

Page 4 helptext is working

5 Likes

My only thought for chargeup skills is ‘2’ for the charge doesn’t mean much. 20% or 50% charged would make more sense.

1 Like

It works exactly like Heroes , and Fates Dual Guard to a lesser extent.

that was fixed a couple updates ago, have you updated?

Never mind. I’ll update now.

I’ve just finished a playthrough in a clean ROM as a test. May I make a few suggestions?

Anyone with Duelist’s Blow is absolutely unbeatable in an arena. Would there be a way to disable it there?
Perhaps put rally below some of the other commands for a unit. For example, I love to arena abuse, but I kept rallying instead of entering the arena because “rally” is now at the top of the menu instead of “arena.” It just got irritating eventually.
Some of the numerical values associated with some skills are to extreme. The best example I can think of is with Life and Death. 10 is a little extreme. Maybe 5 or 6 would be more reasonable.

Excellent work! I look forward to implementing this.