LOADING ...

GTA 3 - Hidden Developer Tools - Feat. Badger Goodger

301K+ views   |   8K+ likes   |   213 dislikes   |  
May 05, 2019

Thumbs

GTA 3 - Hidden Developer Tools - Feat. Badger Goodger
GTA 3 - Hidden Developer Tools - Feat. Badger Goodger thumb GTA 3 - Hidden Developer Tools - Feat. Badger Goodger thumb GTA 3 - Hidden Developer Tools - Feat. Badger Goodger thumb

Transcription

  • Hello, everyone!
  • This is Badger Goodger, and today we are going to look at the hidden debug features which
  • were used to test GTA 3 in the past.
  • Before we go any further, I wanted to thank Fire Head for finding and explaining these
  • interesting debug features to us so that we could show them to you.
  • And I hope you don’t forget to thank him either for the exclusive material you will
  • only see in this video.
  • Without any further ado, let’s finally start discussing these debug features.
  • Before we get into the thick of it, do you know what “debug” or “debugging” actually means?
  • To put it into simple terms, “debugging” is the process of finding and resolving defects
  • or bugs within a game.
  • And to make it even easier for you to understand, let’s look at the example.
  • Right now you are looking at the real debug feature, which was used by the developers
  • to render object collision and hitboxes in real time.
  • These elements represent an invisible layer of the game which we don’t see, but that
  • we can nonetheless interact with by messing around the game world.
  • Could you say that it was very important to debug these elements at least visually?
  • Of course.
  • That was the reason why they made and used this feature and here is an example how could do it. they
  • Some of you might already know that there is this an invisible but solid object at the
  • gas station in Portland.
  • You can’t ram it nor you can go through it.
  • If you really want to, you can jump on it.
  • I guess we’ve all experienced similar bugs in the past, and there isn’t much we as
  • the gamers can do about it.
  • But if you were a developer, then you could just enable this debug feature and look around this place.
  • As you can see, someone put a collision box here.
  • Of course, it doesn’t make any sense why it should be here meaning it is a bug.
  • And that, ladies and gentlemen, is a debugging process.
  • There is no doubt that gamers don’t really need to have these secret development tools in their games.
  • Not to mention that the game sometimes uses too many resources to process them,
  • wasting the performance for nothing.
  • As a result, the developers usually try to remove debug functionalities from the normal version of the game.
  • They usually tested the game by making a special “debug build” of the game,
  • which has tons of debug features to mess around with.
  • And speaking of a debug build…
  • In 2013, there was a lucky dude who had in his possession and tried to sell an Xbox development kit
  • with the debug build of San Andreas.
  • Back then, no one had a clue if it was real, nor did anyone know where he got it.
  • According to these unique screenshots he provided, the game was filled with debug functionalities.
  • Just look at this screenshot!
  • Turns out, this “Render Collision Lines” debug feature survived at least till the GTA San Andreas era.
  • Heck, if you are familiar with the official Bradygames guide, then you will find this
  • yellow text very familiar as well.
  • Welp, this build was legit, I wonder where it ended up going.
  • By the way, if you have a debug build or even a beta build of GTA game in your hands, then
  • you can contact us and see if we can work something out.
  • But since we don’t have such builds in our hands right now, we’ll have to show you
  • what Fire Head managed to find in the final version of GTA 3.
  • If you don’t remember or didn’t know, GTA 3 was initially developed on the PlayStation 2 platform.
  • This is important, because the developers used a special developer console by the name of “PS2 TOOL”.
  • You can occasionally see them on the old photos of developer’s lairs in Scotland.
  • This special console combined both a PC on Linux... and, of course, a PlayStation 2.
  • Both of these platforms had their own video output.
  • And hell, I can’t ignore the fact that this dev console was huge.
  • Just look at the retail PS2, it is so small in comparison with the PS2 TOOL.
  • Since the game was initially developed on this console, the developers came up with a cool trick.
  • They used the first controller to play the game while a second controller was used to debug the game.
  • Interestingly enough, we can actually activate this functionality even in the final version of the game,
  • and special thanks for this goes to “aap”.
  • By using the second controller, one thing the developer could do is activate a special debug camera.
  • In other words, it is a free camera, which allows you to fly around the map and go just about anywhere.
  • Just think about it, this is the official camera hack in all its glory.
  • I bet the developers used it a lot during their testing sessions.
  • Additionally, this camera allowed them to teleport Claude at the camera’s current coordinates
  • as I’m showing you on this footage.
  • Thanks to this feature, we can appear, for instance, in front of Sam Houser inside of
  • the Ammu-Nation he works at.
  • What can we do here?
  • Well, we can give him a high five!
  • So yeah, you can teleport yourself anywhere else and it will take you a couple of to do so.
  • I guess, it was very convenient to use it in the past.
  • The teleportations works even if you are driving a car.
  • Thanks to this, you can now teleport yourself into the car crusher and see what the game will do about it.
  • Welp, Claude will be recycled into a scrap metal and the game won’t even crash.
  • I am 99% sure that the developers tried to debug it in the past...
  • I think...
  • But the debug camera wasn’t the only option available on the second controller.
  • The developer could also: Speed up the time and test how the game changes
  • day and night cycles…
  • Change the weather...
  • And here’s a fun fact for you about that, according to a different version we have,
  • the game could also reload a “timecycle” file...
  • And finally the developer could disable in-game HUD.
  • This is what a typical gamer can’t do unless using a mod or a hack.
  • You don’t have to be a genius to guess that they used these features not only to debug pesky bugs in the game,
  • but also to make some juicy pre-release screenshots and trailers
  • for us by following these simple steps:
  • Activate the free camera...
  • disable the hud...
  • Make an interesting scene...
  • and voila, here is a good screenshot to share.
  • On the other hand, the developers sometimes didn’t have a lot of fun debugging the game.
  • One of the features that they probably didn’t have fun working with was “Process Slow Mode.”
  • If this special mode is enabled, then you have to hold one special button on the second
  • pad to normally play this game...
  • BUT as soon as you release this button, the game will freeze.
  • Starting from this moment, the game won’t even allow you to trigger the pause menu leaving you stuck in a limbo.
  • Just press and hold that button again and the game will allow you to play as if nothing
  • has happened until you release it again.
  • During the freeze, you can press another special button and the game will proceed just one frame.
  • It seems that the developers used this special mode to analyze something frame by frame.
  • I guess it was very tedious job to do, but no one said that all aspects of game development would be fun.
  • But anyways, don’t forget that this game was developed with tons of missions and various tasks for us.
  • If you didn’t know, these elements are controlled by the “game scripts”,
  • which are stored in “main.scm” file.
  • If a developer was given the task of testing them, then he could make special “game scripts”
  • by adding an extra “debug” thread before compiling them.
  • This thread enabled some extra debug features, which could be triggered, once again,
  • via the second controller.
  • Thankfully for us, they left these compiled scripts and their sources in the mobile port of the game.
  • So, what are we waiting for? Let’s take a look at them!
  • Right after you click on “New Game”, in a couple of seconds you will appear in front
  • of Luigi’s club with tons of cash in your pocket.
  • If you didn't notice, there are no missions on the map, but thankfully, these debug scripts
  • allow you to select any mission you want.
  • The game even shows you the mission giver at the bottom of the screen.
  • When you select a mission, it doesn’t actually start, but instead the game creates a marker
  • on the map so you could get there and trigger the mission.
  • Does this mean that the developers had to use the debug camera to get there and step
  • on the mission marker to play?
  • Not really.
  • Instead, these special scripts allowed them to appear near these markers by teleporting
  • him forwards and backwards.
  • I guess they teleported Claude until they appeared in front of the right place and only
  • then they selected the mission they wanted to play.
  • Yes, it does seem goofy, but at least it worked.
  • Interestingly enough, as soon as you appear on another island, the game will open all
  • roads leading to this island.
  • If you teleport Claude back, then the island will be closed.
  • For some very strange reason, this option is missing in the leaked mission sources.
  • What is more interesting is that there are no “ROADON” and “ROADOFF” strings
  • in the game text files, which is a mystery.
  • If during a playthrough something went wrong, then the developer could easily end Claude’s
  • misadventures by exploding his head.
  • This is how they could fail a mission.
  • And if the developer was driving a vehicle and did this, then the game created a massive
  • explosion, which sets the car on fire.
  • Why should the developer continue playing a mission, if he could just press this tricky
  • button combination and end it like that or by exploding Claude’s brain?
  • Well, instead of just being able to end Claude’s adventures, they also implemented some kind
  • of a god mode in these scripts, which they could enable or disable on fly.
  • For some very strange reason, they decided to reuse the same button that disables and enables the HUD.
  • As a result, it is pretty hard to notice this feature if you don’t know about its existence in the first place.
  • In my honest opinion, this invulnerability isn’t as good as you might think.
  • First of all, it won’t protect you from the water, because the water is still dangerous for Claude.
  • Secondly, it won’t save you from an explosion while you’re sitting in a car, which is a shame.
  • On the other hand, you can easily mess around with the missions without thinking about your
  • health status or worrying getting shot.
  • Furthermore, these debug scripts also allowed the developer to enable and disable a special
  • “debug flag” in the game scripts.
  • When this flag was activated, the developer could visually check coordinate zones and
  • involved entities in the mission.
  • In other words, thanks to this flag, you can now, for instance, see how your partner 8-Ball
  • moves around the ship during the “Bomb Da Base” mission.
  • It’s no secret that it works quite simple.
  • You can also check if a help message appears when you enter this invisible scripted zone.
  • Do you see that Misty is highlighted?
  • Well, that’s because she is used in this mission as an entity.
  • As you can see, it was a good tool to debug these things.
  • Fun fact, the variable which activates this flag is called “debug crap” in the mission sources.
  • And there it is, folks, the true humor of Rockstar Games in all its glory...
  • well, in this case, internal glory.
  • The developers also decided to implement an interesting “cheat mode” in these debug
  • scripts, which they could enable or disable.
  • If this “cheat mode” was enabled then the developer could trigger some additional
  • cool features like some kind of a slow motion.
  • I guess this feature helped them to make much better screenshots and footage for trailers,
  • because why wouldn’t they use it in way?
  • Doesn’t this scene look cinematic to you?
  • What’s more interesting is the fact that you can trigger slow motion even if you are driving a car.
  • In other words, everything looks epic in this mode.
  • Don’t you agree?
  • Without any doubt, this feature looks cool.
  • However, when you activate it, the game physics might break.
  • For instance, if you activated it while in motion, then be prepared to experience this
  • strange bug, when the game shoots Claude out with a huge force.
  • Luckily for us, there is a god mode, but without it, be prepared to see wasted screen a lot.
  • Fun fact, it can happen with the peds too.
  • Just look at this thing!
  • It is kinda strange to see peds falling from the sky or other messes that happen while
  • using slow motion.
  • Maybe these bugs occur due to the outdated code, but who knows.
  • I also wonder if it was intended to ram cars with Claude when you activate this mode.
  • If that was the case, then we can take a look at these particles.
  • Usually you see them very briefly, but not in this mode.
  • Moreover, you can take a look at the gun shells.
  • If it was intended as well, then the developers could debug them in an interesting way.
  • What I like the most about this feature is this scene.
  • I bet the developers knew how to entertain themselves while testing the game, because,
  • you know, debugging process is a boring thing to do.
  • If the developer pressed another button, then he could turn moving cars off.
  • It means that he won't see peds driving cars around the city anymore.
  • Hell, now nothing can stop you from driving recklessly around the city... apart from parked cars.
  • Just avoid them, if you can.
  • If they pressed that button again, then Liberty City will be flooded with cars again, but
  • what was the point of implementing such an option in the first place?
  • Let’s pretend that you are a developer and you can’t concentrate on your work, because
  • these pesky drivers are whining and constantly honking at you and getting in the way.
  • What you can do?
  • Well, just turn them off.
  • I wonder why they didn’t do the same with the talkative peds.
  • Furthermore, thanks to these debug scripts, the developer also had an ability to save
  • current Claude’s coordinates in a text file with the name of “temp_debug”.
  • Cool thing is, the game stores them in rows, meaning that the developer could leave some
  • notes after the coordinates and maybe pass this file to another dev so he could check these places.
  • At least I would do it like that.
  • If you thought it would be a cool idea to have a vehicle spawner in these scripts, then you are totally right!
  • The developers have the same idea!
  • They could spawn or even despawn any random vehicle they could get got.
  • Sadly, the randomization is clunky, but at least it works.
  • If the game refused to load a vehicle, then the game would display this text below.
  • As a result, the developer had to find what was the cause of this problem, because it
  • shouldn’t be like that.
  • Fun fact, according to the mission sources, the ability to recolour a spawned vehicle
  • was removed from these debug scripts.
  • Technically speaking, they disabled the code from this feature in the sources meaning it
  • is possible to bring it back.
  • After compiling new version of these scripts, this feature works flawlessly.
  • As you can see, the colour is totally random, and I bet no one expected to see a blue Ambulance
  • in this clip.
  • If a developer turned “Cheat Mode” off, then he would lose all additional debug features,
  • but at the same he would have received a new ability to change the weather.
  • Technically speaking, it is the same option as I showed you before, but this time, they
  • implemented it in a different way.
  • The game even shows you that the weather is changed.
  • Furthermore, the game doesn’t reload the “timecycle” file.
  • I think it’s safe to say that it was an alternative option to use.
  • Of course, the developers could debug in-game missions by using many other different methods
  • and ways, but sadly, we don’t know about them with one exception.
  • Thankfully for us, they forgot to remove the “Debug Stuff in Release” function.
  • This strange thing basically returns on screen the value of an opcode.
  • The first value in every single row represents the number of an opcode, while the second
  • value returns either true or false.
  • For instance, by looking at this example we can clearly see that the “IS_PLAYER_SITTING_IN_CAR”
  • opcode returned “True” and we can’t argue with that.
  • But it would be bad if it returned false while sitting in a car.
  • I hope you got the idea.
  • I don’t think that the developers would have been required to constantly use these
  • full game scripts with debug threads in the past, because there was no need to use them
  • if their goal was to check the map or something else.
  • In this case, I bet the developer used another set of game scripts…simple ones... which,
  • thankfully, were left in mobile version of the game with their sources.
  • Let’s take a look at them!
  • By using these scripts, the game spawns Claude on the famous Callahan bridge with two “Cheetah’s” nearby.
  • According to the mission sources, these “Cheetah’s” are named as “test cars”.
  • They also decided to reuse the famous vehicle spawner… this time with a fully working
  • recolour functionality.
  • Sadly, that’s pretty much it as far as what you can do with these simple scripts, and
  • I guess there was no need to have the rest of the features from the debug game scripts.
  • Fun fact: according to the mission sources, the variable, which stores spawned vehicles
  • in memory is actually named “magic car”.
  • But that shouldn’t come as a surprise.
  • After all, this thing falls out of the sky with the ability to change colours.
  • Can we say that it is an obscure Easter egg?
  • And lastly, the official name for these simple game scripts is “Test script for Industrial Level”.
  • If you didn’t know, “Industrial” is “Portland” where we are initially spawned.
  • And now be prepared for a mystery.
  • If you launch a retail version of GTA 3 on PS2 TOOL, then you will notice that the game
  • still outputs formatted text on the second screen.
  • This cool glimpse shows us that during the game’s development, the developers used
  • the first screen to play the game, while on the second screen they analyzed what exactly
  • the game loaded and how fast, which file it opened, and other important stuff we don’t
  • even understand.
  • Honestly, it’s strange that they decided to leave this option in the final version
  • of the game, because your retail PS2 can't even display this stuff.
  • On the other hand, if you play this game on PCSX2 emulator, then this text will appear
  • in the output window.
  • But do you know what is so special about this formatted text?
  • Well, there is an interesting Easter egg, which only the developers could see.
  • If the game detected that in some “.ide” file ped or car path coordinates repeated,
  • then the game would display the following text on the second screen:
  • “Aaron is too chicken to eat meat!” and then the game will show the place where they repeated.
  • It looks like someone made fun of Aaron Garbut, who was the art director of GTA 3.
  • Was he a vegetarian back then?
  • If I had to guess, he probably didn’t like this Easter Egg any more than he liked meat.
  • Don’t forget that this game is from 2001, so it’s gonna have some blocky models and
  • wacky animations.
  • Have you ever wondered where they could test or debug them in real time?
  • Well, they could probably do it in this special “AnimViewer” mode with a black background.
  • Within this mode, the developer could: rotate the selected model…
  • zoom in or zoom out with a camera…
  • and play various ped animations.
  • More options from this mode are available on Xbox version, where, for some reason, the
  • background isn’t black.
  • This is a bug, so just ignore it.
  • So.. in this mode, the developer also could look at:
  • other ped models…
  • transport...
  • wheel models…
  • weapon models...
  • and other in-game models.
  • According to the code, if a developer selected a vehicle, he could reload the “carcols” file.
  • If you didn’t know, this file contains the car colour data...
  • If a developer selected a ped, then, according to the code, he could reload a file, which
  • stores ped animations.
  • Judging from the leftovers we have, this mode definitely had more options in the past, but,
  • unfortunately, they were fully cut from the final version of the game.
  • But hey, we are very lucky to even know about its existence.
  • Speaking of peds…
  • Did you know that the developers tried to make complex A.I. in this game?
  • Yeah, that’s right!
  • And in order to debug it, they used this special “PedText” feature, which displays above
  • all nearby peds their “state”, “objective”, “personality” and even their “wait state” status.
  • In other words, thanks to this feature, the developers could see what the peds are doing or thinking about.
  • And if there was a bug in their behaviour, then they could have fixed it using this.
  • Pretty cool, huh?
  • Of course, we don’t really need to know this much information about their behaviour,
  • but I must note that the developers tried their best to make their behaviour interesting and complex.
  • I guess we should say thanks to them for this!
  • Have you ever seen these mysterious screenshots with “version 3.0” or “PR” labels in the past?
  • A lot of people thought that these screenshots were photoshopped, because these labels look kinda cheap.
  • Turns out, these screenshots are legit, because there is a “Display Game Debug Text” function
  • in the game, which can display build version of the game on the screen.
  • The retail PC version of the game, for instance, is marked as “version 1.0”.
  • Thanks to this function, by using a tricky combination on the second controller, the
  • developer could also activate this additional debug line with Claude’s current coordinates
  • and a map zone where we are currently located at.
  • By using a slightly different combination, the developer could enable a similar line,
  • but this time with the FPS counter.
  • This is a very strange choice of information to display, but I bet the developers knew
  • more about what they needed to see to properly debug the game with this function.
  • By the way, have you ever messed around with the menu editor in the past?
  • If that answer is yes, then you might have tried to bring this unused sub-menu by the
  • name of “Menu Debug” back to the game.
  • Sadly for you, these options don’t seem to work anymore.
  • The thing you can enable by messing around is this strange flickering effect.
  • According to the game code, this menu was initially introduced in the PS2 version of the game,
  • and thanks to the other versions that we have, we can finally show you what these options do!
  • Thanks to “Reload IDE”, the developer had an ability to reload some sections in
  • “GTA3.IDE” file while playing the game.
  • However, the code from this option seems to be outdated as it crashes the final game.
  • Thanks to the “Reload IPL” option, the developer had an ability to reload some “IPL” files
  • and re-initiate some other things in the game while playing the game.
  • If you want to know more about this option, then it’s best to pause the video right now!
  • Unfortunately, this option crashes the game as well, and once again, you can blame the outdated code.
  • Fun fact: this function also tries to reload unexisting IPL files, which are now missing
  • from the final version of the game.
  • Looks like in the early days the islands weren’t divided into a few files.
  • I wonder when they decided to do that...
  • The next option in this menu activated the already known “Debug Flag” in the scripts.
  • Looks like the developers could enable this feature either in this menu or by using those
  • debug game scripts triggering this feature from the second controller.
  • The “Big White Debug Light Switched” option is one strange damn thing in this menu and
  • I will explain to you why.
  • If you activate this thing and use the debug camera, then you will notice
  • a “Big White Debug Light” under the camera.
  • There might be a chance that the developers used it to test how the in-game light will
  • spread or lie on the collision.
  • This is a great example where you can see a difference between a model and its collision.
  • This would be a pretty strange thing to use if you wanted to look around dark places.
  • Don’t you think so?
  • If this option was enabled in that menu, then by pressing a specific button on the second
  • controller, the light will go off for a short amount of time.
  • I guess that was the reason to name it “switched”, but what was the point of doing it?
  • It’s a pretty strange thing.
  • If you turn “Show Ped” or “Car Road Groups” ON in this menu, then the game will
  • highlight for you so called “treadables”.
  • The treadable is an object with “road” properties.
  • Interesting thing is, the colour depends on mysterious “FloodFill” parameter, and
  • you can read more about it by pausing the video.
  • According to the formatted text, the game states that there are 87 FloodFill groups
  • for peds and only 4 groups for cars.
  • For some reason, the game lies by one unit, but let’s look at the smallest group - the car group.
  • If you turn “Show car road groups” ON, then we can clearly see a pattern in these groups here.
  • Everything that the game highlights in red has car paths.
  • Everything else that’s highlighted in green doesn’t have them.
  • That’s how we can distinguish between at least two groups out of three.
  • The problem is, the pattern breaks in this place, which is highlighted in a blue colour.
  • This is the same place that the formatted text warns you about, because its car nodes
  • aren’t connected with nearby objects.
  • On the other hand, there are 86 FloodFill ped groups, and as we know, there are only
  • 7 colours, meaning that the colours repeat.
  • As a result, it’s pretty hard to distinguish between similar objects.
  • But, this option isn’t completely worthless.
  • I noticed that in this place there’s a pattern.
  • As you can see, peds from the yellow zone for the most part stay inside this yellow zone.
  • BUT peds from cyan zone can easily go to this yellow zone and maybe get back to cyan.
  • It’s not known how the developers could use this option to test the game, but I wanted
  • to say special thanks to aap and Nick007J for the additional information about this option!
  • In my opinion, “Show Collision Polys” is a dangerous option in this menu.
  • If you enable it, then the background will immediately start flickering.
  • If someone in a development team suffered from epilepsy, then it would be bad freaking
  • tool to visually check model collision with.
  • On the bright side, thanks to this tool, the developer, for instance, could find holes
  • in the map, where the player can fall and respawn nearby as I’m showing you now.
  • I guess that was the reason to implement this annoying flickering effect, because despite
  • it’s seizuriffic effects it kinda helps to spot these holes.
  • As you can see, the collision has different colours.
  • These colours represent the type of surface.
  • As a result, the developer could also check if it uses a proper surface type.
  • And I’ve gotta say, I find it very interesting that this option only triggers the flickering
  • effect on the PC version.
  • I wonder if it was even intended or not...
  • According to the leftover code, the “Parse Heap” option should have displayed information
  • about the memory load, which was dumped in a text file with the name of “heap”.
  • It seems that the developers used this text file to analyze RAM load during the play session.
  • I guess it was very important to do, because PS2 has only 32 megabytes worth of RAM.
  • Sadly the "Show Cull Zones" option doesn't work in any version we have, but fortunately
  • we know what it did in the past
  • and special thanks for this information goes to "aap"!
  • This option was meant to show statistics on screen about how useful the zone culling is.
  • It was very important, because these special zones help the game hide these places under
  • certain circumstances for a better performance.
  • If you didn’t know, they are located around the entire map,
  • and you can see this in the map viewer made by “aap”!
  • It is kinda sad to find that the “Debug Streaming Requests” option doesn’t work in this menu.
  • Judging from its name, this option could have something to do with the streaming.
  • On the bright side, we are still lucky enough, because some other versions have two streaming
  • debug features which we can activate with the second controller.
  • When the developer triggered the first combination, the game displayed to him a list of things,
  • which were loaded by the game during the resource loading time.
  • By triggering the second combination, the developer could see a list, where the game
  • showed him what it was going to load.
  • Just know that it was very important to optimize streaming.
  • Thanks to the hard work of the developers, we as the players don’t suddenly see a loading
  • screen when the game would try to load something into the memory as if you had traveled from
  • one island to another.
  • Interestingly enough, if you take the first mobile port of the game and connect a controller
  • to it, then you will be able to debug rendering in this game.
  • For instance, you can disable the game’s ability to render peds in this game and that’s
  • what the name of the “Dont Render Peds” function says as well.
  • All that’s left of the peds are their shadows.
  • When you trigger the “Dont Render Objects” function, the game will stop rendering objects
  • which are listed in “object.dat” file.
  • I bet you could guess this function just by hearing its name.
  • It’s worth noting that when you disable the ability to render something in the game,
  • it doesn’t mean that these things just vanish.
  • The game still loads them, but it doesn’t waste any resources to display it.
  • The next function is called “Dont Render Water” and this is what exactly it does in the game.
  • By using this feature, the developer could do something like see how various objects
  • are placed under the water.
  • Pretty cool feature.
  • Sadly, the code from the “Dont Render Vehicles” function seems to be outdated, because when
  • you trigger this function, you will notice that the game stops rendering boats, but not
  • the rest of the vehicles, which is strange.
  • Here is a cool tidbit for you.
  • If you enable this feature and enter the boat, you can imagine that you are a flying dutchman,
  • or maybe on an invisible waterski.
  • It is pretty funny to see that you are operating an invisible boat making bubbles and waves behind.
  • Maybe they would use this to debug those, too?
  • The next function on our list is “Dont Render Buildings” and this is what exactly it does
  • in the game as well.
  • Technically speaking, the word “buildings” in the code mean “static map objects,”
  • so don’t mix this up with other objects like LODs or anything else where the rendering
  • can be disabled by using other combinations.
  • What can you do with this?
  • Well, I noticed that if you enter a car and drive, then you can see how the game activates
  • low polygon models, or to simply put, LODs, in the distance.
  • I guess this feature could be used to debug them in the past.
  • The next function disables the ability to render so called “Big Buildings”.
  • This is what the developers called previously mentioned LODs in the distance.
  • I assume that the developers could use this feature to see how the game loads static map
  • objects, but who knows.
  • I wonder why they loved the word “building” so much...
  • Interestingly enough, you can actually disable the game’s ability to render every single
  • thing which we already talked about in the past.
  • If you did that, then enjoy the emptiness.
  • Honestly, it’s interesting to drive around the city at night when the game looks like this.
  • Just look at these strange reflections and light sources in your way.
  • You know, it might give you a small clue to understand how this game was made.
  • It was kinda intriguing to spot another feature with the name of “Aarons LOD Multiplier”
  • near the “Dont Render” functions.
  • I wonder if this was coded by the same guy who was “too chicken to eat meat”.
  • Sadly for us, Aaron’s feature doesn’t work in the final version of the game, but
  • there might be a chance that the developers used it at one point to set a proper view
  • distance at least on the consoles in the past.
  • Back then, everyone had the same hardware and it was easy enough to test it in real time.
  • Did you know that this game has very complex path system?
  • I won’t explain why, but I want to note that it was very important to debug it in
  • real time by using this “Display Path Data” function, which you see on your screens right now.
  • Just know that properly coded paths mean that the streets will be properly flooded with
  • peds and cars without seeing abnormal things in their trajectories.
  • Of course, it was also possible to spot empty places on the map, meaning that the developer
  • could fix them.
  • It is also possible to see where ped paths end like here…
  • ...or to check “dummy” places like here.
  • Despite the fact that you see ped paths here, they won’t appear here because the peds
  • are disabled by the script.
  • If they were enabled, then the player would notice that the peds act here very strange.
  • Not to mention that the game spawns them behind the cliff.
  • Starting from PC port of the game, the developers decided to implement another submenu.
  • This time, they decided to call it “Debug Menu” and once again you can bring it back
  • by using the menu editor.
  • Yet again, you will be upset to know that nothing works here on PC, but thankfully,
  • other versions can give us a clue what these options could do.
  • By setting the right button for “Toggle Pad Game/Debug” and pressing it, the first
  • controller could become the second one.
  • I guess the developers knew that there was no reason to use two controllers to debug
  • the PC version of the game.
  • By setting the right button for “Turn Debug Camera Off” and pressing it, the game could
  • activate the debug camera.
  • At the same time, the first controller would become the second one as well and vice versa.
  • By setting the right button for “Take Screen Shot” and pressing it, the developer could
  • take a screenshot of the game.
  • Sadly, this feature doesn’t work in any version we have.
  • By setting the right button for “Show mouse pointer” and pressing it, the developer
  • could possibly see a mouse pointer over the game.
  • Unfortunately, this is just a guess as there is no code left from this feature, and it’s
  • hard to understand why this feature was needed.
  • Speaking of PC version, turns out that one function without a name still receives tons
  • of debug information.
  • The game doesn’t use this information and it is a mystery where the game could display it.
  • On the other hand, we can take a guess and say that this might be a log, which was used
  • to analyze something in the game.
  • This game had a console once, but how can it be a console if it doesn’t allow us to
  • input a text here?
  • Well, at least in the current state we found it.
  • Also, it is a mystery what it could display here, because there are no clues left in the game code.
  • But we can always output here what we want.
  • Fun fact: it’s possible that this was captured on this photograph we have from the offices.developer’s
  • It means that they used it in the past to debug the game somehow.
  • You know what is strange?
  • Seeing pre-release screenshots with debug text in the official Bradygames guide.
  • I can clearly see a “TidyUP” word here and two float values.
  • There is also a chance that you can see this on these photos from the developer’s studio.
  • Unfortunately, there is no way to say what this string meant, because it seems that there
  • is no code leftover from this feature.
  • You might spot more debug features on the rest of the photos from their studio, but
  • once again, we can’t say for sure what they mean unless we find better photos or at least a code from them,
  • which we didn’t.
  • Of course, the developers had more debug features in their game, but since we don’t have a
  • debug build of the game, we can’t look at them.
  • Honestly, we are too damn lucky to see at least some debug features.
  • Not to mention, all of this was found in the final version of the game.

Download subtitle

Description

Today we are going to look at the hidden debug features which were used to test Grand Theft Auto 3 during its development.
##########
Today's narrator:
●Badger Goodger
https://www.youtube.com/channel/UCVu0MlrvD-2siRakaJ6JeoA
https://twitter.com/BadgerGoodger

●Max Payne 3: Originally Set in Russia
/watch?v=lyBLi9f6enY

●GTA Vice City Beta - Gator Keys Analysis & Speculation
/watch?v=N1zANDJIAfg
##########
Used material
● "Ebay Find: Playstation 2 TOOL (Dev Kit)" by Thekempy
/watch?v=G2ep1X_BS-Q
##########
● My Twitter ●
https://twitter.com/NationalPepper
##########
● Paid music provided by
www.epidemicsound.com
ES_Faded - Ooyy
ES_Too Fast - Ooyy
ES_Changli - Ooyy
ES_Tei - Ooyy
ES_Seona - Ooyy
~~~~~~~~~~~~~~~~~~~~~
● My Patreon page ●
https://www.patreon.com/NationalPepper

● This is the place where I post early access videos as well as updates and other goodies. Starting from $1 per month.

Trending videos