Five Nights at Freddy's 2 (Windows)/Unused Graphics and Objects
This is a sub-page of Five Nights at Freddy's 2 (Windows).
Contents
Unused Objects
"Frame 17"
"day", "month" and "term"
Three unused counters referred to as "day", "month" and "term" respectively can be found out of bounds. Unused code reveals that if "month" is not 11 and "day" is not 8, "term" is set to 1, closing the game instantaneously. Theories suggest that the reason for this is that the exclusive YouTuber extended demo was originally planned to release on November 8th, and that the code was intended as a way of preventing the build from being redistributed after the demo's release.
12 | • month > 0 + month <> 11 Ini : Set value 1 to item "term" term : Set Counter to 1 |
13 | • day > 0 + day <> 8 Ini : Set value 1 to item "term" term : Set Counter to 1 |
14 | • term = 1 storyboard controls : End the application |
"title"
"Active 10"
An unused copy of text for the extended YouTuber demo entitled "Active 10" can be found out of bounds. That is correct, an unused copy of text that also goes unused in the full version of the game.
"demo"
Text from the demo version of the game still remains in the files of the full version, alongside a graphical variation for the extended YouTuber demo, stored as an animation sequence. Curiously, the standard demo graphic is identical to the first game, and the font for it was not changed to reflect the title screen's logo.
"lives left", "tiny man" and "tiny lives"
Interestingly, leftovers for the scrapped lives mechanic from the first game are present. The code for it in the first game is also still included here.
42 | • Alterable Value A of Active 6 = 1 + lives left <= 0 night number : Set Counter to 1 Ini : Set value 1 to item "level" |
57 | • option selected = 1 + lives left <= 0 night number : Set Counter to 1 Ini : Set value 1 to item "level" |
59 | • Start of Frame lives left : Set Counter to 5 |
"what day"
"Active 3" and "lives left"
Like the previous frame, the retro-styled stick man that was meant to be seen on a life counter in the first game appears out of bounds as a leftover, alongside the "lives left" counter.
"Frame 1"
"blackout in progress" and "blackout timer"
A counter known as "blackout timer" was intended for use in a mechanic that goes unused due to a programming mistake. The counter was meant for the purposes of debugging, and would cause Shadow Freddy and Endo-02 to create a signal interruption and run away from their respective cameras if it is greater or equal to 30, but it was also accidentally used in place of another non-debugging object named "blackout in progress", which goes completely unused and has no code attached to it as a result of this oversight. This also means that "blackout timer" never reaches 30, as it is always set to "1" if a blackout is occurring and "0" otherwise.
58 | • viewing = 5 + lit? = 1 + NOT new chica is overlapping cam 5 + NOT old bonnie is overlapping cam 5 + random image = 3 ... blackout timer : Add 1 to Counter |
93 | • viewing = 8 + lit? = 1 + NOT old freddy is overlapping cam 8 + NOT old foxy is overlapping cam 8 + random image <= 100 ... blackout timer : Add 1 to Counter |
99 | • viewing = 11 + lit? = 1 + Alterable Value S of sockpuppet >= 3 + random image <= 100 ... blackout timer : Add 1 to Counter |
"chicalookatyou"
Toy Chica without her eyes and beak; found in an object called "chicalookatyou". Intriguingly, it is very similar to the graphic used when Toy Bonnie appears in front of the player when the Freddy head is used while he is in the vent, indicating that Toy Chica would also do the same. In fact, Toy Chica peeking into the office is fully functional! However, the state the mask needs to be in to trigger it is set to a very high number (99), which effectively makes her never appear. A similar sprite is used in Ultimate Custom Night.
303 | • new chica is overlapping in office + Alterable Value A of mask = 99 + in danger = 0 + Alterable Value A of blackout = 0 + Number of Active 19 = 0 + Only one action when event loops New Objects : Create chicalookatyou at (-198,10) from table fan |
"close it all"
An unused counter with no code attached to it titled "close it all" can be found. The purpose of this counter is a complete mystery.
"maxed mask", "red", "toxic" and "toxic bar"
"Yeah, the toxic meter. I-I-I think, if I remember correctly, I think the a toxic meter was an early idea on, um, just something so that players couldn't put the mask on, and leave it on forever. Um, y'know, I had the idea that if you put the mask on, this meter starts running out. But I don't know, that-that seemed... that didn't really seem to-to-to fit. I don't know, it just didn't seem to... it just didn't make quite much sense. And so then, I-- the way that I solved it was, y'know, obviously having the need to go and wind the music box every once in a while, and the fact that, y'know, Foxy was immune to the mask, y'know? So, I came up with other ways that felt-- uh, that felt a little more natural than just putting on the mask and seeing a meter deplete. It's like 'Oh, okay, I can only wear this for five seconds.' It seemed a little too artificial." - Scott Cawthon
A counter entitled "maxed mask", a red bar simply titled "red", a green progress bar known as "toxic", and a graphic of a toxicity meter referred to as "toxic bar" can be found out of bounds. According to the game's code, it shows that the meter would increase while the player wears the mask. When filled, it starts flashing red repeatedly until it finally reaches 0 again. It can be inferred that this would set "maxed mask" to 1, at which point the player could no longer use the mask until the toxic meter emptied.
In Dawko's 2018 interview with Scott Cawthon, he stated that this was an early idea to prevent players from leaving the mask on forever, but Scott felt that having a meter fill up while the mask was on was too artificial of a mechanic and didn't make sense. The problem of players potentially keeping the mask on all the time was solved by making the player have to wind the music box, alongside making Withered Foxy immune to the mask.
707 | • toxic > 10 + maxed mask = 0 + Alterable Value A of mask = 2 + Only one action when event loops toxic : Reappear toxic bar : Reappear |
708 | • toxic <= 10 + maxed mask = 0 toxic bar : Make invisible toxic : Make invisible |
709 | • Alterable Value A of mask = 2 + Every 00''-50 toxic : Add 1 to Counter |
710 | • toxic >= 20 + maxed mask = 0 maxed mask : Set Counter to 1 |
711 | • Alterable Value A of mask = 0 + toxic > 0 + Every 00''-50 toxic : Subtract 1 from Counter |
712 | • maxed mask = 1 + toxic = 0 maxed mask : Set Counter to 0 |
716 | • maxed mask = 0 + Only one action when event loops toxic : Set color to RGB(0,128,0) toxic : Reappear |
717 | • maxed mask = 1 + Only one action when event loops toxic : Set color to RGB(255,0,0) toxic : Flash during 00''-10 |
"midrange"
A red bar simply entitled "midrange" is located out of bounds, next to all of the animatronics' debugging icons. It is unknown what it would have been used for, as no code is associated with it.
"mike"
A sprite of what appears to be a closeup of a rather stylized human skull crying black liquid is located out of bounds, simply named "mike". Although no code is associated with it, the object is grouped with the animatronics' debugging icons, suggesting that this may be a scrapped character. Curiously, Mike is the name of the protagonist of the first game, implying that he could have returned with an antagonistic role at some point in development.
"puppet in office"
A full-body sprite of the Puppet, showing its strings. The Puppet cannot normally stand inside the Office like the other animatronics. It spawns inside the Office by default, and even has an unused path sequence, but is deleted as soon as the frame begins. This graphic's existence and placement may imply the Puppet originally functioned similarly to Mangle.
475 | • Start of Frame puppet in office : Destroy |
"puppet kill"
A counter entitled "puppet kill" is set to 1 upon being attacked by the Puppet, but has no effect on gameplay. Its status as a global object, existence in the Game Over static, and the fact that it is reset to 0 in the "SAVETHEM" minigame imply that you would have originally had a chance to obtain one of these post-mortem minigames after being jumpscared by the Puppet.
448 | • being attacked by = 9 + Only one action when event loops ... puppet kill : Set Counter to 1 ... |
"test 1", "test 3" and "test 4"
As the names suggest, three counters internally referred to as "test 1", "test 3" and "test 4" can be found out of bounds. The former two counters were used for the purposes of debugging the Flashlight battery's lifespan, and a value that keeps track of how much light you've shone on Withered Foxy, respectively. Fascinatingly, "test 4" is completely unused.
742 | • Always test 1 : Set Counter to value( "battery life" ) test 3 : Set Counter to Alterable Value J( "old foxy" ) |
"static"
"puppet kill"
The "puppet kill" counter mentioned above returns in this frame, albeit with no code.
"gameover"
"random"
Curiously, a counter entitled "random" returns as a leftover from a rare Easter egg in the first game where Golden Freddy could jumpscare the player after the Game Over screen. The code used also still has partial functionality, but has no effect on gameplay.
5 | • Every 01''-00 random : Set Counter to Random(10000) + 1 |
"customize"
"1987"
Similarly, the counter used for the 1-9-8-7 Easter egg in the first game's Custom Night screen returns as a leftover as well. This counter is set to 1 when the original four withered animatronics' AI levels are set to 1/9/8/7, but it has no effect.
24 | • freddy AI = 1 + bonie AI = 9 + chica AI = 8 + foxy AI = 7 1987 : Set Counter to 1 |
"Active 3" and "Active 4"
An object known as "Active 3" would set all characters' A.I. difficulties to 20 in the Custom Night screen when clicked. This still works in-game, however it is placed out of bounds and cannot be seen without modding. An alternative graphical variant with just the text also exists named "Active 4", but it has no code associated with it.
29 | • User clicks with left button on Active 3 freddy AI : Set Counter to 20 bonie AI : Set Counter to 20 chica AI : Set Counter to 20 foxy AI : Set Counter to 20 BB AI : Set Counter to 20 toy freddy AI : Set Counter to 20 toy bonnie AI : Set Counter to 20 toy chica AI : Set Counter to 20 mangle AI : Set Counter to 20 golden freddy AI : Set Counter to 20 Sound : Play sample coin on channel #1 |
"test"
As the name suggests, "test" is a counter used for debugging. It was used to see if beating challenges worked as intended during development.
80 | • Always test : Set Counter to Alterable Value A( "did challenge" ) |
"8bit"
"puppet kill"
The "puppet kill" counter mentioned above also returns here. It is set to 0 when the frame begins.
11 | • Start of Frame puppet kill : Set Counter to 0 |
"end of demo"
"Active"
Like in the first game, the end of demo text can be found in the files of the full version.
Unused Graphic Variations
"Frame 1"
"Active 16 / Stopped"
Curiously, a duplicate of the Office graphic exists, but goes completely unused, as Animation 35 is used by default instead.
"Active 16 / Animation 92"
A render of Toy Chica in Party Room 4. Although code exists for this graphic to appear if Toy Chica is located in Party Room 4, her AI never calls for her to enter this room during normal gameplay, leaving this unused.
114 | • viewing = 4 + lit? = 1 + new chica is overlapping cam 4 + NOT new bonnie is overlapping cam 4 Active 16 : Change animation sequence to Animation 92 |