Pokemon Liqid Crystal Slot Machine

Since there's only 50 and 500 coins options you will not be able to get exactly 9,999 to buy Porygon, that's the time I played the slots. I played on the slot on the leftmost, beside the lady who said there might be different odds in the slots. Hope this helps. If that does'nt work try the machine right below that. That machine is'nt quite as lucky but it's at least second best. After you get a jackpot on that machine it's out of luck. Then go back up to the top machin. Have fun it may take about half an hour, but TRUST me it works. Ps:I bought every Pokemon with the money I won. Unable to find the encounter slots online for the Pokemon games and after listening to the concerns of other players, I decided to take the initiative and host them myself. Of course I take no credit for determining the slots in the game-huge thanks to all the developers and data miners for that! I'm just trying to make the encounter slots a.

This past couple of days have been particularly hard considering my Android phone just got busted (swollen non-user replaceable battery) and I’ve been having issues with my laptop. It’s a good thing though that I still have an iPad with GBA4iOS installed that allows me to play my backlog of Pokemon ROM hacks.

Just recently I was able to play through Pokemon Liquid Crystal, which also happens to be one of the most visually striking ROM hacks for FireRed that I’ve ever played. The game is a re-imagining of Pokemon Crystal (for the GBC) and features a dynamic Day & Night system that simulates the passing of time.

Before You Cheat…

I’ve limited the cheat codes listed here for Pokemon Liquid Crystal to only those that aren’t game-breaking. I know you’ve probably read this every time I write a cheat code guide for other Pokemon ROM hacks but it’s always best to enjoy these games in the manner that their creators intended.

There’s also an option to use as many cheats as you want but if you’ve played enough Pokemon ROM hacks then you’ll understand that the probability of your game crashing will be quite high.

Essential Cheats

With that being said, here are a couple of cheat codes that you’ll want to enable when you’ve loaded Pokemon Liquid Crystal on your GBA4iOS.

Walk Through Walls

509197D3 542975F4
78DA95DF 44018CB4

A staple of almost every walkthrough/cheat code guide I’ve ever written here on PhoneResolve. Seriously, you’re always guaranteed an easier time of playing Pokemon Liquid Crystal (or any other Pokemon game) with this cheat code even if you don’t use the succeeding codes in this list.

Cheap Items Code

716AD990 7BA5C8B0
AD86124F 2823D8DA

I decided to not write down the code for Infinite Money because I’ve constantly had issues using it together with other FireRed cheat codes. So how are you going to buy those important items for your quest? Simple, just enable this code and you’ll see that every item sold in the Poke Mart is going to be marked down to 1 Poke Dollar.

Item Modifiers

Item modifiers are great cheat codes to use together with the Cheap Item Code mentioned earlier. What these codes do once they are enabled is that they force the game to sell the player only one type of item. This is regardless of the region or Poke Mart that the player might be in.

Master Balls

88CFA129 357400B2
8BB602F7 8CEB681A

Rare Candies

88CFA129 357400B2
51CF1F27 2E270374

Pokemon Encounter Codes

Choosing your starters is extremely important in any Pokemon game. I’ve listed down a couple of encounter codes that you can use to catch some of the most powerful Pokemon in the game. As you might know, it’s important to never have 2 or more of these codes running at the same time if you don’t want your game to crash.

Celebi

17543C48 E65E0B97
4AEC27E8 A5FF1540

Lugia

17543C48 E65E0B97
545C676A 51FFDC1C

Mewtwo

17543C48 E65E0B97
4C77BA3F CA4EDCB6

Jirachi

022EA6CD 594A7718
D2BF38B5 7E300C38
8343300B ADEF57CA
FFF032FD FAF9AFD2

Deoxys

022EA6CD 594A7718
D2BF38B5 7E300C38
8343300B ADEF57CA
27C35F73 A8E9E879

With a starting team like this, you shouldn’t have a problem facing all of the gym leaders that stand in your way. Additionally, make sure that your starter Pokemon (the one given by Professor Elm) is always on the first slot regardless if you let it fight or not. In this manner, it will always have a share of the experience points that you gain while fighting against wild Pokemon and Pokemon Trainers.

Other than asking you to set the Real Time Tracking feature on your emulator (just ignore this), Pokemon Liquid Crystal didn’t have that many bugs or glitches. I was even surprised that it allowed me to input Deoxys and Jirachi’s encounter codes without crashing GBA4iOS. Owing to its stability, (even though it’s still a beta release) Pokemon Liquid Crystal has become my favorite ROM hack to play so far.

Do you have any Pokemon Liquid Crystal (hack) Cheat Codes for GBA4iOS to share with us? I think you already know the drill. Head on over to the comments section below and share what you know with all of us!

These are known bugs and glitches in the original Pokémon Crystal game: code that clearly does not work as intended, or that only works in limited circumstances but has the possibility to fail or crash.

Fixes are written in the diff format. If you've used Git before, this should look familiar:

Fixes in the multi-player battle engine category will break compatibility with standard Pokémon Gold/Silver/Crystal for link battles, unless otherwise noted. This can be avoided by writing more complicated fixes that only apply if the value at [wLinkMode] is not LINK_COLOSSEUM. That's how Crystal itself fixed two bugs in Gold and Silver regarding the moves Reflect and Light Screen and Present.

Contents

  • Multi-player battle engine
  • Single-player battle engine
  • Overworld engine
  • Graphics
  • Audio
  • Text
  • Scripted events
  • Internal engine routines

Multi-player battle engine

Perish Song and Spikes can leave a Pokémon with 0 HP and not faint

(Video)

Fix: Edit CheckFaint_PlayerThenEnemy and CheckFaint_EnemyThenPlayer in engine/battle/core.asm:

Thick Club and Light Ball can make (Special) Attack wrap around above 1024

(Video)

Fix: Edit SpeciesItemBoost in engine/battle/effect_commands.asm

Metal Powder can increase damage taken with boosted (Special) Defense

(Video)

Fix: Edit DittoMetalPowder in engine/battle/effect_commands.asm:

Reflect and Light Screen can make (Special) Defense wrap around above 1024

This bug existed for all battles in Gold and Silver, and was only fixed for single-player battles in Crystal to preserve link compatibility.

Fix: Edit TruncateHL_BC in engine/battle/effect_commands.asm

(This fix also affects Thick Club, Light Ball, and Metal Powder, as described above, but their specific fixes in the above bugs allow more accurate damage calculations.)

Moves with a 100% secondary effect chance will not trigger it in 1/256 uses

(Video)

Fix: Edit BattleCommand_EffectChance in engine/battle/effect_commands.asm:

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:

Belly Drum sharply boosts Attack even with under 50% HP

(Video)

Fix: Edit BattleCommand_BellyDrum in engine/battle/move_effects/belly_drum.asm:

Berserk Gene's confusion lasts for 256 turns or the previous Pokémon's confusion count

(Video)

Fix: Edit HandleBerserkGene in engine/battle/core.asm:

This makes the Berserk Gene use the regular confusion duration (2–5 turns).

Confusion damage is affected by type-boosting items and Explosion/Self-Destruct doubling

(Video)

Fix:

First, edit wram.asm:

Then edit four routines in engine/battle/effect_commands.asm:

Moves that lower Defense can do so after breaking a Substitute

(Video)

This bug affects Acid, Iron Tail, and Rock Smash.

Fix: Edit DefenseDownHit in data/moves/effects.asm:

Counter and Mirror Coat still work if the opponent uses an item

(Video)

Fix: Edit BattleCommand_Counter in engine/battle/move_effects/counter.asm and BattleCommand_MirrorCoat in engine/battle/move_effects/mirror_coat.asm:

Add this to the end of each file:

A Disabled but PP Up–enhanced move may not trigger Struggle

(Video)

Fix: Edit CheckPlayerHasUsableMoves in engine/battle/core.asm:

A Pokémon that fainted from Pursuit will have its old status condition when revived

(Video)

Fix: Edit PursuitSwitch in engine/battle/core.asm

Lock-On and Mind Reader don't always bypass Fly and Dig

This bug affects Attract, Curse, Foresight, Mean Look, Mimic, Nightmare, Spider Web, Transform, and stat-lowering effects of moves like String Shot or Bubble during the semi-invulnerable turn of Fly or Dig.

Fix: Edit CheckHiddenOpponent in engine/battle/effect_commands.asm:

Beat Up can desynchronize link battles

(Video)

Fix: Edit BattleCommand_BeatUp in engine/battle/move_effects/beat_up.asm:

Beat Up works incorrectly with only one Pokémon in the party

This bug prevents the rest of Beat Up's effect from being executed if the player or enemy only has one Pokémon in their party while using it. It prevents Substitute from being raised and King's Rock from working.

Fix: Edit BattleCommand_EndLoop in engine/battle/effect_commands.asm:

Cosmetic fix: This fix does not break compatibility, but it only affects what's shown on the screen for the patched game. Best slots to play onljne free.

Beat Up may fail to raise Substitute

Fixing this cosmetic bug will not break link battle compatibility.

This bug prevents Substitute from being raised if Beat Up was blocked by Protect or Detect.

Fix: Edit BattleCommand_FailureText in engine/battle/effect_commands.asm.

Beat Up may trigger King's Rock even if it failed

This bug is caused because Beat Up never sets wAttackMissed, even when no Pokémon was able to attack (due to being fainted or having a status condition).

Fix: Edit BattleCommand_BeatUpFailText in engine/battle/move_effects/beat_up.asm:

Present damage is incorrect in link battles

(Video)

This bug existed for all battles in Gold and Silver, and was only fixed for single-player battles in Crystal to preserve link compatibility.

Fix: Edit BattleCommand_Present in engine/battle/move_effects/present.asm:

Dragon Scale, not Dragon Fang, boosts Dragon-type moves

Fix: Edit ItemAttributes in data/items/attributes.asm:

HP bar animation is slow for high HP

Fixing this cosmetic bug will not break link battle compatibility.

(Video)

Fix: Edit LongAnim_UpdateVariables in engine/battle/anim_hp_bar.asm:

HP bar animation off-by-one error for low HP

Fixing this cosmetic bug will not break link battle compatibility.

(Video)

Fix: Edit ShortHPBar_CalcPixelFrame in engine/battle/anim_hp_bar.asm:

Single-player battle engine

A Transformed Pokémon can use Sketch and learn otherwise unobtainable moves

(Video)

Fix: Edit BattleCommand_Sketch in engine/battle/move_effects/sketch.asm:

Catching a Transformed Pokémon always catches a Ditto

This bug can affect Mew or Pokémon other than Ditto that used Transform via Mirror Move or Sketch.

Fix: Edit PokeBallEffect in engine/items/item_effects.asm:

Experience underflow for level 1 Pokémon with Medium-Slow growth rate

(Video)

This can bring Pokémon straight from level 1 to 100 by gaining just a few experience points.

Fix: Edit CalcExpAtLevel in engine/pokemon/experience.asm:

The Dude's catching tutorial may crash if his Poké Ball can't be used

(Video)

This can occur if your party and current PC box are both full when you start the tutorial.

Fix: Edit PokeBallEffect in engine/items/item_effects.asm:

BRN/PSN/PAR do not affect catch rate

Fix: Edit PokeBallEffect in engine/items/item_effects.asm:

Moon Ball does not boost catch rate

Fix: Edit MoonBallMultiplier in engine/items/item_effects.asm:

The golden leaf icon is next down the list and pays up to 5,000 coins for spinning 3 of the symbols while playing all 3 betlines while playing 3 coins.Next up, hitting 3 of the golden star icon awards up to 1,350 coins, and hitting 3 mixed golden symbols – one leaf, one butterfly and one star – awards up to 450 coins. Butterfly slot machine pennies. The best reward is for 3 of the golden butterflies, which can pay up to 15,000 coins if you are playing all 3 betlines and the max amount of coins. This is the top award and can highly lucrative considering the betting range so low. The payouts continue with the green symbols, again running through butterflies, leaves and stars paying up to 300, 180 and 120 coins for 3 of these in a row while playing max bet. Golden Icons Pay the Highest RewardsThe payouts in Butterfly by Art of Games are higher than expected.

Pokemon Liqid Crystal Slot Machine

Love Ball boosts catch rate for the wrong gender

Fix: Edit LoveBallMultiplier in engine/items/item_effects.asm:

Fast Ball only boosts catch rate for three Pokémon

Fix: Edit FastBallMultiplier in engine/items/item_effects.asm:

Heavy Ball uses wrong weight value for three Pokémon

Fix: Edit GetPokedexEntryBank in engine/items/item_effects.asm:

Glacier Badge may not boost Special Defense depending on the value of Special Attack

As Pryce's dialog ('That BADGE will raise the SPECIAL stats of POKéMON.') implies, Glacier Badge is intended to boost both Special Attack and Special Defense. However, due to BoostStat overwriting a when boosting Special Attack, the Special Defense boost will not happen if the unboosted Special Attack stat is either 0–205 or 433–660.

Fix: Edit BadgeStatBoosts.CheckBadge in engine/battle/core.asm:

'Smart' AI encourages Mean Look if its own Pokémon is badly poisoned

(Video)

Fix: Edit AI_Smart_MeanLook in engine/battle/ai/scoring.asm:

AI makes a false assumption about CheckTypeMatchup

Fix: Edit BattleCheckTypeMatchup in engine/battle/effect_commands.asm:

AI use of Full Heal or Full Restore does not cure Nightmare status

(Video)

Fix: Edit AI_HealStatus in engine/battle/ai/items.asm:

AI use of Full Heal does not cure confusion status

Fix: Edit EnemyUsedFullRestore, EnemyUsedFullHeal, and AI_HealStatus in engine/battle/ai/items.asm:

Wild Pokémon can always Teleport regardless of level difference

Fix: Edit BattleCommand_Teleport in engine/battle/move_effects/teleport.asm:

HELD_CATCH_CHANCE has no effect

Fix: Edit PokeBallEffect in engine/items/item_effects.asm:

Credits sequence changes move selection menu behavior

Machine

(Video)

To select a move in battle, you have to press and release the Up or Down buttons. However, after playing the credits sequence, holding down either button will continuously scroll through the moves.

Fix: Edit Credits in engine/movie/credits.asm:

The [hInMenu] value determines this button behavior. However, the battle moves menu doesn't actually set [hInMenu] to anything, so either behavior may have been intentional. The default 0 prevents continuous scrolling; a value of 1 allows it. (The Japanese release sets it to 0.)

Optional fix: To explicitly set a [hInMenu] for the moves menu, edit BattleTurn in engine/battle/core.asm:

Overworld engine

LoadMetatiles wraps around past 128 blocks

This bug prevents you from using blocksets with more than 128 blocks.

Fix: Edit LoadMetatiles in home/map.asm:

Surfing directly across a map connection does not load the new map

(Video)

Fix:

First, edit UsedSurfScript in engine/events/overworld.asm:

Then edit SurfStartStep in engine/overworld/player_object.asm:

This fix will make the player enter the water at a normal walking speed, not with a slow step.

Swimming NPCs aren't limited by their movement radius

This bug is why the Lapras in maps/UnionCaveB2F.asm, which uses SPRITEMOVEDATA_SWIM_WANDER, is not restricted by its 1, 1 movement radius.

Fix: Edit CanObjectMoveInDirection in engine/overworld/npc_movement.asm:

Graphics

In-battle “” ellipsis is too high

This is a mistake with the “” tile in gfx/battle/hp_exp_bar_border.png:

Fix: Lower the ellipsis by two pixels:

Two tiles in the port tileset are drawn incorrectly

This is a mistake with the left-hand warp carpet corner tiles in gfx/tilesets/port.png:

Server based slot machines. Types of Terminals that can be managed with our sCore, Server Based System are: Casino style Slot Machine that supports remote configuration and downloading of new games. Support of the Gaming Standard Association’s G2S protocol is required. Existing slot machines can also be connected with the use of SAS2G2S converter boards. For those of you who haven’t heard of them before, server based slot systems are the latest and greatest thing being offered by slotmanufacturers. These systems allow games to be downloaded to slot.

Fix: Adjust them to match the right-hand corner tiles:

Using a Park Ball in non-Contest battles has a corrupt animation

(Video)

Fix: Edit PokeBallEffect in engine/items/item_effects.asm:

Battle transitions fail to account for the enemy's level

(Video)

There are three things wrong here:

  • wEnemyMonLevel isn't initialized yet
  • wBattleMonLevel gets overwritten after it's initialized by FindFirstAliveMonAndStartBattle
  • wBattleMonLevel isn't initialized until much later when the battle is with a trainer

Fix:

First, edit engine/battle/battle_transition.asm:

Then edit engine/battle/start_battle.asm:

Finally, edit engine/battle/read_trainer_party.asm:

Pokemon Liquid Crystal Slot Machine Machines

Some trainer NPCs have inconsistent overworld sprites

Some of these may have been intentional behavior; use your own judgment for whether to fix them.

Most trainer classes always use the same sprite and color for their overworld NPCs. There are some exceptions:

  • maps/FastShipCabins_SE_SSE_CaptainsCabin.asm: TrainerPsychicRodney should use SPRITE_YOUNGSTER, not SPRITE_SUPER_NERD
  • maps/LakeOfRage.asm: TrainerFisherAndre and TrainerFisherRaymond should use PAL_NPC_GREEN, not PAL_NPC_BLUE
  • maps/Route13.asm: TrainerHikerKenny should use PAL_NPC_BROWN, not PAL_NPC_RED
  • maps/Route44.asm: TrainerBirdKeeperVance1 should use PAL_NPC_BLUE, not PAL_NPC_GREEN
  • maps/Route44.asm: TrainerPokemaniacZach should use PAL_NPC_BLUE, not PAL_NPC_GREEN
  • maps/UnionCaveB2F.asm: TrainerCooltrainermNick should use SPRITE_COOLTRAINER_M, not SPRITE_ROCKER
  • maps/FuchsiaPokecenter1F.asm: FuchsiaPokecenter1FNurseScript should use PAL_NPC_RED, not PAL_NPC_GREEN

Most of the NPCs in maps/NationalParkBugContest.asm and maps/Route36NationalParkGate.asm are also inconsistent with their trainers from other maps:

  • BugCatchingContestant1AScript and BugCatchingContestant1BScript: BUG_CATCHER DON from maps/Route30.asm should use SPRITE_BUG_CATCHER and PAL_NPC_BROWN, not SPRITE_YOUNGSTER and PAL_NPC_RED
  • BugCatchingContestant2AScript and BugCatchingContestant2BScript: BUG_CATCHER ED from maps/Route2.asm should use SPRITE_BUG_CATCHER and PAL_NPC_BROWN, not SPRITE_YOUNGSTER and PAL_NPC_GREEN
  • BugCatchingContestant3AScript and BugCatchingContestant3BScript: COOLTRAINERM NICK from maps/UnionCaveB2F.asm should use SPRITE_COOLTRAINER_M and PAL_NPC_RED, not SPRITE_ROCKER and PAL_NPC_BLUE
  • BugCatchingContestant4AScript and BugCatchingContestant4BScript: POKEFANM WILLIAM from maps/NationalPark.asm should use PAL_NPC_RED, not PAL_NPC_BROWN
  • BugCatchingContestant5AScript and BugCatchingContestant5BScript: BUG_CATCHER BENNY from maps/AzaleaGym.asm should use SPRITE_BUG_CATCHER and PAL_NPC_BROWN, not SPRITE_YOUNGSTER and PAL_NPC_RED
  • BugCatchingContestant7AScript and BugCatchingContestant7BScript: PICNICKER CINDY from maps/FuchsiaGym.asm should use PAL_NPC_GREEN, not PAL_NPC_BLUE
  • BugCatchingContestant8AScript and BugCatchingContestant8BScript: BUG_CATCHER JOSH from maps/AzaleaGym.asm should use SPRITE_BUG_CATCHER and PAL_NPC_BROWN, not SPRITE_YOUNGSTER and PAL_NPC_RED
  • BugCatchingContestant9AScript and BugCatchingContestant9BScript: YOUNGSTER SAMUEL from maps/Route34.asm should use PAL_NPC_BLUE, not PAL_NPC_GREEN

(Note that maps/Route8.asm has three BIKERs, DWAYNE, HARRIS, and ZEKE, that use PAL_NPC_RED, PAL_NPC_GREEN, and PAL_NPC_BLUE instead of PAL_NPC_BROWN; this is intentional since they're the 'Kanto Pokémon Federation'.)

(The use of SPRITE_ROCKER instead of SPRITE_COOLTRAINER_M for COOLTRAINERM NICK may also be an intentional reference to the player's brother from the Space World '97 beta.)

Audio

Slot machine payout sound effects cut each other off

(Video)

Fix: Edit SlotsAction_PayoutAnim in engine/games/slot_machine.asm:

Team Rocket battle music is not used for Executives or Scientists

Fix: Edit PlayBattleMusic in engine/battle/start_battle.asm:

No bump noise if standing on tile $3E

Fix: Edit DoPlayerMovement.CheckWarp in engine/overworld/player_movement.asm:

Playing Entei's Pokédex cry can distort Raikou's and Suicune's

(Video)

The exact cause of this bug is unknown.

Workaround: Edit DexEntryScreen_MenuActionJumptable.Cry in engine/pokedex/pokedex.asm:

Text

Five-digit experience gain is printed incorrectly

(Video)

Fix: Edit _BoostedExpPointsText and _ExpPointsText in data/text/common_2.asm:

Only the first three evolution entries can have Stone compatibility reported correctly

Workaround: Edit PlacePartyMonEvoStoneCompatibility.DetermineCompatibility in engine/pokemon/party_menu.asm:

This supports up to six entries.

EVOLVE_STAT can break Stone compatibility reporting

Fix: Edit PlacePartyMonEvoStoneCompatibility.DetermineCompatibility in engine/pokemon/party_menu.asm:

A 'HOF Master!' title for 200-Time Famers is defined but inaccessible

(Video)

Fix: Edit _HallOfFamePC.DisplayMonAndStrings in engine/events/halloffame.asm:

Scripted events

Clair can give TM24 Dragonbreath twice

(Video)

Fix: Edit DragonsDen1F_MapScripts in maps/DragonsDen1F.asm:

Daisy's grooming doesn't always increase happiness

This is a bug with HaircutOrGrooming in engine/events/haircut.asm:

Fix: Edit data/events/happiness_probabilities.asm:

Magikarp in Lake of Rage are shorter, not longer

Fix: Edit LoadEnemyMon.CheckMagikarpArea in engine/battle/core.asm:

Magikarp length limits have a unit conversion error

Fix: Edit LoadEnemyMon.CheckMagikarpArea in engine/battle/core.asm:

Better fix: Rewrite the whole system to use millimeters instead of feet and inches, since they have better precision (1 in = 25.4 mm); and only convert from metric to imperial units for display purposes (or don't, of course).

Magikarp lengths can be miscalculated

Fix: Edit CalcMagikarpLength.BCLessThanDE in engine/events/magikarp.asm:

CheckOwnMon only checks the first five letters of OT names

(Video)

This bug can allow you to talk to Eusine in Celadon City and encounter Ho-Oh with only traded legendary beasts.

Fix: Edit CheckOwnMon in engine/pokemon/search.asm:

CheckOwnMonAnywhere does not check the Day-Care

This may have been intentional behavior; use your own judgment for whether to fix it.

This bug can prevent you from talking to Eusine in Celadon City or encountering Ho-Oh when a caught legendary beast is in the Day-Care.

Fix: Edit CheckOwnMonAnywhere in engine/pokemon/search.asm:

Internal engine routines

Saves corrupted by mid-save shutoff are not handled

(Video 1, Video 2)

This does not have a simple and accurate fix. It would involve redesigning parts of the save system for Pokémon boxes.

ScriptCall can overflow wScriptStack and crash

Fix: Edit ScriptCall in engine/overworld/scripting.asm:

LoadSpriteGFX does not limit the capacity of UsedSprites

Fix: Edit LoadSpriteGFX in engine/overworld/overworld.asm:

ChooseWildEncounter doesn't really validate the wild Pokémon species

Fix: Edit ChooseWildEncounter in engine/overworld/wildmons.asm:

TryObjectEvent arbitrary code execution

Fix: Edit TryObjectEvent in engine/overworld/events.asm:

ReadObjectEvents overflows into wObjectMasks

Fix: Edit ReadObjectEvents in home/map.asm:

ClearWRAM only clears WRAM bank 1

Fix: Edit ClearWRAM in home/init.asm:

Pokemon Yellow Slot Machine

BattleAnimCmd_ClearObjs only clears the first 6⅔ objects

Pokemon Gold Slot Machine

Fix: Edit BattleAnimCmd_ClearObjs in engine/battle_anims/anim_commands.asm:

Comments are closed.