Guides
Publishing Your First App
PatchKit supports multiple application platforms:
- Windows 32 bit (deprecated)
- Windows 64 bit
- OSX 64 bit
- OSX Silicon
- Linux 32 bit (deprecated)
- Linux 64 bit
Ensure that your application is compatible with one of these platforms before proceeding.
Creating a New PatchKit Application
Navigate to the Applications page and click on the New Application button. You may be prompted to select the application type; if so, choose New Game.
On the next screen, provide the application Name and select the Platform.
You cannot change the platform of an existing application. However, you can create multiple applications for different platforms.
Finally, click on the Create button, and you will be directed to the application’s overview page.
Creating a New Version
Click on the New Version button to create a new draft version. Versions remain invisible to users until they are published.
On the version screen, click the edit icon next to the Label field and set it, for example, to 1.0
. Then, click the Save button.
Click on the Import Content button to proceed to the version upload form.
Uploading Version Files
Compress your application files into a single ZIP archive. For guidance on creating a ZIP archive, refer to this article.
On Windows and Linux, ensure your application executable file is in the main directory. For OSX, archive the application bundle.
Select the prepared ZIP file in the upload version form. The upload stage will start automatically, followed by processing. Your web browser will refresh automatically when the processing is finished, taking you back to the version page.
ZIP File Structure
To ensure compatibility with PatchKit, your ZIP file must follow a specific structure based on the operating system:
Windows/Linux
- Place the executable file at the top level of your ZIP archive.
- Ensure there is only one executable file at the top level.
- Use only alphanumeric characters in your file names.
Mac OSX
- 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
Two executables are present, but only one is at the top-level position:
/game.exe
/data.dat
/tools/editor.exe
Example 2 - Correct Structure
Valid example for a macOS application:
/Game.app
/Game.app/Contents/MacOS/Game
/Game.app/Contents/Resources/data.dat
Example 3 - Incorrect Structure
The executable file is not at the top-level position:
/subfolder/game.exe
/subfolder/data.dat
You may encounter warnings or errors. Ensure you read through them and address any issues that could prevent your application files from being processed correctly.
Publishing
Once the version has been successfully processed, you can publish it using the Publish Now button.
We highly recommend reviewing the version details, including the chosen executable file, launch arguments, and the list of files.
Ensure that you want to publish a version, as once published, it cannot be taken down. Reverting requires re-uploading the previous version or linking back to the previous one if you’re using Channels.
Publishing may take a few seconds to several minutes. During this period (but not always!), you can cancel the process using the Cancel Publishing button.
Sharing the Launcher
The default launcher is the most basic version offered by PatchKit. To learn about all available options, see the Launchers section.
After publishing your first version, you can share your launcher with users in two ways:
- Download the launcher and send the files directly to users.
- Share the Share Link with users.
You can do both by navigating to your application page and clicking the Get Launcher button.
Customization
This section covers 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 appearance and functionality of your launcher by modifying the UI elements and other components 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.
Signing Certificates
When running the PatchKit Launcher on a Windows PC, you may encounter a warning from Microsoft Defender SmartScreen:
This message indicates that Microsoft Defender SmartScreen does not recognize the application and is preventing it from running. While it can be ignored by clicking 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
To prevent the Windows SmartScreen warning, sign the Launcher with a code signing certificate. This increases the application’s trust score and often eliminates the warning message.
Why are our launchers unsigned? We do not sign launchers by default because it would require us to review the projects distributed by our users, creating significant overhead and slowing down the distribution process. We leave the decision of signing the launchers to the developers.
Obtaining a Code Signing Certificate
To sign the Launcher, purchase a code signing certificate from a provider. A list of providers can be found on the Microsoft Documentation Page.
Two types of certificates are available:
- Standard Validation (SV)
- Extended Validation (EV)
The main difference between these certificates 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 the warning will not appear even with an SV certificate.
Signing the Binaries
For a Unity-based single-launcher setup, you will need to sign only the Launcher.exe
file. If you’re building it within a setup wizard, you will also need to sign the setup wizard executable.
The code signing process is detailed in the Comodo Code Signing guide. Review 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.