Jump to content
IL-2 Series Forum

Recommended Posts

joker_BR
Posted (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

image.png.985553ddbd47a369ed71e957c3b699ed.png

Spoiler

Utils.png

Spoiler

Games.png

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 by joker_BR
add images
  • Like 1
  • Thanks 2
joker_BR
Posted

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

Hey, Joker. I'm using gamecompanion with ROF and OpenTrack and it works just fine! Good Job!

  • Like 1
  • 2 weeks later...
joker_BR
Posted

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 (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 by Arrow_1974
  • Like 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)

  • 2 months later...
joker_BR
Posted

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.

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...