Web Analytics

FNAF 2

Internal Error

What’s new in Five Nights at Freddy’s 2 compared to Part 1

Unlike the first installment, FNAF 2 no longer features the door-closing mechanic — the element that once gave players a sense of temporary safety. Instead, the game demands absolute flexibility as you must observe, react, and operate several tools at once. This marks a turning point that significantly increases the pressure, requiring players to maintain quick and precise responses at all times.

Main objective: Survive from 12:00 AM to 6:00 AM

In Five Nights at Freddy’s 2, the player takes on the role of a night security guard at Freddy Fazbear’s Pizza with one sole objective: to survive the full six hours in darkness. Those seemingly short six hours become a nerve-racking psychological battle, as the animatronic dolls begin to move, stalk, and creep closer to you within the confined space of the security office.

Five Nights At Freddy's 2Five Nights at Freddy's 2 takes players on a breathless night shift of survival

Tips and strategies for playing Five Nights at Freddy’s 2

If you want to experience even more suspense, you can also try the original Five Nights At Freddy's game!

), St = function (t) { return function (e) { var r = String(v(e)); return ( 1 & t && (r = r.replace(bt, '')), 2 & t && (r = r.replace(wt, '')), r ); }; }, At = {start: St(1), end: St(2), trim: St(3)}, kt = At.trim, Tt = i.parseFloat, Ot = 1 / Tt(mt + '-0') != -1 / 0 ? function (t) { var e = kt(String(t)), r = Tt(e); return 0 === r && '-' == e.charAt(0) ? -0 : r; } : Tt; U({global: !0, forced: parseFloat != Ot}, {parseFloat: Ot}); var Pt, Ct, Et = D.parseFloat, Mt = function (t) { return Object(v(t)); }, Nt = Array.isArray || function (t) { return 'Array' == h(t); }, Rt = ot('species'), _t = function (t, e) { var r; return ( Nt(t) && ('function' != typeof (r = t.constructor) || (r !== Array && !Nt(r.prototype)) ? d(r) && null === (r = r[Rt]) && (r = void 0) : (r = void 0)), new (void 0 === r ? Array : r)(0 === e ? 0 : e) ); }, Dt = [].push, Vt = function (t) { var e = 1 == t, r = 2 == t, n = 3 == t, i = 4 == t, a = 6 == t, o = 5 == t || a; return function (u, s, c, l) { for ( var f, h, p = Mt(u), v = y(p), g = L(s, c, 3), d = Q(v.length), m = 0, x = l || _t, b = e ? x(u, d) : r ? x(u, 0) : void 0; d > m; m++ ) if ((o || m in v) && ((h = g((f = v[m]), m, p)), t)) if (e) b[m] = h; else if (h) switch (t) { case 3: return !0; case 5: return f; case 6: return m; case 2: Dt.call(b, f); } else if (i) return !1; return a ? -1 : n || i ? i : b; }; }, Lt = { forEach: Vt(0), map: Vt(1), filter: Vt(2), some: Vt(3), every: Vt(4), find: Vt(5), findIndex: Vt(6), }, It = function (t) { return 'function' == typeof t ? t : void 0; }, jt = function (t, e) { return arguments.length < 2 ? It(D[t]) || It(i[t]) : (D[t] && D[t][e]) || (i[t] && i[t][e]); }, zt = jt('navigator', 'userAgent') || '', Ft = i.process, Bt = Ft && Ft.versions, Ht = Bt && Bt.v8; Ht ? (Ct = (Pt = Ht.split('.'))[0] + Pt[1]) : zt && (!(Pt = zt.match(/Edge\/(\d+)/)) || Pt[1] >= 74) && (Pt = zt.match(/Chrome\/(\d+)/)) && (Ct = Pt[1]); var Ut = Ct && +Ct, Xt = ot('species'), Yt = function (t) { return ( Ut >= 51 || !a(function () { var e = []; return ( ((e.constructor = {})[Xt] = function () { return {foo: 1}; }), 1 !== e[t](Boolean).foo ); }) ); }, qt = Object.defineProperty, Gt = {}, Qt = function (t) { throw t; }, Wt = function (t, e) { if (b(Gt, t)) return Gt[t]; e || (e = {}); var r = [][t], n = !!b(e, 'ACCESSORS') && e.ACCESSORS, i = b(e, 0) ? e[0] : Qt, u = b(e, 1) ? e[1] : void 0; return (Gt[t] = !!r && !a(function () { if (n && !o) return !0; var t = {length: -1}; n ? qt(t, 1, {enumerable: !0, get: Qt}) : (t[1] = 1), r.call(t, i, u); })); }, $t = Lt.map, Zt = Yt('map'), Kt = Wt('map'); U( {target: 'Array', proto: !0, forced: !Zt || !Kt}, { map: function (t) { return $t(this, t, arguments.length > 1 ? arguments[1] : void 0); }, } ); var Jt = yt('Array').map, te = Array.prototype, ee = function (t) { var e = t.map; return t === te || (t instanceof Array && e === te.map) ? Jt : e; }; function re(t) { return t.replace(/(?!\u3000)\s+/gm, ' '); } function ne(t) { return t.replace(/^[\n \t]+/, ''); } function ie(t) { return t.replace(/[\n \t]+$/, ''); } function ae(t) { var e = (t || '').match( /-?(\d+(?:\.\d*(?:[eE][+-]?\d+)?)?|\.\d+)(?=\D|$)/gm ) || []; return ee(e).call(e, Et); } var oe = /^[A-Z-]+$/; function ue(t) { return oe.test(t) ? t.toLowerCase() : t; } function se(t) { var e = t.match(/url\(('([^']+)'|"([^"]+)"|([^'"\)]+))\)/) || []; return e[2] || e[3] || e[4]; } function ce(t) { if (!dt(t).call(t, 'rgb')) return t; var e = 3; return t.replace(/\d+(\.\d+)?/g, function (t, r) { return e-- && r ? String(Math.round(Et(t))) : t; }); } U({target: 'Array', stat: !0}, {isArray: Nt}); var le = D.Array.isArray, fe = le; var he = function (t) { if (fe(t)) return t; }, pe = {}, ye = Function.toString; 'function' != typeof $.inspectSource && ($.inspectSource = function (t) { return ye.call(t); }); var ve, ge, de, me = $.inspectSource, xe = i.WeakMap, be = 'function' == typeof xe && /native code/.test(me(xe)), we = Z('keys'), Se = function (t) { return we[t] || (we[t] = tt(t)); }, Ae = {}, ke = i.WeakMap; if (be) { var Te = new ke(), Oe = Te.get, Pe = Te.has, Ce = Te.set; (ve = function (t, e) { return Ce.call(Te, t, e), e; }), (ge = function (t) { return Oe.call(Te, t) || {}; }), (de = function (t) { return Pe.call(Te, t); }); } else { var Ee = Se('state'); (Ae[Ee] = !0), (ve = function (t, e) { return F(t, Ee, e), e; }), (ge = function (t) { return b(t, Ee) ? t[Ee] : {}; }), (de = function (t) { return b(t, Ee); }); } var Me, Ne, Re, _e = { set: ve, get: ge, has: de, enforce: function (t) { return de(t) ? ge(t) : ve(t, {}); }, getterFor: function (t) { return function (e) { var r; if (!d(e) || (r = ge(e)).type !== t) throw TypeError('Incompatible receiver, ' + t + ' required'); return r; }; }, }, De = !a(function () { function t() { } return ( (t.prototype.constructor = null), Object.getPrototypeOf(new t()) !== t.prototype ); }), Ve = Se('IE_PROTO'), Le = Object.prototype, Ie = De ? Object.getPrototypeOf : function (t) { return ( (t = Mt(t)), b(t, Ve) ? t[Ve] : 'function' == typeof t.constructor && t instanceof t.constructor ? t.constructor.prototype : t instanceof Object ? Le : null ); }, je = (ot('iterator'), !1); [].keys && ('next' in (Re = [].keys()) ? (Ne = Ie(Ie(Re))) !== Object.prototype && (Me = Ne) : (je = !0)), null == Me && (Me = {}); var ze, Fe = {IteratorPrototype: Me, BUGGY_SAFARI_ITERATORS: je}, Be = Math.max, He = Math.min, Ue = function (t, e) { var r = q(t); return r < 0 ? Be(r + e, 0) : He(r, e); }, Xe = function (t) { return function (e, r, n) { var i, a = g(e), o = Q(a.length), u = Ue(n, o); if (t && r != r) { for (; o > u;) if ((i = a[u++]) != i) return !0; } else for (; o > u; u++) if ((t || u in a) && a[u] === r) return t || u || 0; return !t && -1; }; }, Ye = {includes: Xe(!0), indexOf: Xe(!1)}, qe = Ye.indexOf, Ge = function (t, e) { var r, n = g(t), i = 0, a = []; for (r in n) !b(Ae, r) && b(n, r) && a.push(r); for (; e.length > i;) b(n, (r = e[i++])) && (~qe(a, r) || a.push(r)); return a; }, Qe = [ 'constructor', 'hasOwnProperty', 'isPrototypeOf', 'propertyIsEnumerable', 'toLocaleString', 'toString', 'valueOf', ], We = Object.keys || function (t) { return Ge(t, Qe); }, $e = o ? Object.defineProperties : function (t, e) { I(t); for (var r, n = We(e), i = n.length, a = 0; i > a;) z.f(t, (r = n[a++]), e[r]); return t; }, Ze = jt('document', 'documentElement'), Ke = Se('IE_PROTO'), Je = function () { }, tr = function (t) { return '

{{TITLE}}

{{COUNT_VOTES}} {{AVG_RATE}}/5
Advertisement
{{SUGGESTED_GAMES}}
{{GAME_DESCRIPTION}}