Publishing Your First App
PatchKit supports multiple application platforms:
- Windows 32 bit
- Windows 64 bit
- OSX 64 bit
- OSX Silicon
- Linux 32 bit
- Linux 64 bit
Make sure that your application is one of those before going forward.
Creating a New PatchKit Application
Navigate to Applications page and click on the New Application button. You may be asked to choose the application type. If yes, select New Game.
On the next screen, you need to provide the application Name and select the Platform.
You won’t be able to change the existing application platform, but you can create multiple applications for different platforms.
Finally, click on the Create button and you will be taken to the application’s overview page.
Creating a New Version
Now, click on the New Version button to create a new draft version. Versions are not visible to the users unless published.
On the version screen, click on the edit icon of the Label field and set it to, for instance,
1.0. Then, click on the Save button.
Finally, click on the Import Content button and you will be taken to the version upload form.
Uploading Version Files
You need to compress your application files into a single ZIP archive. Creating a ZIP archive is easy and it’s greatly covered in this article.
On Windows and Linux make sure, that your application executable file is in the main directory. On OSX, make sure to archive the application bundle.
Select the prepared ZIP file in the upload version form and the upload stage will start automatically, followed by the processing stage. Your web browser will automatically refresh it when the processing is finished, and you will be taken back to the version page.
ZIP File Structure
To ensure proper functioning with PatchKit, your ZIP file must adhere to a specific structure depending on the operating system:
- Place the executable file at the top-level of your ZIP archive.
- For easier deployment, ensure there is only one executable file at the top-level.
- Use only alphanumeric characters in your file names.
- Place the *.app directory at the top-level of your ZIP archive.
- Ensure there is only one *.app directory at the top-level.
Example 1 - Correct Structure
In this example, there are two executables, but only one is located at the top-level position.
/game.exe /data.dat /tools/editor.exe
Example 2 - Correct Structure
Here’s a valid example of a macOS application.
/Game.app /Game.app/Contents/MacOS/Game /Game.app/Contents/Resources/data.dat
Example 3 - Incorrect Structure
In this example, the executable file is not located at the top-level position.
You may see some warnings and errors. Make sure to read through it and fix any issues that could be preventing your application files from being processed correctly.
As the version has been successfully processed, you can now publish it using the Publish Now button.
We highly recommend reviewing the version details as a chosen executable file, launch arguments and the list of files.
Always be sure that you want to publish a version. Once published, it cannot be taken down. Reverting would require re-uploading the previous version or linking back to the previous one if you’re using Channels.
Publishing may take from a couple of seconds to several minutes. During that period (but not always!) you can cancel the process using the Cancel Publishing button.
Sharing the Launcher
When your first version is now published, you can share your launcher with your users in two ways:
- Download your launcher and send the files directly to your users.
- Share the Share Link with your users.
You can do both by navigating to your application page and clicking on the Get Launcher button.
This section is about customizing your experience with PatchKit. In this guide, we will cover how you can customize various aspects of your game distribution through PatchKit.
Customizing Your Launcher
PatchKit offers two types of launchers - Unity-based and Electron-based. You can customize the look and feel of your launcher by modifying the UI elements and other elements in the source code.
For detailed instructions on customizing your Unity-based launcher, see Unity-based Launcher Customization. For instructions on customizing your Electron-based launcher, see Electron-based Launcher Customization.
Updating Your Launcher
We will be releasing updates for both types of launchers from time to time, including new features and bug fixes. Make sure to follow our Blog or GitHub repository to stay up to date. Some releases may include migration guidelines, as new changes may affect your customizations.
To update your custom launcher, simply upload a new version to your launcher application and publish it. The old version will be replaced with the new one on the next start of the runner application.
Customizing Your Game Distribution
In addition to customizing your launcher, you can also customize other aspects of your game distribution through PatchKit. For example:
- You can add custom metadata to your game and versions, such as a description or screenshots.
- You can set up custom download mirrors for your game files.
- You can choose to distribute your game through the PatchKit CDN or your own custom CDN.
When running the PatchKit Launcher on a Windows PC, you may encounter the following message from the Microsoft Defender SmartScreen:
This message indicates that the Microsoft Defender SmartScreen does not recognize the application and is preventing it from running. While it can be ignored by clicking on the
More info link and then the
Run anyway button, this may lead to confusion and support requests from users.
Preventing the Warning with a Code Signing Certificate
One way to prevent the Windows Smart Screen warning from appearing is to sign the Launcher with a code signing certificate. This will increase the trust score of the application and often eliminate the warning message.
Obtaining a Code Signing Certificate
To sign the Launcher, you will need to purchase a code signing certificate from a certificate provider. A list of providers can be found on the Microsoft Documentation Page.
There are two types of certificates available:
- Standard Validation (SV)
- Extended Validation (EV)
The main difference between the two certificates (besides the price) is the level of validation. While an SV certificate should eliminate the Windows SmartScreen warning message, an EV certificate will increase the trust score even further. However, we cannot guarantee that the Windows SmartScreen warning will not appear even if the application is signed with an SV certificate.
Signing the Binaries
For a unity-based single-launcher setup, you will need to sign the following files:
- Your application’s executable
The code signing process is detailed in the Comodo Code Signing guide. Make sure to read it carefully.
Code Signing on macOS
The issue of unsigned applications on OS X is similar to that on Windows, but starting such an application may be more difficult. For more information, see Open a Mac app from an unidentified developer.
Signing an application on OS X is easier than on Windows and only requires a Developer ID. For more information, see Signing an application on OS X.