User:Revac: Difference between revisions
(37 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
This page is a basic tutorial on how Flashpoint works and how to curate games for addition to Flashpoint. | This page is a basic tutorial on how Flashpoint works and how to curate games for addition to Flashpoint. | ||
It is best if this | It is best if this entire guide is read first before attempting curation, to get an idea of what the process and outcome looks like. It is also beneficial to read the [[Platforms|specific curation guide of the Platform]] you are curating for (if one exists), like the [[Flash Curation]] or the [[HTML5 Curation]] pages. | ||
== Why Curate? == | == Why Curate? == | ||
Curation is the process of finding a game, getting it working in Flashpoint, adding metadata to it, and submitting. One curation is just game files and metadata, exported out into a .7z or .zip file. It is the most accessible method of contributing to the project | Curation is the process of preparing a game to add it to the Flashpoint database. It involves finding a game, getting it working in Flashpoint, adding metadata to it, and submitting. One curation is just game files and metadata, exported out into a .7z or .zip file. It is the most accessible method of contributing to the project. | ||
As we are an entirely volunteer-driven project, the more help we can get, the better. This tutorial is made so that anyone can learn to curate. | As we are an entirely volunteer-driven project, the more help we can get, the better. This tutorial is made so that anyone can learn to curate. | ||
Curation is a far more | Curation is a far more simple process than this wall of text may suggest. Here is the tl;dr: | ||
* Get the files of the game. | * Get the files of the game. | ||
Line 16: | Line 16: | ||
=== Finding A Title to Curate === | === Finding A Title to Curate === | ||
If you are | If you are reading this page, it hopefully means you have a game or animation you want to curate. | ||
Before attempting to curate it, please verify it is not in Flashpoint first. Use our [https://flashpointproject.github.io/flashpoint-database/ search tool], search Flashpoint itself, or even search | Before attempting to curate it, please verify it is not in Flashpoint first. Use our [https://flashpointproject.github.io/flashpoint-database/ search tool], search Flashpoint itself, or even search our [https://discord.gg/qhvAkhWXU5 Discord server] to see whether a game has been recently curated, just not added yet. | ||
If you | If you do not have a specific title in mind you want to curate, consider checking out the [https://docs.google.com/spreadsheets/d/1t0MbYMGm4dq4d5hA1l6MKuVYGyw9XU8UOPHjy2ceHX8/edit#gid=1450922388 Game Requests spreadsheet] or the [https://docs.google.com/spreadsheets/d/1vJmALjuGLnr4aznZuN5dVWBkHc50cKNxD1ow3fvjlSs/edit?usp=sharing Curation Sitemap]. | ||
=== Banned Games and Animations === | === Banned Games and Animations === | ||
Line 29: | Line 29: | ||
Flashpoint is more than just a program to play files; rather, it's a combination of two programs working in parallel: | Flashpoint is more than just a program to play files; rather, it's a combination of two programs working in parallel: | ||
* | * A '''web server''', which hosts game files from an internal or external drive and pretends to be the original Internet source the games ran off of, | ||
* | * A '''launcher''', the user interface to select and play games from. | ||
Flashpoint itself also comes in two primary versions: | Flashpoint itself also comes in two primary versions: | ||
* '''Infinity''', the version that downloads games and animations from a server as you play or view them, | * '''Infinity''', the version that downloads games and animations from a server as you play or view them, | ||
* | * '''Ultimate''', the gigantic version with every game and animation included and ready for offline play and viewing. | ||
Infinity will download files as you play games that request them, while Ultimate knows the files are already there. Both 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. The [[How Flashpoint Works]] article provides more detail on this topic. | Infinity will download files as you play games that request them, while Ultimate knows the files are already there. Both 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. The [[How Flashpoint Works]] article provides more detail on this topic. | ||
Line 40: | Line 40: | ||
== Setting Up Our Software == | == Setting Up Our Software == | ||
Curation only requires: | Curation only requires: | ||
*'''[https://flashpointarchive.org/downloads Flashpoint Infinity]''', version 12 or later; curating in previous versions, as well using Flashpoint Core (built for curating but now deprecated) or Ultimate may run into compatibility problems, | *'''[https://flashpointarchive.org/downloads Flashpoint Infinity]''', version 12 or later; curating in previous versions, as well as using Flashpoint Core (built for curating but now deprecated) or Ultimate may run into compatibility problems, | ||
*''' | *A '''modern web browser''' such as Chrome or Firefox, which have tools that we can use to find and grab game files like .swf's, and sometimes multi-asset titles with low amounts of resources. | ||
Additionally, | Additionally, | ||
*'''cURLsDownloader''' is usually very beneficial in curation. It is found as a component in the Extras section of the Flashpoint Infinity Installer. This isn't strictly necessary, but it helps immensely; you'll see why later on. There are also other helpful utilities available in this section, like fpcurator. | *'''cURLsDownloader''' is usually very beneficial in curation. It is found as a component in the Extras section of the Flashpoint Infinity Installer. This isn't strictly necessary, but it helps immensely; you'll see why later on. There are also other helpful utilities available in this section, like fpcurator. | ||
Before curating, please make sure your installation of Flashpoint is working normally first, if not, join our [https://discord.gg/qhvAkhWXU5 Discord server] and post in the #help channel. | |||
== The Curate Tab == | == The Curate Tab== | ||
The Curate Tab is where all curation work is done, whether it be an entirely new curation or | The Curate Tab is where all curation work is done, whether it be an entirely new curation or a [[Content Patches|content patch]]. To enable this tab, open the '''Config''' tab of Flashpoint and select '''Enable Editing'''. | ||
To start a new curation, click New Curation. You should now see a whole bunch of empty boxes, some with yellow boxes. These are the '''Metadata Fields''', where all the information for titles live. The yellow-highlighted fields represent that they are required for submission. These are the '''Title''', '''Tags''', '''Source''', and the '''Launch Command'''. The Application Path is also required, but it prefills to <code>flashplayer_32_sa.exe</code>. | To start a new curation, click '''New Curation'''. You should now see a whole bunch of empty boxes, some with yellow boxes. These are the '''Metadata Fields''', where all the information for titles live. The yellow-highlighted fields represent that they are required for submission. These are the '''Title''', '''Tags''', '''Source''', '''Library''', and the '''Launch Command''' fields. The Application Path field is also required, but it prefills to <code>flashplayer_32_sa.exe</code>. | ||
The required fields for ''just'' running a curation in the curate tab are the '''Launch Command''' and the '''Application Path''' fields, alongside having the correct game files in the curation's content folder. These three should be handled first before filling out metadata, and we will focus on these now. | |||
== Identifying the Launch Command == | |||
The first step to getting a game working into Flashpoint is finding the title's launch command, the URL we give to Flashpoint to launch our game. Launch commands (usually) follow a game's original URL that it was hosted to, but there are some exceptions such as <code>localflash</code>. Flash launch commands are usually straightforward to find. What we are looking for is a '''URL that ends with .swf''', embedded on a page that has the game. Let's take [https://www.newgrounds.com/portal/view/218014 Interactive Buddy] for example, and look at two possible methods to find Interactive Buddy's launch command. | |||
'''Both of these methods will give you a launch command that begins with https://, the s will need to be removed when you are doing anything involving a URL in Flashpoint, resulting in http://, as Flashpoint does not support HTTPS.''' | |||
=== View Page Source Method === | |||
[[File:Interactivebuddyngsource.png|600px|thumb|The SWF for Interactive Buddy in Firefox's View Source page; it should look similar on Chrome.]] | |||
The simplest way to find the launch command is to '''right click on the page and view its source''', or press '''Ctrl+U'''. (These may be slightly different depending on your browser.) You can either find the .swf link yourself, or press '''Ctrl+F''' and type ".swf". Usually the game's .swf is the first result, but depending on the site, other .swf's may show up first. For Interactive Buddy, the URL we are looking for is <code>https://uploads.ungrounded.net/218000/218014_DAbuddy_latest.swf</code>. This will be our launch command. (Please note that there may be extra slash's in the url, which should be removed. '''Only include forward facing slashes'''.) | |||
All Flash works on Newgrounds will be hosted on <code>uploads.ungrounded.net</code>, and similar portal sites will follow their own common domain, such as Armor Games (<code>cache.armorgames.com</code>) or Kongregate (<code>chat.kongregate.com/gamez/</code>) | |||
This method is not perfect however, some sites like Kongregate do not show the game's .swf URL in the page source. In this case, you can use the Network Tab method. | |||
=== Network Tab Method === | |||
[[File:SWFAssetInChrome.png|500px|thumb|The SWF for Interactive Buddy in Chrome's network tab; it should look similar on Firefox.]] | |||
In all modern browsers, you can use your browser's developer tools to find a game's launch command. In Chrome or Firefox, you can press '''F12''' or right click on the page and select '''Inspect (Element)'''. Click on the '''Network''' tab. | |||
As long as the game is running on the page, no matter if it's running with the Flash plugin or Ruffle, its .swf URL will be present here. (You may need to refresh the page in order to get it to load.) | |||
What we want is a request with a <code>x-shockwave-flash</code> type. We can find this by either selecting the '''Other''' category, or searching '''.swf''' in the tab's search bar. The .swf URL can then be copied by right clicking it. | |||
Now that we have the link to the game's files, it's time to download the game file(s). | |||
== Downloading Game Files == | |||
There are several ways to download game files and add them into a curation's content folder. | |||
===Manually Downloading=== | |||
[[File:lc.png|380px|thumb|left|Interactive Buddy's launch command and the respective folder structure inside the content folder.]] | |||
The slowest and most inefficient method; .swf's can be manually downloaded from the internet just by opening their link. When working with games that use multiple assets, their assets can be manually downloaded too. Images can be saved with '''Save Image as''' in the right click context menu. .xml and .js files can be downloaded with '''Save Page as''' in the context menu as well. When getting your files into the content folder, you will need to manually create folders based on the URL the file exists/existed at. This can be done by first making the folder of the domain inside the content folder, done with <code>New > Folder</code> in the right click context menu of File Explorer, and then making as many folders as is needed within that to fit the launch command. | |||
If your launch command is <code>http://uploads.ungrounded.net/218000/218014_DAbuddy_latest.swf</code> for example, you will need to make a <code>uploads.ungrounded.net</code> folder, a <code>218000</code> folder inside that, and then finally add the .swf inside that. | |||
If you are dealing with a game that is just a .swf for example, this method is perfectly fine. Some titles can have several hundred or even thousand assets though, where this method would be terribly inefficient to use. | |||
===Using cURLsDownloader=== | |||
cURLsDownloader is a curation tool that will create the required directory structures and download the files into it, corresponding to the given URL. It is downloaded in the Extras section of the Manager, and then found in the Utilities folder of the Flashpoint directory. This tool can be used for single and multi-asset games. For single asset titles, just put in the file's link and download. | |||
For multi-asset titles, two methods are available. | |||
Let's check out a multi-asset game called [https://www.kongregate.com/games/struma/gateway-ii Gateway II]. Here's the link to the main .swf of the game: | |||
https://chat.kongregate.com/gamez/0000/3268/live/gateway_2.swf?kongregate_game_version=1581667106 | |||
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. | |||
Select the '''Logs''' tab in Flashpoint, then look near the bottom of the log. You should see a line with "200 HTTP/1.1" followed by a directory to the main .swf, followed by one or more lines with "404 HTTP/1.1" followed by directories to additional assets. | |||
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 Infinity. | |||
# Click the Copy Text button in the top-right of the Logs tab. | |||
# Paste the results into a text file and remove every line except for ones beginning with "404 HTTP/1.1". Remove that section from each line along with anything before it such as timestamps, then add "http://" to the beginning of each line. | |||
# Save the text file and drag it over cURLsDownloader. | |||
# Wait for cURLsDownloader 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. | |||
# Test your game with the '''Run''' button. If anything fails to work as it should, look for more lines beginning with "404 HTTP/1.1" in the '''Logs''' tab and repeat this process. | |||
'''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, press '''F12''' to open your browser's '''Network''' viewer, then refresh the page. | |||
# Play through your game on the Internet, loading assets as you go. | |||
# 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. | |||
# Select Copy > Copy all as cURL (cmd) and paste the results into a text file. | |||
# Save the text file and drag it over cURLsDownloader. | |||
# Wait for cURLsDownloader to finish fetching assets. Use option 1 when finished if it detects broken filenames, which will very likely fix them. | |||
# Open the Downloads folder in cURLsDownloader and determine which folder contains the necessary files to play the game. | |||
# Move the contents of your chosen folder to the content folder of your curation. | |||
# Test your game with the "Run" button. | |||
=== Using MAD4FP === | |||
MAD4FP (Multi-Asset Downloader for Flashpoint) allows for automatically downloading game assets. This is the usually the easiest method of getting files into the content folder, granted the game you are attempting to curate is live, and this works with both single asset and multi-asset games. It can download content files directly into your curation's content folder and create the proper folder structure automatically. For more information, see [[MAD4FP]]. | |||
=== Using fpcurator === | |||
fpcurator allows for easily creating curations. It is downloaded in the Extras category of the Manager, and found in the Utilities folder of the Flashpoint directory. The common use is to paste URLs that contain the games and press the "Curate" button to have them generated in the default folder for curations; if you are already using Flashpoint, press the "Scan For New Curations" button after that. This tool largely works only for the websites that have fpcurator definitions made for them, however a generic definition is included which may work on a given URL. The provided URL should be the game's page on the website, 'not' the URL pointing to the game file itself. See [[Helpful Tools#Software for Curating|Helpful Tools]] for more information and documentation. | |||
When using the automatic methods above, '''please make sure the files are actually required by the curation!''' This can be done by deleting suspected files from the Content folder of the curation, clicking on '''Clear WinINet Cache''' to clear your projector cache, and running the curation. Common files which are usually not needed are ads, tracking, and analytics files. | |||
==Filling Out Metadata== | |||
[[File:goodmeta.png|380px|thumb|An example of good metadata from an Alien Hominid curation.]] | |||
You should now have your submission running successfully in the curate tab. The next step is filling out the metadata of the submission. Take your time when it comes to this as the more accurate and official metadata you can add, the better. | |||
If you happen to find an official source for metadata that can be added, but it is different than the Source tab, you can add that metadata and link it in the Notes field. (NOT the Curation Notes.) This is typically done with a simple <code>Metadata from:[link]</code> | |||
===List of Metadata Fields=== | ===List of Metadata Fields=== | ||
Fields marked with <span style="color:#ff0000">*</span> are '''required'''. If a field is not applicable and not required for your curation, either omit it or leave it blank. | |||
{{:Curation Format/meta}} | |||
=== | ===Logos=== | ||
{{:Curation Format/Logo}} | {{:Curation Format/Logo}} | ||
Line 141: | Line 149: | ||
===Screenshot=== | ===Screenshot=== | ||
{{:Curation Format/Screenshot}} | |||
===Additional Applications=== | |||
The Additional Applications field can be used to add Messages, Extras, or Alternates to a curation. You can add these through the "New App", "Add Extras", and "Add Message" buttons at the bottom of each curation in the "Curate" tab. Each of these items is explained in detail below. | |||
'''Messages''' | |||
Use the Message sub-field to add a short, one-line message that pops up before a game runs. You'll want to use this if there's something that Flashpoint users need to know before playing a game. If you have less-important information about the game, use the '''Notes''' field instead. You can only have one message per curation. | |||
In Infinity, click on '''Add Message''' at the bottom of the curation to add a message. | |||
Example: | |||
<nowiki> | |||
Additional Applications: | |||
Heading: Message | |||
Message: This game starts in fullscreen. To exit, alt-tab and close the window in the taskbar.</nowiki> | |||
'''Extras''' | |||
Extras allow you to include a folder of bonus materials with your curation. If you would like to include files related to a game that are not required to play it, such as source code or unlockable items, this is how you can do it: | |||
# Inside your curation's folder, next to the '''Content''' folder, create a folder called '''Extras'''. | |||
# Place all of the bonus materials you would like to include inside of the Extras folder. | |||
# In the '''Notes''' field, add a short explanation of what's included in the Extras folder. | |||
# In Infinity, click on '''Add Extras''' at the bottom of the curation and type ''gamename'' into the '''Extras Folder''' field. For example, if the title of the game was ''Tokyo Guinea Pop'', you would type <code>tokyoguineapop</code>. Do not edit the "Heading" field! | |||
For example, here is the Additional Applications field of a game called ''Tokyo Guinea Pop''. The curation's Extras folder contains unlockable items from the game's original website. | |||
<nowiki> | |||
Additional Applications: | |||
Extras: tokyoguineapop</nowiki> | |||
< | When the above curation is imported into Flashpoint, the curation's Extras folder will be renamed to <code>tokyoguineapop</code> and placed in Flashpoint's main Extras folder. | ||
As you can see, the Extras field specifies the name of the Extras folder when it is imported into Flashpoint. That means that you cannot use special characters like colons (<code>:</code>) or slashes (<code>/ \</code>). We recommend using only alphanumeric characters. | |||
Note that you can only have one Extras folder per curation. | |||
'''Alternates''' | |||
Alternates allow you to add alternate versions of a game into the same curation. This is commonly used to add older versions of a game, alternate languages of a game, or hacked versions from sites like Arcade Prehacks. Note that all of the files required to run an Alternate should be included in the '''Content''' folder of your curation, along with the files for the main version. If the Additional Application cannot be described in just the heading, explain it in the '''Notes''' field. | |||
In Infinity, click on '''New App''' at the bottom of the curation to add alternates. Provide a short name for the alternate version in the '''Heading''' field. For example, you might say <code>Hacked Version</code> or <code>Version 0.5b</code>. Be sure to fill out the Application Path and Launch Command fields, then test the alternate thoroughly. | |||
Example: | |||
<nowiki> | |||
Additional Applications: | |||
Heading: Hacked Version | |||
Application Path: FPSoftware\Flash\flashplayer_32_sa.exe | |||
Launch Command: http://www.irregulargames.com/drop3/drop3-hacked.swf</nowiki> | |||
=== | ==Submission== | ||
You should now have the game fully working entirely within Flashpoint. | |||
At this point, you will now enter all possible metadata for a game. Follow the [[#List of Metadata Fields|metadata fields]] table you saw earlier and try to make it as complete as you can. | |||
After making sure your curation works fine and all your metadata is correct, click the "Export" button on the sidebar. An exported .7z file of your curation can be found by opening the "Curations Folder" button, then opening "Exported". | |||
=== | Note that your [[Save Data Locations|save data]] for the game will not be included in your curation. | ||
===Uploading to FPFSS=== | |||
Once you have your .7z ready, upload the .7z file to [https://fpfss.unstable.life/web Flashpoint Submission System], which requires you to join our [https://discord.gg/kY8r2BbPQ9 Discord server] first. An explanation of how the site works is available [https://fpfss.unstable.life/web/help here]. | |||
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. If you have any questions, ask in #curators and a Curator will answer them. | |||
Latest revision as of 23:56, 23 March 2024
This page is a basic tutorial on how Flashpoint works and how to curate games for addition to Flashpoint.
It is best if this entire guide is read first before attempting curation, to get an idea of what the process and outcome looks like. It is also beneficial to read the specific curation guide of the Platform you are curating for (if one exists), like the Flash Curation or the HTML5 Curation pages.
Why Curate?
Curation is the process of preparing a game to add it to the Flashpoint database. It involves finding a game, getting it working in Flashpoint, adding metadata to it, and submitting. One curation is just game files and metadata, exported out into a .7z or .zip file. It is the most accessible method of contributing to the project.
As we are an entirely volunteer-driven project, the more help we can get, the better. This tutorial is made so that anyone can learn to curate.
Curation is a far more simple process than this wall of text may suggest. Here is the tl;dr:
- Get the files of the game.
- Put them into a new curation.
- Fill out metadata.
- Export and submit.
Finding A Title to Curate
If you are reading this page, it hopefully means you have a game or animation you want to curate.
Before attempting to curate it, please verify it is not in Flashpoint first. Use our search tool, search Flashpoint itself, or even search our Discord server to see whether a game has been recently curated, just not added yet.
If you do not have a specific title in mind you want to curate, consider checking out the Game Requests spreadsheet or the Curation Sitemap.
Banned Games and Animations
These are games/animations not allowed in Flashpoint for any reason. You can make an effort to get them working in Flashpoint if you want, but you may not request or submit them.
- Games/animations that are still on sale, we will not distribute currently paid content. (Don't forget that some games start in web browsers for free then get paid versions later, the web browser version would be allowed in Flashpoint in this case; be sure to check the history before you archive.)
- Any outright emulation of a commercial game (Such as a swf of Contra which contains the Contra ROM image). Ports of games are absolutely fine, but games that are a ROM wrapped in an emulator are not allowed unless they contain only non-commercial games and/or allow you to load your own.
- While not emulation, fan remakes/conversions of Nintendo projects like Full Screen Mario are too risky to add if they were taken down by Nintendo. Not all remakes/conversions are risky though, if you are unsure just ask in #curators.
- Videos embedded in SWF files:
- If the SWF has nothing on it other than it requiring a separate FLV to run the SWF file properly (and if the FLV works perfectly fine on VLC), then it won't be allowed on Flashpoint and it should rather be uploaded through Archive.org
- If it uses any Flash elements like ui, special effects, loop etc., it can be curated.
- This means that your curation can't be only a video embedded in a SWF.
- Games, animations and websites that use video are allowed, and you should include the video files and/or SWFs containing video in the curation.
- Animations using the HTML5 platform have to include animated components and make use of HTML5-specific tags, CSS, and/or Javascript.
- Games/animations with cub, shotacon or lolicon content.
- The following are not allowed at developer request:
- Any game from XForm Games that is not already in the database
- Windows 93
- Dragon Ball Devolution, and other games from www.txori.com
- Any game developed by Nitrome
- Flash Flash Revolution
- Any game developed by Farrago Fiction
- Any game/animation developed by Anonymous-Frog
- Non-classic versions of Cookie Clicker
It should go without saying that blatantly illegal games/animations are not allowed, either.
How Flashpoint Works
Flashpoint is more than just a program to play files; rather, it's a combination of two programs working in parallel:
- A web server, which hosts game files from an internal or external drive and pretends to be the original Internet source the games ran off of,
- A launcher, the user interface to select and play games from.
Flashpoint itself also comes in two primary versions:
- Infinity, the version that downloads games and animations from a server as you play or view them,
- Ultimate, the gigantic version with every game and animation included and ready for offline play and viewing.
Infinity will download files as you play games that request them, while Ultimate knows the files are already there. Both 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. The How Flashpoint Works article provides more detail on this topic.
Setting Up Our Software
Curation only requires:
- Flashpoint Infinity, version 12 or later; curating in previous versions, as well as using Flashpoint Core (built for curating but now deprecated) or Ultimate may run into compatibility problems,
- A modern web browser such as Chrome or Firefox, which have tools that we can use to find and grab game files like .swf's, and sometimes multi-asset titles with low amounts of resources.
Additionally,
- cURLsDownloader is usually very beneficial in curation. It is found as a component in the Extras section of the Flashpoint Infinity Installer. This isn't strictly necessary, but it helps immensely; you'll see why later on. There are also other helpful utilities available in this section, like fpcurator.
Before curating, please make sure your installation of Flashpoint is working normally first, if not, join our Discord server and post in the #help channel.
The Curate Tab
The Curate Tab is where all curation work is done, whether it be an entirely new curation or a content patch. To enable this tab, open the Config tab of Flashpoint and select Enable Editing.
To start a new curation, click New Curation. You should now see a whole bunch of empty boxes, some with yellow boxes. These are the Metadata Fields, where all the information for titles live. The yellow-highlighted fields represent that they are required for submission. These are the Title, Tags, Source, Library, and the Launch Command fields. The Application Path field is also required, but it prefills to flashplayer_32_sa.exe
.
The required fields for just running a curation in the curate tab are the Launch Command and the Application Path fields, alongside having the correct game files in the curation's content folder. These three should be handled first before filling out metadata, and we will focus on these now.
Identifying the Launch Command
The first step to getting a game working into Flashpoint is finding the title's launch command, the URL we give to Flashpoint to launch our game. Launch commands (usually) follow a game's original URL that it was hosted to, but there are some exceptions such as localflash
. Flash launch commands are usually straightforward to find. What we are looking for is a URL that ends with .swf, embedded on a page that has the game. Let's take Interactive Buddy for example, and look at two possible methods to find Interactive Buddy's launch command.
Both of these methods will give you a launch command that begins with https://, the s will need to be removed when you are doing anything involving a URL in Flashpoint, resulting in http://, as Flashpoint does not support HTTPS.
View Page Source Method
The simplest way to find the launch command is to right click on the page and view its source, or press Ctrl+U. (These may be slightly different depending on your browser.) You can either find the .swf link yourself, or press Ctrl+F and type ".swf". Usually the game's .swf is the first result, but depending on the site, other .swf's may show up first. For Interactive Buddy, the URL we are looking for is https://uploads.ungrounded.net/218000/218014_DAbuddy_latest.swf
. This will be our launch command. (Please note that there may be extra slash's in the url, which should be removed. Only include forward facing slashes.)
All Flash works on Newgrounds will be hosted on uploads.ungrounded.net
, and similar portal sites will follow their own common domain, such as Armor Games (cache.armorgames.com
) or Kongregate (chat.kongregate.com/gamez/
)
This method is not perfect however, some sites like Kongregate do not show the game's .swf URL in the page source. In this case, you can use the Network Tab method.
Network Tab Method
In all modern browsers, you can use your browser's developer tools to find a game's launch command. In Chrome or Firefox, you can press F12 or right click on the page and select Inspect (Element). Click on the Network tab.
As long as the game is running on the page, no matter if it's running with the Flash plugin or Ruffle, its .swf URL will be present here. (You may need to refresh the page in order to get it to load.)
What we want is a request with a x-shockwave-flash
type. We can find this by either selecting the Other category, or searching .swf in the tab's search bar. The .swf URL can then be copied by right clicking it.
Now that we have the link to the game's files, it's time to download the game file(s).
Downloading Game Files
There are several ways to download game files and add them into a curation's content folder.
Manually Downloading
The slowest and most inefficient method; .swf's can be manually downloaded from the internet just by opening their link. When working with games that use multiple assets, their assets can be manually downloaded too. Images can be saved with Save Image as in the right click context menu. .xml and .js files can be downloaded with Save Page as in the context menu as well. When getting your files into the content folder, you will need to manually create folders based on the URL the file exists/existed at. This can be done by first making the folder of the domain inside the content folder, done with New > Folder
in the right click context menu of File Explorer, and then making as many folders as is needed within that to fit the launch command.
If your launch command is http://uploads.ungrounded.net/218000/218014_DAbuddy_latest.swf
for example, you will need to make a uploads.ungrounded.net
folder, a 218000
folder inside that, and then finally add the .swf inside that.
If you are dealing with a game that is just a .swf for example, this method is perfectly fine. Some titles can have several hundred or even thousand assets though, where this method would be terribly inefficient to use.
Using cURLsDownloader
cURLsDownloader is a curation tool that will create the required directory structures and download the files into it, corresponding to the given URL. It is downloaded in the Extras section of the Manager, and then found in the Utilities folder of the Flashpoint directory. This tool can be used for single and multi-asset games. For single asset titles, just put in the file's link and download.
For multi-asset titles, two methods are available. Let's check out a multi-asset game called Gateway II. Here's the link to the main .swf of the game:
https://chat.kongregate.com/gamez/0000/3268/live/gateway_2.swf?kongregate_game_version=1581667106
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.
Select the Logs tab in Flashpoint, then look near the bottom of the log. You should see a line with "200 HTTP/1.1" followed by a directory to the main .swf, followed by one or more lines with "404 HTTP/1.1" followed by directories to additional assets.
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 Infinity.
- Click the Copy Text button in the top-right of the Logs tab.
- Paste the results into a text file and remove every line except for ones beginning with "404 HTTP/1.1". Remove that section from each line along with anything before it such as timestamps, then add "http://" to the beginning of each line.
- Save the text file and drag it over cURLsDownloader.
- Wait for cURLsDownloader 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.
- Test your game with the Run button. If anything fails to work as it should, look for more lines beginning with "404 HTTP/1.1" in the Logs tab and repeat this process.
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, press F12 to open your browser's Network viewer, then refresh the page.
- Play through your game on the Internet, loading assets as you go.
- 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.
- Select Copy > Copy all as cURL (cmd) and paste the results into a text file.
- Save the text file and drag it over cURLsDownloader.
- Wait for cURLsDownloader to finish fetching assets. Use option 1 when finished if it detects broken filenames, which will very likely fix them.
- Open the Downloads folder in cURLsDownloader and determine which folder contains the necessary files to play the game.
- Move the contents of your chosen folder to the content folder of your curation.
- Test your game with the "Run" button.
Using MAD4FP
MAD4FP (Multi-Asset Downloader for Flashpoint) allows for automatically downloading game assets. This is the usually the easiest method of getting files into the content folder, granted the game you are attempting to curate is live, and this works with both single asset and multi-asset games. It can download content files directly into your curation's content folder and create the proper folder structure automatically. For more information, see MAD4FP.
Using fpcurator
fpcurator allows for easily creating curations. It is downloaded in the Extras category of the Manager, and found in the Utilities folder of the Flashpoint directory. The common use is to paste URLs that contain the games and press the "Curate" button to have them generated in the default folder for curations; if you are already using Flashpoint, press the "Scan For New Curations" button after that. This tool largely works only for the websites that have fpcurator definitions made for them, however a generic definition is included which may work on a given URL. The provided URL should be the game's page on the website, 'not' the URL pointing to the game file itself. See Helpful Tools for more information and documentation.
When using the automatic methods above, please make sure the files are actually required by the curation! This can be done by deleting suspected files from the Content folder of the curation, clicking on Clear WinINet Cache to clear your projector cache, and running the curation. Common files which are usually not needed are ads, tracking, and analytics files.
Filling Out Metadata
You should now have your submission running successfully in the curate tab. The next step is filling out the metadata of the submission. Take your time when it comes to this as the more accurate and official metadata you can add, the better.
If you happen to find an official source for metadata that can be added, but it is different than the Source tab, you can add that metadata and link it in the Notes field. (NOT the Curation Notes.) This is typically done with a simple Metadata from:[link]
List of Metadata Fields
Fields marked with * are required. If a field is not applicable and not required for your curation, either omit it or leave it blank.
Field | Explanation |
---|---|
Title* | Always required. The name of the game, in full. When in doubt, use the name indicated in the game's logo. Use the game's official title; don't add anything to it, such as a franchise or series name, if it doesn't exist in the game's title. For games without a logo, use the title of the game's webpage or the text on the webpage that's most clearly intended to be the game's title. Avoid excessively long titles whenever possible. |
Alternate Titles | Alternate titles that can also be used to refer to the game. For example, an alternate name for Gateway II is Gateway 2. You also may use this to indicate the title of the game in other languages. Normal rules pertaining to Title field do not apply. Use ; to separate multiple values. If your title has a roman numeral or an ampersand (&) in it, please include an alternative title with the numeral/symbol replaced with the number/word.
|
Library* | Required if you are curating an animation for Flashpoint Theatre. Possible values:
|
Series | The name of the specific-to-webgames series. This is for games that have prequels and sequels, such as Run, Run 2, and Run 3. Make sure you're not confusing a game's series with its franchises (e.g., The Fairly OddParents or Pokémon), which go into the Tags field. |
Developer | The name of the developer(s) who made the game. Separate multiple developers with ; . Make sure that each person or game studio actually developed the game; sponsorship does not count. Look for a Credits section! If a developer is known by multiple names or aliases, you may separate each with a slash, like this: Alias 1 / Alias 2
|
Publisher | The name of the site(s) that published (sponsored/branded) the game. Look for a "More Games" link or prominent logo; it will probably lead to the Publisher's website. |
Play Mode | Can be either one, two, or all three of these values:
For example, a fighting game where you can play against another player or the computer would be |
Status* | Can be either one, two, or all three of these values:
If a game has been hacked, and missing assets make it impossible to finish the game, its status would be There is one additional status that should only be used in exceptional circumstances:
|
Release Date | The date that the game was first released. Use YYYY-MM-DD format, with whatever precision is available. For example, if you knew a game was released in January 2010, you could say 2010-01 .
|
Version | The version number of the game. This is for revisions of the same game, not games in series. Leave this field blank if the game's version number is not clearly shown somewhere. |
Languages* | Required if you are curating a game that supports languages other than English.
A list of all languages that the game supports, including the languages supported by any alternate versions. Use ISO 639-1 language codes and separate each code with |
Tags* | See Tags. Pay special attention to the tags in the Content Warnings section, because these are required if they apply to the game you are curating. To add a tag, first type it into the meta field, then select it by either clicking on it or pressing the Tab key until it is highlighted and hitting Enter. You can add a new tag to Infinity by typing it into the meta field, hitting Enter, and then following the normal process. |
Source* | The full URL of the webpage where you found the work. If one is not available, such as if you got it from Wayback CDX, the .swf url is acceptable as a source also. If you found the work on the Wayback Machine, give the full capture URL.
If the work is executable/downloadable, use the webpage where the work can be downloaded. Otherwise, provide the name/title of the offline source, along with the medium of the source. Ex: If the work is taken from a personal collection or extracted from a browser's cache, use |
Platforms* | The web game technologies that the game uses. See Platforms for a list of supported platforms and links to platform-specific curation tutorials. One Platform must be marked as Primary; this is the technology used for the majority of the game's important content. Note that a game is only considered to be HTML5 if it does not require any browser plugin.
If your curation omits this field, the Platform is assumed to be Flash. This field is required for all non-Flash curations. |
Application Path* | The path to the application to use to launch the game. This path is relative to the main Flashpoint folder. For example, the Application Path for most Flash games is FPSoftware\Flash\flashplayer_32_sa.exe .
|
Launch Command* | The location of your file inside the content folder, replicating an internet URL. This is case-sensitive. Never have https:// at the beginning of a Launch Command, as it will not work properly; ALWAYS use http://. Flashpoint DOES NOT have HTTPS support. If you found the game on the Wayback Machine, the launch command is the original URL, without the web.archive.org section (same goes for the folder structure inside the content folder).
This field is always required. If you're having trouble figuring out the correct launch command for your curation, see the Curation Tutorial. |
Mount Parameters | Allows passing certain parameters to game zip related launcher extensions which may alter the way games are mounted. This is only used for specific edge cases, so most curators can safely ignore this field. |
Notes | Use this field for important information about the game not explained in the game itself, metadata sources (if it does not come from the title's Source), or any other relevant information about a title. For example, Notes can provide details about cheat codes, missing assets, hacked files, or unimplemented features. |
Original Description | If a game's webpage contains a description of the game or its controls, you may copy and paste it into this field. If you can't find a description on the game's webpage, you can check the page source for the <meta name="description"> HTML tag.
|
Curation Notes | Use this field to show a message to staff if they need to add your curation in a different way from usual, such as if it requires a new Support Pack to be added. These are removed when a curation is added to Flashpoint. |
Additional Applications | Use this section to add a message that pops up before a game runs, a link to an Extras folder, or an alternate version of a game. For more details, see the Appendix. |
Logos
Logos must be in PNG format. A good logo shows something that is representative of the game, like the game's main characters (from the title screen, for example) or other prominent art. You can also use the entire title of the game as the logo, preferably including a visual element along with it. It can be found in the curation folder as logo.png
. You can add a logo to a curation in Flashpoint's Curate tab by dragging it on to the left panel above Drop an image here to add it.
Recommended tools for grabbing logos include Snip & Sketch and Paint, both included in Windows 10/11 by default. You're free to use other tools, but remember, always save logos in PNG format. When possible, it is preferable to make logos more or less square-shaped.
Examples:
Additional tips can be seen here.
Screenshot
Screenshots must be in PNG format. A good screenshot is a credible 'action shot' of the game (no menus or obvious tutorials). It can be found in the curation folder as ss.png
. You can add a screenshot to a curation in the Curate tab by dragging it on to the right panel above Drop an image here to add it, or clicking Add Screenshot.
Recommended tools for grabbing screenshots include Snip & Sketch and Paint, both included in Windows 10/11 by default. You're free to use other tools, but remember, always save screenshots in PNG format.
Examples:
Additional Applications
The Additional Applications field can be used to add Messages, Extras, or Alternates to a curation. You can add these through the "New App", "Add Extras", and "Add Message" buttons at the bottom of each curation in the "Curate" tab. Each of these items is explained in detail below.
Messages
Use the Message sub-field to add a short, one-line message that pops up before a game runs. You'll want to use this if there's something that Flashpoint users need to know before playing a game. If you have less-important information about the game, use the Notes field instead. You can only have one message per curation.
In Infinity, click on Add Message at the bottom of the curation to add a message.
Example:
Additional Applications: Heading: Message Message: This game starts in fullscreen. To exit, alt-tab and close the window in the taskbar.
Extras
Extras allow you to include a folder of bonus materials with your curation. If you would like to include files related to a game that are not required to play it, such as source code or unlockable items, this is how you can do it:
- Inside your curation's folder, next to the Content folder, create a folder called Extras.
- Place all of the bonus materials you would like to include inside of the Extras folder.
- In the Notes field, add a short explanation of what's included in the Extras folder.
- In Infinity, click on Add Extras at the bottom of the curation and type gamename into the Extras Folder field. For example, if the title of the game was Tokyo Guinea Pop, you would type
tokyoguineapop
. Do not edit the "Heading" field!
For example, here is the Additional Applications field of a game called Tokyo Guinea Pop. The curation's Extras folder contains unlockable items from the game's original website.
Additional Applications: Extras: tokyoguineapop
When the above curation is imported into Flashpoint, the curation's Extras folder will be renamed to tokyoguineapop
and placed in Flashpoint's main Extras folder.
As you can see, the Extras field specifies the name of the Extras folder when it is imported into Flashpoint. That means that you cannot use special characters like colons (:
) or slashes (/ \
). We recommend using only alphanumeric characters.
Note that you can only have one Extras folder per curation.
Alternates
Alternates allow you to add alternate versions of a game into the same curation. This is commonly used to add older versions of a game, alternate languages of a game, or hacked versions from sites like Arcade Prehacks. Note that all of the files required to run an Alternate should be included in the Content folder of your curation, along with the files for the main version. If the Additional Application cannot be described in just the heading, explain it in the Notes field.
In Infinity, click on New App at the bottom of the curation to add alternates. Provide a short name for the alternate version in the Heading field. For example, you might say Hacked Version
or Version 0.5b
. Be sure to fill out the Application Path and Launch Command fields, then test the alternate thoroughly.
Example:
Additional Applications: Heading: Hacked Version Application Path: FPSoftware\Flash\flashplayer_32_sa.exe Launch Command: http://www.irregulargames.com/drop3/drop3-hacked.swf
Submission
You should now have the game fully working entirely within Flashpoint.
At this point, you will now enter all possible metadata for a game. Follow the metadata fields table you saw earlier and try to make it as complete as you can.
After making sure your curation works fine and all your metadata is correct, click the "Export" button on the sidebar. An exported .7z file of your curation can be found by opening the "Curations Folder" button, then opening "Exported".
Note that your save data for the game will not be included in your curation.
Uploading to FPFSS
Once you have your .7z ready, upload the .7z file to Flashpoint Submission System, which requires you to join our Discord server first. An explanation of how the site works is available here.
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. If you have any questions, ask in #curators and a Curator will answer them.