From 2b2c95e52b247d99a19aa48d89a1ca4e65c17171 Mon Sep 17 00:00:00 2001 From: Martha Schilling Date: Fri, 8 Dec 2023 17:37:41 +0000 Subject: [PATCH] Actually working postgame warps! FINALLY managed to get this working. The bugged warps are now working and the jank ones are less jank. Also removed the cocoon's pre-evolved moves again. --- README.md | 16 +++++++--------- constants/map_constants.asm | 2 +- data/pokemon/base_stats/kakuna.asm | 2 +- data/pokemon/base_stats/metapod.asm | 2 +- data/pokemon/base_stats/perrserker.asm | 2 +- data/pokemon/base_stats/pupal.asm | 2 +- data/tilesets/collision_tile_ids.asm | 2 +- data/tilesets/door_tile_ids.asm | 4 ---- data/tilesets/pair_collision_tile_ids.asm | 3 +++ data/tilesets/warp_carpet_tile_ids.asm | 4 ++-- data/tilesets/warp_tile_ids.asm | 2 +- gfx/blocksets/celeste.bst | Bin 2272 -> 2304 bytes gfx/tilesets/celeste.png | Bin 3104 -> 2325 bytes gfx/tilesets/ship_port.png | Bin 1125 -> 1347 bytes home/overworld.asm | 6 ++++++ maps/BrunswickGlade.blk | 2 +- maps/CelesteHill.blk | 2 +- maps/CelesteHillOutside.blk | 2 +- maps/FarawayIslandInside.blk | 4 +++- maps/FarawayIslandOutside.blk | 2 +- 20 files changed, 32 insertions(+), 27 deletions(-) diff --git a/README.md b/README.md index 1c3feb47..01604e04 100644 --- a/README.md +++ b/README.md @@ -261,8 +261,6 @@ Comprehensive list can be found on Discord. - Occasionally, menu text sets itself to scroll. - The Tradeback Tutor doesn't work properly with Rhydon for reasons likely related to its index number of 1. - Fake Tears and Nasty Plot don't quite look right when done from the opponent's side. -- Citrine Dock's warp doesn't work, meaning you have to leave Citrine using Fly -- LAST_MAP isn't updated properly when sailing from Vermilion to Citrine - After reloading the game after beating the Elite Four, Pallet Town's correct palette isn't loaded in until after leaving the house. - The Gym Leaders on Floor 6 of Silph Gauntlet don't play the correct music in battle @@ -285,7 +283,7 @@ New Pokemon: - Electabuzz -> Electivire | Use Thunder Stone - Farfetch'd -> Luxwan | L24 - Gloom -> Bellossom | Use Leaf Stone -- Golbat -> Crobat | L44 +- Golbat -> Crobat | L40 - Lickitung -> Lickilicky | L32 - Magmar -> Magmortar | Use Fire Stone - Magneton -> Magnezone | Use Thunder Stone @@ -322,7 +320,7 @@ Kanto Prototype Pokemon: - Psyduck -> Weirduck -> Golduck | L22, L33 - Raichu -> Gorochu | Trade - Ribbito -> Croakozuna | L30 -- Squeamata -> Ministare -> Iguanarch | L30, L50 +- Squeamata -> Ministare -> Iguanarch | L30, L55 - Vulpiii -> Vulpix | L15 - Wartortle -> Totartle | L36, replaces Blastoise @@ -400,19 +398,19 @@ If you use our implementations of anything at all, it is encouraged to submit Pu * Dr. Lava - Translations of some content used in this hack, particularly the 1996 Pokedex book's entries for DYKG. * Nob Ogasawara - Prototype Pokemon names, produced for DYKG. -Albatross sprites: Articuno-G, Blissey, Dugtrio-A, Electivire, Electrode-H, Exeggutor-A, Gentlarva, Glaceon, Golem-A, Hitmontop, Iguanarch, Kleavor, Leafeon, Lickilicky, Marowak-A, Melmetal, Meltan, Moltres-G, Mr. Rime, Muk-A, Ninetales-A, Perrserker, Persian-A, Politoed, Porygon-Z, Pupal, Raichu-A, Rapidash-G, Raticate-A, Rhyperior, Sandslash-A, Sandy Shocks, Scizor, Sirfetch’d, Slowbro-G, Slowking-G, Tangrowth, Toedscool, Toedscruel, Weezing-G, Wiglett, Zapdos-G +Albatross sprites: Articuno-G, Blissey, Dugtrio-A, Electivire, Electrode-H, Espeon (back), Exeggutor-A, Gentlarva, Glaceon, Golem-A, Hitmontop, Iguanarch, Kleavor, Leafeon, Lickilicky, Marowak-A, Melmetal, Meltan, Moltres-G, Mr. Rime, Muk-A, Ninetales-A, Perrserker, Persian-A, Politoed, Porygon-Z, Pupal, Raichu-A, Rapidash-G, Raticate-A, Rhyperior, Sandslash-A, Sandy Shocks, Scizor, Sirfetch’d, Slowbro-G, Slowking (back), Slowking-G, Sylveon (back), Tangrowth, Tauros-P (all forms), Toedscool, Toedscruel, Umbreon (back), Weezing-G, Wiglett, Zapdos-G -Martha’s Against Humanity sprites: Bellignan (with help from PvK), Mimmeo, Sylveon (with help from Albatross) +Martha’s Against Humanity sprites: Bellignan (front, with help from PvK), Mimmeo (front), Sylveon (front, with help from Albatross) -Albatross sprites refined by either Martha’s Against Humanity or PvK: Annihilape, Arcanine-H, Bellossom, Carapthor, Kingdra, Magmortar, Magnezone, Ministare, Porygon2, Scream Tail, Squeamata, Tauros-P, Wugtrio +Albatross sprites refined by either Martha’s Against Humanity or PvK: Annihilape, Arcanine-H, Bellossom, Carapthor, Kingdra, Magmortar, Magnezone, Ministare, Porygon2, Scream Tail, Squeamata, Tauros-P (all forms), Wugtrio RacieBeep sprites: Balumba, Blastyke, Blottle, Buu, Cactormus, Cheep, Coinpur, Croakozuna, Decilla, Fossils, Gaotora, Gavillain (edited by Albatross), Gawarhed, Gorochu (edited by Martha’s Against Humanity), Gorotora, Guardia, Jabetta (edited by Martha’s Against Humanity), Kolta, Kotora, Luxwan, Nidoreign, Omegadge (front/back), Orfry, Pendraken, Ramoose, Ribbito, Sharpoon, Totartle, Trampel, Vulpiii, Weirduck, Fossil Aerodactyl, Fossil Kabutops, Ghost, Articuno (back), Meowth (back) -Orchid: Ghost (back), Luxwan (back), Buu (back) +Orchid: Luxwan (back), Buu (back) Zeta_Null: Porygon (front) -Official sprites: Crobat, Disturban, Espeon (edited by Martha’s Against Humanity), Slowking, Steelix, Tricules (edited by Martha’s Against Humanity), Umbreon (edited by Martha’s Against Humanity) +Official sprites: Crobat (front, edited by Martha’s Against Humanity), Disturban, Espeon (front, edited by Martha’s Against Humanity), Slowking (front), Steelix (front), Tricules, Umbreon (front, edited by Martha’s Against Humanity) Original README.md proceeding; # Pokémon Red and Blue [![Build Status][ci-badge]][ci] diff --git a/constants/map_constants.asm b/constants/map_constants.asm index 07a46bcc..c94c40e0 100644 --- a/constants/map_constants.asm +++ b/constants/map_constants.asm @@ -136,7 +136,7 @@ DEF FIRST_INDOOR_MAP EQU const_value map_const SILPH_GAUNTLET_6F, 12, 12 ; $71 - Was UNUSED_MAP_6F map_const SILPH_GAUNTLET_7F, 6, 5 ; $72 - Was UNUSED_MAP_70 map_const LANCES_ROOM, 13, 13 ; $73 - map_const FARAWAY_ISLAND_OUTSIDE, 15, 18 ; $74 - Was UNUSED_MAP_72 + map_const FARAWAY_ISLAND_OUTSIDE, 15, 20 ; $74 - Was UNUSED_MAP_72 map_const FARAWAY_ISLAND_INSIDE, 15, 11 ; $75 - Was UNUSED_MAP_73 map_const POKEMON_MANSION_B2F, 15, 12 ; $76 - Was UNUSED_MAP_74 map_const MT_MOON_CRATER, 25, 25 ; $77 - Was UNUSED_MAP_75 diff --git a/data/pokemon/base_stats/kakuna.asm b/data/pokemon/base_stats/kakuna.asm index 298f8ef0..eb46ee62 100644 --- a/data/pokemon/base_stats/kakuna.asm +++ b/data/pokemon/base_stats/kakuna.asm @@ -10,7 +10,7 @@ INCBIN "gfx/pokemon/front/kakuna.pic", 0, 1 ; sprite dimensions dw KakunaPicFront, KakunaPicBack - db POISON_STING, STRING_SHOT, HARDEN, NO_MOVE ; level 1 learnset + db HARDEN, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset db GROWTH_MEDIUM_FAST ; growth rate ; tm/hm learnset diff --git a/data/pokemon/base_stats/metapod.asm b/data/pokemon/base_stats/metapod.asm index de51a72b..515d53d8 100644 --- a/data/pokemon/base_stats/metapod.asm +++ b/data/pokemon/base_stats/metapod.asm @@ -10,7 +10,7 @@ INCBIN "gfx/pokemon/front/metapod.pic", 0, 1 ; sprite dimensions dw MetapodPicFront, MetapodPicBack - db TACKLE, STRING_SHOT, HARDEN, NO_MOVE ; level 1 learnset + db HARDEN, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset db GROWTH_MEDIUM_FAST ; growth rate ; tm/hm learnset diff --git a/data/pokemon/base_stats/perrserker.asm b/data/pokemon/base_stats/perrserker.asm index 7efc1bb7..514b5454 100644 --- a/data/pokemon/base_stats/perrserker.asm +++ b/data/pokemon/base_stats/perrserker.asm @@ -10,7 +10,7 @@ INCBIN "gfx/pokemon/front/perrserker.pic", 0, 1 ; sprite dimensions dw PerrserkerPicFront, PerrserkerPicBack - db SCRATCH, GROWL, NO_MOVE, NO_MOVE ; level 1 learnset + db SCRATCH, GROWL, BITE, SCREECH ; level 1 learnset db GROWTH_MEDIUM_FAST ; growth rate ; tm/hm learnset diff --git a/data/pokemon/base_stats/pupal.asm b/data/pokemon/base_stats/pupal.asm index ea88c64a..7393291a 100644 --- a/data/pokemon/base_stats/pupal.asm +++ b/data/pokemon/base_stats/pupal.asm @@ -10,7 +10,7 @@ INCBIN "gfx/pokemon/front/pupal.pic", 0, 1 ; sprite dimensions dw PupalPicFront, PupalPicBack - db LEECH_LIFE, STRING_SHOT, HARDEN, NO_MOVE ; level 1 learnset + db HARDEN, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset db GROWTH_MEDIUM_FAST ; growth rate ; tm/hm learnset diff --git a/data/tilesets/collision_tile_ids.asm b/data/tilesets/collision_tile_ids.asm index 184b4d90..ba42e2dd 100644 --- a/data/tilesets/collision_tile_ids.asm +++ b/data/tilesets/collision_tile_ids.asm @@ -75,7 +75,7 @@ Citrine_Coll:: coll_tiles $2C, $31, $3F, $55, $0E, $2F, $23, $20, $10, $03, $1C, $1B, $0B, $0C, $21, $39, $3C, $48, $49, $58, $59 Celeste_Coll:: - coll_tiles $1e, $20, $2e, $30, $34, $37, $39, $40, $51, $52, $5a, $5c, $5e, $5f, $09, $08, $18, $19, $0c, $1c + coll_tiles $20, $2e, $30, $37, $39, $40, $51, $53, $5a, $5c, $5e, $5f, $09, $08, $18, $19, $0c, $1c RocketHouse_Coll:: coll_tiles $13, $31, $01, $53 diff --git a/data/tilesets/door_tile_ids.asm b/data/tilesets/door_tile_ids.asm index 5a097dc1..1237f6ce 100644 --- a/data/tilesets/door_tile_ids.asm +++ b/data/tilesets/door_tile_ids.asm @@ -15,7 +15,6 @@ DoorTileIDPointers: dbw INTERIOR, .InteriorDoorTileIDs ; fixes weirdness in silph co. dbw CITRINE, .CitrineDoorTileIDs dbw CELESTE, .CelesteDoorTileIDs - dbw SEAGALLOPPORT, .SeagallopPortDoorTileIDs db -1 ; end MACRO door_tiles @@ -66,6 +65,3 @@ ENDM .CelesteDoorTileIDs: door_tiles $0C, $1C - -.SeagallopPortDoorTileIDs: - door_tiles $0E, $1E diff --git a/data/tilesets/pair_collision_tile_ids.asm b/data/tilesets/pair_collision_tile_ids.asm index ec0d8fc8..a339d044 100644 --- a/data/tilesets/pair_collision_tile_ids.asm +++ b/data/tilesets/pair_collision_tile_ids.asm @@ -6,6 +6,9 @@ TilePairCollisionsLand:: db CAVERN, $20, $05 db CAVERN, $41, $05 + db CELESTE, $30, $2E + db CELESTE, $18, $2E + db CELESTE, $5E, $2E db FOREST, $30, $2E db CAVERN, $2A, $05 db CAVERN, $05, $21 diff --git a/data/tilesets/warp_carpet_tile_ids.asm b/data/tilesets/warp_carpet_tile_ids.asm index 1b8ebbbe..443a8a01 100644 --- a/data/tilesets/warp_carpet_tile_ids.asm +++ b/data/tilesets/warp_carpet_tile_ids.asm @@ -12,10 +12,10 @@ MACRO warp_carpet_tiles ENDM .FacingDownWarpTiles: - warp_carpet_tiles $01, $12, $17, $3D, $04, $18, $33 + warp_carpet_tiles $01, $0B, $12, $16, $23, $17, $3D, $04, $18, $33, $51, $52 .FacingUpWarpTiles: - warp_carpet_tiles $01, $5C + warp_carpet_tiles $01, $34, $36, $5C, $5F, .FacingLeftWarpTiles: warp_carpet_tiles $1A, $4B diff --git a/data/tilesets/warp_tile_ids.asm b/data/tilesets/warp_tile_ids.asm index 0282b6b6..4e4423b6 100644 --- a/data/tilesets/warp_tile_ids.asm +++ b/data/tilesets/warp_tile_ids.asm @@ -107,7 +107,7 @@ ENDM warp_tiles $1B, $1C, $0B, $0C, $58, $59 .CelesteWarpTileIDs: - warp_tiles $5A, $5C, $3A, $30, $50, $51 ; Like Forest but a bit better + warp_tiles $5A, $5C .RocketHouseWarpTileIDs: warp_tiles diff --git a/gfx/blocksets/celeste.bst b/gfx/blocksets/celeste.bst index bb0f6fae478b59226b67df481717061f554a7549..c9304c13c9dec9096fa3aad052b26bca46568834 100644 GIT binary patch delta 423 zcmZ{gO-{ow5QUYXhVdpb$O~tec8%kquw~Njs!FY@^0&(+H~={U(i{MeP{ai|0!Qdk z7)mBWmH6zZ(P-@VWbe`#b>qmVuO{>9J41UlaOhMvZa5w5K_KYWp zms3Qx8A9E|i;PEyB;IEmJA~X2$tIqieu5hC8~A5!C`Zf#VmOk{5eq_$g(&{jaK2B_ dnSMj4>nNi}!Vl6X&E`ZReua5;D{N)`$2XHjR>uGU delta 403 zcmZ8cL2kk@5Ojh_oeQLN5Als-k(xNFd}t4K=q-u_B5>bN@POtCNPFQKRQ*7o&?oSe zt`i$o9eHfe&RDzd7uWmKQzSl%W0XCvgm`%sBf3t|CE8`kFeYq>l*N~!h+K4aXVFi* zv_YVWCy0v&nQkCg4aiicxyluIYyh?mKnq)$LYu46|0*ZX@v>sA{oz^7wH{j?vu zkDU>_jz>x=88kHsOfMi?}t!zQI?vGn!SPkn-!g9^9wymWw!tT diff --git a/gfx/tilesets/celeste.png b/gfx/tilesets/celeste.png index c888552d13f094434c43efb405e13f575a08549d..2a50e000988cb69ade04cf5ba5c701af1ad1ef54 100644 GIT binary patch delta 2314 zcmV+l3HA1%7?l!`B!35VNliru=L`rD4OV1ZP1_K>z@;j|==^1poj5 z24YJ`L;(K){{a7>y{D4^00?kNL_t(|oXwdHZX7!dgZGlXWPdN&hZN9)`-PO`nMv^s z7*582l1Ncb`}#Aq*Xz~xYQKN~zBFEKdbj?3+OFE|?4M$l`qx=ge5dn&{rdH{f1UL; zezp2mdu#5izxO6*>boA!UIsoDL^a$6R}I&I@MpKbJHPBu-)N_P=X~9NwM_|D_c;F? zKJ~rq)_uh9n}5{=Wg@_7X1jG0UBN?!oo0OuH^ebZ`P_+qkrw-~b)j&0da>+IBt}VFRQ3E=af$e*M z_Fp9cYk#&=0LGV(PuisG6ZjI3&zhj4dt`8)L7;4DQ&zhg%G#)NcR*)-CJE_VM+jZ3 z?Jfb>lVb7CO>fVrgA@b;In68M98olQF8JE?cU^y?3<-PO8?x!zueoRdl{{*k!Tq*?*9L0oQvc@H-NyjaOQiwJs*9{HBp4 z`*xlKXX?xV274la1}p(exmF-GINj*7jptIK6l?hKcw(rN zVt;0xBft}&r;?x~U~TWRzwT5J?hwFbsrpXBy0XorQ*!Isb>{~GPUPPaArV6jq=L9Q zm&!m#hD}dFRuGvnE~66o3ewg1F=otog5MF2{xI$u|JPN+38DhzE+-($&}})m(^Ie= z2~NiX&J=ayPX@Bg) zTP(|vvgWD;yE8~K5`my~;CITA&Py^rfxaaGU*8)A;2o*}938P}ha-TJ;7x`OI0ALr z$U1dcL2)WT&^pj3*-vs?L8G4zP=4DI;6y1q1)!}u-<1QZ%eOHB=RoXUmi$iO6EJ#D zmoZbOcM8DoDf=sMDa*Jwy#bz90DqU|4tQ4%=)0Dkzy74U#K5TYuBN1YjtGtbdhQ)? z-N>^$(kIY6CF}^WeFIDcP{MWgIt7UGza_xLwA3764ji}dlnmXt0nib)>stc+gaQzo zM1-W)AF-K0bTx0=P6Iiep@7~6eY&UmlptU2Q~{V^rwX8RdY{gBng2m@J%5mmMst= zdvtzP0!V^XZ}l==|5OR!T?CkC>U;;d^OyBI5kU7O0!)5S1aPl;Du0=ie}|1DN&8oT zI;f*Fz=6M2fK3@leM1gPX3Au)*K<1?U4|m317mb-H5>>z=lwR1BNl-@&2fib4Qh*ax<Aq-~`~V1h~dWmO4V<^_%|8EbhQhL~&WqAUid1zHc9aZh!KjyT2pATLJF$Eddy~ zQvy&KI?x>{7=JW9%hmJ_{El2Iy>9K*xOVn+_iG$%EcF)+jB8VXuXNX3KvJXQljOT> zx!csvPU@W`^PJ>=%HT?pG)_LgPn$qVYbFDxkpWP~^Up}@fMko?*JTcUV6fFz2b|k? zLIB3%lmH3r8cUJuXNTLXHf%C85x{}Vp5_%ut$_~2lz%m;Hm1yP>fsRp+)FaDt~>I% z`(6B#gloJQV z8=3FsD}QhuNnD1z=4v(nDsgWQ1+N2=>!!0h;JN=w;%weo1fTal@(6Swr_T8bSbDg1 zWN-nc#J{EP_4%JQ39yq#+)uO(@btMG6ItHAyNf3SX}}!?*w+5dTcFNOC4kOT*3}m0 kcOpPif`2`q#%|w#Q9C~kwDy{m00000NkvXXt^-0~f;~7?`v3p{ delta 3099 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 diff --git a/gfx/tilesets/ship_port.png b/gfx/tilesets/ship_port.png index fa5bbb27eff172f179b95115491687f69f3262d6..b2882abde708e5d6cdb345918883752c66a68266 100644 GIT binary patch delta 1340 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/@ABgDFg<>_DdFgDFg%0ggAAAg/sV,AAABsV/sV@AAABAAAAB@CD?ACFEEE?B@BDdFggg@B@Bggggggg@B@Bggg@BD?>gg<=CFD?>gAB----@BADFEF-l--@BDE?CF----<=@ANA@CGF-----@DEFADFAB--k--@-DEEEEGF-----@-pYk--k-DE \ No newline at end of file +@BB@BB@BB@BnB@B(nXB@B'n((*BDF*(((B+F*+bCF-@C''bAAB--@BACEF--@B<>AB----@BADFEF-l--@BDE?CF----<=@ANA@CGF-----@DEFADFAB-----@-DEEEEGF-l---@--pk---l-DE--pmmm-----------------k---- \ No newline at end of file