[FE8] Modern c-skillsystem (3.2.0-BETA)

combo.skills.txt is auto-generated during compilation rather than directly lies in patches.

1 Like

Okay yeah, then the solution for me is to just find a pre-generated one (ideally the one from my last compilation) and stick it in the patches folder. It makes the popup go away.

I’m trying to implement Charge Plus and I’m running into a wall. I’m not sure whether it’s the MovGetter or moveCount that isn’t returning the right value.

Skill Description: Apply Brave effect if all movement is used this turn.

Edit: I’ve placed it inside BattleOrder.c inside the CheckCanTwiceAttackOrder function, alongside DoubleLion.

#if defined(SID_ChargePlus) && (SID_ChargePlus < MAX_SKILL_NUM)
        if (SkillTester(real_actor, SID_ChargePlus))
        {
            if (MovGetter(real_actor) == gActionData.moveCount)
            {
                gBattleActorGlobalFlag.skill_activated_double_lion = true;
                gBattleTemporaryFlag.order_dobule_lion = true;
                return true;
            }
        }
#endif

Not sure the reason, you may debug on it. BTW, the code above will contaminate effect of skill double-lion

Trying to make Boon now, but it’s not activating. Any clue what I’m missing?

Fo reference I placed it inside GetPrePhaseHealAmount()


int badStatusEffects[] = {UNIT_STATUS_PETRIFY, UNIT_STATUS_POISON, UNIT_STATUS_SLEEP, UNIT_STATUS_SILENCED, UNIT_STATUS_BERSERK, UNIT_STATUS_SICK};

#if defined(SID_Boon) && (SID_Boon < MAX_SKILL_NUM)
    if (SkillTester(unit, SID_Boon))
    {
        int unitStatus = GetUnitStatusIndex(unit);

        for (int i = 0; i < 5; i++)
        {
            if (unitStatus == badStatusEffects[i])
            {
                SetUnitStatusIndex(unit, UNIT_STATUS_NONE);
                break;
            }
        }
    }
#endif

see fireemblem8u/src/bm.c

Is there a way to ‘level up’ skills in this system, similar to what Three Houses does with its prowess skills?

1 Like

Nope yet, this is an interesting idea to make skill effect various by weapon ranks

1 Like

I’ve been wrangling with Ignis for the last day now, and for the life of me I can’t figure out why the skill activation effect applies to the enemy instead of the skill holder.

I’ve copied the effect of the code into Colossus and Corrosion and they both apply the skill effect to the skill holder as I expect. The skill animation info is also the same between the three.

I’m stumped :melting_face:

EDIT: And now it’s happening to Eclipse.

#if (defined(SID_Ignis) && (SID_Ignis < MAX_SKILL_NUM))
    if (CheckBattleSkillActivte(attacker, defender, SID_Ignis, attacker->unit.skl))
    {
        RegisterTargetEfxSkill(GetBattleHitRound(gBattleHitIterator), SID_Ignis);
        switch (attacker->weaponType) 
        {
        case ITYPE_SWORD:
        case ITYPE_LANCE:
        case ITYPE_AXE:
        case ITYPE_BOW:
            attack += attacker->unit.def / 2;
            break;
        case ITYPE_ANIMA:
        case ITYPE_LIGHT:
        case ITYPE_DARK:
            attack += attacker->unit.res / 2;
            break;
        default:
            break;
        }
    }
#endif

no idea, it seems fine

Recent publishing plan

New release 0.4.0-beta is planed to publishing on 6.20.

The first official version 1.0.0-beta is planned to be released in July, and then I hope friends you guys can help us to test the cskillsys at that time so that we can fix potential bugs. If all goes well, the first stable long-term support version 1.1.0-LTE is planned to be released before September.

4 Likes

How exactly does the Debug function work with no$GBA ? I have been trying to make them work but nothing is showing up in the TTY debug windows.

see docs/Wizardry.md

I did follow the instruction, but for some reason I cannot get the print to work. The function seems to work but it doesn’t actually show up in NO$GBA

uncomment CONFIG_USE_DEBUG

new version: 0.4.0-beta published

Release v0.4.0-beta

6 Likes

So just a very quick question for the wizards working on this. Does this mean that no more skills will be added into the regular system that has been used so far?

I don’t think a default configuration is set in stone yet, there’s a lot of moving parts and they’re all still in flux. Every skill that’s enabled by default (including mine and AliScrooge’s contributions) are there mainly because there were free slots. Not because there was any sort of balance taken into consideration.

Though having said that, who knows. Mokha might be happy to leave it as it is. Better to ask them.

It’s just clicked, but I know why the glowing aura effect wasn’t applying to the attacker now. It’s because I was using RegisterTarget instead of RegisterActor.

Preaching for developers

Since it has been expanded to support up to 1016 skills by PR #140, the way to develop new skills has also been updated. Please refer to doc SkillSys.md.