mirror of
https://github.com/thornAvery/kep-hack.git
synced 2025-09-16 10:23:34 +12:00
Fix Giovanni's Room + bits and bobs
- Fixed the Arrow Tiles, it was very silly. - Edited the text in Giovanni's Room to fix a gap, but also ended up adding citations and stuff to the file for the interested. - Edited the map in Giovanni's Room to make a little more sense. - Fixed some post-game Hall of Fame setup stuff. - Edited Install.MD to be more idiot-proof
This commit is contained in:
parent
9d935a59a1
commit
c0bf3ff49d
10
INSTALL.md
10
INSTALL.md
|
@ -1,3 +1,13 @@
|
|||
# NOTICE
|
||||
|
||||
This file comes with base pokered. To install KEP, use https://github.com/PlagueVonKarma/kep-hack whenever the link to the pokered repository comes up.
|
||||
|
||||
Also, **PLEASE** read this carefully. 99.9% of the install issues you will face will come from not reading this properly. Follow it to the letter, just with the above considered.
|
||||
|
||||
Should issues persist, I cannot give much support other than directing you to [pret's Discord](https://discord.gg/hu55wwjdAT). Please be kind and respectful to them, and ask detailed questions. Don't just post the error log, so on, so forth.
|
||||
|
||||
~ Plague von Karma.
|
||||
|
||||
# Instructions
|
||||
|
||||
These instructions explain how to set up the tools required to build **pokered**, including [**rgbds**](https://github.com/gbdev/rgbds), which assembles the source files into a ROM.
|
||||
|
|
|
@ -3,7 +3,7 @@ GiovannisRoom_Object:
|
|||
|
||||
def_warp_events
|
||||
warp_event 5, 4, VIRIDIAN_GYM, 3
|
||||
warp_event 17, 4, VIRIDIAN_CITY, 6
|
||||
warp_event 15, 4, VIRIDIAN_CITY, 6
|
||||
|
||||
def_bg_events
|
||||
|
||||
|
@ -11,8 +11,8 @@ GiovannisRoom_Object:
|
|||
object_event 4, 22, SPRITE_PAPER, STAY, DOWN, 1
|
||||
object_event 17, 8, SPRITE_PAPER, STAY, RIGHT, 2
|
||||
object_event 17, 15, SPRITE_PAPER, STAY, DOWN, 3
|
||||
object_event 8, 16, SPRITE_PAPER, STAY, RIGHT, 4
|
||||
object_event 17, 22, SPRITE_POKE_BALL, STAY, NONE, 5, TM_EARTHQUAKE
|
||||
object_event 14, 24, SPRITE_PAPER, STAY, RIGHT, 4
|
||||
object_event 16, 4, SPRITE_POKE_BALL, STAY, NONE, 5, TM_EARTHQUAKE
|
||||
object_event 5, 22, SPRITE_POKE_BALL, STAY, NONE, 6, PROTECTOR
|
||||
|
||||
def_warps_to GIOVANNIS_ROOM
|
||||
|
|
|
@ -8,9 +8,10 @@ RedsHouse2F_Object:
|
|||
;warp_event 5, 1, ROCKET_HIDEOUT_B4F, 2 ; - Test Giovanni 1
|
||||
;warp_event 5, 1, MT_MOON_SQUARE, 1 ; - Test Shop, NPCs, and Crater
|
||||
;warp_event 5, 1, CELESTE_HILL, 1 ; - Test GMolt
|
||||
warp_event 5, 1, HALL_OF_FAME, 1 ; Test post-game setup
|
||||
;warp_event 5, 1, HALL_OF_FAME, 1 ; Test post-game setup
|
||||
;warp_event 5, 1, GARNET_CAVERN_B1F, 1 ; Test GCuno
|
||||
;warp_event 5, 1, FARAWAY_ISLAND_INSIDE, 1 ; Test Mew
|
||||
warp_event 5, 1, GIOVANNIS_ROOM, 1 ; Test spinner tiles
|
||||
|
||||
def_bg_events
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@ ViridianCity_Object:
|
|||
warp_event 21, 15, VIRIDIAN_SCHOOL_HOUSE, 1
|
||||
warp_event 21, 9, VIRIDIAN_NICKNAME_HOUSE, 1
|
||||
warp_event 32, 7, VIRIDIAN_GYM, 1
|
||||
warp_event 32, 3, GIOVANNIS_ROOM, 2
|
||||
warp_event 33, 3, GIOVANNIS_ROOM, 2
|
||||
warp_event 12, 15, VIRIDIAN_PRE_GYM, 1
|
||||
|
||||
def_bg_events
|
||||
|
|
|
@ -1 +1 @@
|
|||
............@AABAAAAB..DoFnF..@*+B 55..D
F GF..D
F ''F..D
F 59..D
F'..HwEJ55..DF555..D^F*+AAB..DGGqF..SF..HIIJIIIIJ.
|
||||
............@AABAAAAB..DoF:;F..@+B 55..DwEF GF..DwEF 5'F..DwEF 59..DwEF'..H
J55..DF555..DF*+AAB..DGGq^..DSCG5..HIIJ3333J.
|
|
@ -2112,7 +2112,8 @@ wRoute23CurScript:: db
|
|||
wSeafoamIslandsB4FCurScript:: db
|
||||
wRoute18Gate1FCurScript:: db
|
||||
wBattleTentCurScript:: db
|
||||
ds 5
|
||||
wGiovannisRoomCurScript:: db
|
||||
ds 4
|
||||
wGameProgressFlagsEnd::
|
||||
|
||||
UNION
|
||||
|
|
|
@ -1,5 +1,10 @@
|
|||
GiovannisRoom_Script:
|
||||
jp EnableAutoTextBoxDrawing
|
||||
call EnableAutoTextBoxDrawing
|
||||
ld de, GiovannisRoom_ScriptPointers
|
||||
ld a, [wGiovannisRoomCurScript]
|
||||
call ExecuteCurMapScriptInTable
|
||||
ld [wGiovannisRoomCurScript], a
|
||||
ret
|
||||
|
||||
GiovannisRoom_ScriptPointers:
|
||||
dw GiovannisRoomScript0
|
||||
|
@ -13,7 +18,7 @@ GiovannisRoomScript0:
|
|||
ld hl, GiovannisRoomArrowTilePlayerMovement
|
||||
call DecodeArrowMovementRLE
|
||||
cp $ff
|
||||
jp z, CheckFightingMapTrainers
|
||||
jr z, .done ; Normally this checks for map trainers, but since there's none, we can remove them.
|
||||
ld hl, wd736
|
||||
set 7, [hl]
|
||||
call StartSimulatingJoypadStates
|
||||
|
@ -21,10 +26,12 @@ GiovannisRoomScript0:
|
|||
call PlaySound
|
||||
ld a, $ff
|
||||
ld [wJoyIgnore], a
|
||||
ld a, $3
|
||||
ld a, $1
|
||||
ld [wCurMapScript], a
|
||||
.done
|
||||
ret
|
||||
|
||||
; Some tile movements were removed due to either being unnecessary or ports from Viridian Gym itself.
|
||||
GiovannisRoomArrowTilePlayerMovement:
|
||||
map_coord_movement 12, 16, GiovannisRoomArrowMovement1
|
||||
map_coord_movement 14, 15, GiovannisRoomArrowMovement2
|
||||
|
@ -34,11 +41,8 @@ GiovannisRoomArrowTilePlayerMovement:
|
|||
map_coord_movement 15, 8, GiovannisRoomArrowMovement7
|
||||
map_coord_movement 12, 9, GiovannisRoomArrowMovement8
|
||||
map_coord_movement 14, 9, GiovannisRoomArrowMovement9
|
||||
map_coord_movement 13, 10, GiovannisRoomArrowMovement10
|
||||
map_coord_movement 15, 10, GiovannisRoomArrowMovement11
|
||||
map_coord_movement 12, 11, GiovannisRoomArrowMovement12
|
||||
map_coord_movement 14, 11, GiovannisRoomArrowMovement13
|
||||
map_coord_movement 14, 5, GiovannisRoomArrowMovement14
|
||||
db -1 ; end
|
||||
|
||||
GiovannisRoomArrowMovement1:
|
||||
|
@ -78,32 +82,18 @@ GiovannisRoomArrowMovement9:
|
|||
db D_UP, 1
|
||||
db -1 ; end
|
||||
|
||||
GiovannisRoomArrowMovement10:
|
||||
db D_RIGHT, 5
|
||||
db -1 ; end
|
||||
|
||||
GiovannisRoomArrowMovement11:
|
||||
db D_RIGHT, 3
|
||||
db -1 ; end
|
||||
|
||||
GiovannisRoomArrowMovement12:
|
||||
db D_UP, 1
|
||||
db D_RIGHT, 2
|
||||
db D_UP, 2
|
||||
db -1 ; end
|
||||
|
||||
GiovannisRoomArrowMovement13:
|
||||
db D_UP, 3
|
||||
db -1 ; end
|
||||
|
||||
GiovannisRoomArrowMovement14:
|
||||
db D_RIGHT, 4
|
||||
db -1 ; end
|
||||
|
||||
GiovannisRoomScript4:
|
||||
ld a, [wSimulatedJoypadStatesIndex]
|
||||
and a
|
||||
jp nz, LoadSpinnerArrowTiles
|
||||
jr nz, .GiovannisRoomLoadSpinnerArrow
|
||||
xor a
|
||||
ld [wJoyIgnore], a
|
||||
ld hl, wd736
|
||||
|
@ -111,6 +101,8 @@ GiovannisRoomScript4:
|
|||
ld a, $0
|
||||
ld [wCurMapScript], a
|
||||
ret
|
||||
.GiovannisRoomLoadSpinnerArrow
|
||||
farjp LoadSpinnerArrowTiles
|
||||
|
||||
GiovannisRoom_TextPointers:
|
||||
dw GiovannisRoomText1
|
||||
|
|
|
@ -149,14 +149,14 @@ ResetLegendaryPokemon:
|
|||
.skipArticuno ; Rinse and repeat.
|
||||
ld a, DEX_ZAPDOS
|
||||
call HoFIsPokemonBitSet
|
||||
jr z, .skipZapdos
|
||||
jr nz, .skipZapdos
|
||||
ResetEvent EVENT_BEAT_ZAPDOS
|
||||
ld a, HS_ZAPDOS
|
||||
call ShowThis
|
||||
.skipZapdos
|
||||
ld a, DEX_MOLTRES
|
||||
call HoFIsPokemonBitSet
|
||||
jr z, .skipMoltres
|
||||
jr nz, .skipMoltres
|
||||
ResetEvent EVENT_BEAT_MOLTRES
|
||||
ld a, HS_MOLTRES
|
||||
call ShowThis
|
||||
|
@ -175,7 +175,7 @@ ResetLegendaryPokemon:
|
|||
; So, we put this here.
|
||||
ld a, DEX_MEW
|
||||
call HoFIsPokemonBitSet
|
||||
jr z, .skipMew
|
||||
jr nz, .skipMew
|
||||
ResetEvent EVENT_BEAT_MEW
|
||||
ld a, HS_MEW
|
||||
call ShowThis
|
||||
|
@ -184,28 +184,28 @@ ResetLegendaryPokemon:
|
|||
jp z, .skipGalarianBirdsAndMewtwo ; If you haven't cleared the game yet, you've not met the Galarian Birds. So we may as well skip processing all this.
|
||||
ld a, DEX_ARTICUNO_G
|
||||
call HoFIsPokemonBitSet
|
||||
jr z, .skipArticunoG
|
||||
jr nz, .skipArticunoG
|
||||
ResetEvent EVENT_BEAT_ARTICUNO_G
|
||||
ld a, HS_GARNET_ARTICUNO_G
|
||||
call ShowThis
|
||||
.skipArticunoG
|
||||
ld a, DEX_ZAPDOS_G
|
||||
call HoFIsPokemonBitSet
|
||||
jr z, .skipZapdosG
|
||||
jr nz, .skipZapdosG
|
||||
ResetEvent EVENT_BEAT_ZAPDOSG
|
||||
ld a, HS_BRUNSWICK_ZAPDOS_G_2
|
||||
call ShowThis
|
||||
.skipZapdosG
|
||||
ld a, DEX_MOLTRES_G
|
||||
call HoFIsPokemonBitSet
|
||||
jr z, .skipMoltresG
|
||||
jr nz, .skipMoltresG
|
||||
ResetEvent EVENT_BEAT_GALARIAN_MOLTRES
|
||||
ld a, HS_MOLTRES_G
|
||||
call ShowThis
|
||||
.skipMoltresG
|
||||
ld a, DEX_MEWTWO
|
||||
call HoFIsPokemonBitSet
|
||||
jr z, .skipGalarianBirdsAndMewtwo
|
||||
jr nz, .skipGalarianBirdsAndMewtwo
|
||||
ResetEvent EVENT_BEAT_MEWTWO
|
||||
ld a, HS_MEWTWO
|
||||
call ShowThis
|
||||
|
|
|
@ -1,3 +1,9 @@
|
|||
; Much of the text here is taken from real Giovanni lore. You could say I wanted to write a love letter to Giovanni as a character here.
|
||||
; If you read all this, thank you for loving this character as much as I do.
|
||||
; ~ Plague von Karma
|
||||
|
||||
; Mysteries of the Earth is a book written by Giovanni in the Adventures Manga. In that book, he is confirmed to have discovered Rhyperior.
|
||||
; Additionally, in Adventures, his first caught Pokemon was a Weedle - this is why he uses Beedrill.
|
||||
_GiovannisRoomText1::
|
||||
text "MYSTERIES OF THE"
|
||||
line "EARTH - GIOVANNI"
|
||||
|
@ -9,19 +15,16 @@ _GiovannisRoomText1::
|
|||
|
||||
para "Its name is"
|
||||
line "RHYPERIOR."
|
||||
cont "However, it"
|
||||
cont "cannot be"
|
||||
cont "obtained with"
|
||||
cont "items found in"
|
||||
cont "KANTO naturally."
|
||||
|
||||
para "A PROTECTOR is"
|
||||
line "required, which"
|
||||
cont "we managed to"
|
||||
cont "import here."
|
||||
para "We can't get it"
|
||||
line "obtained with"
|
||||
cont "items native to"
|
||||
cont "KANTO. We must"
|
||||
cont "use a PROTECTOR."
|
||||
|
||||
para "It unfortunately"
|
||||
line "fails to address"
|
||||
para "Unfortunately,"
|
||||
line "RHYPERIOR does"
|
||||
cont "not address"
|
||||
cont "RHYDON's poor"
|
||||
cont "SPEED. Ergo, it"
|
||||
cont "cannot use my"
|
||||
|
@ -30,20 +33,23 @@ _GiovannisRoomText1::
|
|||
cont "full potential."
|
||||
done
|
||||
|
||||
; Madame Boss, Giovanni's mother, is from a Japan-exclusive Radio Drama.
|
||||
; http://www.rigelatin.net/copycat/saga/origin/dramaep1.php
|
||||
; In Pokemon Origins, Giovanni is confirmed to have begun with a Charmander.
|
||||
; This combines those two facts.
|
||||
_GiovannisRoomText2::
|
||||
text "It's a torn-out"
|
||||
line "page from an"
|
||||
cont "old diary..."
|
||||
|
||||
para "Aug 1st, 1975"
|
||||
line "I managed to"
|
||||
cont "get my first"
|
||||
cont "#MON."
|
||||
para "Aug 1st, 1975" ; Did you know we calc'd the year here?
|
||||
line "I got my first"
|
||||
cont "#MON!"
|
||||
|
||||
para "It's a CHARMANDER!"
|
||||
line "But...I have to"
|
||||
cont "keep this a"
|
||||
cont "secret from"
|
||||
|
||||
para "But...I must keep"
|
||||
line "it a secret from"
|
||||
cont "mother."
|
||||
|
||||
para "She would auction"
|
||||
|
@ -56,6 +62,12 @@ _GiovannisRoomText2::
|
|||
line "you!"
|
||||
|
||||
done
|
||||
; We never have Giovanni use Charizard, as he's never shown doing so, even in Origins.
|
||||
; My assumption is one of the following;
|
||||
; - He doesn't want it involved with his Yakuza activities.
|
||||
; - He released it.
|
||||
; - His mother ended up selling it.
|
||||
; I like giving the player the opportunity to think about this too!
|
||||
|
||||
_GiovannisRoomText3::
|
||||
text "Various financial"
|
||||
|
@ -63,12 +75,11 @@ _GiovannisRoomText3::
|
|||
cont "scattered on"
|
||||
cont "the floor..."
|
||||
|
||||
para "PROTECTOR: ¥3,000"
|
||||
para "PROTECTOR: ¥3,000" ; Giovanni discovered the Protector's use with Rhyperior.
|
||||
|
||||
para "DIRE HIT: ¥5,200"
|
||||
para "DIRE HIT: ¥5,200" ; Giovanni uses this in battle.
|
||||
|
||||
para "DEVELOPMENT OF"
|
||||
line "TM27: ¥15,000"
|
||||
para "TM27 R&D: ¥15,000" ; Giovanni is confirmed to have created Fissure in vanilla RBY. He also says he made Earthquake in FRLG, but it feels contrived.
|
||||
|
||||
para "Business: ¥100,000"
|
||||
|
||||
|
@ -76,6 +87,7 @@ _GiovannisRoomText3::
|
|||
|
||||
done
|
||||
|
||||
; This is a reference to the Radio Drama. Jessie's mother dies trying to find it.
|
||||
_GiovannisRoomText4::
|
||||
text "It's a document"
|
||||
line "about a failed"
|
||||
|
|
Loading…
Reference in a new issue