joker_BR Posted March 4 Posted March 4 (edited) Hello all, You know that frustrating feeling when the game finally loads, only for you to realize you forgot to turn on TrackIR or some other essential driver or accessory? That’s where Game Companion comes in. It’s a small utility that allows you to register your games and their associated tools, setting up specific launch and shutdown sequences for each one. With this, you can start your game without missing a thing. Once you're done, your operating environment returns exactly to how it was before you started playing. Spoiler Spoiler Spoiler The app is very lightweight, requires no installation (portable), and even comes with a manual in both Brazilian Portuguese and English, so you have something to ignore. 🙂 Important: the manual also explain this, but I'll be redundant here: your antivirus may or may not flag this as problematic, because Game Companion searches registry for Steam executable place and also sometimes may search your driver for .exe files. It also uses some Windows libraries to create unique ids which can cause shivers on some paranoid AVs out there. My Bitdefender Total Security didn't, but on Virustotal some enterprise grade AVs got suspicious due the facts exposed above. If in doubt (always be wary of .exe from the Internet, as I am too), try on a sandbox and see for yourself, or don't use it if you feel unconfortable. Get the file, read the manual, then decide. Why I don't sign it to get rid of this? "Because money, baby". I'm not a professional developer, I did this for my personal use and I'm just providing this "as is" after seeing some friends finding it useful too. I hope it helps you as much as it helped me! Download: Github VirusTotal report for GameCompanion.exe: VirusTotal - File - 67467d052a9ee811eac80b9d5184abac7cd4c703ae7b88e63bf446d0d2a159d5 VirusTotal report for runner.exe: VirusTotal - File - 3a094ea95e3ca6b9b52dd00500eea38b472cbd1074d8881c5a31c646cd20f3eb Edited March 11 by joker_BR add images 1 2 1
joker_BR Posted March 11 Author Posted March 11 v1.4.2.1 released. Standardized the execution environment by aligning WebView2 flags with default browser behaviors and refactoring Windows API calls to use official, symbol-enriched system packages. Should improve EDR/AV compatibility.
richaker Posted March 12 Posted March 12 Hey, Joker. I'm using gamecompanion with ROF and OpenTrack and it works just fine! Good Job! 1
joker_BR Posted March 23 Author Posted March 23 v1.4.2.2 released. Changed the way the app checks to see if the game is still running. Now it simply "asks Windows" to report when the game is closed, and only checks if/when there is a response from Windows. If Windows denies the request (some anti-cheats are overzealous and deny this type of request), then it falls back to polling the process list from time to time. This new method almost completely eliminates the CPU usage during gaming (the usage is so low that it can't even be traced using task manager). It was already negligible, but why not? I'm performance obsessive and on gaming environment, everything counts.
Arrow_1974 Posted March 27 Posted March 27 (edited) Really, really great work joker. This program earns way more "likes" or "thanks". Again thanks for that "little" helper. Works perfectly with my rank mod and the campaign tracker. Edited March 27 by Arrow_1974 1 AMD Ryzen 7 9800X3D; MSI MPG X870E CARBON WIFI Motherboard; ASRock Taichi Radeon RX 9070 XT 16GB; CORSAIR Vengeance RGB 64GB (2 x 32GB) DDR5 6000; 2x SK Hynix Platinum P41 M2 SSD 2TB; CORSAIR RMx Series RM850x ATX Power Supply; Arctic Liquid Freezer III Pro 360 A-RGB AIO; MONTECH KING 95 PRO Dual-Chamber ATX Mid-Tower, LG - UltraGear 45" OLED Dual Mode (5K2K WUHD 165Hz, WFHD 330Hz)
joker_BR Posted June 16 Author Posted June 16 v2 released (download link on the 1st post) 1. High-Performance Logging (Multi-Process Safe) Persistent Handles: App now maintains a persistent file handle rather than opening/closing it for every line. This significantly reduces disk I/O overhead. 2. Efficient Process Monitoring & Detection Tiered PID Check: The isPidAlive function now uses a faster tiered approach: -- It first tries OpenProcess with PROCESS_QUERY_LIMITED_INFORMATION. This is nearly instantaneous and doesn't require a system snapshot. -- It falls back to a system-wide snapshot ONLY if access is denied (typical for some Anti-Cheats). Native Iteration: getProcessPID and checkProcessRunning now use the golang.org/x/sys/windows package more natively, improving stability and clarity. 3. Asset & UI Speedups Fast Icon Extraction: Icon extraction was refactored to use direct pixel buffer manipulation. This makes icon extraction (e.g., when adding a new game without explicit image selection) much faster. Smart Image Resizing: process and resize images now checks dimensions using image.DecodeConfig before fully decoding the image. If the image is already small enough, it returns immediately without using extra memory. Non-Blocking Persistence: App now performs JSON marshalling outside of the file lock, ensuring that the app's internal locks are released as quickly as possible. 4. Modernization Drag and drop implemented on all categories (no more clumsy arrows!!). Changing cards order in categories other than the ALL category will affect the order on the ALL category as well. Scroll of main window now affects only the game cards. 5. Security and Compatibility Replaced several manual syscall.LazyDLL calls with standard functions from golang.org/x/sys/windows (e.g., windows.ShellExecute, windows.CreateMutex, windows.FindWindow), trying to get better AV compatibility and less false positives. Enhanced concurrency security and explicit pointer closing at App's exiting.
joker_BR Posted September 7 Author Posted September 7 v2.1 released (download link on first post) Changelog: a. Added option to minimize Game Companion's window upon game launch. Window will restore upon game close. User can still alt-tab to access the minimized window on taskbar. b. Skip time waits when utilities are already running.
joker_BR Posted September 11 Author Posted September 11 Download link on first post. UI Enhancements: scroll screen to top after saving utility; drag and drop to sort utilities lists; New features: when registering a game, you can find it's executable file by using file selection or from a list of running processes (in this last case, the game must be running already, of course); start minimized and use the system tray, calling games via menu by right clicking tray icon; toast notifications emergency panic key: now you can force kill game and utilities if the game freezes or you want to rage quit with style; utilities preset lists, turning it easy to apply same utility sequences to several games;
joker_BR Posted September 12 Author Posted September 12 Download on first post. New Feature: Added ability to select different audio output and windows power scheme (by game) before starting the game, restoring previous settings after it ends.
joker_BR Posted October 2 Author Posted October 2 Download New feature: Option to unlink start and stop sequence lists by game, allowing to put utilities in stop list that aren't started by the app (to deal with some games that start services/apps by themselves and doesn't properly close them at the end).
joker_BR Posted Friday at 05:07 PM Author Posted Friday at 05:07 PM v2.7.1 - Download on first post. Performance enhancements only, no new features. Fix data race on autoclose flag eliminating concurrent read/write between the monitoring goroutine and AutoClose() Cache exe directory via sync.Once (getExeDir): removed repeated os.Executable() syscalls from getCacheDir, setupLogging, ReadLogFile and NewApp Cache GetAppInfo result via sync.Once: wails.json is embedded at compile time and never changes; json.Unmarshal now runs only once Cache isAdmin result via sync.Once and promote IsUserAnAdmin to a package-level proc var, consistent with all other Win32 proc declarations Eliminate redundant file open in processAndResizeImage
joker_BR Posted Saturday at 07:36 PM Author Posted Saturday at 07:36 PM v2.8 - New features: Monitor utilities after game start. If an utility crashes and is marked as auto-restart, then it will be started again (up to three times). If it fails more than three times, GameCompanion will not try to start it again on the same gaming session. Inserted a cancel button on all modals to allow user to cancel edits without having to scroll to top, because now modals can't be closed by simply clicking outside them as before. Download on first post.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now