Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CheatEngine : no speedhack support? #497

Closed
DinoMC opened this issue Jun 14, 2022 · 58 comments
Closed

CheatEngine : no speedhack support? #497

DinoMC opened this issue Jun 14, 2022 · 58 comments

Comments

@DinoMC
Copy link

DinoMC commented Jun 14, 2022

Couldn't find an existing issue talking about speedhack at all, so here goes.

I just installed STL on my Steam Deck to get CheatEngine running so I could use its speedhack feature to speed up games.

CE launch correctly when I start the game, but as soon as I check the "Enable speedhack" checkbox, everything crashes with the following error : "Failure enabling speedhack. (DLL Injection failed): dllInject failed: Unknown error during injection
Force load module failed: Allocation error"

@sonic2kk
Copy link
Owner

sonic2kk commented Jun 15, 2022

Hi, I don't know much about Cheat Engine but that doesn't sound good. It sounds like some kind of problem with Cheat Engine and Wine more than a problem with any specific that SteamTinkerLaunch would be doing, but perhaps there's something STL can work around.

I searched the error message and it seems common enough on Windows. Unfortunately I don't have a Steam Deck, so I cannot test. I'll see if I can reproduce this on my PC later on.

(@zany130 Sorry for the ping but do you have anything to add here? You might know more about CheatEngine and STL than me 😅)

EDIT: The Cheat Engine release notes for 7.3.1 fix the Speedhack on Linux. According to the STL CheatEngine wiki, it pulls from an older 7.2 release because it seems that at least for a time, newer versions of CheatEngine were hidden behind Patreon.

I wonder if its safe to pull from a newer release, I'll have to test and see. If it is safe I'll open a PR. If you're comfortable @DinoMC, you could try manually updating Cheat Engine and seeing how it goes 😄 But no pressure

In the "Global" settings (button along the bottom in the main menu) you can change the Cheat Engine version to 7.4 and set the checksum yourself. I think its worth opening a PR to bump this as it fixes the Speedhack, and also maybe we could make a note about this on the Cheat Engine wiki specifically. Currently having trouble setting the checksum myself as it doesn't seem to be registering the new one when downloading and checking but that could be an issue on my end. In theory though, this should fix the Speedhack issue.

@zany130
Copy link
Collaborator

zany130 commented Jun 15, 2022

I never tried speed hacks in cheat-engine honestly so not sure.

as for using a newer cheat engine version yeah part of the issue was that the ad free version (the version on github) where removed and the downloads started including adware and other malicious stuff if I remember correctly

EDIT: hmm it seems they added it back to there github https://github.com/cheat-engine/cheat-engine/releases

Don't know if it still comes bundled with the adware though

EDIT2: it does but i can be skipped but im guessing the whould pose a problem for an automatic install through steamtinkerlaunch

@sonic2kk
Copy link
Owner

sonic2kk commented Jun 15, 2022

Indeed it seems like STL can't install it, I got past the checksum issue (a reboot fixed it 🤷) and now STL can't extract it. It's failing at the stage of: "Extraction of '~/.config/steamtinkerlaunch/downloads/cheatengine/Cheat Engine 7.4.exe' to '~/.config/steamtinkerlaunch/cheatengine/Cheat Engine 7.4' using innoextract failed or the output directory is called differently". All that gets created in the steamtinkerlaunch/cheatengine folder is a tmp folder that looks like this:

image

Something worth noting is that STL didn't show an error notification saying it couldn't install CheatEngine. Failure of installing CheatEngine could probably be handled better but that should have its own PR discussion (maybe when Frostworx gets back and has time)

@zany130
Copy link
Collaborator

zany130 commented Jun 15, 2022

well if you search the issues here https://github.com/cheat-engine/cheat-engine/issues?q=ads there are a few reports that disabling the internet conection durring cheatengine's install skips the installation of all the adware and bloat

although i doubt this whats causing steamtinkerlaunch to be unable to extract it

EDIT: posted before I saw your edit but those look like dlls for unwanted software

@sonic2kk
Copy link
Owner

I wonder if there would be a way to disable internet access just for the CheatEngine installer? STL seems to have an option to remove network access for games so perhaps this could be applied to just the CheatEngine installer as a workaround if using version 7.4 or above?

@zany130
Copy link
Collaborator

zany130 commented Jun 15, 2022

ah, I think I see the issue steamtinkerlaunch uses innoextract to extract the cheat engine exe and then it just uses that without running the installer? (this would bypass the installation of adware IDK if this was the intention) but 74 doesn't extract properly

take a look here https://github.com/frostworx/steamtinkerlaunch/blob/977bd0d737ed64f0f9b722efc155ecb20082e33e/steamtinkerlaunch#L10916

@sonic2kk
Copy link
Owner

So I guess innoextract for some reason either can't extract it, or it's trying to extract it to somewhere that it can't.

I tried manually creating steamtinkerlaunch/cheatengine/Cheat Engine 7.4 and it still failed, might be worth trying it manually

@zany130
Copy link
Collaborator

zany130 commented Jun 15, 2022

fwiw version 74 fails to install if you disable the internet 73 installs fine so I wonder if they added a check to make sure its connected to the internet?

@sonic2kk
Copy link
Owner

Fixing whatever is causing 74 to fail is likely a good idea, but 73 is the one that contains the fix for Speedhack I think. Didn't see a download link for 73, my bad!

Could you check if 73 does indeed fix the speed hack issue?

@zany130
Copy link
Collaborator

zany130 commented Jun 15, 2022

well should have mentioned I was testing it by running it separately with wine. though I imagine it would work the same with if I disable the innoextract condition in steamtinkerlaunch's code. as for 74 failing it only fails if you disable your internet otherwise it installs fine (but prompts you for a bunch of extra stuff like antivirus that you can decline)

ill try to see if I can find a game which has a speed hack for it never used that before

@zany130
Copy link
Collaborator

zany130 commented Jun 15, 2022

hmm, I can't even get 7.3 to download with steamtinkerlauncher

FWIW I found this issue here ScoopInstaller/Extras#7906 where they where using a similar tool called innounp to extract the actual cheat engine exe. (what is available on GitHub is an Inno setup package and comes with all the bloat like some antivirus and stuff.)

it seems upstream did something to break these tools. so the only way cheatengine versions greater than 7.2 can be installed is by running the setup exe within the games prefix you can do that with one time run then imagine steamtinkerlaunch while run the installed exe but you would have to be careful and make sure you don't install any unwanted programs into the game prefix (the option is kinda hidden)

so unfortunately I don't think there is any way for steamtinkerlaunch to handle any version greater than 72 automatically

@DinoMC
Copy link
Author

DinoMC commented Jun 15, 2022

Cheat Engine changelog mention fixing speedhack on Linux, but I assume they mean the linux version of Cheat Engine. Not sure if they made change to the Windows version so that it would work better on linux via proton.

I wanted to try it out to see if it works by replacing the 7.2 files with the 7.4 files in the prefix but I can't figure out where it's stored.

Edit : I was able to run my extracted CE 7.4 along with a game using the fork custom command option, but enabling speedhack still throw the same DLL injection error as in 7.2 apparently :(

@sonic2kk
Copy link
Owner

Man this seems like bad news all around :(

so unfortunately I don't think there is any way for steamtinkerlaunch to handle any version greater than 72 automatically

I wonder if it was intentional, maybe for the adware stuff. That really sucks though, but perhaps we should document that STL only works with Cheat Engine 7.2 (and below?)

Cheat Engine changelog mention fixing speedhack on Linux, but I assume they mean the linux version of Cheat Engine. Not sure if they made change to the Windows version so that it would work better on linux via proton.

@DinoMC You would be surprised at how often projects make fixes to improve their software running under Wine (MO2 is a good example 🙂) but I didn't know there was a Linux release of Cheat Engine, so my bad there!

enabling speedhack still throw the same DLL injection error as in 7.2 apparently :(

That's really unfortunate, I wonder if there's anything we can do to fix the Speedhack on Wine. Maybe there's something we can install with Winetricks into the prefix? I'm not sure, I'm not too familiar with Cheat Engine. I did see this error for Windows users when pasting that error into a search engine but I would hazard a guess that this is something Wine specific. It could also be worth opening an issue on the Wine issue tracker.

What version of Wine does Cheat Engine run with, is it the same version that the game does? If so perhaps you could try a GloriousEggroll release of Proton to see if it has any patches in the meantime. Just trying everything here 😅

@DinoMC
Copy link
Author

DinoMC commented Jun 15, 2022

I did see this error for Windows users when pasting that error into a search engine but I would hazard a guess that this is something Wine specific.

Yeah, I think so too. There's only a few search results with the same error, and usually quite old.

I did find a new error message that maybe hint at the cause. On one of these old topic, someone fixed the DLL injection error by enabling the "force load modules" setting in Cheat Engine. When I enabled it, and then tried to enable the speedhack, I got this error message :
'Failure enabling speedhack. (DLL injection failed): Force load module failed:Force load module failed:Unable to open file "kernel32.dll"'

I'm going to try with proton GE and see if it help.
Edit : Tried proton GE 7.20 and for some reason Cheat Engine doesn't run at all, only the game get launched.

@sonic2kk
Copy link
Owner

Maybe a clean install of Cheat Engine (probably the regular Cheat Engine 7.2) would help GE but I'm not sure how to "cleanly" uninstall it...

Thanks for all your patience and testing so far, this seems like a tricky issue.

@DinoMC
Copy link
Author

DinoMC commented Jun 15, 2022

Actually I had messed up the STL settings I think, CheatEngine does pop up now... and I can confirm I still get the DLL Injection error on GE :(.

Gonna have a look to see if it's listed as a bug on Wine, maybe report it.

Edit : Found a topic saying that speedhack stopped working on Wine with v5.4 of Cheat Engine. Using the old Cheat Engine 5.4 allow the speedhack to work on wine according to this post. Gonna see if I can track it down.

Another managed to make it work by running the native linux Cheat Engine SERVER (didn't even know that was a thing tbh), then running windows Cheat Engine in Wine and connecting to the Linux server. I believe they use the Windows CE to remotely control the Linux CE then select the whole wine process and apply speedhack to the entire thing.

As for the reason for the DLL Injection error when trying to apply speedhack directly, I believe it's a sandboxing/security issue and LSM are blocking it. Not sure tho.

@sonic2kk
Copy link
Owner

Thanks for the investigation!

Using the old Cheat Engine 5.4 allow the speedhack to work on wine according to this post. Gonna see if I can track it down.

The Wayback Machine may be your best bet for this, if it's not on GitHub. You could attempt to set the Cheat Engine version in STL's Global settings to 5.4 and see if that works. Good luck! 🤞

As for the reason for the DLL Injection error when trying to apply speedhack directly, I believe it's a sandboxing/security issue and LSM are blocking it. Not sure tho.

I thought DLL injection worked in other use cases (SpecialK for example) but as I have no experience with Cheat Engine I can't say for sure. That would suck as I don't think STL could really do anything to work around it. I wonder if there are any other instances of this happening with Wine


Something I've been thinking about today, what if we had an option to allow a user to select their own Cheat Engine installer exe? If there is a user that pays for what I believe is the "Patreon version", they might want to use that with STL. I don't think they can provide a direct download link to the Patreon release and there could be all kinds of implications for that, but allowing a user to select a custom Cheat Engine installer exe and warning them somewhere (maybe in the tooltip?) that they will have to go through the installer manually in the next step. That way as well if there are any users that want to use Cheat Engine, they can simply run their own installer.

Of course this raises an issue where it may be difficult to test custom Cheat Engine executables, just an idea I had 🙂

@zany130
Copy link
Collaborator

zany130 commented Jun 15, 2022

I didn't know there was a Linux version of CheatEngine. is it just a server to connect to the windows app?

anyway tried to install 7.3 and 7.4 in steamtinkerlaunch , but couldn't get them to install because steamtinkerlaunch runs the exe with the /silent flag so it can do a silent install(doesn't prompt the user for anything) but this doesn't work on versions greater than 7.3,

as for being able to select a custom cheat engine exe I think that could already be done by using this no?

image

EDIT:
achtually I don't think that would work with the cheatengine option. As it would be installed into the games prefix instead of .config/steamtinkerlaunch/cheatengine

@sonic2kk
Copy link
Owner

sonic2kk commented Jun 15, 2022

Ah yes it could be done that way, and it could end up adding more bloat if a separate option was added. My thought was having a separate option explicitly for Cheat Engine might be more user friendly but perhaps that's getting slightly off-topic.

I did find a (rather old) Wine bugzilla issue talking about Cheat Engine's speed hack not working, but it seems like it gave a different error message.

EDIT: As for the prefix issue, would setting the WINEPREFIX var in the arguments work? Maybe not depending on where they're placed

@DinoMC
Copy link
Author

DinoMC commented Jun 15, 2022

Tried Cheat Engine 5.4. Didn't realize it's 14 years old. Pretty sure the speedhack uses a completely different method.
It doesn't crash/error in this version but I couldn't find any game compatible with it, apart from one menu in one game that was properly sped up. Should work with very old games but that's it.

I also wanted to try the 32 bit version of newer Cheat Engine to see if it change anything (saw a couple old threads about this), but for some reason, when I run cheatengine-i386.exe instead of the x64 one, the window doesn't show up. According to the STL log it's launching it, but nothing show up on screen. It's not running in processes list either. Any idea why?

@sonic2kk
Copy link
Owner

Tried Cheat Engine 5.4. Didn't realize it's 14 years old. Pretty sure the speedhack uses a completely different method.
It doesn't crash/error in this version but I couldn't find any game compatible with it, apart from one menu in one game that was properly sped up. Should work with very old games but that's it.

Indeed as its so old it could've changed.

I also wanted to try the 32 bit version of newer Cheat Engine to see if it change anything (saw a couple old threads about this), but for some reason, when I run cheatengine-i386.exe instead of the x64 one, the window doesn't show up. According to the STL log it's launching it, but nothing show up on screen. It's not running in processes list either. Any idea why?

Can you check your System Monitor? I'm not sure what the Steam Deck comes with but on a regular KDE Plasma install these days you typically have something just called "System Monitor" or KSysGuard (though that appears to be getting phased out). The System Monitor should look something like this:

image

If the Deck doesn't come with this, KSysGuard is a good alternative. You might need to enable the Deck's "Dev Mode" I believe its called to install packages with Pacman but I'm not totally sure on that.

Basically, just want to see if a process for it is actually running 🙂

@DinoMC
Copy link
Author

DinoMC commented Jun 15, 2022

The Deck does come with System Monitor :)

I can't see cheatengine-i386.exe running at all in process list, whereas if I switch to the x64 exe I can see it just fine. So it seems the i386 version is crashing on launch?

@zany130
Copy link
Collaborator

zany130 commented Jun 15, 2022

EDIT: As for the prefix issue, would setting the WINEPREFIX var in the arguments work? Maybe not depending on where they're placed

probably. one thing that maybe could be done is adding to the one-time run menu an option to select/create a wine prefix for the exe you are going to run?

also, I imagine that if you do install a cheat engine into the game's prefix you could use the custom command option to start it forked by browsing to the exe location

@zany130
Copy link
Collaborator

zany130 commented Jun 15, 2022

can anyone get 7.2 to download and install with steamtinkerlaunch with innoextract? I think the Wayback machine copy may have been removed

@zany130
Copy link
Collaborator

zany130 commented Jun 15, 2022

good news found out that scoop (in case no one knows what this is it's a package manager for windows) is hosting an ad-free version of the latest cheat engine here https://raw.githubusercontent.com/ScoopInstaller/Binary/master/cheat-engine/CheatEngine74.7z IDK if it would be okay though to make steamtinkerlaunch automatically download that?

EDIT: got this to load 7.4 by creating the folder /home/zany130/.config/steamtinkerlaunch/cheatengine/Cheat Engine 7.4/ and extracting the zip there loads 7.4 perfectly fine without any of the bundled ad-ware.

@DinoMC how do you use speed hacks so I can test?

EDIT2: figured it out its on the right panel got it working in trails of cold steel 3 🥳

@sonic2kk
Copy link
Owner

That is amazing news! Should we ask upstream if we're allowed to point STL to use this download link? We could do a check like on this line to see if the user has entered 7.4 and if so, use the Scoop download link, if we're allowed to 🙂

@zany130
Copy link
Collaborator

zany130 commented Jun 16, 2022

yeah, ill go ahead and ask on scoop if they mind if we use that link, and then yeah we can do what you said. another question is if we should leave the default at 7.2 or set it to 7.4

The wiki could also be updated to reflect that any custom cheat engine version could be installed by extracting its files into ~/.config/steamtinkerlaunch/cheatengine/versionofcheatengine/ ill add that when i get the chance (or if you want to do it sonic2kk that fine🙂)

@sonic2kk
Copy link
Owner

Thanks a bunch 😄

another question is if we should leave the default at 7.2 or set it to 7.4

I think we should do some more testing with Cheat Engine 7.4 to see how well it works under Wine, to check for any regressions. If it works fine I would be in favour of bumping the default version to 7.4 as it fixes the speed hack and would resolve this issue. But I haven't used Cheat Engine before really, and 7.4 might still need further testing.

Updating the wiki is a great idea, I'll let you handle it if that's okay, I don't want to get anything wrong haha.


I can't see cheatengine-i386.exe running at all in process list, whereas if I switch to the x64 exe I can see it just fine. So it seems the i386 version is crashing on launch?

@DinoMC That sounds about right to me, it seems like it might launch via STL but then for some reason crashes. The Deck could be missing 32bit libraries but I have a feeling Wine/Proton needs those so perhaps it's only a select handful of 32bit libraries that are missing. I think 32bit apps should work in a 64bit Wine prefix generally, but there could be an issue with something missing in a 64bit Wine prefix for the 32bit Cheat Engine.

Either way, hopefully this will not be needed soon and we can use the Scoop CE. In the meantime you should be able to install it manually :) Please keep us posted if you get the opportunity to try it out!

@DinoMC
Copy link
Author

DinoMC commented Jun 16, 2022

Ah, you must have missed it above but I was able to try Cheat Engine 7.4 by running it manually but got the exact same DLL Injection error as in 7.2 :(.
I think the "fixed speedhack on Linux" changelog refer to the Linux version of Cheat Engine, the Windows version still crash.

@sonic2kk
Copy link
Owner

Ah yes I did see that, sorry!

Did you try the version linked from the Scoop repository posted above? Not sure why it would work and the GitHub one wouldn't but it seemed like there was some success with it which is why I wanted to know if it worked for you too 😄

@sonic2kk
Copy link
Owner

Great news about being able to use that Cheat Engine archive, and the info on the wiki looks great! I had a look at Unlicense and it seems extremely permissive so it should be all good, but we'll let Frostworx have a look and see if he's comfortable including it in the project 😄

I suppose its possible for the speed hack to work with one game and not another but indeed it could be a Proton version issue, though if I recall correctly Proton-GE was tried and didn't work. I suppose as well there is a chance that this could be a Steam Deck specific issue but I really hope not.

Either way I think this just means there should be more testing done to see if its worth bumping the version just yet 🙂 I'll have a look to see what games I could use the speed hack with and do some testing myself from my library. And once I get my Steam Deck I'll give it a try there too but it could be another couple of months 😅

@zany130
Copy link
Collaborator

zany130 commented Jun 16, 2022

Great news about being able to use that Cheat Engine archive, and the info on the wiki looks great! I had a look at Unlicense and it seems extremely permissive so it should be all good, but we'll let Frostworx have a look and see if he's comfortable including it in the project

Yeah agreed I think I may have jumped the gun a bit by going ahead and asking over there if its okay to use the binary's without waiting for Forstworx, so hope he doesn't mind 😅

afaik the speed hack is supposed to work universally in all games but I imagine there could still be issues with certain games. Also, it could be some difference between how I have wine setup on my machine versus the steam deck or something.

I didn't test too much since I use gamescope to solve my multi-monitor issues with gaming and I couldn't get cheat engine working correctly with gamescope

@frostworx
Copy link
Collaborator

great discussion here, thanks all! :)
Will read it in detail within the next days and reply :)
As far as I've read it, you found an alternative trustworthy CE download source which should be set default and zany130 already bumped the wiki (who is Forstworx btw? 🤔)
sounds good to me so far. 👍

@zany130
Copy link
Collaborator

zany130 commented Jun 19, 2022

oops, I misspelled your name lol sorry about that! Anyway great to see you back, and hope you're doing good and rested well.

yeah sounds like we can use scoops compressed binary releases if people want to use newer versions. still don't know if it should be made the default though and they don't have the older versions there. From my limited testing 7.4 seems to work fine though in wine and helped me at least with the speed hack issue, but it seems @DinoMC still can't get it running

@DinoMC
Copy link
Author

DinoMC commented Jun 19, 2022

I'm on a trip so I haven't been able to experiment further for now.

@zany130 Using Proton GE 7.20-1 and CE 7.4 you were able to use speedhack with no issue? That's great news!
I'll try to give it a go with those versions and see if it turns out my problem is game specific (I also have a suspicion that it might work on 64 bits games but not 32 bits games, gonna try that too)

Might be a few days before I'm able to get to it tho

@zany130
Copy link
Collaborator

zany130 commented Jun 19, 2022

GL hopefully it works for you

@frostworx
Copy link
Collaborator

thanks @zany130 the trip was great! We've seen many (rare) butterflies 🦋

I just quickly checked the latest 7.4 release exe directly from the upstream project page
https://github.com/cheat-engine/cheat-engine/releases
and binwalk find the self-contained archive at least:

$ binwalk CheatEngine74.exe 

DECIMAL       HEXADECIMAL     DESCRIPTION
--------------------------------------------------------------------------------
0             0x0             Microsoft executable, portable (PE)
781112        0xBEB38         PNG image, 256 x 256, 8-bit/color RGBA, non-interlaced
843364        0xCDE64         XML document, version: "1.0"
1636302       0x18F7CE        Microsoft executable, portable (PE)
2506480       0x263EF0        rzip compressed data - version 32.54 (-1691404788 bytes)
3349408       0x331BA0        Object signature in DER format (PKCS header length: 4, sequence length: 5503
3349549       0x331C2D        Certificate in DER format (x509 v3), header length: 4, sequence length: 1391
3350944       0x3321A0        Certificate in DER format (x509 v3), header length: 4, sequence length: 1562
3352510       0x3327BE        Certificate in DER format (x509 v3), header length: 4, sequence length: 1612

maybe we can extract it with some common tool (7zip?) and some offset back magic programmatically, so we would not rely on some 3rd party host. Will report back if I find something useful within the upcoming days.

have a nice trip @DinoMC

@frostworx
Copy link
Collaborator

the official upstream release still is an "Inno Setup" archive, but is seems to be manipulated somehow 🤨
it's version information is 6.1.0, which is supported by innoextract upstream, but only extracts a few files without any error:

$ innoextract CheatEngine74.exe 
Extracting "CheatEngine" - setup data version 6.1.0 (unicode)
 - "tmp/loader.gif" [temp]
 - "tmp/finish.png" [temp]
 - "tmp/error.png" [temp]
 - "tmp/logo.png" [temp]
 - "tmp/botva2.dll/botva2.dll"
 - "tmp/zbShieldUtils.dll/zbShieldUtils.dll"

so back to you plan A and use ScoopInstaller as source...

@zany130
Copy link
Collaborator

zany130 commented Jun 22, 2022

Yeah was getting the same thing on my end. Afaik scoop was also running into the same issue hence they just started offering the extracted binaries as a zip instead (no idea how they get these binary though. Either by someone running the inoo setup installer themselves and then getting the binaries from there system (technically this would be the morally preferred method) or from the Patreon page which would be kinda questionable.

EDIT: I'll leave it up to you frostworx how you want to proceed but it's something worth mentioning that i didn't think of at first

@frostworx
Copy link
Collaborator

I'll add scoop as download source (already started a bit).
the scoop team might have simply run the exe installer (assuming it works and assuming they made sure to not repackage possible crapware in their 7z :))
seems like CE generally should be used with care, so whenever it causes any serious security issues, I will remove support for it from steamtinkerlaunch.
would be nice, if you'd add a "use at your own risk" warning in the wiki, @zany130

frostworx pushed a commit that referenced this issue Jun 22, 2022
@frostworx
Copy link
Collaborator

^^ please test

@zany130
Copy link
Collaborator

zany130 commented Jun 22, 2022

Personally i think the wiki is fine i already did put warnings about how unwanted programs can be installed and how cheats can lead to bans if used on online games(maybe I'll rewrite it a bit to make the warning more visible and clear) afaik from reading several reddit threads and upstream GitHub issues. Cheat engine itself should be clean of any malicious code. The actual inno installer thing is what's sketchy. Apparently it connects to some server and downloads additional programs and stuff. There no actual adware in the exe itself it downloads it. Apparently the upstream dev doesn't really care about this(or if even any of these ads are malicious) as he offers a clean version on Patreon and anyone who doesn't wish to donate can build a clean exe from the code(this might be what scoop does)

So in summary cheat engine should be clean it's the inoo extracted crap that sketchy. In fact if you run old versions of the installer without an internet connection it never downloads these adware or even malicious programs. (Starting with 7.4 it falls to download without an internet connection)

EDIT: didn't see your message😅 I'll test now and report back

@frostworx
Copy link
Collaborator

yeah, I know the crap comes with the installer. but upstream people of programs using those installers should care.
if they don't I, personally, would not trust their installed app blindly as well.

@zany130
Copy link
Collaborator

zany130 commented Jun 22, 2022

I agree 100% not defending upstream in any way. at the sametime I don't want to spread misinformation saying cheat engine is malicious or anything like that. thats why I'm kinda wary about adding warning and stuff to the wiki also I don't want to make it off topic of how to get cheat engine working. Perhaps it would be best (and this is kinda how I was writing it already) to just point out the different ways you can go about installing cheat engine and just mention that there have been incidents in the past with this software and leave it at that.

EDIT: ohh and forgot to add that I tested and it worked perfectly had to change the md5 hash since i already had an old one in my global config (it did auto change the url to the scoop repo so that's cool) (also had to disable gamescope cause of the other issue i mentioned before)

@frostworx
Copy link
Collaborator

thx for testing.yeah, I added an autoupdate of the download url and was undecided if it is worth the effort to also auto bump the checksum :)
(I'm afraid it won't happen too soon that I'll look into #490)

(updating the wiki a bit now to reflect latest changes)

@frostworx
Copy link
Collaborator

@DinoMC
please close here when you're back from your trip and had the chance to also test above commit successfully

@DinoMC
Copy link
Author

DinoMC commented Jul 2, 2022

Sorry, the trip was too good so I didn't get around to trying this :). I'm back now.

I tried proton GE 7.20 (and 7.24 too) and still got the DLL injection error "unable to open kernel32.dll".

I think @zany130 didn't do anything special apart from that so the issue seem specific to the Steam Deck?

I don't have the game he tried on so I can't try on the exact same game. I'll try with more games now to make sure it's not just game specific.

E: Tried a bunch of games and couldn't find a single one working, tho some throw a different error ("Failure determining what GetTickCount means"). I doubt it's a game issue unless @zany130 randomly landed on a very rare compatible game.

Not sure what to try next.

@frostworx
Copy link
Collaborator

When you doubt it is a game issue, please provide logs

@DinoMC
Copy link
Author

DinoMC commented Jul 2, 2022

Nevermind, I tried a couple more games and found one where everything works perfectly. So speedhack does indeed work, it's just a LOT less compatible than on Windows (all of the games I tried, speedhack does work on Windows).

Doesn't seem like a STL issue so I should close this, right?

I'll add an example log for a game that doesn't work but there doesn't seem to be anything, the moment I try to turn on speedhack STL only detect that the game finished (cause Cheat Engine crash the game and itself with the DLL Injection error) and kill Proton, nothing else as far as I can see.

@DinoMC
Copy link
Author

DinoMC commented Jul 2, 2022

steamtinkerlaunch.log

@frostworx
Copy link
Collaborator

Likely no steamtinkerlaunch issue, but your log shows that your Cheat Engine version is 7.2, so you might want to re-test with installing 7.4, which could help with your now working games.

@DinoMC
Copy link
Author

DinoMC commented Jul 2, 2022

I extracted 7.4 myself and put it in /home/deck/.config/steamtinkerlaunch/cheatengine/Cheat Engine 7.2/ (leaving version to 7.2 in STL setting) so it's actually running 7.4, I can confirm this in Cheat Engine itself too when it's running.

@frostworx
Copy link
Collaborator

ic closing

@zany130
Copy link
Collaborator

zany130 commented Jul 2, 2022

Fwiw i did try a few games and got them all working.
Tried a hat in time trails in the sky and trails of cold Steel. If you want let me know what games you are having issues and i can try them if i have them (or take a look at my steam profile it's also zany130)

@DinoMC
Copy link
Author

DinoMC commented Jul 2, 2022

Nice, good idea, I'll check your list tomorrow to see what games we have in common and tell you some that don't work

@DinoMC
Copy link
Author

DinoMC commented Jul 6, 2022

If you want let me know what games you are having issues and i can try them if i have them (or take a look at my steam profile it's also zany130)

I tried Undertale from your list and it's giving me the exact same error as most games (dll injection failed). Can you try it out? Would be interesting if it works for you.

@zany130
Copy link
Collaborator

zany130 commented Jul 6, 2022

Where do you see the error in the proton logs? I don't see any error but it does crash for me. So it can probably be reported upstream to the cheatengine devs. Don't know if they take wine bugs but seeing as they do sometimes work on wine bugs maybe they do?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants