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

[Feature Request] Add Linux support #34

Open
hamad12a opened this issue Feb 4, 2023 · 9 comments
Open

[Feature Request] Add Linux support #34

hamad12a opened this issue Feb 4, 2023 · 9 comments

Comments

@hamad12a
Copy link

hamad12a commented Feb 4, 2023

Could you point out what are the necessary adjustments should take place for the cheat to support Linux version of the game?

@mrjshzk
Copy link

mrjshzk commented Mar 30, 2023

Just compile your cheat to .so (shared object (pretty much the equivalent of dll in windows)) and instead of injecting client.dll, inject client.so

@hamad12a
Copy link
Author

Just compile your cheat to .so (shared object (pretty much the equivalent of dll in windows)) and instead of injecting client.dll, inject client.so

you mean compiling the python file into a shared library file (.so)?

@mrjshzk
Copy link

mrjshzk commented Mar 30, 2023

No, your cheat. Compile it the same way you'd compile a DLL on windows, but a SO file.

@hamad12a
Copy link
Author

I might misunderstood the functionality of this source code. Is it an injector? I mean I must have .so file somewhere else then I use this python file to inject it?

@mrjshzk
Copy link

mrjshzk commented Mar 30, 2023

Nevermind, I just realized what this code does and you should not use it. You will get VAC banned.

This is pretty much the same thing as having cheat engine attached to csgo and assembly editing.

@mrjshzk
Copy link

mrjshzk commented Mar 30, 2023

And also I just checked and PyMem is a windows only library, so you would have to use another library compatible with linux (if it exists)

@hamad12a
Copy link
Author

Nevermind, I just realized what this code does and you should not use it. You will get VAC banned.

This is pretty much the same thing as having cheat engine attached to csgo and assembly editing.

Which means it must be running on Windows! But where client.dll must be found?

@mrjshzk
Copy link

mrjshzk commented Mar 30, 2023

I don't want to just say it to you, I want you to learn from this, so follow along.
I went to the Pymem documentation and searched the 'module_from_name' function, which takes 2 arguments.

First argument is the 'process_handle' (int) and in this code that is 'pm.process_handle', being pm the csgo executable variable.

Now the second argument is 'module_name' (string) and in this code that is 'Client.dll'.

Also, the description of this function is the following 'Retrieve a module loaded by given process'.

So pretty much what this code does is ->
Pulls Client.dll from csgo process; edits the assembly code from said DLL and boom, done

I hope you have learned something :)

@hamad12a
Copy link
Author

hamad12a commented Mar 30, 2023 via email

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

2 participants