قالب وردپرس درنا توس
Home / Technology / Epic Games Store receives free games: "Nuclear Throne" and "Ruiner"

Epic Games Store receives free games: "Nuclear Throne" and "Ruiner"



Home

News

Ruiner

Epic continues to offer free games to PC players, which should be of great interest to fans watching the game.

Do you know the Epic Games Store? The burgeoning shopping center has grown stronger and has since launched numerous free games for PC gamers using the platform for downloading and gaming, from "Oxenfree" to the trilogy of the series "Batman: Akahan". The latest freely available works have also been published.

Players can download "Nuclear Throne" and "Ruiner" until November 1

4th. "Nuclear Throne" is a post-the-day topic from Vlambeer and a cyberpunk dystopia game full of violence and action.

You can now view information about these games from below. How do you feel compared to other free Epic Games Store games?

You are watching

Advertising

  Ruiner

->

  Gamereactor

Europe's largest video game magazine



Copyright 1998-2019 – Published by Gamez Publishing A / S, Toftebæksvej 6, 2800 Kongens Lyngby, Denmark.

//connect.facebook.net//sdk.js // Load the SDK asynchronously (Function (d, s, id) { Var js, fjs = d.getElementsByTagName (s) [0]; If (d.getElementById (id)) return; Js = d.createElement (s); js.id = id; Js.src = "http://connect.facebook.net/zh_TW/sdk.js#xfbml=1&version=v2.7&appId=1012423708899590"; fjs.parentNode.insertBefore (js, fjs); } (document, & # 39; script & # 39 ;, & # 39; facebook-jssdk & # 39;));

window.fbAsyncInit = function () { FB.init ({ appId: & # 39; 1012423708899590 & # 39 ;, channelURL: & # 39; // www.gamereactor.cn/fbchannel.php&#39 ;, Status: true, Cookie: true, Xfbml: true, Oauth: true, Version: & # 39; v2.7 & # 39; v2.7 & # 39; });

If (typeof (postReview) == "function") postReview ();

FB.Event.subscribe (& # 39; edge.create & # 39 ;, function (targetUrl) { _gaq.push (['_trackSocial', 'Facebook', 'Like', targetUrl]); }); FB.Event.subscribe (& # 39; edge.remove & # 39 ;, function (targetUrl) { _gaq.push (['_trackSocial', 'Facebook', 'Unlike', targetUrl]); }); FB.Event.subscribe (& # 39; message.send & # 39 ;, function (targetUrl) { _gaq.push (['_trackSocial', 'Facebook', 'Send', targetUrl]); }); };

document.addEventListener ("DOMContentLoaded", function () { DrawFacebookLikeNotification (); });

FastRegister function (tournament = false) { ajaxAgreementsPopUp (); If (typeof isSmartphoneLayout! = & # 39; Undefined & # isSmartphoneLayout) Window.location = & # 39; / join & # 39 ;; Otherwise { $ .ajax ({ Type: "POST", URL: "/ajaxstuff/fastRegister.php", Data: {session: {"screated": 1573449139, "updated": 1573449139}, tournament: tournament}

}) .done (function (code) { $ (# Re_loginbox #). replaceWith (code); // console.log (code); $ (& 39; loginWrapper & # 39;). show (); }) .fail (function (jqXHR, msg) { Console.log ("request failed"); $ (selectorForLoginMessage) .text (msg) .show (); }); } Return false; }

Function FastRegisterResponse () { $ .ajax ({ Type: "POST", URL: "/ajaxstuff/fastRegister.php",

}) .done (function (code) { $ (# Re_loginbox #). replaceWith (code); // console.log (code); $ (& 39; loginWrapper & # 39;). show (); }) .fail (function (jqXHR, msg) { Console.log ("request failed"); $ (selectorForLoginMessage) .text (msg) .show (); }); Return false; }

Function LoginWithFacebook (selectorForLoginMessage, fbUpdateUser) {

FB.login (function (response) { If (response.authResponse) { FB.api (& # 39; / me & # 39 ;, fields: & # 39; e-mail, last name, last name, first name & # 39;}, function (user) { Var main = false; If (user &&! User.error) { // console.log (user); If (selectorForLoginMessage == # fbLoginMessageMain #) Main = true; $ .ajax ({ Type: "POST", URL: "/ajaxstuff/fblogin.php", Data: {userobj: user, fbUpdateUser: fbUpdateUser, main: main} }) .done (function (code) { If (main) { Console.log ("Logs" + code); If (code == 0) { If (! $ (& 39; Signin & # 39;) HasClass (& 39; active-signin & # 39;)) { $ (& # 39; signin & # 39;). addClass (& # 39; active-signin & # 39;); If ($ (& # 39; Login & # 39;) HasClass (& # 39; active-login & # 39;)) { $ (& # 39; login & # 39;). removeClass (& # 39; active-login & # 39;); Var request = new GRAsync (); Var path = & # 39; /ajaxstuff/join.php? AjaxRequest & # 39 ;; request.setUrl (path) .setSelectors ($ (# joinContainer & # 39;)) .setData ({register: true, facebookUser: user}) .setDataType (& # 39; html & # 39;) .setType (& # 39; POST & # 39;) .sendRequest ();

} } } Otherwise { Window.location = "/";

} } Otherwise { $ (# Re_loginbox #). replaceWith (code); $ (& 39; loginWrapper & # 39;). show (); //location.reload(true); } }) .fail (function (jqXHR, msg) { Console.log ("request failed"); $ (selectorForLoginMessage) .text (msg) .show (); });

} }); } else { // console.log (& # 39; user canceled or did not fully authorize login. & # 39;); } }, {scope: & # 39; email, publish_actions & # 39;}); // TODO: Do not ask for publish_actions by default, as this may scare off some users. Ask later when they really want it. Return false; }

Function AddSearchParamsAndReload (newParamStr) { Var newParamArr = newParamStr.split ("&"); If (window.location.search.length> 1) {// count the initial & # 39; & # 39; Var oldParams = window.location.search.substr (1) .split ("&"); Var paramsToAdd = []; For (var j = 0; j <newParamArr.length; j ++) { Var found = wrong; For (var i = 0; i <oldParams.length; i ++) If (newParamArr [j] == oldParams [i]) Found = true; If (!) Found paramsToAdd.push (newParamArr [j]); } If (! ParamsToAdd.length) Window.location.reload (); Otherwise Window.location.search + = & # 39; && # 39; + paramsToAdd.join ("&"); } Otherwise Window.location.search = & # 39;? & # 39; + NewParamStr; }


Source link