Hmm seems like there’s a pretty nasty bug with the change to how combat checks are handled:
[Wind Event: +1 Battle Prowess]
[Cursed Chi Clue: +1 Battle Prowess]
[3 Fortitude Cores Spent]
[Fortitude 8 Check Passed]
This is a base 8 combat check. The modifiers should reduce it to 8 - 2 = 6 difficulty combat check. My MC has 5 fortitude cores, so she should surge 6 - 5 = 1 core in order to pass it.
But instead as you can see, the game surges 3 cores, something that’s now even possible for my MC since she could at most pull 2, with her techniques setup at that moment. That extra core drain is going to have pretty negative effect on subsequent checks, where previously the game would incur no such thing.
edit: from the look at the script, it seems the reason for it is the game don’t taking into account the cmod
value when actually surging cores, and only doing it in the initial checks:
relevant script bits
*elseif (((({{combatstat}} + {{combatskill}})+cmod) >= (combatdiff - {{combatsurge}})) and (({{combatstat}} - {{combatspent}}) >= (combatdiff - (({{combatstat}} + {{combatskill}})+cmod))))
*set val (combatdiff - ({{combatstat}} + {{combatskill}}))
*if (val > 1)
[b][${val} $!{combatstat} Cores Spent][/b]
*else
[b][${val} $!{combatstat} Core Spent][/b]
*set {combatspent} + val
//...
*elseif ((((({{combatstat}} + {{combatstat2}})+cmod) >= (combatdiff - {{combatsurge}})) or ((({{combatstat}} + {{combatstat2}})+cmod) >= (combatdiff - {{combatsurge2}}))) and ((({{combatstat}} - {{combatspent}}) + ({{combatstat2}} - {{combatspent2}})) >= (combatdiff - (({{combatstat}} + {{combatstat2}})+cmod))))
*temp switchcores false
*temp corecost (combatdiff - ({{combatstat}} + {{combatstat2}}))
*label dualcoresurge
*if (switchcores = false) and (({{combatstat}} - {{combatspent}}) >= 1)
*set val + 1
*set switchcores true
*else
*set val2 + 1
*set switchcores false
*set corecost - 1
*if (corecost != 0)
*goto dualcoresurge
*if (val != 0)
*if (val > 1)
[b][${val} $!{combatstat} Cores Spent][/b]
*else
[b][${val} $!{combatstat} Core Spent][/b]
*line_break
*set {combatspent} + val
*if (val2 != 0)
*if (val2 > 1)
[b][${val2} $!{combatstat2} Cores Spent][/b]
*else
[b][${val2} $!{combatstat2} Core Spent][/b]
*line_break
*set {combatspent2} + val2
*goto combatstat1and2pass
The value of val
should be modified by cmod
before it’s applied across the core(s)
edit: it can get even worse ;/
[Kurokonton Event: +3 Battle Prowess]
[Wind Event: +1 Battle Prowess]
[Not Enough Fortitude Chi Remaining]
[Fortitude 11 Check Failed]
My MC has 6 fortitude cores at this point, with 5 free to spare:
So, she should be perfectly able to pass this with 6 + 3 +1 = 10 - 11 = surging a single core. But the game tries to surge 11 - 6 = 5 of them and decides that nope. there’s not enough Chi remaining in the cores.
Edit2: out of curiosity i have tried that with 6 free to charge cores (forspent
is 0) and it still failed, with the same message.
The bonus silly point? I have a snowsteel weapon on me which should, supposedly, allow that last fortitude core to be charged infinitely. But, haha, nope.
plx fix ;/
edit3: it’d seem that there’s a mistake responsible for the above in the bit here:
*elseif ((({{combatstat}}+cmod) >= (combatdiff - {{combatsurge}})) and (({{combatstat}} - {{combatspent}}) >= ((combatdiff - {{combatstat}})+cmod)))
//...
*goto combatstat1pass
*elseif ((({{combatstat}}+cmod) >= (combatdiff - {{combatsurge}})) and (({{combatstat}} - {{combatspent}}) < ((combatdiff - {{combatstat}})+cmod)))
[b][Not Enough $!{combatstat} Chi Remaining][/b]
*line_break
*goto combatcheckfail14
if you substitute values from my scenario for the variables you get:
*elseif ( ((6+4) >= (11 - 2)) and ((6 - 0) >= ((11 - 6)+4)) )
That last +cmod
should be -cmod
or combined with the combatstat
the same way it’s done in the first part of the check, because as it is, in the part after the and
it increases amount of cores needed to pass the test by the value of cmod, than make it easier by the same amount.