Unity Curation
Unity web games are currently endangered, since the Unity Web Player was deprecated in 2016 and can no longer be used on modern browsers. In case you need to download the Web Player to search for Unity web game assets, however, you can download the full installer from here.
The following page is a tutorial on how to curate Unity games to add to Flashpoint.
Before You Start
This tutorial will assume you've read the standard Curation Tutorial, which is highly recommended to go through. Try curating a Flash game before moving on to other platforms like Unity.
Identifying and Grabbing Unity Games
You will very rarely come across Unity games compared to Flash or HTML5 games; however, identifying them is easy, because they will ask to download the Unity Web Player on the likely chance you don't already have it installed.
To confirm this, when on the page containing a game, press Ctrl+U to open its source HTML file and search for a .unity3D file link. If you find one, the game is on the Unity platform, and the .unity3D file will be the source of your game, so copy its link and download it.
Creating the HTML Embed File
Go back to the source page for your game and look at the text surrounding the .unity3D link. This is the embed for Unity games. For example, the source HTML for the game Verkeerstalent contains the following embed:
unityObject.embedUnity('unityPlayer', 'http://gameitnow.eu/spelle/games/141437220815352.unity3d', '940', '580');
Download Flashpoint Core, then open the Utilities folder. Find the Unity HTML Generator and open UnityHTMLGenerator.bat
.
In the Unity HTML Generator, type the name of the game and the name of the .unity3D file you downloaded including the file extension (example: 141437220815352.unity3d
) . The width and height to embed the game in are the first and second numbers in the embed respectively. Name the HTML file something relevant, such as the name of the game, preferably in lowercase and without spaces. For example, the HTML for Verkeerstalent is named verkeerstalent.html.
Follow the Curation Format to add metadata for your game and create its correct content folder. The Platform should be Unity
and the Application Path should be FPSoftware\startUnity.bat
.
Instead of using the URL for the .unity3d file as the Launch Command, however, use the HTML file you created, such as http://gameitnow.eu/spelle/games/verkeerstalent.html
. Put the HTML embed file in the same place as the .unity3D file in your content folder. If the game loads to a black screen, or does not work as intended without any missing assets, you may need to change the version of Unity the game launches with. This is done by adding either "2.x" or "3.x" to the beginning of the Launch Command. For example, our new Launch Command would now be 3.x http://gameitnow.eu/spelle/games/verkeerstalent.html
. However, this is not needed for this specific game.
Make sure to always use http:// instead of https:// to make sure Flashpoint grabs files from the fake Internet instead of the real one!
Import your curation as a Folder into Flashpoint Core using the Curate tab and test the game to see if it requires any additional files. If the Logs tab displays a line containing 404
followed by a content path, format that content path as a URL, download the necessary asset using cURLsDownloader, and put it in its appropriate place in the Content folder.
Wrapping It Up
When you're finished testing, click on Export
button at the bottom of your Curation, this will create a single .7z
file containing the entire curation, which can be found by clicking Exported Curations
on the Curate tab, which opens the folder. Once you have the file, submit it to the #other-game-curations channel of the Flashpoint Discord, typing the name of the game and using the Unity emoji when submitting. If the file is too large for discord, upload it to https://other.curations.unstable.life/, and type the name with the emoji in the Discord channel.
Finding the Unity Version
Sometimes a game not work immediately in any one of the three main Unity versions, or you might have doubts about which Unity version is the most correct for a game. To find the exact Unity version that a game was built with, just open the .unity3d file in a hex editor such as HxD. In the "Decoded text" column, you will see the text UnityWeb
, followed by the major Unity version (such as 5.x.x), and finally followed by the exact Unity version number (such as 5.0.4f1
). You can use our Unity Web Player Versions table to match the Unity version number to one of Flashpoint's three Unity installation folders (2.x, 3.x, or 5.x). If you don't see the exact Unity version listed in the table, it is very likely that the game will work in 5.x. Double-check that your embed code is correct. If the game still isn't working, move on to the next section.
Note that most Unity games built with a 3.x version will work perfectly fine in Unity 5.x because of backwards compatibility. However, there are a few 3.x games that have major issues such as broken controls or extremely poor framerates in 5.x, thus requiring 3.x to function properly. An example of such a game is Alternator.
Adding a New Unity Version
On rare occasions, a game may require a Unity Web Player version that we don't have yet. Follow these steps to add a new Unity Web Player version to Flashpoint:
- Go to the Unity download archive. Click the tab (5.x, 4.x, or 3.x) corresponding to the Unity version you need.
- Find the exact Unity version number and download its installer.
- Open the installer with 7-Zip and find the Unity Web Player development installer inside it. Extract and run the Unity Web Player installer.
- Go to your
%USERPROFILE%\AppData\LocalLow\Unity
folder and copyplayer
andmono
folders into the correct Unity Web Player folder in Flashpoint. Make sure that the folder structure matches up. - Try testing the game again.