mirror of https://github.com/pret/pokecrystal.git
Convert code samples in bugs_and_glitches.md to diffs
This commit is contained in:
parent
62439a95a1
commit
ff1c9f36da
|
@ -76,21 +76,21 @@ This is a bug with `SpeciesItemBoost` in [engine/battle/effect_commands.asm](/en
|
|||
|
||||
**Fix:**
|
||||
|
||||
```asm
|
||||
```diff
|
||||
; Double the stat
|
||||
sla l
|
||||
rl h
|
||||
|
||||
ld a, HIGH(MAX_STAT_VALUE)
|
||||
cp h
|
||||
jr c, .cap
|
||||
ld a, LOW(MAX_STAT_VALUE)
|
||||
cp l
|
||||
ret nc
|
||||
|
||||
.cap
|
||||
ld h, HIGH(MAX_STAT_VALUE)
|
||||
ld l, LOW(MAX_STAT_VALUE)
|
||||
+
|
||||
+ ld a, HIGH(MAX_STAT_VALUE)
|
||||
+ cp h
|
||||
+ jr c, .cap
|
||||
+ ld a, LOW(MAX_STAT_VALUE)
|
||||
+ cp l
|
||||
+ ret nc
|
||||
+
|
||||
+.cap
|
||||
+ ld h, HIGH(MAX_STAT_VALUE)
|
||||
+ ld l, LOW(MAX_STAT_VALUE)
|
||||
ret
|
||||
```
|
||||
|
||||
|
@ -123,7 +123,7 @@ This is a bug with `DittoMetalPowder` in [engine/battle/effect_commands.asm](/en
|
|||
|
||||
**Fix:**
|
||||
|
||||
```asm
|
||||
```diff
|
||||
ld a, c
|
||||
srl a
|
||||
add c
|
||||
|
@ -138,17 +138,17 @@ This is a bug with `DittoMetalPowder` in [engine/battle/effect_commands.asm](/en
|
|||
.done
|
||||
scf
|
||||
rr c
|
||||
|
||||
ld a, HIGH(MAX_STAT_VALUE)
|
||||
cp b
|
||||
jr c, .cap
|
||||
ld a, LOW(MAX_STAT_VALUE)
|
||||
cp c
|
||||
ret nc
|
||||
|
||||
.cap
|
||||
ld b, HIGH(MAX_STAT_VALUE)
|
||||
ld c, LOW(MAX_STAT_VALUE)
|
||||
+
|
||||
+ ld a, HIGH(MAX_STAT_VALUE)
|
||||
+ cp b
|
||||
+ jr c, .cap
|
||||
+ ld a, LOW(MAX_STAT_VALUE)
|
||||
+ cp c
|
||||
+ ret nc
|
||||
+
|
||||
+.cap
|
||||
+ ld b, HIGH(MAX_STAT_VALUE)
|
||||
+ ld c, LOW(MAX_STAT_VALUE)
|
||||
ret
|
||||
```
|
||||
|
||||
|
@ -402,16 +402,16 @@ BattleCommand_BeatUpFailText: ; 355b5
|
|||
|
||||
**Fix:**
|
||||
|
||||
```asm
|
||||
```diff
|
||||
BattleCommand_BeatUpFailText: ; 355b5
|
||||
; beatupfailtext
|
||||
|
||||
ld a, [wBeatUpHitAtLeastOnce]
|
||||
and a
|
||||
ret nz
|
||||
|
||||
inc a
|
||||
ld [wAttackMissed], a
|
||||
+
|
||||
+ inc a
|
||||
+ ld [wAttackMissed], a
|
||||
|
||||
jp PrintButItFailed
|
||||
```
|
||||
|
@ -613,22 +613,22 @@ CalcExpAtLevel: ; 50e47
|
|||
|
||||
**Fix:**
|
||||
|
||||
```asm
|
||||
```diff
|
||||
CalcExpAtLevel: ; 50e47
|
||||
; (a/b)*n**3 + c*n**2 + d*n - e
|
||||
ld a, d
|
||||
cp 1
|
||||
jr nz, .UseExpFormula
|
||||
; Pokémon have 0 experience at level 1
|
||||
xor a
|
||||
ld hl, hProduct
|
||||
ld [hli], a
|
||||
ld [hli], a
|
||||
ld [hli], a
|
||||
ld [hl], a
|
||||
ret
|
||||
|
||||
.UseExpFormula
|
||||
+ ld a, d
|
||||
+ cp 1
|
||||
+ jr nz, .UseExpFormula
|
||||
+; Pokémon have 0 experience at level 1
|
||||
+ xor a
|
||||
+ ld hl, hProduct
|
||||
+ ld [hli], a
|
||||
+ ld [hli], a
|
||||
+ ld [hli], a
|
||||
+ ld [hl], a
|
||||
+ ret
|
||||
+
|
||||
+.UseExpFormula
|
||||
ld a, [wBaseGrowthRate]
|
||||
add a
|
||||
add a
|
||||
|
@ -837,10 +837,11 @@ HappinessData_DaisysGrooming: ; 746b
|
|||
|
||||
**Fix:**
|
||||
|
||||
```asm
|
||||
```diff
|
||||
HappinessData_DaisysGrooming: ; 746b
|
||||
db $80, 2, HAPPINESS_GROOMING ; 50% chance
|
||||
db $ff, 2, HAPPINESS_GROOMING ; 50% chance
|
||||
- db $ff, 2, HAPPINESS_GROOMING ; 99.6% chance
|
||||
+ db $80, 2, HAPPINESS_GROOMING ; 50% chance
|
||||
+ db $ff, 2, HAPPINESS_GROOMING ; 50% chance
|
||||
```
|
||||
|
||||
|
||||
|
@ -1037,18 +1038,18 @@ This is a bug with `PlayBattleMusic` in [engine/battle/start_battle.asm](/engine
|
|||
|
||||
**Fix:**
|
||||
|
||||
```asm
|
||||
```diff
|
||||
ld de, MUSIC_ROCKET_BATTLE
|
||||
cp GRUNTM
|
||||
jr z, .done
|
||||
cp GRUNTF
|
||||
jr z, .done
|
||||
cp EXECUTIVEM
|
||||
jr z, .done
|
||||
cp EXECUTIVEF
|
||||
jr z, .done
|
||||
cp SCIENTIST
|
||||
jr z, .done
|
||||
+ cp EXECUTIVEM
|
||||
+ jr z, .done
|
||||
+ cp EXECUTIVEF
|
||||
+ jr z, .done
|
||||
+ cp SCIENTIST
|
||||
+ jr z, .done
|
||||
```
|
||||
|
||||
|
||||
|
@ -1083,10 +1084,12 @@ This is a bug with `DoPlayerMovement.CheckWarp` in [engine/overworld/player_move
|
|||
|
||||
**Fix:**
|
||||
|
||||
```asm
|
||||
```diff
|
||||
ld a, [wWalkingDirection]
|
||||
cp STANDING
|
||||
jr z, .not_warp
|
||||
- ; cp STANDING
|
||||
- ; jr z, .not_warp
|
||||
+ cp STANDING
|
||||
+ jr z, .not_warp
|
||||
ld e, a
|
||||
ld d, 0
|
||||
ld hl, .EdgeWarps
|
||||
|
@ -1098,6 +1101,9 @@ This is a bug with `DoPlayerMovement.CheckWarp` in [engine/overworld/player_move
|
|||
ld a, 1
|
||||
ld [wd041], a
|
||||
ld a, [wWalkingDirection]
|
||||
- ; This is in the wrong place.
|
||||
- cp STANDING
|
||||
- jr z, .not_warp
|
||||
```
|
||||
|
||||
|
||||
|
@ -1279,15 +1285,27 @@ This is a bug with `PokeBallEffect` in [engine/items/item_effects.asm](/engine/i
|
|||
|
||||
**Fix:**
|
||||
|
||||
```asm
|
||||
```diff
|
||||
ld hl, wEnemySubStatus5
|
||||
ld a, [hl]
|
||||
push af
|
||||
set SUBSTATUS_TRANSFORMED, [hl]
|
||||
|
||||
-; This code is buggy. Any wild Pokémon that has Transformed will be
|
||||
-; caught as a Ditto, even if it was something else like Mew.
|
||||
-; To fix, do not set [wTempEnemyMonSpecies] to DITTO.
|
||||
bit SUBSTATUS_TRANSFORMED, a
|
||||
jr nz, .load_data
|
||||
- jr nz, .ditto
|
||||
- jr .not_ditto
|
||||
+ jr nz, .load_data
|
||||
|
||||
-.ditto
|
||||
- ld a, DITTO
|
||||
- ld [wTempEnemyMonSpecies], a
|
||||
- jr .load_data
|
||||
-
|
||||
-.not_ditto
|
||||
- set SUBSTATUS_TRANSFORMED, [hl]
|
||||
ld hl, wEnemyBackupDVs
|
||||
ld a, [wEnemyMonDVs]
|
||||
ld [hli], a
|
||||
|
@ -1323,12 +1341,14 @@ This is a bug with `PokeBallEffect` in [engine/items/item_effects.asm](/engine/i
|
|||
|
||||
**Fix:**
|
||||
|
||||
```asm
|
||||
```diff
|
||||
.room_in_party
|
||||
xor a
|
||||
ld [wWildMon], a
|
||||
ld a, [wBattleType]
|
||||
cp BATTLETYPE_CONTEST
|
||||
- ld a, [wCurItem]
|
||||
- cp PARK_BALL
|
||||
+ ld a, [wBattleType]
|
||||
+ cp BATTLETYPE_CONTEST
|
||||
call nz, ReturnToBattle_UseBall
|
||||
```
|
||||
|
||||
|
@ -1405,10 +1425,10 @@ This is a bug with `PlacePartyMonEvoStoneCompatibility.DetermineCompatibility` i
|
|||
ld a, [hli]
|
||||
and a
|
||||
jr z, .nope
|
||||
cp EVOLVE_STAT
|
||||
jr nz, .not_four_bytes
|
||||
inc hl
|
||||
.not_four_bytes
|
||||
+ cp EVOLVE_STAT
|
||||
+ jr nz, .not_four_bytes
|
||||
+ inc hl
|
||||
+.not_four_bytes
|
||||
inc hl
|
||||
inc hl
|
||||
cp EVOLVE_ITEM
|
||||
|
@ -1519,11 +1539,12 @@ ValidateTempWildMonSpecies: ; 2a4a0
|
|||
|
||||
**Fix:**
|
||||
|
||||
```asm
|
||||
```diff
|
||||
ld a, b
|
||||
ld [wCurPartyLevel], a
|
||||
ld b, [hl]
|
||||
ld a, b
|
||||
- ; ld a, b
|
||||
+ ld a, b
|
||||
call ValidateTempWildMonSpecies
|
||||
jr c, .nowildbattle
|
||||
|
||||
|
|
Loading…
Reference in New Issue