[SKIF] Add warning about global injection not running when launching a game

It seems that the ability to launch games through SKIF can cause user confusion as the expectation is that launching through SKIF means Special K will be injected into the game.

I suggest adding a warning prompt when trying to launch a game through SKIF where SKIF have determined global injection is being used but the global injection service is not detected as running. The prompt would then provide an easy way to enable global injection:

You are launching a game without the global injection service running. Special K will not be injected into the game. How do you want to proceed?

[Launch global injection and the game] [Launch the game] [Cancel]

Or a simple alternative where the option to launch global injection isn’t presented:

You are launching a game without the global injection service running. Special K will not be injected into the game. Do you want to proceed?

[Yes] [No]

The second suggestion is more practical.

I’ve been avoiding adding text warnings and such to SKIF for a while to make localization easier. But this seems kind of important since people seem to think launching software via SKIF is what makes Special K work.

What’s the reason for not injecting via launch btw? I don’t think i’ve asked.

I’m assuming this would be simple and quick to implement, but maybe change the title colour of blacklisted games? For example, Counter Strike’s title can change to grey when you’ve set SK to disable for the game. Just makes things more visually intuitive and also easy over time to instantly see which games you’ve blacklisted.

Plus there’s also the dynamic icon idea you had in mind, maybe you could do something there?

In general because global injection is not something that only affects a single game, and so silently enabling global injection whenever SKIF is used to launch a game might cause users to mistakenly leave the global injection running even when SKIF is closed (on that note, SKIF needs a warning there as well).

It might be possible to add functionality to SKIF that only monitors and injects Special K into a single window when launching a game through SKIF, but such an approach have a lot of potential failure states. Although theoretically it would be possible to basically set up a global injector that detected when it had been injected into the desired executable and then stopped the global injector, or after e.g. 10 seconds had passed stopped the injection as well.

1 Like

I think we need an FAQ section so you can point users to there first when they have questions that have already been handled before and have working solutions. I feel bad seeing you guys get so many questions (I too am part of the masses) and having to regurgitate the same answers / same step-by-step beginnings of the general solution / troubleshooting. I can write one up for your consideration, but it may take me some time since I have a toddler to take care of full-time during the day. :slight_smile:

We do link to the wiki on top of each pge :smiley:

I think this is a fairly unintrusive compromise

Provided people make a habit of reading the status bar.

I also did some color coding for Strategy: Global and turned that section of the UI header into a secondary start/stop control.

Mouse cursor’s not being captured in these screenshots :-\ But, uh, this last screenshot is with the cursor hovered over the Global (Service Stopped) UI field.

Ah, nice – that looks great.