The AirConsole-Unity-Plugin is a C# wrapper for the AirConsole Javascript API. AirConsole provides a simple to use Javascript API for game developers to build their own local multiplayer realtime browser games. You can find the Javascript API documentation here: https://airconsole.github.io/airconsole-api
IMPORTANT: The plugin comes with an embedded webserver / websocket-server for the communication between the AirConsole backend and the Unity-Editor. You don't need to install any other webserver or services.
Please see CHANGELOG.md for the full changelog.
VERSION in Assets/AirConsole/scripts/Runtime/Settings.cs already holds the next version (it is updated during development) and CHANGELOG.md has its ## [Unreleased] section.
- Run the Create Release workflow (Actions tab) on
masterwithdry_runon. It test-builds WebGL, exports the.unitypackage, and uploads the package as a workflow artifact. The run summary shows the release notes (## [Unreleased]dated as## [{VERSION}] - yyyy-MM-dd) and the release PR commands and body. It creates nothing. - Run it again with
dry_runoff. It dates the CHANGELOG and opens theRelease v{VERSION}PR fromrelease/v{VERSION}with the package and the dated CHANGELOG. Close and reopen the PR to start the required checks (a PR opened by the workflow token does not start them). - Merge the PR. The workflow then creates the
v{VERSION}tag and the GitHub release with the package.
To preview the release without Unity, on master: scripts/release.py --dry-run prints the tag, the GitHub release command and the notes, and scripts/release.py --open-pr --dry-run prints the release PR. Neither changes anything.
To run the same steps locally with your Unity editor (close the project in the Editor first, and run mise install once for the Python 3.12 that CI uses): scripts/release_local.py --dry-run builds and validates, prints the branch, commit, push, PR, tag and release commands without running them, and resets the files the build and the export changed. Without --dry-run, on master, it opens the release PR.
4. Manual steps:
- Unity Asset Store: make a draft of the current package, add the release notes and version, and upload the
.unitypackagewith the Asset Store Tools. In the additional information, write: "We include unity webgl templates because webgl games deployed to our platform require a specific setup." - AppEngine: accept the new plugin version.
- After Unity accepts the version, announce it in the Discord Unity channel.
The upgrade instructions can be found in https://github.com/AirConsole/airconsole-unity-plugin/wiki/Upgrading-the-Unity-Plugin-to-a-newer-version
All install instructions and examples are documented in the file "Documentation_1.7.pdf" inside this folder. There are more examples on the website: https://developers.airconsole.com/
AirConsole supports WebGL and AndroidTV as targets. To make use of this plugin, you need to make sure to switch your target to either WebGL or Android.
To be able to connect to the Chrome Webview, launch the Android based AirConsole application using ADB and add the intent extra webview_debuggable
Example: adb shell am start -n <package_name>/com.unity3d.player.UnityPlayerActivity --ez webview_debuggable true
To have all received platform message payloads logged, launch the Android based AirConsole application using ADB and add the intent extra log_platform_messages
Example: adb shell am start -n <package_name>/com.unity3d.player.UnityPlayerActivity --ez log_platform_messages true
If you need support, please visit: https://developers.airconsole.com/faq-help