User:ThePowerPlayer: Difference between revisions

From Flashpoint Datahub
Jump to navigation Jump to search
(Moved PowerPlayer's edit of the Curation Tutorial to his user page for now)
 
(some improvements to the multi-asset section)
 
(8 intermediate revisions by 3 users not shown)
Line 1: Line 1:
This page is a tutorial on how Flashpoint works, and how to curate games to add to Flashpoint.
This page is a basic tutorial on how Flashpoint works and how to curate games to add them to Flashpoint.


For more advanced platform-specific tutorials, see [[Platforms]].
For more advanced platform-specific tutorials, see [[Platforms]].
Line 8: Line 8:
[[File:HowFlashpointRedirects.png|thumb|A diagram showing how Flashpoint's technology works.]]
[[File:HowFlashpointRedirects.png|thumb|A diagram showing how Flashpoint's technology works.]]


Flashpoint is more than just a program to play files. Rather, it's a combination of three programs working in parallel:
Flashpoint is more than just a program to play files; rather, it's a combination of three programs working in parallel:
* a '''web server''', which hosts game files from a hard drive and pretends to be the original Internet source the games ran off of;
* a '''web server''', which hosts game files from a hard drive and pretends to be the original Internet source the games ran off of,
* a '''Redirector''', which points the game files and resources to the server to make them believe they're on the Internet;
* a '''Redirector''', which points the game files and resources to the server to make them believe they're on the Internet,
* and a '''launcher''', the user interface to select and play games from.
* and a '''launcher''', the user interface to select and play games from.


All versions of Flashpoint use these programs, but Flashpoint itself also comes in three primary versions:  
Flashpoint itself also comes in three primary versions:  
* '''Infinity''', the version that downloads games from a server as you play them;
* '''Infinity''', the version that downloads games from a server as you play them,
* '''Ultimate''', the gigantic version with every game included and ready for offline play;
* '''Ultimate''', the gigantic version with every game included and ready for offline play,
* and '''Core''', the version with only a few games for testing, most often used by Curators to add games.
* and '''Core''', the version with only a few games for testing, most often used by Curators to add games.


Infinity will download files as you play games that request them, while Ultimate and Core know the files are already there. All three make the files believe they're being ran on their original source. This has numerous benefits, the two most important being supporting '''multi-asset''' games, and bypassing '''sitelocks'''. For now, though, let's walk through curating a single-asset SWF file.
Infinity will download files as you play games that request them, while Ultimate and Core know the files are already there. All three make the files believe they're being ran on their original source. This has numerous benefits, the two most important being bypassing '''sitelocks''' and supporting '''multi-asset''' games. For now, though, let's walk through curating a single-asset SWF file.


== Setting Up Our Software ==
== Setting Up Our Software ==


To download game files from the Internet, you'll need:
To download game files from the Internet, you'll need:
* Flashpoint Core, used to add and test new games.
* Flashpoint Core, used to add and test new games. It can be found at the bottom of our [https://bluemaxima.org/flashpoint/downloads/ Downloads] page.
* A modern browser such as Chrome or Firefox, which have a built in Network monitor that we can use to find and grab individual SWFs, and sometimes multi-asset titles with low amounts of resources.
* A modern browser such as Chrome or Firefox, which have a built in Network monitor that we can use to find and grab individual SWFs, and sometimes multi-asset titles with low amounts of resources.
* cURLsDownloader, found in the Utilities folder of the Flashpoint Core directory. This isn't strictly necessary, but it helps immensely; you'll see why later on.


There are more tools that you can use, but since we're not dealing with multi-asset games yet, we'll just use these two for now. Download Flashpoint Core, extract it to your hard drive, run it via its shortcut in the extracted folder, and make sure that the included games play properly before you continue.
Download Flashpoint Core, extract it to your hard drive, run it via its shortcut in the extracted folder, and make sure that the included games play properly before you continue.


== Grabbing Our First Game From The Internet ==
== Finding the Source of Your Game ==


As a tutorial, we'll start by curating the simplest type of curation for beginners; a single SWF file that isn't sitelocked, specifically [https://www.newgrounds.com/portal/view/218014 Interactive Buddy]. You might need to enable Flash in your browser to get it to play (this tutorial won't work if you're using another Flash player such as the Newgrounds Player).
As a tutorial, we'll start by curating the simplest type of Flash game: a single SWF file that isn't sitelocked, specifically [https://www.newgrounds.com/portal/view/218014 Interactive Buddy]. You might need to enable Flash in your browser to get it to play (this tutorial won't work if you're using another player such as the Newgrounds Player).


[[File:SWFAssetInChrome.png|thumb|The SWF for Interactive Buddy in Chrome's network tab; it should look similar on Firefox.]]
[[File:SWFAssetInChrome.png|thumb|The SWF for Interactive Buddy in Chrome's network tab; it should look similar on Firefox.]]
If you're using Chrome or Firefox, press F12 to open the Developer Tools and click the Network tab. This shows us every asset that loads on the page in real time. You can filter miscellaneous types of assets such as Flash files by clicking the Other tab within the Network tab. Refresh the page, and you'll likely find a few assets, but the game file has an extension of '''.swf''', and has a type of x-shockwave-flash in the table. Once you find the SWF, you can hover over it to see its URL and confirm that it ends in .swf. Right click the asset in the table and click Copy > Copy link address.
* If you're using Chrome or Firefox, press F12 to open the Developer Tools and click on the Network tab. This shows us every asset that loads on the page in real time.  
* You can filter miscellaneous types of assets such as Flash files by clicking the Other tab within the Network tab.  
* Refresh the page to find that a few assets loaded. The game file has an extension of '''.swf''', and has a type of x-shockwave-flash in the table.  
* Once you find the SWF, you can hover over it to see its URL and confirm that it ends in .swf.  
* Right-click the asset and select Copy > Copy link address.


You can continue in a variety of ways, but it's best to learn manual curation for single-assets before moving on. To do that, paste your URL into a new tab and download the Interactive Buddy SWF. Don't rename it, and save it in any location for now.
== Generating Content Folders with cURLsDownloader ==


[[File:FolderContents.png|thumb|A sample of what a completed curation folder looks like.]]
If you've followed the tutorial up to this point, you should have copied this link to the SWF for Interactive Buddy:
Setting up any curation takes more than a game file; as shown on the right, it involves several things, but we want to pay attention to the first two in particular:
* The '''content''' folder, which contains a series of folders leading to our SWF;
* and the '''meta.txt''', containing metadata used both to distinguish one curation from another and for informative purposes.
 
Open Notepad or another text editor and create a new file named meta.txt. This will contain many fields to fill out about your game, but these are the most important ones:
* The title, which tells the game apart from others. Name it "Interactive Buddy" or "Test Game" or anything you like, it doesn't matter right now.
* The Platform, which determines where the game goes inside our database, split into several platforms (Flash, Shockwave, Unity, etc). When using Core for testing purposes, this isn't massively important, but Flash is selected for SWF files and by default.
* The Application Path. This determines what piece of software is used to start up the file we specify. In this case we're using a single, simple SWF, so we'll use the Flash Player Projector; in the current version of Core, this is listed as "FPSoftware\Flash\flashplayer_32_sa.exe", so use that.
* The Launch Command, based on the URL of the game's source file.
 
Here's the link to the SWF for Interactive Buddy:


  https://uploads.ungrounded.net/218000/218014_DAbuddy_latest.swf?123
  https://uploads.ungrounded.net/218000/218014_DAbuddy_latest.swf?123


We need to create a Launch Command inside our fake internet for our Flashpoint Core to load in the same way as a URL, so let's put one together, piece by piece.
Flashpoint calls files from a file directory created from the URL of a game, packaged into a folder called '''content''' for each curation. Instead of creating a content folder manually, though, we can use a tool called cURLsDownloader to do it automatically.


First of all, '''be extremely careful''' about the beginning of the URL; it uses HTTPS instead of HTTP. Flashpoint can't handle using HTTPS, and will download assets from the live Internet instead of from its fake Internet server, which can lead to a game going off the web later and not working in Flashpoint when that happens. To summarize, '''always use http:// at the beginning of a Launch Command, NO EXCEPTIONS.'''
* cURLsDownloader should be in your Flashpoint Core folder > Utilities > cURLsDownloader.
* Open cURLsDownloader and paste your game URL into its input.
* Select Option 1 to grab the SWF file.  
* cURLsDownloader will automatically download the SWF and create a content folder for Flashpoint, located in its Downloads folder. Use option 1 when finished if it detects a broken filename, which will very likely fix it.


http://
We'll come back to this Downloads folder later to move it to its proper place.


After that comes the primary domain of the URL, which is in this case uploads.ungrounded.net;
== Curating with Flashpoint Core ==
 
[[File:LaunchCommandMatchesContent.png|thumb|What your curation should look like when you're finished. Note how the Launch Command matches the Content Files.]]
http://uploads.ungrounded.net
The most optimal way to curate is to use the "Curate" tab in Flashpoint Core. To do that, open Core and select the Curate tab, then click the New Curation button to see a list of fields to fill in. These are the most important ones:
 
* The Title, which tells the game apart from others. Name it "Interactive Buddy" or "Test Game" or anything you like, it doesn't matter right now.
Every slash (/) after http:// and the primary domain represents the beginning of a subdomain, eventually leading to our SWF. The next subdomain here is 218000;
* The Platform, which determines where the game goes inside our database, split into several platforms (Flash, Shockwave, Unity, etc). When using Core for testing purposes, this isn't massively important, but Flash is selected for SWF files and by default.
 
* The Application Path. This determines what piece of software is used to start up the file we specify. In this case we're using a single, simple SWF, so we'll use the Flash Player Projector; in the current version of Core, this is listed as "FPSoftware\Flash\flashplayer_32_sa.exe", and is selected by default.
http://uploads.ungrounded.net/218000
* The Launch Command, based on the URL of the game's source file.
 
Finally, the subdomain 218000 contains our SWF file;
 
http://uploads.ungrounded.net/218000/218014_DAbuddy_latest.swf
 
This is a complete Launch Command telling Flashpoint where to find our game. To summarize, the Launch Command of a game is most often the URL of its source file, '''but always using http:// instead of https://'''.
 
In your meta.txt, write your metadata fields something like this:
Title: Interactive Buddy
Platform: Flash
Application Path: FPSoftware\Flash\flashplayer_32_sa.exe
Launch Command: http://uploads.ungrounded.net/218000/218014_DAbuddy_latest.swf


Again, there will eventually be more metadata fields in your curation, but these ensure the game will work in Flashpoint.
To summarize, the Launch Command of a game is most often the URL of its source file. However, '''be extremely careful''' about the beginning of this game's URL; it uses HTTPS instead of HTTP. Flashpoint can't handle using HTTPS, and will download assets from the live Internet instead of from its fake Internet server, which can lead to a game going off the web later and not working in Flashpoint when that happens. To summarize, '''no matter the URL, always use http:// at the beginning of any Launch Command, NO EXCEPTIONS.'''


[[File:ContentStructure.png|thumb|An example of how your content folder should be laid out within your curation.]]
To add the content you generated earlier using cURLsDownloader, click the "Open Folder" button at the bottom of your curation and you should see a "content" folder. Move everything from cURLsDownloader's "Downloads" folder into this "content" folder.
Now it's time to create your content folder. Create a new folder named "content" (in lowercase). The subfolders within this folder are named after the main domain, then each subdomain of the Launch Command, until you get to the SWF itself. In this case, create a folder named uploads.ungrounded.net inside content. Go into that folder and create another named 218000, then move the SWF you downloaded earlier into the 218000 folder.


== Curating with Flashpoint Core==
Take a look at the image to the right to see how your tutorial curation should look. If any field is highlighted in yellow, it's a warning; take another look at your own curation and see what's wrong. Curations of your own should have as much metadata filled in as possible, but the fields mentioned above ensure the game will work in Flashpoint. You can fill in the rest of the fields if you like, but it's not necessary right now.


Once you've created both your meta.txt and content folder, put them in the same folder and name it whatever you like. Open Flashpoint Core and click the Curate tab. Click "Import Folder" and go to the folder you just created, then click "Import All". Flashpoint will automatically add your curation unless you've made an error with your Application Path or Launch Command. Go to the Games tab, double-click your game to test it, and you should see Interactive Buddy pop up.  
Once you're confident your curation looks good, click the "Run" button next to the "Open Folder" button to test the game and you should see Interactive Buddy pop up.


Congrats! You've successfully made a curation. Now let's see how to deal with more complex games.
Congrats! You've successfully made a curation. Now let's see how to deal with more complex games.
Line 91: Line 75:
== Sitelocks ==
== Sitelocks ==
[[File:AndkonSitelock.png|thumb|The sitelock telling you to go to Andkon Arcade, despite the game already being on Andkon Arcade.]]
[[File:AndkonSitelock.png|thumb|The sitelock telling you to go to Andkon Arcade, despite the game already being on Andkon Arcade.]]
Some Flash games will check the domain the game is being hosted on, and "lock" the game from being played if it's not on the correct site, called a sitelock. This can even occur, though very rarely, to the original site the game was hosted on, as is the case with [http://andkon.com/arcade/adventureaction/monsterslayers/ Monster Slayers]. Click this link and try to play the game; your result will be the image on the right. Despite the game already being hosted on andkon.com, it'll activate its sitelock and tell you to go to Andkon Arcade. Try to find and download the SWF using the method described in the previous section.
Some Flash games will check the domain the game is being hosted on, and "lock" the game from being played if it's not on the correct site, called a sitelock. This can even occur, though very rarely, on the original site where the game was hosted, as is the case with [http://andkon.com/arcade/adventureaction/monsterslayers/ Monster Slayers]. Click this link and try to play the game; your result will be the image on the right. Despite the game already being hosted on andkon.com, it'll activate its sitelock and tell you to go to Andkon Arcade. Try to find and download the SWF using the method described in the previous section.


You should find this source URL:
You should find this source URL:
Line 103: Line 87:
This particular URL uses http:// instead of https://, but '''always make sure the Launch Command uses http://''' regardless.
This particular URL uses http:// instead of https://, but '''always make sure the Launch Command uses http://''' regardless.


You can use a different curation folder or the same one as before, but make sure to use this correct Launch Command. Import your curation into Core again and test your game; Flashpoint should bypass the sitelock and allow you to play the game as Andkon once did.
Try to create a new curation by downloading the SWF from the top URL using cURLsDownloader, and setting the bottom URL as the Launch Command. Use the Curate tab in Flashpoint Core to test your game; Flashpoint should bypass the sitelock and allow you to play Monster Slayers as Andkon once did.


It's important to use correct Launch Commands and proper content folders for every curation you make (even if you're curating a non-sitelocked SWF), to ensure that all the game's assets are loaded exactly as they would be on the real Internet, without running into any possible sitelocks on the way (even if the game appears to be playable outside of Flashpoint).
It's important to use correct Launch Commands and proper content folders for every curation you make (even if you're curating a non-sitelocked SWF), to ensure that all the game's assets are loaded exactly as they would be on the real Internet, without running into any possible sitelocks on the way (even if the game appears to be playable outside of Flashpoint).


== Using cURLs Downloader for Multi-Asset Games ==
== Using cURLsDownloader for Multi-Asset Games ==
 
Up until now, we've only curated single-asset SWF files. However, many games were made at a time where downloading one large file was a large pain. This meant games were split into several, smaller assets. Whether these games load all of the assets at once or if they load assets as you play the game depends on how they were programmed, making curation of multi-asset games more difficult than single-assets.


Up until now, we've only curated single-asset SWF files. However, many games were made at a time where downloading one large file was a large pain, and so games were split into several, smaller assets. Whether these games load all of the assets at once or if they load assets as you play the game depends on how they were programmed, making curation of multi-asset games more difficult than single-assets.  
Let's check out a multi-asset game called [https://www.newgrounds.com/portal/view/372340 Gateway II]. Here's the link to the main SWF of the game:
https://uploads.ungrounded.net/372000/372340_gateway_2.swf?1547470930
Try curating this SWF as described above and testing it in Flashpoint with the Run button. You'll only get to the language select screen before the game freezes once you pick one.  


If while testing a seemingly single-asset game, you get stuck when you should clearly be able to continue, check the Redirector window for anything labeled (404 Not Found). This means the game was calling for one or more assets that it didn't have offline, making the game freeze because it failed to load a required assset. Thankfully, Flashpoint can handle these assets as long as they're downloaded properly.  
Check the Redirector window for anything labeled (404 Not Found). This means the game was calling for one or more assets that it didn't have offline, making the game freeze because it failed to load a required asset. Thankfully, Flashpoint can handle these assets as long as they're downloaded properly.  


Instead of manually downloading lots of assets, this time we'll use a program called cURLs Downloader.
Once again, instead of manually downloading lots of assets, we can use cURLsDownloader to save time and effort.


'''Option 1:''' Download assets called by the game as you test it in Flashpoint Core.
'''Option 1:''' Download the assets called by the game as you test it in Flashpoint Core.
* cURLs Downloader should be in your Flashpoint Core folder > Utilities > cURLsDownloader.
# In the Redirector, select Copy > Copy all 404 Not Found URLs and paste the results into a text file.  
* In the Redirector, select Copy > Copy all 404 Not Found URLs and paste the results into a text file.  
# Save the text file and drag it over cURLsDownloader.
* Save the text file and drag it over cURLs Downloader.
# Wait for cURLsDownloader to finish fetching assets. Use option 1 when finished if it detects broken filenames, which will very likely fix them.
* Wait for cURLs Downloader to finish fetching assets. Use option 1 when finished if it detects broken filenames, which will very likely fix them.
# Move the contents of the Downloads folder in cURLsDownloader to the content folder of your curation.
* Copy the contents of the Downloads folder in cURLs Downloader to a new content folder.
# Test your game with the Run button and repeat this process if any more 404 errors appear in the Redirector.
* Delete your old curation and re-import with the new content. Test your game and repeat if the game 404s on additional assets.


'''Option 2:''' Download all the assets the source page of a game loads as you play it on the live Internet (but some assets downloaded won't be part of the game).
'''Option 2:''' Download all the assets that the source page of a game loads as you play it on the live Internet (but some assets downloaded won't be part of the game).
* Once again, open the Network viewer and refresh the page.
# Once again, press F12 to open your browser's Network viewer, then refresh the page.
* When you're confident you've loaded all a game's assets on its original Internet source, click the "All" tab in the Network viewer this time and right-click on an asset.  
# Play through your game on the Internet, loading assets as you go.
* Select Copy > Copy all as cURL (cmd) and paste the results into a text file.  
# When you're confident you've loaded all of the game's assets, click the "All" tab in the Network viewer and right-click on an asset.  
* Save the text file and drag it over cURLs Downloader.
# Select Copy > Copy all as cURL (cmd) and paste the results into a text file.  
* Wait for cURLs Downloader to finish fetching assets. Use option 1 when finished if it detects broken filenames, which will very likely fix them.
# Save the text file and drag it over cURLsDownloader.
* Open the Downloads folder in cURLs downloader and determine which folder contains the necessary files to play the game.
# Wait for cURLsDownloader to finish fetching assets. Use option 1 when finished if it detects broken filenames, which will very likely fix them.
* Copy the contents of your chosen folder in cURLs Downloader to a new content folder.
# Open the Downloads folder in cURLsDownloader and determine which folder contains the necessary files to play the game.
* Delete your old curation and re-import with the new content. Test your game.
# Move the contents of your chosen folder to the content folder of your curation.
# Test your game with the "Run" button.


When testing games, if a game lets you get through more than one level without loading another asset, you'll ''generally'' be okay to assume that there's no more assets to be found, but this is never a guarantee, and you should always test your game in Flashpoint as much as you can.
When testing games, if a game lets you get through more than one level without loading another asset, you'll ''generally'' be okay to assume that there's no more assets to be found, but this is never a guarantee, and you should always test your game in Flashpoint as much as you can.
Line 140: Line 128:
If you think your game might not be a Flash game, try viewing the tutorials for other [[Platforms]] like Shockwave or HTML5. If you know your game is Flash but still can't get it to work, check the [[Flash Curation]] page for more detailed info on specifically Flash games. If all else fails, ask away in #curator-lounge on our Discord and we'll try to solve the issue together.
If you think your game might not be a Flash game, try viewing the tutorials for other [[Platforms]] like Shockwave or HTML5. If you know your game is Flash but still can't get it to work, check the [[Flash Curation]] page for more detailed info on specifically Flash games. If all else fails, ask away in #curator-lounge on our Discord and we'll try to solve the issue together.


Once you're sure you've gotten a game working in Flashpoint, it's time to add the additional parts of any curation. The [[Curation Format]] page tells you how curations are laid out in order to add it to the master build of Flashpoint with as much information as possible. Once you have a proper curation ready, follow these steps to make sure it gets added to Flashpoint:
Once you're sure you've gotten a game working in Flashpoint, it's time to add the additional parts of any curation. The [[Curation Format]] page tells you how curations are laid out in order to add it to the master build of Flashpoint with as much information as possible.  
 
When you've created a proper curation in the Curate tab, click the "Export" button at the bottom of your curation, which will save a .7z archive of the curation ready to be imported into the master build. Name it something relevant (typically the name of the game), and save it wherever you'll remember it.
 
Once you have your .7z ready, follow these steps to make sure it gets added to Flashpoint:


{{:Submitting a Curation}}
{{:Submitting a Curation}}

Latest revision as of 22:45, 18 February 2020

This page is a basic tutorial on how Flashpoint works and how to curate games to add them to Flashpoint.

For more advanced platform-specific tutorials, see Platforms.

For more details on how to package a curation, see Curation Format.

How Flashpoint Works

A diagram showing how Flashpoint's technology works.

Flashpoint is more than just a program to play files; rather, it's a combination of three programs working in parallel:

  • a web server, which hosts game files from a hard drive and pretends to be the original Internet source the games ran off of,
  • a Redirector, which points the game files and resources to the server to make them believe they're on the Internet,
  • and a launcher, the user interface to select and play games from.

Flashpoint itself also comes in three primary versions:

  • Infinity, the version that downloads games from a server as you play them,
  • Ultimate, the gigantic version with every game included and ready for offline play,
  • and Core, the version with only a few games for testing, most often used by Curators to add games.

Infinity will download files as you play games that request them, while Ultimate and Core know the files are already there. All three make the files believe they're being ran on their original source. This has numerous benefits, the two most important being bypassing sitelocks and supporting multi-asset games. For now, though, let's walk through curating a single-asset SWF file.

Setting Up Our Software

To download game files from the Internet, you'll need:

  • Flashpoint Core, used to add and test new games. It can be found at the bottom of our Downloads page.
  • A modern browser such as Chrome or Firefox, which have a built in Network monitor that we can use to find and grab individual SWFs, and sometimes multi-asset titles with low amounts of resources.
  • cURLsDownloader, found in the Utilities folder of the Flashpoint Core directory. This isn't strictly necessary, but it helps immensely; you'll see why later on.

Download Flashpoint Core, extract it to your hard drive, run it via its shortcut in the extracted folder, and make sure that the included games play properly before you continue.

Finding the Source of Your Game

As a tutorial, we'll start by curating the simplest type of Flash game: a single SWF file that isn't sitelocked, specifically Interactive Buddy. You might need to enable Flash in your browser to get it to play (this tutorial won't work if you're using another player such as the Newgrounds Player).

The SWF for Interactive Buddy in Chrome's network tab; it should look similar on Firefox.
  • If you're using Chrome or Firefox, press F12 to open the Developer Tools and click on the Network tab. This shows us every asset that loads on the page in real time.
  • You can filter miscellaneous types of assets such as Flash files by clicking the Other tab within the Network tab.
  • Refresh the page to find that a few assets loaded. The game file has an extension of .swf, and has a type of x-shockwave-flash in the table.
  • Once you find the SWF, you can hover over it to see its URL and confirm that it ends in .swf.
  • Right-click the asset and select Copy > Copy link address.

Generating Content Folders with cURLsDownloader

If you've followed the tutorial up to this point, you should have copied this link to the SWF for Interactive Buddy:

https://uploads.ungrounded.net/218000/218014_DAbuddy_latest.swf?123

Flashpoint calls files from a file directory created from the URL of a game, packaged into a folder called content for each curation. Instead of creating a content folder manually, though, we can use a tool called cURLsDownloader to do it automatically.

  • cURLsDownloader should be in your Flashpoint Core folder > Utilities > cURLsDownloader.
  • Open cURLsDownloader and paste your game URL into its input.
  • Select Option 1 to grab the SWF file.
  • cURLsDownloader will automatically download the SWF and create a content folder for Flashpoint, located in its Downloads folder. Use option 1 when finished if it detects a broken filename, which will very likely fix it.

We'll come back to this Downloads folder later to move it to its proper place.

Curating with Flashpoint Core

What your curation should look like when you're finished. Note how the Launch Command matches the Content Files.

The most optimal way to curate is to use the "Curate" tab in Flashpoint Core. To do that, open Core and select the Curate tab, then click the New Curation button to see a list of fields to fill in. These are the most important ones:

  • The Title, which tells the game apart from others. Name it "Interactive Buddy" or "Test Game" or anything you like, it doesn't matter right now.
  • The Platform, which determines where the game goes inside our database, split into several platforms (Flash, Shockwave, Unity, etc). When using Core for testing purposes, this isn't massively important, but Flash is selected for SWF files and by default.
  • The Application Path. This determines what piece of software is used to start up the file we specify. In this case we're using a single, simple SWF, so we'll use the Flash Player Projector; in the current version of Core, this is listed as "FPSoftware\Flash\flashplayer_32_sa.exe", and is selected by default.
  • The Launch Command, based on the URL of the game's source file.

To summarize, the Launch Command of a game is most often the URL of its source file. However, be extremely careful about the beginning of this game's URL; it uses HTTPS instead of HTTP. Flashpoint can't handle using HTTPS, and will download assets from the live Internet instead of from its fake Internet server, which can lead to a game going off the web later and not working in Flashpoint when that happens. To summarize, no matter the URL, always use http:// at the beginning of any Launch Command, NO EXCEPTIONS.

To add the content you generated earlier using cURLsDownloader, click the "Open Folder" button at the bottom of your curation and you should see a "content" folder. Move everything from cURLsDownloader's "Downloads" folder into this "content" folder.

Take a look at the image to the right to see how your tutorial curation should look. If any field is highlighted in yellow, it's a warning; take another look at your own curation and see what's wrong. Curations of your own should have as much metadata filled in as possible, but the fields mentioned above ensure the game will work in Flashpoint. You can fill in the rest of the fields if you like, but it's not necessary right now.

Once you're confident your curation looks good, click the "Run" button next to the "Open Folder" button to test the game and you should see Interactive Buddy pop up.

Congrats! You've successfully made a curation. Now let's see how to deal with more complex games.

Sitelocks

The sitelock telling you to go to Andkon Arcade, despite the game already being on Andkon Arcade.

Some Flash games will check the domain the game is being hosted on, and "lock" the game from being played if it's not on the correct site, called a sitelock. This can even occur, though very rarely, on the original site where the game was hosted, as is the case with Monster Slayers. Click this link and try to play the game; your result will be the image on the right. Despite the game already being hosted on andkon.com, it'll activate its sitelock and tell you to go to Andkon Arcade. Try to find and download the SWF using the method described in the previous section.

You should find this source URL:

http://andkon.com/arcade/adventureaction/monsterslayers/monsterslayers.swf

This ironic sitelock is due to Andkon's main domain changing to "andkon.com", when it used to be "arcade.andkon.com". Therefore, changing the "andkon.com" in the URL to "arcade.andkon.com" will give us a Launch Command that bypasses the sitelock:

http://arcade.andkon.com/arcade/adventureaction/monsterslayers/monsterslayers.swf

This particular URL uses http:// instead of https://, but always make sure the Launch Command uses http:// regardless.

Try to create a new curation by downloading the SWF from the top URL using cURLsDownloader, and setting the bottom URL as the Launch Command. Use the Curate tab in Flashpoint Core to test your game; Flashpoint should bypass the sitelock and allow you to play Monster Slayers as Andkon once did.

It's important to use correct Launch Commands and proper content folders for every curation you make (even if you're curating a non-sitelocked SWF), to ensure that all the game's assets are loaded exactly as they would be on the real Internet, without running into any possible sitelocks on the way (even if the game appears to be playable outside of Flashpoint).

Using cURLsDownloader for Multi-Asset Games

Up until now, we've only curated single-asset SWF files. However, many games were made at a time where downloading one large file was a large pain. This meant games were split into several, smaller assets. Whether these games load all of the assets at once or if they load assets as you play the game depends on how they were programmed, making curation of multi-asset games more difficult than single-assets.

Let's check out a multi-asset game called Gateway II. Here's the link to the main SWF of the game:

https://uploads.ungrounded.net/372000/372340_gateway_2.swf?1547470930

Try curating this SWF as described above and testing it in Flashpoint with the Run button. You'll only get to the language select screen before the game freezes once you pick one.

Check the Redirector window for anything labeled (404 Not Found). This means the game was calling for one or more assets that it didn't have offline, making the game freeze because it failed to load a required asset. Thankfully, Flashpoint can handle these assets as long as they're downloaded properly.

Once again, instead of manually downloading lots of assets, we can use cURLsDownloader to save time and effort.

Option 1: Download the assets called by the game as you test it in Flashpoint Core.

  1. In the Redirector, select Copy > Copy all 404 Not Found URLs and paste the results into a text file.
  2. Save the text file and drag it over cURLsDownloader.
  3. Wait for cURLsDownloader to finish fetching assets. Use option 1 when finished if it detects broken filenames, which will very likely fix them.
  4. Move the contents of the Downloads folder in cURLsDownloader to the content folder of your curation.
  5. Test your game with the Run button and repeat this process if any more 404 errors appear in the Redirector.

Option 2: Download all the assets that the source page of a game loads as you play it on the live Internet (but some assets downloaded won't be part of the game).

  1. Once again, press F12 to open your browser's Network viewer, then refresh the page.
  2. Play through your game on the Internet, loading assets as you go.
  3. When you're confident you've loaded all of the game's assets, click the "All" tab in the Network viewer and right-click on an asset.
  4. Select Copy > Copy all as cURL (cmd) and paste the results into a text file.
  5. Save the text file and drag it over cURLsDownloader.
  6. Wait for cURLsDownloader to finish fetching assets. Use option 1 when finished if it detects broken filenames, which will very likely fix them.
  7. Open the Downloads folder in cURLsDownloader and determine which folder contains the necessary files to play the game.
  8. Move the contents of your chosen folder to the content folder of your curation.
  9. Test your game with the "Run" button.

When testing games, if a game lets you get through more than one level without loading another asset, you'll generally be okay to assume that there's no more assets to be found, but this is never a guarantee, and you should always test your game in Flashpoint as much as you can.

Wrapping It Up

Try curating your own game now that you know about curation. Be sure to check the Game Master List before curating! Otherwise, you might waste time and effort to save a game that's already been saved.

If you think your game might not be a Flash game, try viewing the tutorials for other Platforms like Shockwave or HTML5. If you know your game is Flash but still can't get it to work, check the Flash Curation page for more detailed info on specifically Flash games. If all else fails, ask away in #curator-lounge on our Discord and we'll try to solve the issue together.

Once you're sure you've gotten a game working in Flashpoint, it's time to add the additional parts of any curation. The Curation Format page tells you how curations are laid out in order to add it to the master build of Flashpoint with as much information as possible.

When you've created a proper curation in the Curate tab, click the "Export" button at the bottom of your curation, which will save a .7z archive of the curation ready to be imported into the master build. Name it something relevant (typically the name of the game), and save it wherever you'll remember it.

Once you have your .7z ready, follow these steps to make sure it gets added to Flashpoint:

Submitting a Curation

Submissions are uploaded in the Flashpoint Submission System, which requires you to join our Discord server first. An explanation of how the site works is available here.

If you have any questions, ask in #curators and a Curator will answer them.

After you have uploaded your curation to the website, a Curator will check it. This can take some time, so please be patient. You will be pinged in #fpfss-notifications about whether or not your submission was approved, and if any changes need to be made.

Once your first submission is approved, you'll be given the Trial Curator role. That means you will be able to submit more curations and upload bigger files.

Congratulations! Your submitted game/animation will appear in the next update to Flashpoint.