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

Proto:Spyro: Year of the Dragon/September 4th, 2000 build

From The Cutting Room Floor
Jump to navigation Jump to search

This is a sub-page of Proto:Spyro: Year of the Dragon.

Hiddenpalace.org logo.png  This prototype is documented on Hidden Palace.

Originating from a late European review disc of the game, this September 4th, 2000 Prototype of Spyro: Year of the Dragon dates around two weeks prior to the final NTSC-U Revision 0 release version. It was released on January 21st, 2024. The actual build date of this build is not known with certainty due to the fact that both the modification dates on the files and the primary volume dates seem to have been recorded incorrectly, similar to both the final game and the later September 11th, 2000 build. Both this version and the later review build contain a save file string indicating a date of September 4th - this is thought to be more accurate for this build than for the later build. Unlike the later build, this version is characterised by a number of significant late-development changes, broad soundtrack changes, and perhaps most notably, the presence of an unused test level from early development. Juicy!

Sub-Pages

MusicIcon.png
Soundtrack and Audio Dialogue Differences
XA audio differences in the STR file.
Blank.png
Level Differences
Differences pertaining to individual level data.
Blank.png
Cutscene Differences
baby_dragon_burp.mp3
DevTextIcon.png
Unused Strings
Strings not seen during usual gameplay.
Blank.png
Collectables and Completion
Gems, eggs, and game completion.
Spyro3-SheilaTestLevel-Sheila.png
Test Level
Take the Kangaroo by the horns.
Blank.png
Cheat Codes
You dirty cheater.

File Structure

The file structure is almost identical to the released game, except the final game renaming the SPYRO3.EXE executable to SCUS_944.67 and including 3MN_BLNK.DAT.

In both versions, the file dates are inconsistent with their actual modification dates. Instead, they're most likely their creation dates.

The entirety of the Crash Bash demo is identical in this build as it is in the final game.

File Description Sep 04 SCEE Review Sep 14 NTSC-U Revision 0
CRASHBSH/ Crash Bash demo 1999/09/05 23:30 1999/09/05 23:30
3MN_BLNK.DAT License data N/A 1997/04/28 07:27
SPYRO3.EXE / SCUS_944.67 Executable 1999/12/03 11:00 1999/12/03 11:00
SPEECH.STR XA audio 1999/12/07 06:51 1999/12/07 06:51
SYSTEM.CNF Configuration 1999/10/05 05:05 1999/10/05 05:05
WAD.WAD Data and overlays 1999/12/13 09:42 1999/12/13 09:42

Primary Volume Information

The Primary Volume Information differs from the final game. Unlike the final game, the dates do not seem to reflect the actual build date of this version. Instead, the dates shown were also seen in other versions of this game, as well as some early builds of Spyro 2. This version also has a primary volume identifier, which is absent in the final.

Note that the final game mistakenly identifies its Creation date as the year 0000, instead of the year 2000, likely due to the Year 2000 Bug.

Sep 04 SCEE Review Sep 14 NTSC-U Revision 0
Creation 1999/07/12 21:04:06:00 0000/09/14 21:04:06:00
Modification 1999/09/05 23:30:00:00 1999/09/05 23:30:00:00
Identifier Spyro3 N/A

General Differences

Gameplay

  • This build features a different soundtrack. This includes many tracks that weren't used in the final game, as well as tracks that would vanish and reappear in later builds.
  • The anti-crack protection measures are not present in this version of the game.
    • The Zoe in Sunrise Spring, who delivers the anti-piracy warning, is also missing. So is the associated text for the exchange, and the code. The audio for the message is present, though, and assigned to the correct level.
    • Overlay encryption is not present in this version, either.
  • The standard modchip protection appears to be absent, too, as are the its associated strings.
  • As with other Spyro builds, dongle protection is present in this build. Without the dongle, the game will refuse to run on both real hardware and certain emulators. Instead, it will reach the Universal logo screen before halting. A dongle file for circumventing this protection has been included in the Hidden Palace release package, and should be inserted into Memory Card slot 2.
  • There are a wide array of missing sound effects, particularly in later levels.
  • There are several changed, missing or added lines of XA audio dialogue throughout the game. Notably, all Sparx audio dialogue, and all but one of Bianca's audio messages, are absent.
  • Many levels had changes to their Moby, or in-game object, placement, and a fair number of Moby models were tweaked slightly. This is especially true for the baby dragons, and a handful were given new animations later.
  • The "Quit Game" option in the pause menu quits immediately, instead of confirming first.
  • The locked chest key sprite is different, appearing narrower than the one in the final game.
  • The world and skybox darken slightly when the player is underwater, like in Spyro 2. This was removed from the final game.
    • These underwater effects are the most obvious in Evening Lake Home. The portals appear much darker and cloudier than the final game, and the underside of the water surface appears much brighter against the darkened skybox.
    • Additionally, the visuals for Desert Ruins' underwater sublevel are heavily affected. The skybox appears much brighter and cloudier.
  • While Skill Points are present, the "Skill Point!" text which displays when collecting one is not. There's also no Skill Points section in the Atlas.
  • Two skateboarding tricks - "Twisted Lemon x 2" and "Twisted Lemon x 3" - are instead called "Double Twisted Lemon" and "Triple Twisted Lemon". The original names are too long, resulting in the trick names intersecting with the score.
  • Some minigame challenges behave differently if you finish them, and then return the area they're in before leaving the level.
  • The egg requirements for Harbor Speedway and Sorceress's Lair are 100 and 120 respectively, rather than the final's 90 and 100.
  • "Sorceress's Lair" would briefly become "Sorceress' Lair" in the earliest final revision, before being reverted to "Sorceress's Lair" in later versions.
  • The infamous "Speedway Glitch" is not present in this version of the game. The bug was introduced following an attempted fix for a different, less serious Speedway bug.
  • The bug that causes the "Spike Is Born" cutscene to never play is also absent in this version. This issue was introduced following a change to how vehicles determine where to send the player.
  • Due to some issues present in this version, only 19950 gems can be obtained under normal means, instead of the full 20000. If you're willing to use some sequence breaking movement and cheat codes to warp to late levels early, this total can be bumped up to 19975.

Startup and Title

  • The Insomniac logo screen includes a small graphical error, which to be from some data being erroneously copied into the image.
  • The title screen sound effects from Spyro 2 plays instead of the audio used in the final versions of Spyro 3. The music still matches the final, however.
  • The title screen lacks any of the standard menu sound effects.
  • The game only includes one autodemo, instead of seven: a shortened, altered version of the Sgt. Byrd in Molten Crater demo from the final game.
  • The "DEMO MODE" text appears at the bottom of the screen instead of the top.
  • The "Exiting Demo Mode" and "Entering Demo Mode" strings are not present.
  • The loading screen shown before the game starts says "THE ADVENTURE CONTINUES". The final's "THE ADVENTURE BEGINS" string isn't present.

Atlas

The Atlas is the source of a lot of late-development changes:

  • The game completion percentage in the Atlas is calculated differently in this version, as seen in the Collections and Totals sections.
  • For some reason, Gems and Eggs collected in the Sparx Worlds are doubled in the totals on the contents page.
    • This won't apply if the progress flag corresponding with defeating the Sorceress is set, but this flag is never written to in this version.
  • The Sparx Worlds can only be selected directly from the contents page if you've visited Super Bonus Round. The page can still be visited by scrolling right until you reach one of the Sparx levels, and then pressing Triangle, though. This issue was fixed in the final game.
    • For unknown reasons, it isn't possible to select the Super Bonus Worlds directly from the contents page, unless you use the cheat for unlocking all levels and collecting all gems and eggs.
  • Using Select to open the Atlas, or selecting a level from one of the contents menus, places Sparx in the middle of the page, or next to where he was on the contents page, rather than moving to the corner of the screen.
  • The epilogue section can be viewed from the beginning of the game, rather than requiring you beat the Sorceress and collect 10 skill points.
    • All 12 pages of the epilogue can be viewed, too, rather than requiring all skill points before viewing the last six pages.
  • The skill point section of the Atlas is completely absent, as are some of the associated strings, for example "Skill Points". The skill point names are present and encrypted like they are in the final game, but they go unused.
    • The skill point names have been encrypted by simply XORing each of the characters in the strings with 0x6B. While this has no impact in-game, as these strings aren't visible in this version, it seems like the strings were encrypted prior to being null-terminated here. The final strings have been null-terminated prior to encryption, where the null characters are encrypted too.
  • The Square button is used to access the epilogue. In later versions, Square is used to access the skill points menu, and Circle to access the epilogue.
  • In one of the epilogue strings, "Cloud Spires" is called "Cloud City", an early name for the level:
A rhynoc primadonna entertains cloud city.
  • The "Brian Allgeier, we love you." Easter egg is absent, as is the string it uses.
  • The contents page lists "Super Bonus Worlds" as "Super Bogus Worlds".
  • The images used on the level pages are perfectly rectangular, using cropped screenshots. In the later builds, these images are given an artistic effect, and the edges have been softly erased.
  • Several of the level screenshots differ from their final equivalents:
    • Charmed Ridge's screenshot has a few transparent pixels in the middle.
    • Bentley's Outpost's screenshot matches the final one, but is zoomed out slightly, matching its appearance in an unused promotional poster.
    • Sorceress' Lair's screenshot is similar to the final, but has been taken from a slightly different angle, and shows different floor and wall textures.
    • Crawdad Farm's screenshot shows an early version of the Crawdad Boss model, and taken from a different angle.
    • Spider Town's screenshot shows an early version of the Spider Boss model, maybe its low-poly LOD model instead of its near model, a different skybox, and is taken from a different angle.
    • Starfish Reef's screenshot shows an early, blocked out version of the level, similar in appearance to how Crawdad Farm looks in the April prototype. The skybox differs from its final one, and again the screenshot was taken from a different angle.
    • Bugbot Factory's screenshot is much more polished-looking than the other Sparx levels, but is taken in a completely different part of the level.
    • Super Bonus Round's screenshot is a copy of Scorch's Pit's, but recolored and with "#50" hand written over the image.
  • When a level is completed, its name and collectable counts turn gold. In the final, this remains the case for Midnight Mountain Home, regardless of whether the player has the 5 eggs presented in the Atlas or all 6 eggs from the level. In this version, exceeding the Atlas egg count by collecting the sixth egg will turn its name and egg total black again.
  • For some reason, the Super Bonus Round is listed as having 6 eggs, instead of 1. Each of the 5 missing eggs has a name associated with it, and these strings are present in the final game, too:
Stop, thief.
You can't trust anyone these days.
You just put that back this minute.
Where do you think you're going with that egg.
The very last egg, no really it is.
  • In the final, pressing left on a world page sends you back to the latest world page you've unlocked. In this version, it will always jump to the previous page, regardless of whether it has been unlocked.

Loading Screen Skyboxes

Nine of the loading screen skyboxes changed between this version and the final game.

  • Sunrise Spring Home's skybox had major data differences, but none are noticeable in-game.
  • Midday Garden Home's skybox seems to have some minor differences, but nothing noticeable in-game.
  • Spooky Swamp's skybox's background color better blends with the skybox model in later versions.
  • Country Speedway's skybox had major data differences, but none are noticeable in-game.
  • Evening Lake Home's skybox seems to have some minor differences, but nothing noticeable in-game.
  • Midnight Mountain Home's skybox's background color better blends with the skybox model in later versions.
  • Desert Ruins' skybox has blue lava pools instead of the green lava pools found in the level. Blue lava pools were present in the level in earlier builds, and can even be seen in the level portal in the final game.
  • Haunted Tomb's skybox is a blue-black gradient. In the final, the lightest gradient colors rest at and below the horizon, while the darker part continues up through zenith. The gradient is smoother in this review build, with a lighter blue throughout.
  • Agent 9's Lab's skybox had major data differences, but none are noticeable in-game.

Help Menu Changes

Several of the pause menu "Help" screens were updated.

  • The width of the help menu doesn't scale appropriately to its contents, in this version. In particular, the boost skateboard menu in Lost Fleet is too narrow, which causes some of the text to overlap.
  • In the default help menu, the water surface swimming help menu, and the Frozen Altars help menu, "headbash" is instead written as "stomp".
  • The underwater swimming menu includes "glide", "hover" and "stomp", which would be removed in later versions due to being irrelevant to swimming.
  • The boost skateboard menu in Super Bonus Round is absent. Attempting to use the menu in-game will show the debugging error message "No help 14", 14 being the index of the Sunny Villa / Enchanted Towers skateboard help menu. This is likely due to outdated code, as it should really say "No help 15".
  • The boat help menu in Bamboo Terrace does not include "fire" in this build.
  • The submarine help menu contains an extra line, which looks pretty bad in-game:
lock-on:    when all rings are red
  • The submarine help menu also suggests using square to boost the submarine, whereas the final suggests the X button instead. Both X and Square can be used to speed up the submarine in each version.
  • The tank help menu in Haunted Tomb suggests using "L1,L2 + dir." to strafe, whereas later builds suggest "L1,R1". This matches a change in the control scheme for the vehicle.
  • The UFO help menu in Sorceress' Lair is absent. In its place, it instead shows the default help menu instead of an error, likely due to outdated code.
  • The Hunter help menu in Country Speedway has its controls switched in this build - i.e. "aim up:" is "up" and "aim down:" is "down", matching how the aiming works in-game in this build. The final inverts the controls and updates the menu accordingly.
  • The tank help menu in Sorceress' Lair is absent. Attempting to use the menu in-game will show the debugging error message "No help 19", 19 being the index of the Haunted Tomb tank help menu. This is likely due to outdated code, as it should really say "No help 27".

Credits Differences

  • The credits are not played after the "One Less Noble Warrior" or "THE END" cutscenes, in this version. As such, they can only be seen using the credits cheat code.
  • The credits have static text which appears to be flat and unmoving, like in Spyro 2. In the final game, this text rotates from left to right so that it can be seen to be 3D.
  • After the credits are finished, the loading screen is displayed. There is text on this screen, but it appears corrupted in-game due to issues with the VRAM. In the final game, the text is simply removed.
  • Each of the headings have colons, in this version. This doesn't look very good in-game, which might be why they were removed in later versions.
  • The "Published and Produced By" heading is instead "Presented By".
  • "Victoria Hoffman" is spelled "Victoria Hofman" in this version.
  • "Nora Branning" is simply written as "Nora".
  • "Aly Farrow" is simply written as "Allie".
  • "Peter Hastings" and "Michael Huang" have a switched order in this version. "Michael Huang" is simply written as "Michael".

Bugs and Oddities

  • The final game erroneously checks whether the "Bianca Strikes Back" cutscene has played before sending the player to the "Spike Is Born" cutscene, instead of checking whether the player has seen "Spike Is Born". Reaching Spike requires that the player has seen the former cutscene, meaning the latter doesn't play. This bug has not yet been introduced in the September 4th build.
    • As in the final game, using a vehicle to travel from one homeworld to the next when you haven't defeated the current world's boss will result in the player being sent to the boss instead. In addition, the corresponding cutscene will play at this point if you've not seen it yet, after which the player is sent to the boss level automatically. In the final, this cutscene will only play if the player is sent to a boss level, whereas this build does not check the destination level before showing the cutscene.
    • Thus, if a player hasn't seen a boss cutscene and attempts to travel to the next world, even if they've already completed the boss level, they're always shown the cutscene and are subsequently sent to the boss level. This doesn't really impact a normal run, but if the player (for example) warps to and completes Buzz's Dungeon without watching "Bianca Strikes Back", the cutscene will be shown to them after taking the balloon to Midday Garden Home.
    • This small code change may have introduced the "Spike is Born" cutscene bug, perhaps due to a copy-paste error.
  • Differences in how the game saves and loads the game data mean that the infamous speedway bug is not present in this version:
    • The save file format mostly matches that of the final game, but the game does not save the speedway race times to the file, unlike the final game. This means that the race records are lost whenever the player quits the game.
    • The flag indicating whether or not the race challenge has been successfully completed is neither saved nor loaded correctly in any version - instead, a value in the speedway structs which is always 0 is incorrectly saved and loaded from the file instead, whereas the race completion flag itself is never read or written to by the loading and saving functions.
    • As a result of the latter, in the review builds, the player will be re-awarded with eggs they've already obtained before in speedway races if they've quit the game since the last time they collected it. An egg will never be given to the player if its corresponding race completion flag is set, but this flag is lost upon reloading.
    • In what appears to be a failed attempt to fix this, the developers added a mechanism to award the player with the speedway race eggs in the final game - when the game is loaded, if the player has a race record under 10 minutes, then the race completion flag is set. This means that reloading the game and playing a completed race challenge will not award the player with an egg for the second time. However, as it's possible to get a race time without having actually completed it successfully, doing this will prevent the player from getting the egg altogether, as the game will behave as though they've already completed the challenge.
    • Later versions fixed this bug by also automatically setting the egg as collected whenever the race completion flag is set, whilst loading the game.
  • The textures on the whirligig and rocket sometimes corrupt during the loading screen transition. This might be due to the vehicles not yet having a designated spot in VRAM, resulting in issues after the VRAM is loaded and before the texture component is loaded.
  • The "Level Complete" text does not show up properly in this build. Instead, the "X00/X00" gems counter or the "X/X" eggs counter (whichever was shown most recently) shows up a second time, and "Level Complete" appears very quickly when it disappears.
    • "Level Complete" appears normally upon re-entry to the level, however.
  • In the final, the music volume is set when the saved game is loaded. In this version, the pause menu setting is loaded, but this alone does not actually affect the in-game music until the setting is changed manually by the player, and so the music will always start at full volume despite what the pause menu says. The sound effect volume is not affected in the same way.
  • Using the level warp cheat code to warp from either Mushroom Speedway or Country Speedway's Hunter missions to any other speedway level will place Spyro in the level at the incorrect spawn position, with the Mobys for Hunter's mission active instead of the usual time trial Mobys. This plays like putting Spyro in Hunter's mission, but there isn't much the player can do here. In Harbor Speedway, the player can follow the UFO's rings and even see the cutscene at the end of the challenge, but will be met with a "CRASHED!" message shortly afterwards.
    • Using other speedway modes does not appear to have the same effect, and warping from Honey Speedway or Harbor Speedway does not result in the glitch activating. Warping to the level the player is currently in just sets them in front of Hunter.
    • This glitch can even be seen if the player warps into a non-speedway level and then back into a speedway level again.
  • In all speedways, if you obtain all of the gems in the time attack and complete the time attack challenge at the same time, and then immediately start another challenge afterwards, the game will show the "400/400" gems notification for a second time. Later versions avoid this by making sure that it only fades out at the end of the time attack after you've seen the 400/400 gems notification for a few seconds, rather than saving it for when you're next in a challenge.
  • If a text box or an in-level cutscene plays immediately before a story cutscene starts, the aspect ratio of that interaction will persist into the cutscene.
    • When paying Moneybags to free a critter, the screen borders which are revealed during the dialogue interaction can briefly be seen retreating to the top and bottom of the screen.
    • After defeating the Sorceress, the aspect ratio from the cutscene of her reaching out of the lava remain throughout all of the post-Sorceress cutscenes.
  • Several bugs relating to gem collection are present in this version, as noted elsewhere on this page:
    • 5 gems in Lost Fleet become unobtainable due to them being set in the wrong state, causing them to behave as red (1) gems instead of the green (2) gems they're set to be.
    • The submarines in Lost Fleet interact with the submarine progress flags that only the Super Bonus Round submarines are supposed to interact with. The result of this is that in a standard playthrough the player will receive an extra 150 gems in Lost Fleet from one of the submarines, but will lost 175 gems from Super Bonus Round due to the corresponding submarine no longer dropping its gems.
    • The dogs in Haunted Tomb do not drop the purple (5) gems they're supposed to when defeated. On the lowest difficulty setting, there are four of these dogs, meaning that at least 20 gems are unobtainable, depending on the difficulty.
    • Moneybags does not correctly account for how many gems he is supposed to give the player during his final chase sequence, which usually results in the gem count in the HUD desyncing from the count in the Atlas.
  • The "THE END" cutscene is never shown to the player. In the final game, the cutscene is always shown after defeating the final boss, but in this version, the game attempts to check if you've already seen the cutscene, first. Unfortunately, it only plays the cutscene if you have already seen the cutscene, instead of if you haven't. The following GameShark code will set the necessary flag to see this cutscene, once the Sorceress is defeated:
30070bc3 0001

Spawning Oddities

The game's executable contains a small array of position vectors which are occasionally used in each of the homeworlds. The first four spawn locations used when exiting Sparx worlds, and all of these are identical in this version to the final game. However, this build is missing the next four entries, which all appear to be used when exiting boss levels. Often, they're used to place Spyro close enough to the balloon Moby for the vehicle code to run and for Spyro to thus enter the level by vehicle, but this doesn't always go as planned.

  • The first extra position vector is a duplicate of the Crawdad Farm exit point, used in Sunrise Spring Home. Exiting from Buzz's Dungeon to Sunrise Spring Home on either version shows Spyro enter the level via the vehicle, so it appears that either way Spyro is placed close enough for the vehicle to behave as usual.
  • The second is next to the vehicle in Midday Garden Home, around where the initial spawn point for the level is. Exiting from Spike's Arena on either version with or without access to a vehicle will again show Spyro entering the level via a vehicle (the balloon will be used if no vehicle is accessible yet), so again this position seems to be mostly used for placing Spyro close enough for the balloon to ensure this happens.
  • The third is in the doorway to the rocket room in Evening Lake Home. This would usually be used in a similar manner to the two above, but this behaves differently in this version, perhaps due to a combination of this spawn position being absent from the executable and due to the balloon Moby not being present in the level in this version:
    • If the player does not have a usable whirligig, they will appear in mid air far beneath the level, and will fall to their death repeatedly - specifically, they spawn at { 27316, 46760, 19976 }, the exit spawn for Sunny Villa. By contrast, in the later September 11th build, the extra spawn positions are present, while the balloon is still not present, and thus the player is simply placed in the rocket room.
    • If the player has a usable whirligig or rocket, as they would in a normal playthrough, they will simply re-enter the level on their vehicle.
  • The fourth is just outside the portal to Sorceress' Lair in Midnight Mountain Home, where the player would usually exit the level from. Exiting Sorceress' Lair behaves unusually in this build (likely again due to a lack of balloon Moby or a spawn point given in the exe), and can go one of two ways:
    • If the player does not have a usable rocket, they will appear in mid air just above the stairs to the side of the building where the rocket would usually be - specifically, they again spawn at { 27316, 46760, 19976 }, the exit spawn for Sunny Villa.
    • If the player does have a usable rocket, as they would in a normal playthrough, the above can still happen. However, sometimes, the player will instead appear within the rocket and enter the level as if they'd just travelled by rocket, instead. The rocket has been known to behave in similarly weird ways on occasion in the final game, too, and it's not known what conditions must be met for Spyro to re-enter the level via the vehicle.

Supported Models and Mobys

  • In the final, the balloon, whirligig and rocket models are present in all of the boss and homeworld levels. In this version, they're only in the levels they need to be in - i.e. no balloons in Spike's Arena, Evening Lake Home, Scorch's Pit or Midnight Mountain Home, and no whirligig in Scorch's Pit or Midnight Mountain Home.
    • The Mobys in question are absent in both their models and code in the levels in question. This would be changed in the final game.
    • This seems to have some adverse effects on gameplay when warping to levels using cheat codes. In particular, exiting a boss level to a homeworld that doesn't have a balloon Moby present will cause the player to spawn in an unusual location if there are no other forms of transport available to them yet.
    • Their addition in the final may be indirectly related to the VRAM issues on loading screens - i.e. the whirligig and rocket textures becoming corrupted during the loading sequence, possibly due to them not having a designated section in VRAM - though this is unconfirmed.
  • Two Moby classes - 941 and 942 - are totally absent from this version.
    • In the final game, Moby 942 includes a Moby which sits in the entrance to the cave in Sunrise Spring Home, and cancels Spyro's superfly if he passes through it. In this version, this Moby is absent, and so if you make it past the whirlwind without the whirlwind cancelling your superfly, it's possible to leave the upper section of the cave with superfly and carry it into the rest of the level. This Moby class is neither supported by the level's overlay code, nor placed within the level.
    • Seven instances of Moby class 941 were added to Honey Speedway in the final game - they're all absent from this version. Each one sits at the bottom of each of the beehives hanging from the trees, in the final game. In neither build do they have any code associated with them, so it's not clear what they're actually there for.
  • For some reason, the extra life butterfly model is excluded from areas 2 and 3 of Seashell Shore (the Bluto and tunnel areas) and area 2 of Spooky Swamp (Sheila's area) in this build. The model is added to these sublevels in the final game, but can't be spawned during normal gameplay in any of them.
  • Oddly, the superflame model used in the powerup gate is absent from the dragons area in Fireworks Factory, despite the fact the superflame powerup gate is present.
  • The sublevel portal visual model is absent from Bentley's Outpost, and no Mobys of this class are placed in this level either.
  • For some reason, the "?" jar code is present in Agent 9's Lab, despite the fact the model and any corresponding Mobys are completely absent. The jar isn't present in the level in any known build.
  • The whirlwind Moby is not present in Sorceress' Lair, and its code is absent in this version, too.
  • The sublevel portal visual model and any corresponding Mobys are absent from all of the sublevel areas of Super Bonus Round.
  • Several Mobys relating to Bianca - Bianca herself, and two Mobys relating to the visual effect she makes when she appears - are not placed in the final area of Super Bonus Round, nor are they modelled in this area.
  • Oddly, the skateboarding area of Super Bonus Round contains many gem baskets, and so the gem basket and its corresponding fragments are modelled in this area of this level, and the level has code to support them. In later builds, the baskets were removed, as was all code and model support for both of these Mobys.

Progress Flag Differences

Spyro 3 uses an array of bytes which store the player's progress with regard to major story and interaction events. This array is 76 bytes long in the final game, and stores information on which cutscenes have been viewed, which sublevel critters have been spoken to, whether Hunter is trapped in a cage, and which of the thieves, submarines and UFOs in Super Bonus Round have been defeated.

The array is still 76 bytes long in this version, though some of the ways in which this array is used - both read and written to - differs from the final game.

Flag 30 - Scorch Defeated

This flag is not read in Evening Lake, in this version. In later versions, it's checked when determining whether Hunter's cage cutscene should play - if Scorch has been defeated, Hunter can't get trapped again. As explained below, Hunter's cage flag is not written to in this build, and his cage cutscene can play every time the level is entered, so this ultimately has no impact on gameplay.

Flag 31 - Sorceress Defeated

In both this build and the later September 11th build, defeating the Sorceress never writes to this flag, meaning that several aspects of gameplay that rely on this feature become inaccessible:

  • The Super Bonus Worlds cannot be seen on the Atlas contents page.
    • In this version, they're called "Super Bogus Worlds", which makes this extra sad. The Super Bogus Worlds section of the Atlas is still easily accessible, though.
  • In this version, this flag also impacts the Atlas completion percentage calculation, as Super Bonus Round is excluded from the Atlas if the flag is unset. As such, this change in the calculation cannot be seen in regular gameplay.

Most other aspects of gameplay that rely on the Sorceress being defeated simply check for whether her egg has been collected, and thus they behave normally.

In addition, later builds check this flag to determine whether to show the Skill Point and Epilogue sections of the Atlas. In this version, the Skill Point section is absent, and the Epilogue section is obtainable at any time.

This flag can be set using the following GameShark code:

30070b97 0001

Flag 42 - Hunter Trapped

The progress flag indicating that Hunter is trapped in the cage is never written to in this version, so this cutscene in Evening Lake is purely visual and never actually impacts gameplay. The flag in question does still have some functionality if it is set, however.

Several of the effects of trapping Hunter differ in this version:

  • Despite disappearing from the skateboarding areas in Sunny Villa, Enchanted Towers and Lost Fleet, his skateboard sticks around and can be seen standing perfectly upright all by itself!
  • The cutscene that plays in Evening Lake which traps him would usually not play if the flag is set. In this version, it plays regardless of which flags are set.

This flag can be set using the following GameShark code:

30070ba2 0001

Flags 47-53 - Super Bonus Round Submarines

Some leftover code in Lost Fleet erroneously causes the submarines there to write to these flags, too. Usually, these flags are used to store which of the submarines have been destroyed so that each submarine will only give you gems once, so it's rather unfortunate that all of the submarines in Lost Fleet have accidentally been set to write to the first of these flags whenever they're destroyed.

A separate variable in the submarine Moby data determines how many gems a given submarine drops. All of the Lost Fleet submarines are set to drop 150 gems for some reason, which is less than the 175 gems this submarine would usually drop in Super Bonus Round. As a result, in a normal playthrough, the player will receive an extra 150 gems in Lost Fleet, but as a result one of the submarines in Lost Fleet will fail to drop any gems, leaving them 25 gems in the red.

Flag 67 - Anti-Piracy Zoe Present

The anti-crack protection is not included in this version, so this flag is never written to. It's also never read in Sunrise Spring Home, which is also true of the September 11th build, despite that build including the anti-crack.

Flag 68 - Bianca Strikes Back Cutscene Viewed

Only read by the transport balloon in this version, as is intended. In later builds, the whirligig erroneously checks this one instead of the "Spike Is Born" flag when determining whether the player should see the latter cutscene, causing it to not play.

Flag 69 - Spike Is Born Cutscene Viewed

As above, this is correctly read by the whirligig in this version, and not at all in later builds.

Flag 75 - THE END Cutscene Viewed

In both this build and the September 11th build, the flag is read to determine whether to show the player the THE END cutscene. In the final, it plays unconditionally.

Unfortunately, this was programmed wrong, so rather than showing the cutscene only if you haven't seen the cutscene yet, it shows it only if you have seen it, meaning the cutscene is never seen (and its flag is never set) in-game.

Setting the flag using a GameShark code is enough to see the cutscene, upon defeating the Super Bonus Round boss:

30070bc3 0001

Save File Information

A save file identifier string similar in structure to the ones found in some of the demo builds can be found in this version.

SPYRO_3(pal)-v.9.4

This is, in fact, a perfect match for the save file identifier used in the later September 11th build. It's likely that this identifier was only updated when the save file format was changed.

Like the demo versions, the version number looks an awful lot like a build date - but also like the demo versions, it's likely to be inaccurate (in fact, 5 of the six demo builds use the same string)! In spite of this, it's the best guess we currently have at the actual build date of this version.

This string relates to the information that is saved to the save file:

Info Sep 04 Review Sep 14 Final
Title SPYRO3 SPYRO3
Product Code YRO_3(pal) SCUS-94467
Identifier -v.9.4 SPY3_1

The product code is missing part of the string as the first two characters correspond to the game's region. A standard NTSC-U copy would begin the save string with "BA", whereas this version begins the string with "SP", resulting in a nonsense region code being saved to the memory card.

Curiously, this string says PAL, despite this being an NTSC-U version. This is further evidence to indicate that the string was not updated from a previous, earlier version, and thus this build may actually be dated slightly later. Originating discs have September 15th written on them, but this date is understood to be later than the final game, and thus cannot be used as a build date estimate.

Save Format Differences

The save format itself is mostly identical to the final game, with many of the data arrays having not changed between the builds. The sole exception is in the storage of speedway data - specifically, the game does not save the player's race times in any of the speedways. This data was added in the final game, and in addition to the inclusion of race times, the saving and loading functions would also be changed to use race times to determine whether the player has collected the race eggs or not, resulting in the infamous "speedway bug" being implemented.

Adaptive Difficulty Changes

A basic explanation of how the adaptive difficulty works in this game is as follows:

  • Every level has a small data struct for each egg containing information about the way that the difficulty should be updated when collecting this egg.
  • Every egg has a type, a sublevel number, and two "thresholds" for determining the player's performance.
  • Each egg has a recorded performance value based on how long the player took to obtain the egg, how many attempts they needed, how many times they died, etc.
  • The sublevel number is not necessarily always accurate, and is simply used to determine which of the eggs are currently in play. Only these eggs - the ones marked as part of the current sublevel - have their performance tracked and cause difficulty changes.
  • The type is a value from 1 to 3 which determines what should impact the player's performance value.
    • These types generally behave the same, and there is usually a Moby which updates the performance value if it's tracked based on the number of attempts, which don't generally look at the egg type.
    • Type 1 eggs have the additional bonus that they count up by 1 every 15 seconds of gameplay, meaning these are essentially reserved for challenges where the performance is based on how long the player has taken. Type 2 eggs don't have this property, and are thus more likely to be used in cases where the number of attempts is tracked. Type 3 eggs behave like Type 2 eggs, but do not update the difficulty settings when collected.
    • All type 1 eggs in the current area have their values incremented by 1 every 15 seconds of gameplay (even outside of the minigames themselves). Usually, if there's multiple eggs in a given area which are timed this way, the values are reset to 0 after collecting an egg.
  • Upon collecting an egg:
    • If the egg is type 1 or 2, and its sublevel value matches the current area, the egg checks the player's performance value and updates the difficulty mode accordingly. Type 3 eggs do not impact the difficulty.
    • The difficulty is scaled based on which of the thresholds have been met. A good performance meets none of the thresholds, a bad one meets one or both of them. Like golf, a lower performance score is considered better.

The following differences in the difficulty system are present in this version:

  • The high threshold of the "Destroy the sand castle" egg in Seashell Shore has a value of 32 in this build, as opposed to the value of 30 in the final. This is a type 1 egg, so this corresponds with the high threshold decreasing by 30 seconds.
  • The low threshold of the "Defeat sleepy head" egg in Spooky Swamp is 12 in this build, whereas the final is 10. The high threshold has a value of 16, whereas the final's is 14. This is a type 1 egg, so this means both thresholds decreased by 30 seconds.
  • The low threshold of the "Defeat Spike" egg in Spike's Arena is 28 in this build, whereas the final is 26. This is a type 1 egg, meaning the threshold decreased by 30 seconds.
  • The low threshold of the "Catch the ice cats" egg in Frozen Altars is 16 in this build, decreasing to 14 in the final. The high threshold is 24 here, and 22 in the final. Once again this is a type 1 egg, meaning both thresholds decreased by 30 seconds.
  • The high threshold of the "Sink the subs I" egg in Lost Fleet is 20 in this build, decreasing to 18 in the final. This is a type 1 egg, meaning the threshold decreased by 30 seconds.
  • The low threshold of the "Sink the subs II" egg in Lost Fleet is 24 in this build, decreasing to 22 in the final. This is a type 1 egg, meaning the threshold decreased by 30 seconds.
  • The low threshold of the "Cat witch chaos" egg in Charmed Ridge is 20 in this build, decreasing to 18 in the final. The high threshold is 32 here, and 30 in the final. This is a type 1 egg, meaning both thresholds decreased by 30 seconds.
  • The low threshold of the "Jack and the beanstalk II" egg in Charmed Ridge is 28 in this build, decreasing to 26 in the final. This is a type 1 egg, meaning the threshold decreased by 30 seconds.
  • The low threshold of the "Defeat Scorch" egg in Scorch's Pit is 24 in this build, decreasing to 22 in the final. This is a type 1 egg, meaning the threshold decreased by 30 seconds.
  • In this version, the "Ride the slide" egg challenge in Crystal Islands is type 1 instead of type 2. This means that the counter increases every 15 seconds the player is in the area, and the thresholds given for this timer are 12 and 20 respectively. In the final game, the thresholds were changed to 3 and 5 respectively, and it seems like the intent behind changing this was to change the behaviour of the challenge to measure something like the number of attempts or deaths instead of the time taken. However, in both this build and the final game, a Moby in the level increases the counter every frame that Spyro is grounded (i.e. standing or walking, but not jumping or sliding). This counts up at ridiculous speeds and exceeds both of the thresholds very quickly, in both this version and the final game. This behaviour does not seem to be intentional and results in the changes made to these thresholds having little impact on gameplay.
  • The Shark shootin' egg in Desert Ruins matches the final in terms of its adaptive difficulty implementation, but interestingly in the intermediate September 11th build this egg was temporarily changed to be type 3, and had its thresholds removed. The performance for this challenge may have still been recorded in said build, but it would have no impact on the difficulty setting.
  • The low threshold of the "Krash Kangaroo I" egg in Desert Ruins is 8 in this build, decreasing to 6 in the final. The high threshold is 16 here, and 14 in the final. Once again this is a type 1 egg, so both thresholds decreased by 30 seconds.
  • The low threshold of the "Krash Kangaroo II" egg in Desert Ruins is 8 in this build, decreasing to 6 in the final. The high threshold is 12 here, and 10 in the final. Once again this is a type 1 egg, so both thresholds decreased by 30 seconds.
  • The sublevel value for the "Clear the caves" egg in Haunted Tomb is erroneously set to 0 in this build. As it's a type 2 egg which counts the number of Agent 9 deaths, it's hardcoded to increment and will still update correctly (and won't increment based on the timer when in area 0), but collecting the egg will not update the difficulty due to the sublevel mismatch. This was fixed in the final, changing to 2.
  • In this version, the "Shafted!" egg challenge in Dino Mines is type 1 instead of type 2. Like the final game, it counts up every time the player fails the challenge, but in addition it counts up every 15 seconds, too. The thresholds reflect this change too, as in this version they are 16 and 32 respectively as opposed to the much lower 4 and 8 that the final uses.
  • In this version, the "Time attack" and "Race the blue footed boobies" egg challenges in Harbor Speedway are type 1 instead of type 2. Like the final game, these count up every time the player starts the challenge, but in addition they count up every 15 seconds, too. The thresholds reflect these changes too:
    • The "Time attack" thresholds are 32 and 60 in this build, and 8 and 15 in the final.
    • The "Race the blue footed boobies" thresholds are 16 and 36 in this build, and 4 and 9 in the final.
    • As both timers are type 1, they are incremented by simply being in the level. This means playing any of the three challenges in the level will increment both the time attack and race timers. These aren't correctly cleared after collecting the egg, so in this build, playing one of the challenges will result in a technically worse result in the next challenge you play, due to it accruing time from the previous one.