aboutsummaryrefslogtreecommitdiffstats
path: root/engine (follow)
Commit message (Collapse)AuthorAgeFilesLines
* menu: TEACH - give the whole party an OP coverage movesetAsh Ketchum2026-07-151-3/+46
| | | | | Sets every party member's 4 moves to Hyper Beam / Earthquake / Ice Beam / Thunderbolt with 31 PP each. SL0P MENU now 11 entries.
* menu: COINS cheat + expand ITEMS with evolution stones (12 items)Ash Ketchum2026-07-151-6/+21
| | | | | | COINS sets game-corner coins to 9999. ITEMS submenu grows to 12: balls, Rare Candy, Full Restore, Max Revive, Max Elixer, PP Up, and all five evolution stones (Moon/Fire/Thunder/Water/Leaf). Top menu is now 10 entries.
* menu: add NOWILD toggle + REPEL (and repurpose wc5d8 as the flag)Ash Ketchum2026-07-152-2/+34
| | | | | | | | | NOWILD toggles wild encounters off (hooked in TryDoWildEncounter, a banked file) with an ON indicator drawn on its menu row; the flag lives in the unused wc5d8 WRAM0 byte (renamed wSlopNoWild, always-accessible, defaults 0). REPEL refills repel steps to 255. (A NOCLIP toggle was prototyped but its hook lands in the full home bank - deferred until I free ROM0 budget.) SL0P MENU now: WARP HEAL MONEY BADGES DEX MAXTEAM ITEMS NOWILD REPEL.
* menu: cheat suite - MONEY, BADGES, DEX, MAXTEAM + ITEMS submenuAsh Ketchum2026-07-151-42/+203
| | | | | | | | | | | | | | SL0P MENU grows to 7 entries: WARP - town warp submenu HEAL - full party HP + status MONEY - set cash to 999999 BADGES - all 8 gym badges DEX - mark every Pokemon owned+seen MAXTEAM - whole party to Lv100, perfect DVs, maxed EVs, 999 stats/HP ITEMS - submenu: give x99 of Master/Ultra Ball, Rare Candy, Full Restore, Max Revive, Max Elixer, PP Up, Nugget (stacks via GiveItem) All verified live: money 999999, badges FF, dex filled, party Lv100/999/FFFF DVs, Master Ball x99 in the bag.
* menu: SL0P MENU scaffolding with WARP as a submenuAsh Ketchum2026-07-152-110/+223
| | | | | | | | | | | | Refactor the flat warp menu into a table-driven top-level SL0P MENU opened by SELECT. Each entry = a name in SlopMenuText + a routine in SlopMenuHandlers; handlers return carry set (a warp was started, exit) or clear (back to the menu). Ships two entries: WARP -> WarpSubmenu (the 13-destination town list) HEAL -> SlopHealParty (restore party HP + clear status), demoing an action Shared open/close display handling (hide sprites, single-space flags, wTileMap push, restore). Add an entry by appending a name+handler and bumping SLOP_MENU_COUNT. (renamed engine/warp_menu.asm -> engine/slop_menu.asm)
* intro: real 2bpp graphic splash (POKeMON SL0P EDITION)Ash Ketchum2026-07-151-16/+39
| | | | | | | | Replace the plain-text splash with an actual rendered graphic: gfx/slop/intro.png (bordered banner, big drop-shadowed SL0P logo) -> deduped tiles + tilemap via a custom rgbgfx Makefile rule (164 tiles). SlopSplash loads it into VRAM (BG map, 0x8000 tiles), holds ~2s, fades out, and restores LCDC_DEFAULT so the overworld BG addressing + OBJ sprites are intact. Reproducible from the PNG.
* intro: brief POKeMON SL0P EDITION splash on the fastboot pathAsh Ketchum2026-07-152-2/+32
| | | | | | New SlopSplash (engine/slop_intro.asm) clears the screen, draws the two centered lines, pushes to VRAM and holds ~2s, then MainMenu's autoload continues into the game. Replaces the vanilla intro/title for the fast-boot-into-save flow.
* warp: center the menu box and add a SECRET SL0P WARP MENU bannerAsh Ketchum2026-07-151-4/+18
| | | | | Two centered title lines above a horizontally-centered box (moved to col 3, row 2; cursor/items shifted to match). Cursor alignment verified.
* warp: polish menu (clear bg + hide sprites), 13 destinations, kill the birdAsh Ketchum2026-07-152-19/+40
| | | | | | | | | | | - Hide the overworld behind the menu: wUpdateSpritesEnabled=$ff + ClearSprites + ClearScreen so no map tiles or NPCs bleed through. - Single-space the list via BIT_SINGLE_SPACED_LINES + BIT_DOUBLE_SPACED_MENU (restored on exit) so all 13 fly destinations fit: the 11 towns + Route 4 + Route 10 (every map with FlyWarpData coords). - No more bird: don't set BIT_USED_FLY (teleport-in instead of fly-in), and redirect _LeaveMapAnim's .flyAnimation to the plain warp-pad fade. Verified 0 sprites active through the warp transition.
* warp: full quick-warp menu (B2)Ash Ketchum2026-07-151-6/+64
| | | | | | | | | | | SELECT in the overworld now opens a drawn town list (Pallet..Indigo) with a moving cursor; A warps to the highlighted town via the fly-warp machinery, B cancels. WarpMenu draws its box into wTileMap then replicates the tail of DisplayTextIDInit (CopyScreenTileBufferToVRAM + hWY=0 + LoadFontTilePatterns + hAutoBGTransferEnabled) so the menu is actually pushed to the screen - without it the box drew into the shadow buffer but the overworld's direct-to-VRAM scrolled map left it invisible. HandleMenuInput drives selection; the chosen index maps through WarpMapTable to a map id.
* warp: SELECT opens quick-warp (B1) + relocate intro-skip to PlayIntroAsh Ketchum2026-07-152-0/+20
| | | | | | | | | | | - home/overworld.asm: SELECT in the overworld farcalls WarpMenu, then restarts the overworld loop so the fly-warp flags get processed. - engine/warp_menu.asm (new): WarpMenu reuses the fly-warp machinery (wDestinationMap + BIT_FLY_WARP/BIT_USED_FLY). B1 warps to Pallet unconditionally to validate the hook; the real destination menu is next. - Moved the fastboot intro-skip out of home/init.asm into PlayIntro (bank 10) to reclaim ~10 bytes of home ROM0 for the overworld hook. Net boot behavior is unchanged; new-game path still shows the intro.
* fastboot: skip intro/title/menu and autoload save if one existsAsh Ketchum2026-07-152-1/+18
| | | | | | | | | | | | | | Three small hooks, all gated on CheckForPlayerNameInSRAM (carry = save present): - home/init.asm: skip 'predef PlayIntro' when a save exists - engine/movie/title.asm (PrepareTitleScreen): jp MainMenu, skipping the title screen (only the boot path hits PrepareTitleScreen; return-to-title paths jp DisplayTitleScreen directly, so they're unaffected) - engine/menus/main_menu.asm (MainMenu): after TryLoadSaveFile, if wSaveFileStatus==2 jp SpecialEnterMap, skipping the CONTINUE menu Exported CheckForPlayerNameInSRAM (:: ) so home/init.asm can farcall it. New game (no save) path is fully preserved. Ship pokeyellow.gbc only; the _DEBUG build overflows home ROM0 by 8 bytes with the init hook.
* Identify `wPikachuSpawnStateFlags` and `wPikachuMapScriptFlags` bits, and ↵Yoann Fievez2026-06-245-13/+13
| | | | | | | | `PIKAMOVEMENT_*` constants (#158) - Rename `wd471` to` wPikachuSpawnStateFlags`, with `BIT_PIKACHU_SPAWN_*` bits - Rename `wd492` to `wPikachuMapScriptFlags`, with `BIT_PIKACHU_MAP_*` bits - Introduce `PIKAMOVEMENT_*` constants for `ApplyPikachuMovementData` - Refactor `BillsHouse` scripts and Pikachu/Bill movement data
* Use `SOUND_MASK` constant in `TradeAnimCommon` (#159)CreamElDudJafar2026-06-201-1/+1
|
* Rename wd49b to wPikachuEmotionModifier (#156)Yoann Fievez2026-06-145-11/+11
| | | This variable serves as an override for Pikachu's emotion following specific events like refusing a Thunder Stone. It is automatically cleared when its mood normalizes.
* Document `UpdatePikachuHappinessAndMood` routine (#155)RainbowMetalPigeon2026-06-071-14/+18
|
* Fix comments in `IsNextTileShoreOrWater` (#152)Narishma-gb2026-05-241-5/+5
|
* Merge branch 'master' of https://github.com/pret/pokereddannye2026-04-152-3/+7
|\
| * Relabel SFX_SILPH_SCOPE to SFX_TRAINER_APPEARED (#580)PokefanMarcel2026-04-151-1/+1
| |
| * Make `DebugSetPokedexEntries` automatically adapt to `NUM_POKEMON` changes ↵kagnusdev2026-04-061-2/+6
| | | | | | | | (#576)
* | Merge branch 'master' of https://github.com/pret/pokereddannye2026-01-17105-735/+756
|\|
| * Replace hard-coded numbers with constants in haze.asm (#564)DrNyk2026-01-171-2/+2
| |
| * Align move grammar with pokecrystal (#565)SnorlaxMonster2026-01-172-135/+142
| | | | | | Add comments explaining the redundant move grammar categories inherited from the Japanese version.
| * Use macros to enforce "hidden object" constraints, and rename them to ↵Rangi2026-01-0728-29/+29
| | | | | | | | "hidden events" (#559)
| * Use macros to enforce "missable/hide/show object" constraints, and rename ↵Rangi2026-01-075-52/+53
| | | | | | | | them to "toggleable objects" (#557)
| * Replace magic number `$7` with `SLP_MASK` constant (#555)Jordan Moore2025-12-261-2/+2
| |
| * Specify a max item length for `list_start` (#552)Rangi2025-12-153-3/+3
| |
| * Comment more unreferenced local labels (#550)Narishma-gb2025-12-1528-117/+133
| |
| * Update `StatusScreen`, add `*_STATS_BOX` constants (#546)Narishma-gb2025-12-013-50/+44
| |
| * Define player and rival names once, to be used in two places (#545)Rangi2025-12-011-2/+2
| |
| * Use more Pokemon data constants, create MOVE_NAME_LENGTH (#543)Narishma-gb2025-11-2727-196/+221
| |
| * Avoid magic numbers for most `CopyData` calls (#542)Rangi2025-11-2517-49/+51
| |
| * Use `ld_hli_a_string` macro to make byte-by-byte strings more obvious (#540)Rangi2025-11-233-39/+7
| |
| * Use more hardware and graphics constants (#532)Narishma-gb2025-11-1826-71/+82
| | | | | | | | | | | | | | | | | | | | | | | | - Use `OBJ_SIZE` and `TILE_SIZE` from hardware.inc. - `SPRITESTATEDATA1_LENGTH`, `NUM_SPRITESTATEDATA_STRUCTS` and `TILE_1BPP_SIZE` are used in some places. - Highlight an oversight in `OakSpeech` where several direct MBC bank switches are requested. - Remove redundant comments in home/overworld.asm. - Add unreferenced `FillBgMap` function to avoid a byte of dead code. - Some constants added in wram.asm. - Correctly separate the commented code in `SaveMainData`.
* | Identify characters in `_OakSpeechText2B` and `Printer_GetMonStats.IDNo` (#144)abcboy1012025-12-301-1/+1
| |
* | Merge branch 'master' of https://github.com/pret/pokereddannye2025-11-1239-204/+204
|\|
| * Use features of RGBDS 1.0.0 (#537)Rangi2025-11-1232-131/+131
| |
| * Consistently use `ld [hli]`/`ld [hld]`, not `ldi`/`ldd`Rangi2025-10-052-8/+8
| |
| * Revise some RAM buffer constantsRangi2025-09-263-6/+6
| |
| * Use RAMG_SRAM_ENABLE (#530)PokefanMarcel2025-09-071-1/+1
| |
* | Misc. naming and cleanup (#139)Narishma-gb2025-09-1031-220/+189
| | | | | | | | | | | | | | | | | | * Name some printer/diploma routines * Name `wd434` * Name `NAME_LENGTH_JP` * Rename `callabd`/`calladb` to `farcall`/`callfar`
* | Merge branch 'master' of https://github.com/pret/pokereddannye2025-09-0623-176/+195
|\|
| * Update comment for clarity (#529)Vortyne2025-09-031-1/+2
| | | | | | Actually copies from battle struct to party struct to make HP and status changes to a pokemon permanent
| * Label and constant cleanup (#528)Narishma-gb2025-09-0318-172/+188
| | | | | | | | | | * Label cleanup, add some constants instead of raw numbers * Rename load/save game functions to be more explicit
| * Document a bug in `PrintBenchGuyText` (#523)Narishma-gb2025-08-171-0/+9
| |
| * Use `dname` macro to automatically pad names with `"@"` characters (#525)Rangi2025-08-171-1/+1
| |
| * Use `<STAT>_UP1_EFFECT` constants (#522)PokefanMarcel2025-08-161-4/+4
| |
| * Identify `JOYP_SGB_MLT_REQ` constantRangi422025-08-111-4/+4
| |
| * Update hardware.inc to 5.3.0 and use its `JOYP_SGB_*` constantsRangi422025-08-111-14/+14
| |
| * Use less generic labels for party finding loops (#514)kagnusdev2025-07-071-4/+4
| |