You can now download Facebook Gameroom for PC gaming

0
241

Facebook Gameroom for PC gaming (Arcade project) is a Windows-native client available as a free download for players worldwide. Within the new Facebook Gameroom, players can experience both web games and also native games built exclusively for the platform. Building native games for Facebook Gameroom brings many benefits for you and your players:

  • Facebook Gameroom for PC gaming focuses on gameplay for players, ensuring an exclusive and immersive gaming experience
  • Developing in Facebook Gameroom natively takes less time: it’s easier compared to HTML5 and gives better solutions around threading, debugging, networking and memory management
  • Facebook Gameroom provides better performance in terms of app launch timings and memory consumption in native games.

Download Unity with Facebook Games

Download and install the Unity 5.5 beta with Facebook build support:

Download Unity 5.5 for Windows      Download Unity 5.5 for Mac

Demo Video

Here’s a short video showing how to integrate your Unity game with Facebook Gameroom:

Here’s a short video showing how to integrate your Unity game with Facebook Gameroom:

For a more detailed explanation, please refer to the documentation. This is broken down into the following sections:

1. Requirements

To develop natively in Unity for Facebook Gameroom, you need the minimum SDK version of Unity 5.0. You should always download and use the latest Unity with Facebook Games for updated bug-fixes and improved performance. If you have an older version of Unity, you may publish in WebGL to run in Facebook Gameroom.

To start, you need a Facebook App ID associated to your game. This ID will be used to configure your Facebook SDK within the Unity Editor. You can use your existing Facebook App ID if you already have one.

If you want to create a new Facebook App ID or if you’ve never developed a game with Facebook before, you may follow the Developer Onboarding Guide.

  1. Create an ID for your app on Facebook
  2. Install Unity with Facebook Games

Create an ID for your app on Facebook

If you do not already have a Facebook App ID for your app, you should create one:

Create a New App


Once completed, you’ll see your app’s Basic Settings page. Here you can find your App ID, which is required within your Unity game’s configuration, in order to integrate with Facebook.


Next, you will need to add the Facebook Canvas platform to your app. In Settings → Basic, select the Add Platform button, and Facebook Canvas.


In the Facebook Canvas section, you should set Facebook Gameroom to YES.

For Secure Canvas URL, you should leave it unchanged if you host a Facebook Web game on your own server. Otherwise, you should enter https://localhost/ as shown below:


In Facebook Login → Client OAuth Settings → Valid OAuth redirect URIs, add the URIhttps://apps.facebook.com/<APP_ID> as shown.

Install Unity with Facebook Games

Download Unity with Facebook Games. Launch the installer and make sure you follow the subsequent steps in the installation process.


In Windows, select Facebook Games Build Support when prompted to choose Unity components to install:


In Mac, select both Windows Build Support and Facebook Games Build Support when prompted to choose Unity components to install:

Ready to Build

Now that you have your Facebook App ID and you’ve installed the latest Unity with Facebook Games, it’s time to build.

2. Build

Build your Game

Now that you have all the tools you need, it’s time to build, configure and test your game in Facebook Gameroom.

  1. Build your game in Unity
  2. Test your game in Gameroom
    • A) Via Build and Run
    • B) Via Debug Menu
    • C) Via Command Line Option
    • D) Via Gameroom search bar
  3. Hosting your game on Facebook

Build your game in Unity

In File > Build Settings, select Facebook as your Platform, and select Switch Platform.

  • In Windows, you can now Build And Run to launch your game in Gameroom.
  • In Mac, you can Build and save your game as an .EXE executable.

Note: If you don’t see Facebook listed as a Platform, it means that the required Facebook libraries are not installed in the editor. Rerun the installer to install the missing modules, and make sure you select Facebook Games Build Support to add the component.

See Install Unity with Facebook Games for more information.

Test your game in Gameroom

A Windows machine is required to fully test the game.

To test whether the game integrates correctly with the SDK, you need to install the Facebook Gameroom client from www.gameroom.com.


A) Via Build and Run

(only available for Unity Beta Build)

You should select the Facebook platform and click Build And Run. This will launch your game locally in Facebook Gameroom.


B) Via Debug Menu

Click on your profile icon at the top right corner of the screen.

Select [DEV] Debug Unity, and open the local .exe file that you have built.


C) Via Command Line Option

You may also launch your game locally via the following command line:

%LOCALAPPDATA%\Facebook\Games\FacebookGames.exe fbgames://launch_local/"<PATH_TO_EXE>"

D) Via Gameroom search bar

(only for uploaded zips)

Before the public rollout, your game should be visible to all admins and developers of your app. You may configure this in the Roles section of the App Dashboard.

You should type in the App Name or App ID in the search bar of Gameroom to find your app.

Hosting your game on Facebook

Hosting requirements:

Facebook offers free hosting for games up to 500 MB.

For more information on Facebook Hosting, you may take a look at the documentation.


Uploading your game to Facebook Hosting

Once you are satisfied with testing, you may prepare your game to upload to Facebook Hosting. In Build Settings, select Package build for uploading.


This step will package your game by zipping up the data directory and game executable (shown below), creating a .zip file. If you are manually creating a zip, make sure that the .exe and data folder are in the root of the zip.


If you have installed Unity Beta with Facebook Games, you can upload the build directly from the Unity editor. Follow Option A if you have the Unity Beta. Otherwise, you should follow Option B to manually upload your build via the App Dashboard.

Open the App Dashboard in your browser:

https://developers.facebook.com/apps/YOUR_APP_ID/hosting/

Option A: Upload build from Unity Beta

Under Canvas Hosting, click the Get Asset Upload Access Token button.

Copy your upload access token:

In the Unity Editor, under Player Settings → Publishing Settings, paste your upload access token:

Under Build Settings, enter your upload comment and click Upload last build to Facebook. If this button is disabled, you need to select Package build for uploading and click Build again.

Your build should now appear in the App Dashboard with your upload comment.


Option B: Upload Build Via Graph API

Follow the above steps to get your Asset Upload Access Token.

With the token, perform a CURL post to upload your zip to your app dashboard as follows:

curl -X POST https://graph-video.facebook.com/{App ID}/assets 
  -F 'access_token={ASSET UPLOAD ACCESS TOKEN}' 
  -F 'type=GAMES_DESKTOP' 
  -F 'asset=@./{YOUR GAME}.zip' 
  -F 'comment=Graph API upload'

For more information on this endpoint, you may refer to the Graph API documentation here.


Option C: Upload build from App Dashboard

In Canvas Hosting → Facebook Gameroom, click the Upload Version button to upload your zip file.


Push to Production

Once the upload finishes, click the star to push your game to production.

Launch

Now that your game is built and tested, it’s time to launch it to Facebook Gameroom.

3. Launch

Launch your Game on Gameroom

Now that your game is built and tested, it’s time to go live on Facebook Gameroom.

  1. Payments
  2. App Listing
  3. Landing Page
  4. Public Rollout

Payments

You can add a payment solution to your game with a few simple steps:

  1. In your App Dashboard, register your company for financial payouts
  2. Define the available purchase products in your game server
  3. In your game client code, invoke the payments dialog with the URL of the purchase product

For an overview on Facebook Payments, you may want to take a look at the documentation.

You may refer to the official FB sample code for Unity hosted on Github. You can find the script on payments here.

To learn more about Unity SDK calls, you may refer to the Unity SDK reference here.

App Listing

You need to get your game approved for listing in the Facebook App Center before you can go live. For more information, follow these instructions: https://developers.facebook.com/docs/games/listing

To prevent the app from showing the permissions dialog twice, you will need to configure the App Center permissions to match the permissions that your app requests.

For example, if you are requesting the permissions user_friends and email, you should configure the following under App Center → Details → App Center Listed Platforms → Configure App Center Permissions.

When you first launch the game, you will see the permissions prompt asking for your public profile, Friends list and email address. If you have configured the App Center Permissions to ask for all the permissions that your game needs, the player will not be prompted a second time within your game.

Landing Page

You can direct users to a landing page that we have created for all Gameroom games:

https://www.facebook.com/gameroom/?app_id={APP_ID}

For example, you can see the landing page for Empires & Allies below:

Public rollout

As Gameroom native games is in developer beta, we are testing and optimizing to ensure that the public rollout is smooth. Once your integration is complete, we will review your game to ensure high-quality integration.

To request a review, please e-mail unityexport@fb.com with the the name of your game, App ID and point of contact, and make sure you have done the following items below.


App Center Listing

Under App Center, list your game in App Center – App on Facebook with all your app icons, screenshots and videos:


Push zip to production

Push your zip to Production so we can access and test your game:


App Review

Under App Review, submit your App Details, and all Login Permissions for review and make sure that they are approved:


Set your game to Live

Once your game is approved, set your app to Live to make it available to the public:

Must Haves

Make use of keyboard and/or mouse, with tutorial to explain usage.

Detect web games in Gameroom client via an additional user-agent string. E.g.FacebookCanvasDesktop [FBAN/GamesWindowsDesktopApp; FBAV/1.0.0.2]

At a minimum, use the Public profile of the current player.

Links to FB Pages or external websites open correctly in a browser.

Comply with the Facebook Platform Policy.

“Guest mode” for players.

Allowing players to Log Out of Facebook in your game.

Best Practices

 

Continue the player’s progress on different platforms. (e.g. mobile, Facebook.com and Gameroom)

 

Maximise graphics area in the Gameroom client.

 

Allow player to choose between low, medium and high quality graphics.

 

Keep the loading time to less than 10s.

 

Keep your zip bundle within 50 MB.

 

Skippable and replayable tutorial with easy learning curve.

 

Configure all required Permissions under App Center.

 

Upload all creative assets in App Center.

 

Promote your Gameroom page from your FB Page and Website.