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

Question. Do Desperation and Assassinate take effect ONLY if you would double normally, like Desperation does in 3H? Or do they make it so that you ALWAYS double if they’re active, like Quick Riposte does?

Only if you were going to double to begin with.

3 Likes

Thank you!

I have a question, what’s the difference between devil’s luck and devil’s pact? Bc their descriptions very much sounds the same

Pact grants the devil effect to the opponent always. Devil’s Luck only does so if you’re currently equipping a devil weapon.

Ohhhh, got it

Additionally, Devil’s luck takes YOUR luck into account, as opposed to Pact, which uses the enemy’s luck

Devil Reversal always uses the unit’s own luck, never the opponent’s. I’ve seen a few times people think that you can have a unit with low luck and “give” the enemy your Devil Reversal chance, and that’s not how it works.

1 Like

Are… you sure? Because that’s literally what it says. Gives YOUR devil reversal chance to the enemy
image

Otherwise, it wouldn’t be worded like this.

1 Like
isDevil:
mov	r0,r4
ldr	r1,=#0x8019298	@luck getter
mov	lr,r1
.short	0xF800
cmp	r0,#31	@check if luck is over cap, just in case
bhi	End
mov	r1,#31	@devil chance
sub	r0,r1,r0	@devil chance - luck
ldr	r1,=#0x8000CA0	@roll 1rn
mov	lr,r1
.short	0xF800
lsl	r0,#0x18
cmp	r0,#0
beq	End	@if the roll fails we are safe

I’d sooner trust the skill code than the skill description, which confirms that Shuusuke is correct. The game only ever runs the check for the attacker’s luck, and this check is only run in the first place if the defender has one of the various devil skills.

2 Likes

Then the description should be changed to something like “Inmune to Devil Reversal. Curses the enemy with Devil Reversal if unit has a Devil weapon equipped”

The curret one is misleading. I’ve bee thinking it’s the other way around for years.

Make a pr

It does not say “Gives your devil reversal chance to the enemy”. You added chance to it.
I don’t think the description is misleading myself. If the unit has Devil Reversal, then the enemy gets Devil Reversal.

2 Likes

This is the first time I’ve looked at any sort of skillsys code in years and I recently started learning python. And before that my only experience was surface level javascript. I’d say I’m still pretty code illiterate overall so this might be really dumb to ask, but…

Are # not ignored by whatever programming language buildfiles is/uses? When I looked at it in the past I always assumed it was commenting out.

image
Taken from Anathema for example. If I edited the #10 to something like #15, is that all it takes to change the effect? If so, I really feel like an idiot.

1 Like

# is used to preface numbers. eg.

mov r0, #5 @assign 5 to register 0

@ and // are used for comments in ARM assembly.

This would subtract 15 from the attacker’s avoid instead of 10.

2 Likes

On the subject of devil’s luck and that, I think the description is needlessly complicated. Compare this to the current description for it a few posts above.

Devil’s Luck: If unit’s weapon has Devil
Reversal, transfers it to enemy weapon.
(31-Luck % chance of Devil Reversal).

Personally I think this is a clearer way to describe what it does. If you think about it, you don’t need the “immune to devil reversal” line in this particular ability at all if it’s giving the enemy devil reversal if the unit’s weapon has it. It’s obviously an important part of the function of the skill in code, but including it in the description is unnecessary. Use the word “transfer” in there instead and it’s clear that it is giving the enemy weapon the devil reversal trait, which the reader would also easily understand to mean the skill user’s own weapon doesn’t have it anymore.

If you change devil’s luck to that, pact can stay as it is because its description is already accurate and not confusing for what it does. It makes you immune to reversal and gives it to the enemy no matter what.

1 Like

I disagree with both proposed changes (the other one being the pr in Skillsystem master).

Removing the “immune to devil reversal” is just actively hiding part of the effect. Now what if both units have Devil Reversal? Do both units get them? Does the game enter an endless loop by passing the Devil Reversal around from one unit to another?

And then by adding the “weapon” part you’re creating a non-existant restriction. The unit could have one of the other Devil skills and be using an Iron Sword, which would still give Devil Reversal to the enemy despite the Iron Sword not having Devil Reversal.

“The reader should assume that unspecified cases work just how I think they do” goes against clarifying the description, and adding more steps to understanding the description just creates more room for assumptions (which caused the problem in the first place). “No one would give two Devil skills to the same unit” is just yet another assumption on people’s game design and gameplay strategy.

At the end of the day, you can always change the description in your specific ROM. If you create a skill that interacts with Devil Reversal (for example, one that is essentially Devil’s Luck but without the immune part) then by all means they could remove the immunity part of its description, or if they make one that depends exclusively on the weapon (and ignores Devil skills) then they could certainly change it to say “weapon” specifically.

But you’re arguing to change how it’s worded on the Skill System base, so I think you should have some reasoning as to why the current description is insufficient while also keeping it 100% true to its actual code. To be blunt, I see the issue as a case of misreading the description and misunderstanding the vanilla Devil Reversal effect, and I explain succinctly what it reads like to me in my previous post. I’m not a Skill System dev so I have no real say in it, and I’m not against changing descriptions, but I’d rather not make them misleading.

1 Like

It is actively hiding part of the effect, you’re right. That’s the point. To respond to your counterpoints…

“What if both units have devil reversal?” That one is actually pretty simple in every example I can come up with, assuming my previous description is the one used. This would be the logical outcome people would assume in each case:

Unit with devil’s luck vs. unit with devil’s luck: Cancel each other out, since both “transfer” it. Going on about a hypothetical looping problem that literally can’t exist is just being melodramatic. It can’t happen so why let the thought of it bother you?
Unit with devil’s luck using devil weapon: Works as intended.
Unit with devil’s luck and devil’s pact: The “immune to devil reversal” is still in devil’s pact, so it wouldn’t be needed in both skill descriptions.
Unit with devil’s luck and devil’s whim: Devil’s whim triggers on self, devil’s luck “transfers” it to the enemy. “Immune to devil reversal” not needed.
Unit with devil’s luck vs. unit with devil’s pact: Devil’s pact triggers, devil’s luck “transfers” it back to an immune target. “Immune to devil reversal” not needed.
Unit with devil’s luck vs. unit with devil’s whim: Devil’s whim triggers, devil’s luck “transfers” it to the enemy since devil’s whim does not give the user immunity. “Immune to devil reversal” not needed.
Unit with devil’s luck, devil’s pact, devil’s whim, and any weapon, devil included: Devil’s luck “transfers” instances to the enemy and in the freak event any do trigger on the user, they’re canceled by devil’s pact. Voila.

You said assuming caused this problem in the first place, right? People will make assumptions no matter what. With the right wording, you can lead people to assume things that are actually correct instead of making incorrect assumptions.

In every case, the term I chose still fits. I never assumed people wouldn’t give two devil sources to one unit. It just doesn’t matter with the specific wording I chose. As for the point of a unit having one of the other devil skills and using an iron sword? What would that have to do with the description of devil’s luck, then? If a unit doesn’t have devil’s luck, then the description of devil’s luck doesn’t matter in that case. You just took the skill out of the equation. If the unit does have multiple devil skills, then I point you to the use cases above. The wording makes sense and that’s how the skills work as implemented, canceling one another out via immunity. Using the term “transfer” entails immunity, because it means your weapon can’t have the devil reversal trait when you’re using it.

And the reason I specified “weapon” is because there aren’t any means of triggering a devil reversal in skillsys without any weapon attack, unless devil’s whim can trigger on using staves or vulneraries and I’m not aware. In which case, sure, you got me on that one. But if you give devil reversal to a cleric that can’t use weapons at all, and it doesn’t trigger when healing with staves, then needing a weapon is already a restriction of devil reversal. My description doesn’t say it needs to be a devil weapon, but it must be a weapon that has devil reversal on it to transfer. The source of the devil reversal could be anything.

If someone is creating a custom skill to interact with devil reversal or changing the way any devil skill works, it should be on them to modify the descriptions to clarify how things work. Using skillsys out of the box, keeping the line about immunity there serves no purpose beyond pedantry.

I don’t mean to be rude but is English your first language? The words I used are plenty clarifying and there aren’t any steps to understanding them. It’s very simple wording. Though yes I am suggesting the skilldesc_text.txt be changed, the description in skill_definitions doesn’t need to be changed, and that’s about the only place it would be useful for the user to be made aware of the specific statement that devil’s luck makes the user immune to devil reversal on a technical level.

The current description is insufficient because it’s unclear what it does without knowing further information outside of the skill. For example right above, it took someone pulling the code out in order to definitively prove what the skill does. Is that something you would have to do if the wording as it is was sufficient? But you’re right in that not everyone knows how the vanilla devil reversal effect works, and that’s to my point too. You’re experienced enough in the scene to know how it works in vanilla. Not everyone else is. It’s like using Superman as the standard for judging a strength competition. But even if you know how it works in vanilla, why would the average user assume it works the same in skillsys if the source of the reversal isn’t even a weapon anymore but a skill? You would have to look at and understand the code to learn that it still works like vanilla because it’s not the kind of thing you’d discover through gameplay. Or how any skill effect functions for that matter! Peeling those files open without some degree of programming knowledge, it might as well be an alien language like it was to me until literally yesterday. lol

Ultimately there’s a limit to what can be said with the three lines of text available, and I think it’s a matter of what’s the more important statement for the skill to make. I’d rather the first line not be entirely taken up by something that could instead be reworded and rolled into a single, longer sentence that makes the function of the skill easier to understand overall.

2 Likes

Hello!

I’m having some issues using this to hack a copy of vanilla FE8. I’ve tried multiple versions, but all of them have ran into either annoying or show-stopping bugs.

  1. On v1.2.1, the stable release on Github, many maps cause the units in the player’s party to have random stat changes. This is covered upthread; apparently, it’s caused by unit groups, and separating units into groups of 15 can fix the problem. But FEBuilder does not make this easy. The post also mentioned that this was fixed in master.
  2. I tried master. Unfortunately, this causes a much more serious issue where, when Ross reaches level 10 and the player enters a new chapter, something terrible happens. I’ve tried both master, 1a0002, and a commit further back (Dark Bargain Fix). All of these have Ross either becoming a garbage unit, or promoting with no dialogue into the player’s choice of six different classes, including Monk and Pirate.

Try as I might, the only way I can fix this is to change Ross to a tier 1 class, which I would rather not do, and I’m not sure if it happens to the other trainees as well.

Also, using FEBuilder’s patch to disable automatic trainee promotion has no effect at all; nor does changing the trainee promotion table.

Is there a solution? Failing that, does anyone know a fast way to split existing unit groups up?

Thanks,
narelith

I like this description better. I already made a PR to github, but I might make another, unless you wanna do it yourself