mirror of
https://github.com/thornAvery/kep-hack.git
synced 2025-11-05 05:00:59 +13:00
Shinjuku Jack, final Mewtwo theme
This renovates the Celadon Mansion Roof House to feature a faithful restoration of Shinjuku Jack. Notes are in the script file. Also, LuciShrimp's Mewtwo theme is finished!
This commit is contained in:
parent
6bd537e8b7
commit
8cd8f1ded0
|
|
@ -94,6 +94,10 @@ New Areas
|
|||
- This area also houses Hisuian Arcanine and Electrode, the idea being that Bill's Time Machine has brought them back from the truly distant past!
|
||||
- Silph Co. holds a special challenge for Pokemon League Champions...
|
||||
|
||||
New Music
|
||||
====
|
||||
- Mewtwo has its own theme song, being a demake of the iconic Stadium battle theme. Composed by LuciShrimp.
|
||||
|
||||
Improved Areas
|
||||
====
|
||||
- Some barriers to travel across the region have been removed (for example, Pewter City can be left without defeating Brock) allowing for slightly more open world gameplay. Not all, though!
|
||||
|
|
@ -109,6 +113,7 @@ Improved Areas
|
|||
- Route 25 has been given a facelift, adding Bill's Lighthouse in place of the Sea Cottage.
|
||||
- Vermilion City now features Officer Jenny with the Squirtle. She only appears if Pikachu or Eevee are chosen.
|
||||
- Rock Tunnel has a more workable map, now being easier to go through and having new areas to explore. Includes a way to get renewable fossils, items, and other interesting bits and pieces. Overall, it makes Flash much more rewarding to bring, showing you where the items and content are instead of being an inconvenience.
|
||||
- Celadon Mansion's Roof House now features Shinjuku Jacky, a cut representation of a famous Virtua Fighter player. The house has also been redesigned, derived from the unused "Grandpa's House", featuring Nintendo 64s.
|
||||
- Pokemon Tower was shortened, being less intensive and adding room for more maps.
|
||||
- Fuchsia City has been made to resemble the more walkable LGPE version, removing the Cut trees among other things.
|
||||
- The Fighting Dojo has been revamped, featuring a design reminiscent of the prototype versions; rough floors, the elder in the back, and more. Additionally, you can now get a Hitmontop as a third option. The Karate Master is also now treated somewhat more like a Gym Leader, having Gym Scaling and a Rematch system.
|
||||
|
|
|
|||
|
|
@ -12,7 +12,9 @@
|
|||
const EVENT_FUCK ; If you trigger this you're a psychopath. Used for mom and oak post-game scenes.
|
||||
const EVENT_RECEIVED_CITRINE_PASS
|
||||
const EVENT_BEAT_OAK_ONCE
|
||||
const_skip 13
|
||||
const EVENT_BEAT_JACKY
|
||||
const EVENT_GOT_MANSION_GIFT
|
||||
const_skip 11
|
||||
const EVENT_GOT_TOWN_MAP
|
||||
const EVENT_ENTERED_BLUES_HOUSE
|
||||
const EVENT_DAISY_WALKING
|
||||
|
|
|
|||
|
|
@ -30,4 +30,5 @@
|
|||
const CELESTE ; 26
|
||||
const ROCKETHOUSE
|
||||
const BETAMART
|
||||
const JACKY
|
||||
DEF NUM_TILESETS EQU const_value
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
|
|
@ -1,2 +1,2 @@
|
|||
map_header CeladonMansionRoofHouse, CELADON_MANSION_ROOF_HOUSE, HOUSE, 0
|
||||
map_header CeladonMansionRoofHouse, CELADON_MANSION_ROOF_HOUSE, JACKY, 0
|
||||
end_map_header
|
||||
|
|
|
|||
|
|
@ -1,14 +1,17 @@
|
|||
CeladonMansionRoofHouse_Object:
|
||||
db $a ; border block
|
||||
db $0 ; border block
|
||||
|
||||
def_warp_events
|
||||
warp_event 2, 7, CELADON_MANSION_ROOF, 3
|
||||
warp_event 3, 7, CELADON_MANSION_ROOF, 3
|
||||
warp_event 5, 7, CELADON_MANSION_ROOF, 3
|
||||
warp_event 6, 7, CELADON_MANSION_ROOF, 3
|
||||
|
||||
def_bg_events
|
||||
bg_event 0, 2, 3 ; N64
|
||||
bg_event 4, 2, 4 ; Super Mario 64
|
||||
bg_event 1, 2, 5 ; Wave Race 64
|
||||
|
||||
def_object_events
|
||||
object_event 2, 2, SPRITE_HIKER, STAY, DOWN, 1 ; person
|
||||
object_event 4, 3, SPRITE_POKE_BALL, STAY, NONE, 2 ; person
|
||||
object_event 3, 3, SPRITE_ROCKER, STAY, DOWN, 1 ; person
|
||||
object_event 1, 5, SPRITE_POKE_BALL, STAY, NONE, 2 ; person
|
||||
|
||||
def_warps_to CELADON_MANSION_ROOF_HOUSE
|
||||
|
|
|
|||
|
|
@ -81,3 +81,6 @@ RocketHouse_Coll::
|
|||
|
||||
BetaMart_Coll::
|
||||
coll_tiles $01, $11, $1C, $1D, $1E, $1F, $0C, $0D, $0E, $0F, $4D, $4C
|
||||
|
||||
Jacky_Coll::
|
||||
coll_tiles $01, $40, $11, $04, $14, $02, $03, $13, $12,
|
||||
|
|
|
|||
|
|
@ -38,4 +38,5 @@ Tilesets:
|
|||
tileset Celeste, -1, -1, -1, $18, TILEANIM_WATER
|
||||
tileset RocketHouse, $0A, -1, -1, -1, TILEANIM_NONE
|
||||
tileset BetaMart, $18, -1, -1, -1, TILEANIM_NONE
|
||||
tileset Jacky, -1, -1, -1, -1, TILEANIM_NONE
|
||||
assert_table_length NUM_TILESETS
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@ WarpTileIDPointers:
|
|||
dw .CelesteWarpTileIDs
|
||||
dw .RocketHouseWarpTileIDs
|
||||
dw .BetaMartWarpTileIDs
|
||||
dw .JackyWarpTileIDs
|
||||
assert_table_length NUM_TILESETS
|
||||
|
||||
MACRO warp_tiles
|
||||
|
|
@ -110,6 +111,9 @@ ENDM
|
|||
.BetaMartWarpTileIDs:
|
||||
warp_tiles $1C, $1D, $1E, $1F, $0C, $0D, $0E, $0F, $4B, $4C
|
||||
|
||||
.JackyWarpTileIDs:
|
||||
warp_tiles $04, $14
|
||||
|
||||
.ShipPortWarpTileIDs:
|
||||
.ClubWarpTileIDs:
|
||||
warp_tiles ; end
|
||||
|
|
|
|||
|
|
@ -50,6 +50,6 @@ TrainerNames::
|
|||
li "STUDENT"
|
||||
li "FIREFIGHTER"
|
||||
li "JUNIOR"
|
||||
li "JACK"
|
||||
li "JACKY" ; Often called Jack, but the only source for that is the file names themselves, which are oft shortened or literal japanese translations; all other context is "Shinjuku Jacky".
|
||||
li "JESSIE&JAMES"
|
||||
assert_list_length NUM_TRAINERS
|
||||
|
|
|
|||
|
|
@ -743,8 +743,10 @@ JuniorData:
|
|||
db 63, BLASTOISE, OMASTAR, SANDSLASH, KINGDRA, GUARDIA, POLIWRATH, 0 ; no idea what to do with this guy's team, so I'll redo this later
|
||||
|
||||
JackData:
|
||||
; Celadon University Roof House
|
||||
db 23, MANKEY, MACHOP, SCYTHER, HITMONCHAN, 0 ; Scyther is Kage-Maru.
|
||||
; Silph Gauntlet 7F (Chief's Office)
|
||||
db 70, ANIMON, PURAKKUSU, HITMONLEE, PORYGON2, HITMONCHAN, SCIZOR, 0 ; not 100% sure what to do with this guy...
|
||||
; db 70, ANIMON, ANNIHILAPE, HITMONLEE, PORYGON2, HITMONCHAN, SCIZOR, 0 ; not 100% sure what to do with this guy...
|
||||
|
||||
JessieJamesData:
|
||||
db 14, MEOWTH, EKANS, KOFFING, 0 ; Mt. Moon
|
||||
|
|
|
|||
BIN
gfx/blocksets/jacky.bst
Normal file
BIN
gfx/blocksets/jacky.bst
Normal file
Binary file not shown.
|
|
@ -77,4 +77,8 @@ BetaMart_GFX:: INCBIN "gfx/tilesets/betamart.2bpp"
|
|||
BetaMart_Block:: INCBIN "gfx/blocksets/betamart.bst"
|
||||
|
||||
House_GFX:: INCBIN "gfx/tilesets/house.2bpp"
|
||||
House_Block:: INCBIN "gfx/blocksets/house.bst"
|
||||
House_Block:: INCBIN "gfx/blocksets/house.bst"
|
||||
|
||||
SECTION "Tilesets 5", ROMX
|
||||
Jacky_GFX:: INCBIN "gfx/tilesets/jacky.2bpp"
|
||||
Jacky_Block:: INCBIN "gfx/blocksets/jacky.bst"
|
||||
|
|
|
|||
BIN
gfx/tilesets/jacky.png
Normal file
BIN
gfx/tilesets/jacky.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.7 KiB |
10
maps.asm
10
maps.asm
|
|
@ -98,7 +98,6 @@ PewterNidoranHouse_Blocks:
|
|||
PewterSpeechHouse_Blocks:
|
||||
ViridianNicknameHouse_Blocks: INCBIN "maps/ViridianNicknameHouse.blk"
|
||||
|
||||
CeladonMansionRoofHouse_Blocks:
|
||||
ViridianSchoolHouse_Blocks: INCBIN "maps/ViridianSchoolHouse.blk"
|
||||
|
||||
CeruleanTrashedHouse_Blocks: INCBIN "maps/CeruleanTrashedHouse.blk"
|
||||
|
|
@ -173,10 +172,6 @@ INCLUDE "scripts/VermilionDock.asm"
|
|||
INCLUDE "data/maps/objects/VermilionDock.asm"
|
||||
VermilionDock_Blocks: INCBIN "maps/VermilionDock.blk"
|
||||
|
||||
INCLUDE "data/maps/headers/CeladonMansionRoofHouse.asm"
|
||||
INCLUDE "scripts/CeladonMansionRoofHouse.asm"
|
||||
INCLUDE "data/maps/objects/CeladonMansionRoofHouse.asm"
|
||||
|
||||
INCLUDE "data/maps/headers/FuchsiaMart.asm"
|
||||
INCLUDE "scripts/FuchsiaMart.asm"
|
||||
INCLUDE "data/maps/objects/FuchsiaMart.asm"
|
||||
|
|
@ -1401,3 +1396,8 @@ INCLUDE "data/maps/headers/BrunswickGlade.asm"
|
|||
INCLUDE "scripts/BrunswickGlade.asm"
|
||||
INCLUDE "data/maps/objects/BrunswickGlade.asm"
|
||||
BrunswickGlade_Blocks: INCBIN "maps/BrunswickGlade.blk"
|
||||
|
||||
INCLUDE "data/maps/headers/CeladonMansionRoofHouse.asm"
|
||||
INCLUDE "scripts/CeladonMansionRoofHouse.asm"
|
||||
INCLUDE "data/maps/objects/CeladonMansionRoofHouse.asm"
|
||||
CeladonMansionRoofHouse_Blocks: INCBIN "maps/CeladonMansionRoofHouse.blk"
|
||||
|
|
|
|||
|
|
@ -1 +1,2 @@
|
|||
|
||||
|
||||
|
||||
|
|
@ -1992,7 +1992,7 @@ wCitrineRocketHouseCurScript:: db
|
|||
wBluesHouseCurScript:: db
|
||||
wViridianCityCurScript:: db
|
||||
wRedsHouse1FCurScript:: db
|
||||
ds 1
|
||||
wCeladonMansionRoofHouseCurScript:: db
|
||||
wPewterCityCurScript:: db
|
||||
wRoute3CurScript:: db
|
||||
wRoute4CurScript:: db
|
||||
|
|
|
|||
|
|
@ -1,16 +1,109 @@
|
|||
; The Hiker in the Roof House is now Shinjuku Jacky. He was a famous Virtua Fighter player and the source of the famous "Jack" sprite.
|
||||
; Shinjuku Jack wrote the book "Virtua Fighter Maniax", the first to feature frame data for Virtua Fighter 1 and thus a very notable resource.
|
||||
; At the time, many Virtua Fighter players had "geographical names", representing their residences. Shinjuku is notably within Tokyo, near to Shibuya.
|
||||
; Because Celadon City is based on Tokyo Metropolis, specifically Shinjuku and Shibuya, and there's a map called JISAN.MAP that featured N64s, I'm placing Jacky here.
|
||||
|
||||
; This also means you actually have to beat a trainer to get the Eevee/Pikachu, so you have to work for that massive power spike.
|
||||
|
||||
; It's a lot, but I hope this is the best restoration Jacky can receive.
|
||||
|
||||
CeladonMansionRoofHouse_Script:
|
||||
jp EnableAutoTextBoxDrawing
|
||||
call EnableAutoTextBoxDrawing
|
||||
ld hl, CeladonMansionRoofHouse_ScriptPointers
|
||||
ld a, [wCeladonMansionRoofHouseCurScript]
|
||||
jp CallFunctionInTable
|
||||
|
||||
CeladonMansionRoofHouse_ScriptPointers:
|
||||
dw TheRetONator
|
||||
dw JackyBeat
|
||||
|
||||
JackyBeat:
|
||||
SetEvent EVENT_BEAT_JACKY
|
||||
ld a, EEVEE ; Getting the Pokemon the player needs before printing the text
|
||||
ld a, [wPlayerStarter] ; Load the player's starter after Eevee loads.
|
||||
cp EEVEE ; Was your starter Eevee?
|
||||
jr nz, .skip ; If not, skip this.
|
||||
ld a, PIKACHU ; Load in Pikachu if true
|
||||
.skip
|
||||
ld [wd11e], a
|
||||
call GetMonName
|
||||
ld a, $1 ; Load Jacky's NPC ID
|
||||
ldh [hSpriteIndex], a ; Slap it in the index
|
||||
call DisplayTextID
|
||||
ld a, $0
|
||||
ld [wCeladonMansionRoofHouseCurScript], a ; kick the player back downstairs
|
||||
TheRetONator: ; fallthrough
|
||||
ret
|
||||
|
||||
CeladonMansionRoofHouse_TextPointers:
|
||||
dw CeladonMansion5Text1
|
||||
dw CeladonMansion5Text2
|
||||
dw JackyN64
|
||||
dw JackyTVMario
|
||||
dw JackyTVWaveRace
|
||||
|
||||
CeladonMansion5Text1:
|
||||
text_far _CeladonMansion5Text1
|
||||
text_end
|
||||
text_asm
|
||||
CheckEvent EVENT_GOT_MANSION_GIFT
|
||||
jr nz, .gotGift
|
||||
CheckEvent EVENT_BEAT_JACKY
|
||||
jr nz, .skip
|
||||
|
||||
ld hl, JackyText1
|
||||
call PrintText
|
||||
ld a, [wSimulatedJoypadStatesEnd] ; ensuring that the text doesn't autoskip.
|
||||
and a ; yep, here too.
|
||||
call z, WaitForTextScrollButtonPress ; and here.
|
||||
call EnableAutoTextBoxDrawing ; and here. annoying.
|
||||
|
||||
call YesNoChoice ; Do they want in?
|
||||
ld a, [wCurrentMenuItem]
|
||||
and a
|
||||
jr nz, .refused
|
||||
|
||||
ld hl, JackyYes
|
||||
call PrintText
|
||||
ld c, BANK(Music_MeetMaleTrainer)
|
||||
ld a, MUSIC_MEET_MALE_TRAINER
|
||||
call PlayMusic
|
||||
ld hl, wd72d
|
||||
set 6, [hl]
|
||||
set 7, [hl]
|
||||
|
||||
call Delay3
|
||||
ld a, OPP_JACK
|
||||
ld [wCurOpponent], a
|
||||
|
||||
ld a, 1
|
||||
ld [wTrainerNo], a
|
||||
ld [wIsTrainerBattle], a
|
||||
|
||||
ld hl, JackyLossText
|
||||
ld de, JackyWinText
|
||||
call SaveEndBattleTextPointers
|
||||
|
||||
ld a, $1
|
||||
ld [wCeladonMansionRoofHouseCurScript], a
|
||||
jr .done
|
||||
.gotGift
|
||||
ld hl, JackyGift
|
||||
call PrintText
|
||||
jr .done
|
||||
.skip
|
||||
ld hl, JackyPostBeatText
|
||||
call PrintText
|
||||
jr .done
|
||||
.refused
|
||||
ld hl, JackyNo
|
||||
call PrintText
|
||||
; fallthrough
|
||||
.done
|
||||
jp TextScriptEnd
|
||||
|
||||
CeladonMansion5Text2:
|
||||
text_asm
|
||||
CheckEvent EVENT_BEAT_JACKY
|
||||
jr z, .notBeatenJacky
|
||||
lb bc, EEVEE, 25
|
||||
|
||||
; Because Eevee is a starter, we don't want it to be rendered redundant by this.
|
||||
|
|
@ -28,5 +121,60 @@ CeladonMansion5Text2:
|
|||
ld a, HS_CELADON_MANSION_EEVEE_GIFT
|
||||
ld [wMissableObjectIndex], a
|
||||
predef HideObject
|
||||
SetEvent EVENT_GOT_MANSION_GIFT
|
||||
jr .party_full
|
||||
.notBeatenJacky
|
||||
ld hl, JackyThief
|
||||
call PrintText
|
||||
; fallthrough
|
||||
.party_full
|
||||
jp TextScriptEnd
|
||||
|
||||
JackyText1:
|
||||
text_far _CeladonMansion5Text1
|
||||
text_end
|
||||
|
||||
; Unused functionality for a rematch, didn't seem worth it
|
||||
;JackyPreBeatText:
|
||||
; text_far _JackyPreBeatText
|
||||
; text_end
|
||||
|
||||
JackyPostBeatText:
|
||||
text_far _JackyAfterBattle ; using this for now, a rematch for the sake of a rematch seems iffy.
|
||||
text_end
|
||||
|
||||
JackyYes:
|
||||
text_far _JackyYes
|
||||
text_end
|
||||
|
||||
JackyNo:
|
||||
text_far _JackyNo
|
||||
text_end
|
||||
|
||||
JackyWinText:
|
||||
text_far _JackyWinText
|
||||
text_end
|
||||
|
||||
JackyLossText:
|
||||
text_far _JackyLossText
|
||||
text_end
|
||||
|
||||
JackyThief:
|
||||
text_far _JackyThief
|
||||
text_end
|
||||
|
||||
JackyTVMario:
|
||||
text_far _JackyTVMario
|
||||
text_end
|
||||
|
||||
JackyTVWaveRace:
|
||||
text_far _JackyTVWaveRace
|
||||
text_end
|
||||
|
||||
JackyN64:
|
||||
text_far _JackyN64
|
||||
text_end
|
||||
|
||||
JackyGift:
|
||||
text_far _JackyGift
|
||||
text_end
|
||||
|
|
|
|||
|
|
@ -1,10 +1,99 @@
|
|||
_CeladonMansion5Text1::
|
||||
text "I know everything"
|
||||
line "about the world"
|
||||
cont "of #MON in"
|
||||
cont "your GAME BOY!"
|
||||
text "I am SHINJUKU"
|
||||
line "JACKY!"
|
||||
|
||||
para "Get together with"
|
||||
line "your friends and"
|
||||
cont "trade #MON!"
|
||||
para "I know everything"
|
||||
line "about the world"
|
||||
cont "of #MON!"
|
||||
|
||||
para "Hm? You think you" ; if making rematches, use this for prebeat
|
||||
line "can take me?"
|
||||
done
|
||||
|
||||
; Unused for now. Doesn't make much sense.
|
||||
_JackyPostBeatText::
|
||||
text "Wanna fight again?"
|
||||
line "I'm out of your"
|
||||
cont "league!"
|
||||
prompt
|
||||
|
||||
_JackyYes::
|
||||
text "Let's see if you"
|
||||
line "can walk the"
|
||||
cont "walk! Come on!"
|
||||
done
|
||||
|
||||
_JackyNo::
|
||||
text "Maybe another"
|
||||
line "time..."
|
||||
done
|
||||
|
||||
_JackyWinText::
|
||||
text "I'm"
|
||||
line "faster than"
|
||||
cont "lightning!"
|
||||
prompt
|
||||
|
||||
_JackyLossText::
|
||||
text "I can't"
|
||||
line "believe I lost!"
|
||||
prompt
|
||||
|
||||
_JackyThief::
|
||||
text "Hey, what do you"
|
||||
line "think you're"
|
||||
cont "doing?!"
|
||||
done
|
||||
|
||||
_JackyAfterBattle::
|
||||
text "It was like you"
|
||||
line "were fighting in"
|
||||
cont "slow motion..."
|
||||
|
||||
para "Ok! I will give"
|
||||
line "you a #MON"
|
||||
cont "to help you on"
|
||||
cont "your quest!"
|
||||
|
||||
para "Over there is a"
|
||||
line "@"
|
||||
text_ram wcd6d
|
||||
text "!"
|
||||
|
||||
para "Go, go, take it!"
|
||||
|
||||
; para "I look forward"
|
||||
; line "to our next bout!"
|
||||
done
|
||||
|
||||
_JackyGift::
|
||||
text_ram wcd6d
|
||||
text " has"
|
||||
line "incredibly good"
|
||||
cont "evolutionary"
|
||||
cont "potential!"
|
||||
|
||||
para "It will help"
|
||||
line "you greatly in"
|
||||
cont "your next bout!"
|
||||
done
|
||||
|
||||
_JackyN64::
|
||||
text "It's a NINTENDO"
|
||||
line "64! The latest"
|
||||
cont "game console!"
|
||||
done
|
||||
|
||||
_JackyTVMario::
|
||||
text "A plumber is"
|
||||
line "jumping around"
|
||||
cont "in 3D! Wow!"
|
||||
done
|
||||
|
||||
_JackyTVWaveRace::
|
||||
text "Some guys in"
|
||||
line "helmets are"
|
||||
cont "racing on the"
|
||||
cont "waves!"
|
||||
done
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue