Step up your non-Steam game! Generate Steam-compatible .exe files to effortlessly launch any game through Steam with overlay support.
This release includes some minor bug fixes and improvements in Gui handling logic, but the main change should be unnoticeable to users: The UI layer has been rebuilt on top of the recent service container. GUIs are now late-loading and created by a factory which allows them to be extended or replaced by third-party code easily.
Soon, I plan to rebuild the module manager and entity managers to be based on the service container and to extend entities themselves to be services that can be loaded generically from definitions just like other components in Launchpad.
At that point, modules and service files will be able to provide or extend any and all functionality in Launchpad, and the focus will shift to enhancing the Entity UX. The goal is that modules should be able to do things such as define individual fields on entities, as well as how to render, retrieve, and store the data for that field. This will allow much finer-grained control, and will allow most functionality to be moved into modules while maintaining a unified user experience.
As always, let me know if you run into any problems with this release!
Configuration Galore!
Launchpad has a brand spanking new configuration system, rebuilt from the ground up to be based on flexible and overridable container parameters introduced in version 9.2! This has far-reaching implications for the future of the application and the level of flexibility that can be provided, and this has required touching a huge number of files and hopefully not introducing too many bugs.
Launchpad now looks for a Launchpad.json file instead of Launchpad.ini. To ease this transition and keep this change non-breaking, there is a migration wizard that will detect your old Ini settings and offer to automatically migrate them to the new format for you.
This release has a noticeable performance improvement--Instead of a long delay upfront, there is now a short delay before accessing certain features for the first time, and if you don't use those features, they are never loaded. This makes Launchpad feel a bit more snappy and responsive, especially initially.
With all the recent changes, Launchpad is also able to scan for third-party modules and rebuild your module include file automatically if it detects changes. This feature is mostly untested, and no known third-party modules exist yet, but one of the primary goals now is to convert as much existing and upcoming functionality as possible to separate modules and to create a module manager that can be used to enable or disable them.
Changes:
This is another big under-the-hood release. Launchpad should be speedier and more stable for users, and much easier to maintain and less error-prone for developers.
First of all, as usual, the last major release of Launchpad broke a couple things. These have been fixed:
Changes and Enhancements:
Going forward, the big underlying changes still underway are:
On the front-end, the only change you should notice is that the platform name and icon have been added to the main window. This makes it easy to tell which launcher a game is running in without having to open the editor.
On the backend, big changes are underway which add flexibility to the underlying application architecture.
In recent releases, Launchpad introduced the concept of "modules" which can add functionality to the main application, however so far those modules are fairly limited in scope and could only be provided by the application itself. Additionally, all discovered modules have been automatically enabled.
Going forward, the module system has been expanded in the following ways:
The next step is to create a Modules window where you can enable, disable, and configure each discovered module.
After that, a build system will be introduced so that 3rd-party modules can be used in one of two ways:
This build system is planned to run automatically when you start Launchpad, so that it can detect if you have changed your installed modules, rebuild your include files, rebuild Launchpad if required, and restart the application seamlessly. If you have not changed your modules, this process should be nearly instantaneous. If you have made changes and are using the source version, it might take a second or so. If you are using the compiled version and have changes, it will likely take 3-4 seconds for Launchpad to rebuild and restart.
There are several challenges remaining with implementing this system, but the recent changes mean we are closer than ever.
The biggest breaking change in Launchpad 9 is that it now uses the latest AutoHotKey 2.0 beta, which changes some syntax from previous alpha versions. Since AHK 2's code has stabilized more, that means Launchpad's future updates to AHK versions won't usually need to be breaking changes anymore.
Additionally, Launchpad 9 includes some changes and fixes over v8:
Fixes:
Changes:
Post any issues you find to GitHub, otherwise, launch on!
This release fixes a bug introduced in 8.0 where icons in the main list were displayed in the wrong order. This should be fixed now!
Happy Friday! It's time for a new Launchpad release!
Launchpad now includes a details pane showing more information right in the main window. This is just the start--now that the details pane exist, it will be better utilized in the future!
This release also changes the core version of AutoHotKey that Launchpad uses internally, as well as to generate your launchers. This is the first time in a long time that Launchpad has done this, so it's a pretty big deal. A lot of code has changed that makes it incompatible with the existing AHK v2-alpha, so we're bumping up to 8.0 to signify the potentially breaking change for users.
If you run into issues, it is likely AHK-version-related. If you use the AHK version of Launchpad, try updating your version of AutoHotKey that you run Launchpad with.
The AHK version change notably introduces a bug where clicking certain tray menu items shows a small window frame in the lower-left corner of your screen. This is the main AutoHotKey script window, and it's normally hidden. It will close with Launchpad and doesn't pose any issues, but I am working on getting rid of that.
Big release today! Hopefully not a breaking one, but here we go:
Thanks to inspiration and support from the author of the excellent Non-Steam-Overlay-Manager, Launchpad has incorporated a similar feature.
This allows the Steam Overlay to work in any application, even applications that refuse to work with the Steam Overlay normally.
Currently disabled by default, each launcher now has the following new options:
When Enable Overlay is checked, the following behavior occurs when launching the game:
Using the Launchpad Overlay is as simple as pressing the key you have defined in the Overlay Hotkey setting for each launcher. By default, that is "^Tab", or Ctrl+Tab in human terms. Changing the hotkey requires a cursory knowledge of AutoHotKey hotkeys, but any HotKey that AHK supports should work.
You won't see notifications from Steam while you're playing when using the Launchpad Overlay, but the Steam Overlay will be available after you press the hotkey.
The primary quirk at this point with the Launchpad Overlay is that it will not function if your game is running in fullscreen mode. For games that you wish to use the Launchpad Overlay for, make sure to use Borderless Window instead of Fullscreen if possible.
This functionality is considered experimental for now and so must be activated manually. Once we're sure it's reliable enough to only run when it's appropriate and that it doesn't cause issues with most games, then it will likely be enabled by default for certain launchers or game configurations.
Another hotfix...
Fixes:
Hotfix time!
Fixes: