If you appreciate the work done within the wiki, please consider supporting The Cutting Room Floor on Patreon. Thanks for all your support!

The Legend of Spyro: A New Beginning (Game Boy Advance)

From The Cutting Room Floor
Jump to navigation Jump to search

Title Screen

The Legend of Spyro: A New Beginning

Developer: Krome Studios
Publisher: Sierra Entertainment
Platform: Game Boy Advance
Released in US: October 10, 2006
Released in EU: October 27, 2006
Released in AU: November 2, 2006


AreasIcon.png This game has unused areas.
DevTextIcon.png This game has hidden development-related text.
GraphicsIcon.png This game has unused graphics.
TextIcon.png This game has unused text.
LevelSelectIcon.png This game has a hidden level select.
RegionIcon.png This game has regional differences.


PrereleaseIcon.png This game has a prerelease article

The Legend of Spyro: A New Beginning was the first game in the Legend Of Spyro series, as well as the first game in the Spyro series to have hardly any relation to the previous games whatsoever.

Sub-Page

Read about prerelease information and/or media for this game.
Prerelease Info

Level Select

Legend of Spyro A New Beginning GBA Level Select.png

Enter the CodeBreaker code

938828BEAE21
BAB1DF9639FD
D5CB236C9E34
64F35938528D
45C9A66D04A8

then press Select+R at the main menu. There's also a string for it - Level Select - in the game code.

Hmmm...
To do:
See if there's a less hackish way in.

Test Level

Choose "TEST" in the level select.

Hmmm...
To do:
Document this.

Build Information

Found between each language block:

Build: 041220-002

Unused Text

Test Conversation

Starting from 0xxCE31F4:

Sparx: Hello Spyro!
Spyro: Hello Sparx!
Sparx: Lovely day, isn't it?
Spyro: Yes, quite.

This dialogue is known internally as STR_SPYRO_CAMEO_TEST.

E3

Found after the build information is the string E3 Demo.

No Text

SpyroANB-GBA-Example.PNG

No Text will be used when the game is unable to find a correct string.

Japanese

In all languages, Japanese is placed at the end of the language list.

Placeholder Development Text

Scattered around the ROM are placeholders with the name of CAMEO_RESERVATION_PLACEHOLDER_1, CAMEO_RESERVATION_PLACEHOLDER_2, etc.

Multiple instances of NONE can be found at the end of the dialogue commands.

Near the pause menu options are ROOM_NAME_PLACEHOLDER and ROOM_NAME_UNAVAILABLE.

Underneath them are a set of cameo tests entitled SPYRO_CAMEO_TEST. There are nine of these, compared to only four of them that have coding attached.

There are a few placeholder codes for a Japanese language: BUTTONS_1_JAPANESE, BUTTONS_9_JAPANESE and LANGUAGE_JAPANESE.

Test Cutscene

SPYROANB-GBA-TestCutscene.PNG

Known as TEST_CUTSCENE, this is a very basic 2-scene test cutscene with no text, and no images.

Licensed by Nintendo Screen

SpyroANB-GBA-Nintendo.PNG

When the first copyright screen boots, this image will load in the background. If the Object layer is removed, this screen will be shown instead.

Unused Text

Ty the Tasmanian Tiger Leftovers

Some leftover development addresses from Ty the Tasmanian Tiger 3 can be found starting from offset 0xx861BC(US) and 0xx861F8 (EU):

actors\ty\ty.sp
actors\shadow_bunyip\shadow_bunyip.sp
actors\zombie_frill\zombie_frillsp
actors\quinkan01\quinkan01.sp
actors\quinkan02\quinkan02.sp
objects\dunny\dunny.sp
actors\extremebunyip\extremebunyip.sp
actors\gunyip\gunyip.sp
sprite
pos
anchor
phi
vitality
damage
no_hit_timer
adjust_dir_req
jump_flag
level_hit_flag
obj_hit_flag
invincible_flag
dig_x
dig_y
code
hit_x
hit_y
pickup_flag
held_flag
thrown_flag
hurt_flag
freeze_duration
holding_boomerang_flag
reload_timer_left
reload_timer_right
target_angle
ride_offset
ride_flag
ride_padding
throw_dist_x
throw_dist_y
boomerang_angle
throw_flag
RoomAvailable
RoomOpen
RoomComplete
GetAvailableBunyipStone
FLAMERANG_STONE
LAVARANG_STONE
PYRORANG_STONE
FROSTYRANG_STONE
FREEZERANG_STONE
UNKNOWN_ICE_1_STONE
ZAPPYRANG_STONE
UNKNOWN_ELEC_1_STONE
THUNDERANG_STONE
LASHARANG_STONE
WARPERANG_STONE
UNKNOWN_ROPE_1_STONE
DEADLYRANG_STONE
KABOOMERANG_STONE
UNKNOWN_EXP_1_STONE
INFRARANG_STONE
XRANG_STONE.EYERANG_STONE
RemoveAvailableBunyipStone
AddEquipableBunyipStone
gooboo_counter
shadowstone_counter
available_stones
equipable_stones
equipped_stones
hud_characters
boss_cass_cutscene
PickupShadowrang
game_work
interface\rangs\shadowrang.sp
interface\rangs\chassis_xray_3.sp
interface\rangs\chassis_xray_2.sp
interface\rangs\chassis_xray_1.sp
interface\rangs\chassis_xray.sp
interface\rangs\chassis_exp_3.sp
interface\rangs\chassis_exp_2.sp
interface\rangs\chassis_exp_1.sp
interface\rangs\chassis_exp.sp
interface\rangs\chassis_rope_3.sp
interface\rangs\chassis_rope_2.sp
interface\rangs\chassis_rope_1.sp
interface\rangs\chassis_rope.sp
interface\rangs\chassis_elec_3.sp
interface\rangs\chassis_elec_2.sp
interface\rangs\chassis_elec_1.sp
interface\rangs\chassis_elec.sp
interface\rangs\chassis_ice_3.sp
interface\rangs\chassis_ice_2.sp
interface\rangs\chassis_ice_1.sp
interface\rangs\chassis_ice.sp
interface\rangs\chassis_fire_3.sp
interface\rangs\chassis_fire_2.sp
interface\rangs\chassis_fire_1.sp
interface\rangs\chassis_fire.sp
interface\rangs\boomerang.sp
entity
interface\numbers\numbers.sp
interface\boss_health_bar\boss_health_bar.sp
ToJump
projectiles\boomerang\boomerang.sp
projectiles\boomerang\boomerang.sp
projectiles\boomerang\rang_fire_0.sp
pickups\ultra_stone\ultra_stone.sp
objects\tree\tree_128_top.sp
objects\tree\dsrtpillar_128_top.sp
objects\tree\palm_128_top.sp
objects\tree\quinpillar_128_top.sp
objects\tree\tree_128_bottom.sp
objects\tree\dsrtpillar_128_bottom.sp
objects\tree\palm_128_bottom.sp
objects\tree\quinpillar_128_bottom.sp
interface\push_up_enter\push_up_enter.sp
objects\level_marker\level_popup_rainforest.sp
objects\level_marker\level_popup_desert.sp
objects\level_marker\level_popup_beach.sp
objects\level_marker\level_popup_cassopolis.sp
objects\overworld_props\overworld_prop_hub_rainforest.sp
objects\overworld_props\overworld_prop_hub_desert.sp
objects\overworld_props\overworld_prop_hub_beach.sp
objects\overworld_props\overworld_prop_zone_gate.sp
objects\level_marker\level_popup_boss1.sp
objects\level_marker\level_popup_boss2.sp
objects\level_marker\level_popup_boss3.sp
objects\level_marker\level_popup_boss4.sp
objects\level_marker\level_popup_dreamtime.sp
objects\map_junction\map_junction.sp
objects\level_marker\level_popup_rainforest.sp
objects\level_marker\level_popup_desert.sp
objects\level_marker\level_popup_beach.sp
objects\level_marker\level_popup_cassopolis.sp
objects\overworld_props\overworld_prop_hub_rainforest.sp
objects\overworld_props\overworld_prop_hub_desert.sp
objects\overworld_props\overworld_prop_hub_beach.sp
objects\overworld_props\overworld_prop_zone_gate.sp
objects\level_marker\level_popup_boss1.sp
objects\level_marker\level_popup_boss2.sp
objects\level_marker\level_popup_boss3.sp
objects\level_marker\level_popup_boss4.sp
objects\level_marker\level_popup_dreamtime.sp
objects\map_junction\map_junction.sp
fx\warp_teleport_sphere\warp_teleport_sphere.sp
fx\warp_teleport_sphere\warp_teleport_ty.sp
fx\hit_effect\hit_effect.sp

Language Select

By changing the screen value to 1 on a US copy of the game, you can bring up the language select screen only found on the European game. Since the entire European texts are contained within the ROM, it functions without error.

Regional Differences

A typo, thier, was fixed to their on the copyright screen.

Joueur Game Boy, Game Boy Spieler and Jugador Game Boy in French, German & Spanish respectively, where changed to Game Boy Player.