Jump to content

FE6 HM 0% growths, with commentary (complete)


dondon151
 Share

Recommended Posts

Wait, he doesn't rig stats for enemies? But I'm pretty sure he had to rig the archer in Chapter 1 to have one less defense, as I remember trying out the strategy dondon used, and the archer would end up living with 1 HP until I reset enough times to have it proc 1 less defense.

I think that enemies appearing in the cutscenes affect the RNG, since it's the only thing I've observed that alters the result of the maps when starting from Chapter 1. Not sure if it's true, though.

Edited by Xator Nova
Link to comment
Share on other sites

  • Replies 492
  • Created
  • Last Reply

Top Posters In This Topic

Is there any link/site to the max./min. stats for all HM bonus characters/units?

not that i know of, but you can calculate this yourself.

First, the class growth rate in a stat is multiplied by the number of Levels gained. Then, a RN is generated between 7/8 and 9/8 of this value (as opposed to the usual 0-99 RNs). Finally, that random number is used as the total growth rate, and a second RN is used accordingly to determine how much that stat increases. This is then repeated for every stat (except for FE7 Luck).

1. for a given stat belonging to a given unit, multiply that unit's HM bonus levels by the class growth rate. an easy way to get this number is to go to SF's FE6 average stats resources and subtract the expected HM starting stat from the NM starting stat. example:

milady's expected HM base str is 16.5 and her NM base str is 12.

milady gets 10 HM bonus levels in wyvern rider (F), which has 45% str growth.

both methods yield 4.5 expected str from HM bonuses.

2. multiply the expected str HM bonus by 7/8 and round down. that's the minimum possible HM bonus in that stat. example:

floor((7/8) * 4.5) = floor(3.9375) = 3

3. multiply the expected str HM bonus by 9/8 and round up. that's the maximum possible HM bonus in that stat. example:

ceiling((9/8) * 4.5) = ceiling(5.0625) = 6

so milady can have 3 to 6 extra points in str, although 4 or 5 are far more common.

Link to comment
Share on other sites

Chapter 16x is completed in 4 turns.

Chapter information

[spoiler=]

New characters

Pz8pJeC.png
Douglas (ダグラス) - General L8
46 HP | 19 str | 13 skl | 8 spd | 20 def | 5 res | 11 luk | 17 con | 5 mov | A lances, A axes

Douglas is an immovable object. No, really. His con is so high that he is difficult to rescue. Douglas has trouble getting anywhere, but he’s not entirely useless… He’s just mostly useless.

Mechanics notes

Enemy AI with status staves, part 1

In the later stages of the game, enemy magic users with status staves have so much mag and are so commonplace that it no longer becomes practical to rely on dodging them with the aid of a res boost or restoring adverse status as it is inflicted. The remaining option is to investigate how the enemy AI can be tricked as to render their staff users ineffective. There are 3 notable rules that the enemy AI follows, one of which I state below.

Enemy Silence users will not target allies without usable staves.

roq7FVf.png
The range of chapter 16x’s Silence sage is highlighted.

The enemy sage does not silence Cecilia because though she carries Bolting and Aircalibur, she has no staves.

Route split 2

Chapters 17 through 20x feature the second, and final, set of alternate routes in FE6, in which the map designs, available items, and most recruitable characters are entirely different. Which route the player goes to is determined by whether the allied pegasus knights or nomads have gained a greater total amount of EXP.

lGoXWjA.pngMWZyWtu.png
Roy’s army embarks on a campaign to either Ilia (left) or Sacae (right) for chapters 17 to 20x.

Sacae has generally smaller maps, but much more difficult enemies and bosses. The latter details make Ilia a more desirable destination in this playthrough.

So that would explain why I spent so much effort earlier on feeding kills to Shanna and avoiding Sue’s engagement in combat. Using Shin is unavoidable, and because he’s so much better at combat than Tate, Shanna requires a large EXP surplus to tip the balance in the favor of the pegasus knights.

Link to comment
Share on other sites

Yeah, the status staff AI stuff should apply to FE7 and very likely to FE8 as well.

Oh yeah, the Delphi Shield.

The current theory is that FE6 AI ignores the shield's damage reduction, right? In reality, many FE6 bow-users and aircalibur-users are assigned AI that grants a large targeting bonus against the flying classes. Although, I guess this doesn't really change any of the strategy implications.

Link to comment
Share on other sites

https://www.youtube.com/watch?v=_Pc47QTTMA4

Chapter 17I is completed in 4 turns.

Chapter information

[spoiler=]

Arena simulation in MATLAB

There's nothing new to say about this chapter, so here's the MATLAB function that I wrote to calculate how likely a unit is to win an arena battle. This is not very informative, but maybe someone will find it neat?

function [w_pct, l_pct] = FEarena(player, enemy, iterations)
% player and enemy are vectors containing combat parameters.
% Each vector contains 5 entries in the order [hit dmg crit HP strikes].
% Use 2 for strikes if the unit doubles, 1 otherwise.
% iterations is the number of iterations that the simulation runs.
% At least 100000 iterations are recommended.

if length(player) ~= 5
    error('Incorrect number of entries in player parameters.')
end

if length(enemy) ~= 5
    error('Incorrect number of entries in enemy parameters.')
end

% Randomly seed the RNG using the system clock
s = RandStream('mt19937ar', 'Seed', sum(100*clock));
RandStream.setDefaultStream(s);

wins = 0; losses = 0;

for ii = 1 : iterations
    playerHP = player(4);
    enemyHP = enemy(4);
    % Player always gets first strike
    hit_RN = 0.5 * (randi(100) + randi(100)) - 1;
    if hit_RN < player(1)
        crit_RN = randi(100) - 1;
        if crit_RN < player(3)
            damage = 3 * player(2);
        else
            damage = player(2);
        end
        enemyHP = enemyHP - damage;
    end
    % Cycle between enemy and player strike(s)
    while playerHP > 0 && enemyHP > 0
        % Simulate enemy strike(s)
        for jj = 1 : enemy(5)
            hit_RN = 0.5 * (randi(100) + randi(100)) - 1;
            if hit_RN < enemy(1)
                crit_RN = randi(100) - 1;
                if crit_RN < enemy(3)
                    damage = 3 * enemy(2);
                else
                    damage = enemy(2);
                end
                playerHP = playerHP - damage;
                if playerHP <= 0
                    break
                end
            end
        end
        if playerHP <= 0
            losses = losses + 1;
            break
        end
        % Simulate player strike(s)
        for jj = 1 : player(5)
            hit_RN = 0.5 * (randi(100) + randi(100)) - 1;
            if hit_RN < player(1)
                crit_RN = randi(100) - 1;
                if crit_RN < player(3)
                    damage = 3 * player(2);
                else
                    damage = player(2);
                end
                enemyHP = enemyHP - damage;
                if enemyHP <= 0
                    break
                end
            end
        end
        if enemyHP <= 0
            wins = wins + 1;
            break
        end
    end
end

w_pct = wins / iterations;
l_pct = losses / iterations;

end
Edited by dondon151
Link to comment
Share on other sites

Procedural coding is best coding. The vectors are [hit%, dmg, crit%, HP, number of attacks (1 unless 2 for doubling?)]? Write one where you input stats, along with enemy stats randomized in a range (possibly by class first), and factor in WTA.

Link to comment
Share on other sites

The knights would still have to have 11 speed to double roy, I don't think any unpromoted knights in the GBA games have anything close to it

I imagine these dudes only have like 5-7 speed at most

edit: according to the enemy stats on site, they have 5 speed. I wish enemy stats onsite were actually completed, i'm surprised they're not.

Edited by General Horace
Link to comment
Share on other sites

Flux never got that much better..

Don2, as a novice to rng handling, how does the rng string handle levels if everyone has 0% growths? Do the 7 lines still get accounted for?

Link to comment
Share on other sites

Roy has 7 speed, so it's not unreasonable that the Knights can't double him (keep in mind that knights were always a slow class, at least until FE9/FE10).

Link to comment
Share on other sites

Flux never got that much better..

Don2, as a novice to rng handling, how does the rng string handle levels if everyone has 0% growths? Do the 7 lines still get accounted for?

I believe he changed the growths to 0 with the nightmare modules. So the rng would roll, but no matter its result, the stat wouldn't increase.

Link to comment
Share on other sites

out of curiosity why do you use ii and jj for your iteration variables and not i and j?

also does the player get the first strike even if the enemy is faster?

Link to comment
Share on other sites

Don2, as a novice to rng handling, how does the rng string handle levels if everyone has 0% growths? Do the 7 lines still get accounted for?

yes, level ups actually use 21 RNs in 0% growths because the game basically re-rolls if you get a 0-stat level up, and it tries a third time if the second time fails.

out of curiosity why do you use ii and jj for your iteration variables and not i and j?

also does the player get the first strike even if the enemy is faster?

because i and j are used for imaginary numbers, so i never got in the habit for using i and j for iteration variables.

the answer to your second question is yes. this ain't pokemon, yo.

Link to comment
Share on other sites

yes, level ups actually use 21 RNs in 0% growths because the game basically re-rolls if you get a 0-stat level up, and it tries a third time if the second time fails.

because i and j are used for imaginary numbers, so i never got in the habit for using i and j for iteration variables.

the answer to your second question is yes. this ain't pokemon, yo.

wow fe6 tried really hard to make sure you weren't _positively_ boned

Link to comment
Share on other sites

i didn't realize there were two extra re-rolls, i was under the impression of just one.

Just out of curiosity, does a stat get rolled if it's been cap'd?

Link to comment
Share on other sites

I've also been wondering... If your units WOULD gain stats, would you've used other units then you're right now? I guess Rutger would've stayed on the team. Maybe you kept Tate around for her movement? Maybe others? Any major possible team mate you're not using, just because of the 0% stats? Only Rutger and maybe Dieck come to mind. Maybe as mentioned before, Tate, but I can't see Thany beeing around for much longer.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...