diff options
author | Rangi <35663410+Rangi42@users.noreply.github.com> | 2019-03-03 17:30:58 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-03-03 17:30:58 -0500 |
commit | eee79d7049232c50a17d7d445a2b2b65fed0e056 (patch) | |
tree | b3daab194668d7c394e4dc7574753ff1def7d521 /docs | |
parent | d46685be86a6d989203aef43882fdf2f0a5f0806 (diff) | |
parent | 6b8abd1af12669a706db6377e5b38f78e5051c80 (diff) |
Merge pull request #606 from ISSOtm/patch-1
Correct some bugfixes, add some compatibility extensions
Diffstat (limited to 'docs')
-rw-r--r-- | docs/bugs_and_glitches.md | 34 |
1 files changed, 25 insertions, 9 deletions
diff --git a/docs/bugs_and_glitches.md b/docs/bugs_and_glitches.md index f58d2a06b..e59530db4 100644 --- a/docs/bugs_and_glitches.md +++ b/docs/bugs_and_glitches.md @@ -89,6 +89,7 @@ Some fixes are mentioned as breaking compatibility with link battles. This can b + ld a, HIGH(MAX_STAT_VALUE) + cp h + jr c, .cap ++ ret nz + ld a, LOW(MAX_STAT_VALUE) + cp l + ret nc @@ -126,6 +127,7 @@ Some fixes are mentioned as breaking compatibility with link battles. This can b + ld a, HIGH(MAX_STAT_VALUE) + cp b + jr c, .cap ++ ret nz + ld a, LOW(MAX_STAT_VALUE) + cp c + ret nc @@ -166,7 +168,7 @@ This bug existed for all battles in Gold and Silver, and was only fixed for sing ## Moves with a 100% secondary effect chance will not trigger it in 1/256 uses -*Fixing this bug will break compatibility with standard Pokémon Crystal for link battles.* +*Fixing this bug **may** break compatibility with standard Pokémon Crystal for link battles.* ([Video](https://www.youtube.com/watch?v=mHkyO5T5wZU&t=206)) @@ -175,24 +177,38 @@ This bug existed for all battles in Gold and Silver, and was only fixed for sing ```diff - ; BUG: 1/256 chance to fail even for a 100% effect chance, - ; since carry is not set if BattleRandom == [hl] == 255 +- call BattleRandom + ld a, [hl] -+ cp 100 percent -+ jr z, .ok - call BattleRandom ++ sub 100 percent ++ ; If chance was 100%, RNG won't be called (carry not set) ++ ; Thus chance will be subtracted from 0, guaranteeing a carry ++ call c, BattleRandom cp [hl] -- pop hl -- ret c -+ jr c, .ok + pop hl + ret c .failed ld a, 1 ld [wEffectFailed], a and a -+.ok -+ pop hl ret ``` +**Compatibility preservation:** If you wish to keep compatibility with standard Pokémon Crystal, you can disable the fix during link battles by also applying the following edit in the same place: + +```diff ++ ld a, [wLinkMode] ++ cp LINK_COLOSSEUM ++ scf ; Force RNG to be called ++ jr z, .nofix ; Don't apply fix in link battles, for compatibility + ld a, [hl] + sub 100 percent + ; If chance was 100%, RNG won't be called (carry not set) + ; Thus chance will be subtracted from 0, guaranteeing a carry ++.nofix + call c, BattleRandom +``` + ## Belly Drum sharply boosts Attack even with under 50% HP *Fixing this bug will break compatibility with standard Pokémon Crystal for link battles.* |