Fuzion
Fuzion copied to clipboard
On new release CS GO crushes when game loaded.
In Any game type crushes application when cheat injected. After last (22 Sept) game update.
Try this https://github.com/danielkrupinski/Osiris/pull/3265/commits/84147c50570e9364a98515b62b6b878ceaf0c5ee
You are right. Same here (27 / 09 / 2021). The game crushes and close application when cheat injected. The game finishes // close.
Try this danielkrupinski/Osiris@84147c5
@Oreoezi not sure how you mean to use that fix, since I can't find similar code inside Fuzion source
Try using both of the last pull requests, at least it wasn't crashing for me but idk if everything works now
Thanks @acuifex but it still crashes after merging both PRs
can you give us a backtrace then? https://github.com/LWSS/Fuzion/issues/645#issuecomment-875081169
Crashes before the gdb session is launched:
./debug
2
Injecting build libzmqAda.so
./debug: line 32: kill: (111554) - No such process
GNU gdb (Ubuntu 10.1-2ubuntu2) 10.1.90.20210411-git
Copyright (C) 2021 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word".
Attaching to process 111554
ptrace: No such process.
(gdb) (gdb) No symbol table is loaded. Use the "file" command.
(gdb) You can't do that without a process to debug.
well, that shouldn't happen. gdb itself loads the libs you have some other issue try using gdb from this issue https://github.com/LWSS/Fuzion/issues/621 or this one liner https://github.com/LWSS/Fuzion/issues/651#issuecomment-894206146
Thanks, same behavior for debug
but it works well for normal load
now, so problem solved?
Thanks, same behavior for
debug
but it works well for normalload
now, so problem solved?
I made as #651 post.
cd Fuzion
wget https://nullworks.gitlab.io/cathook/cathook/gdb -O gdb.bin && sudo chmod +x ./gdb.bin && sed -i -- 's/sudo gdb/sudo ./gdb.bin/g' ./load
But, after playing when I load (I have just tested). The game closes. I can access the match and see 3th persons playing. When the games will start new round, the closes closes.
Thanks, same behavior for
debug
but it works well for normalload
now, so problem solved?
should be okay to use with ./load now then, this one liner just changes gdb path in ./load script, you can change the path in ./debug from gdb to ./gdb.bin
Thanks, same behavior for
debug
but it works well for normalload
now, so problem solved?I made as #651 post. cd Fuzion wget https://nullworks.gitlab.io/cathook/cathook/gdb -O gdb.bin && sudo chmod +x ./gdb.bin && sed -i -- 's/sudo gdb/sudo ./gdb.bin/g' ./load
But, after playing when I load (I have just tested). The game closes. I can access the match and see 3th persons playing. When the games will start new round, the closes closes.
could you tell what gamemode are you playing? retakes are known to be broken in CSGO and danger zone isn't exactly stable either
Thanks, same behavior for
debug
but it works well for normalload
now, so problem solved?should be okay to use with ./load now then, this one liner just changes gdb path in ./load script, you can change the path in ./debug from gdb to ./gdb.bin
Thanks, same behavior for
debug
but it works well for normalload
now, so problem solved?I made as #651 post. cd Fuzion wget https://nullworks.gitlab.io/cathook/cathook/gdb -O gdb.bin && sudo chmod +x ./gdb.bin && sed -i -- 's/sudo gdb/sudo ./gdb.bin/g' ./load But, after playing when I load (I have just tested). The game closes. I can access the match and see 3th persons playing. When the games will start new round, the closes closes.
could you tell what gamemode are you playing? retakes are known to be broken in CSGO and danger zone isn't exactly stable either
Hello friend.
Must I edit "debug" file? Do I substitute "gdb" to "gdb.bin"? I did it, still not works. The game closes the window.
I'm traying to play a normal game. Team Deathmatch.
carlos@carlos-desk:~/Fuzion$ ./debug [sudo] senha para carlos: Sinto muito, tente novamente. [sudo] senha para carlos: 2 Injecting build libgstpbutils-0.10.so GNU gdb (Ubuntu 9.2-0ubuntu1~20.04) 9.2 Copyright (C) 2020 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-linux-gnu". Type "show configuration" for configuration details. For bug reporting instructions, please see: http://www.gnu.org/software/gdb/bugs/. Find the GDB manual and other documentation resources online at: http://www.gnu.org/software/gdb/documentation/.
For help, type "help". Type "apropos word" to search for commands related to "word". Attaching to process 19676 [New LWP 19694] [New LWP 19695] [New LWP 19696] [New LWP 19697] [New LWP 19699] [New LWP 19718] [New LWP 19719] [New LWP 19720] [New LWP 19734] [New LWP 19735] [New LWP 19736] [New LWP 19737] [New LWP 19740] [New LWP 19741] [New LWP 19743] [New LWP 19744] [New LWP 19745] [New LWP 19746] [New LWP 19747] [New LWP 19750] [New LWP 19751] [New LWP 19752] [New LWP 19753] [New LWP 19754] [New LWP 19755] [New LWP 19756] [New LWP 19757] [New LWP 19760] [New LWP 19767] [New LWP 19768] [New LWP 19769] [New LWP 19770] [New LWP 19791] [New LWP 19792] [New LWP 19813] [New LWP 19814] [New LWP 19815] [New LWP 19816]
warning: Could not load shared library symbols for bin/linux64/launcher_client.so. Do you need "set solib-search-path" or "set sysroot"? [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". --Type <RET> for more, q to quit, c to continue without paging--0x00007f63f44c989b in sched_yield () at ../sysdeps/unix/syscall-template.S:78 78 ../sysdeps/unix/syscall-template.S: Arquivo ou diretório inexistente. (gdb) (gdb) [New Thread 0x7f638579e700 (LWP 19837)] $1 = (void *) 0x7f6384414a00 (gdb) $2 = (void *) 0x7f6384414a00 (gdb)
I have the same problem
$1 = (void *) 0x7f6384414a00 (gdb) $2 = (void *) 0x7f6384414a00 (gdb)
you have to continue
after injecting, debug script won't do that for you
I have the same problem
apply these https://github.com/LWSS/Fuzion/pull/654 https://github.com/LWSS/Fuzion/pull/652 patches
and gdb --version
output please
Hello acuifex. Thanks so much. I'm so sorry about half information by me, sometimes I don't know how to make to send you more information and fo de correcty commands.
carlos@carlos-desk:~$ gdb --version GNU gdb (Ubuntu 9.2-0ubuntu1~20.04) 9.2 Copyright (C) 2020 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.
I will make a video to explain the problem (if it helps).
#case 1: I have opened CS GO and use: ./load Screencast: www.machsuporte.com.br/downloads/game-cs.mp4 The game connect to the server, but when the match you (or me) will play, the game closes suddenly.
#case 2: I have opened CS GO and use: ./debug Screencast: www.machsuporte.com.br/downloads/game-cs2.mp4 The game instant Freeze the Windows. I cannot click. I cannot close the game. I had to close Steam which then closed the game.
#case 3: I have opened CS GO and changed "gdb" to "gdb.bin". So I have ran ".debug" and ".load".
Screencast: www.machsuporte.com.br/downloads/game-cs3.mp4
The command "./debug" freezes the window (not the game). After I did "quit" to close .debug, the game came back. The command "./load" load the Fuzion. The match starts with me without playing in the round. When the new round will start, the new game crashes suddenly.
The command "./debug" freezes the window (not the game). After I did "quit" to close .debug, the game came back.
That's normal behavior, debug launches the process and stops at different instructions you should enter "c" or "continue" multiple times then the game will come back
Ahhh I understood now. So sorry. I have just made this test.
I will put here.
#case 4: I have opened CS GO and use: "./debug". And tap "c" some times to continue. My debug file is using "gdb.bin". Screencast: www.machsuporte.com.br/downloads/game-cs4.mp4
To avoid mistake, I will upload both files to easy view. debug file: www.machsuporte.com.br/downloads/debug output shell: www.machsuporte.com.br/downloads/debug-outputshell.txt
May it is useful???
Don't bother uploading files on github, just use details like so:
<details>
<summary> debug file </summary>
```bash
#!/usr/bin/env bash
# Starts a GDB session on CS:GO, injects cheat if it is not already present.
# Send SIGINT to CS:GO with: "kill -2 "$(pidof csgo_linux64)"".
function echo_red {
echo -e "\\e[31m$*\\e[0m"
}
csgo_pid=$(pidof csgo_linux64)
if [ -z "$csgo_pid" ]; then
echo_red "CS:GO needs to be open before you can inject..."
exit 1
fi
# pBypass for crash dumps being sent
# You may also want to consider using -nobreakpad in your launch options.
sudo rm -rf /tmp/dumps # Remove if it exists
sudo mkdir --mode=000 /tmp/dumps # Make it as root with no permissions
if [ ! -f build_id ]; then
echo "Build ID not found. Please rebuild using the './build' script."
exit
fi
filename=$(cat build_id)
# https://www.kernel.org/doc/Documentation/security/Yama.txt
echo "2" | sudo tee /proc/sys/kernel/yama/ptrace_scope # Only allows root to inject code. This is temporary until reboot.
# Adjust the Sleep time below for your system if needed.
# This sends 2 interrupts to CS:GO after gdb attachs so gdb will drop into a shell.
sleep 3 && kill -2 "$csgo_pid" && sleep 1 && kill -2 "$csgo_pid" &
# dlopen method Credits: Aixxe @ aixxe.net
if grep -q "$filename" /proc/"$csgo_pid"/maps; then
(echo -e "continue\\n"; cat) | sudo /home/carlos/Fuzion/gdb.bin -p "$csgo_pid"
else
echo "Injecting build $filename"
sudo cp "$filename" /"$filename"
(echo -e "set confirm off\\nset \$dlopen = (void*(*)(char*, int)) dlopen\\ncall \$dlopen(\"/$filename\", 1)\\n"; cat) | sudo /home/carlos/Fuzion/gdb.bin -p "$csgo_pid"
sudo rm /"$filename"
fi
```
</details>
It'll give you something like this :
debug file
#!/usr/bin/env bash
# Starts a GDB session on CS:GO, injects cheat if it is not already present.
# Send SIGINT to CS:GO with: "kill -2 "$(pidof csgo_linux64)"".
function echo_red {
echo -e "\\e[31m$*\\e[0m"
}
csgo_pid=$(pidof csgo_linux64)
if [ -z "$csgo_pid" ]; then
echo_red "CS:GO needs to be open before you can inject..."
exit 1
fi
# pBypass for crash dumps being sent
# You may also want to consider using -nobreakpad in your launch options.
sudo rm -rf /tmp/dumps # Remove if it exists
sudo mkdir --mode=000 /tmp/dumps # Make it as root with no permissions
if [ ! -f build_id ]; then
echo "Build ID not found. Please rebuild using the './build' script."
exit
fi
filename=$(cat build_id)
# https://www.kernel.org/doc/Documentation/security/Yama.txt
echo "2" | sudo tee /proc/sys/kernel/yama/ptrace_scope # Only allows root to inject code. This is temporary until reboot.
# Adjust the Sleep time below for your system if needed.
# This sends 2 interrupts to CS:GO after gdb attachs so gdb will drop into a shell.
sleep 3 && kill -2 "$csgo_pid" && sleep 1 && kill -2 "$csgo_pid" &
# dlopen method Credits: Aixxe @ aixxe.net
if grep -q "$filename" /proc/"$csgo_pid"/maps; then
(echo -e "continue\\n"; cat) | sudo /home/carlos/Fuzion/gdb.bin -p "$csgo_pid"
else
echo "Injecting build $filename"
sudo cp "$filename" /"$filename"
(echo -e "set confirm off\\nset \$dlopen = (void*(*)(char*, int)) dlopen\\ncall \$dlopen(\"/$filename\", 1)\\n"; cat) | sudo /home/carlos/Fuzion/gdb.bin -p "$csgo_pid"
sudo rm /"$filename"
fi
Thread 1 "csgo_linux64" received signal SIGSEGV, Segmentation fault.
0x00007fe98ec9e7db in ?? () from /libgcr-3.so
(gdb) c
Continuing.
you have to write bt
here
and also build with ./build-debug
Thread 1 "csgo_linux64" received signal SIGSEGV, Segmentation fault. 0x00007fe98ec9e7db in ?? () from /libgcr-3.so (gdb) c Continuing.
you have to write
bt
here and also build with ./build-debug
Alright. If I understood, first shoule I run: "./build-debug" - and after open the game and run "./debug". When the script stop in this part I write "bt".
correct
Alright. (If i'm anoying you with stupids questions, it's ok, don't need to answer me. I think I'm anoying hehehe).
#1: First, I have run "build-debug".
-- Remove Item from List:/home/carlos/Fuzion/src/ImGUI/examples/imgui_impl_opengles3.cpp -- Remove Item from List:/home/carlos/Fuzion/src/ImGUI/misc/fonts/binary_to_compressed_c.cpp -- Remove Item from List:/home/carlos/Fuzion/src/ImGUI/misc/freetype/imgui_freetype.cpp -- Configuring done -- Generating done -- Build files have been written to: /home/carlos/Fuzion [ 1%] Linking CXX shared library libFuzion.so [100%] Built target Fuzion
After that, I have opened the game in "bots practice" and ran "./debug".
For help, type "help". Type "apropos word" to search for commands related to "word". Attaching to process 10967 [New LWP 10977] [New LWP 10978] [New LWP 10979] [New LWP 10980] [New LWP 10982] [New LWP 11000] [New LWP 11001] [New LWP 11002] [New LWP 11006] [New LWP 11007] [New LWP 11008] [New LWP 11009] [New LWP 11011] [New LWP 11012] [New LWP 11035] [New LWP 11036] [New LWP 11037] [New LWP 11038] [New LWP 11039] [New LWP 11042] [New LWP 11043] [New LWP 11044] [New LWP 11045] [New LWP 11047] [New LWP 11048] [New LWP 11049] [New LWP 11050] [New LWP 11053] [New LWP 11060] [New LWP 11061] [New LWP 11062] [New LWP 11063] [New LWP 11085] [New LWP 11086] [New LWP 11090] [New LWP 11091] [New LWP 11092] [New LWP 11093] [New LWP 11094] [New LWP 11095] [New LWP 11096] [New LWP 11098] [New LWP 11099] [New LWP 11100]
warning: Could not load shared library symbols for bin/linux64/launcher_client.so. Do you need "set solib-search-path" or "set sysroot"?
warning: File "/usr/lib/x86_64-linux-gnu/libthread_db-1.0.so" auto-loading has been declined by your `auto-load safe-path' set to "$debugdir:$datadir/auto-load". --Type <RET> for more, q to quit, c to continue without paging--To enable execution of this file add add-auto-load-safe-path /usr/lib/x86_64-linux-gnu/libthread_db-1.0.so line to your configuration file "/root/.gdbinit". To completely disable this security protection add set auto-load safe-path / line to your configuration file "/root/.gdbinit". For more information about this security protection see the "Auto-loading safe path" section in the GDB manual. E.g., run from the shell: info "(gdb)Auto-loading safe path"
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
warning: File "/usr/lib/x86_64-linux-gnu/libthread_db-1.0.so" auto-loading has been declined by your `auto-load safe-path' set to "$debugdir:$datadir/auto-load".
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available. 0x00007f38832433bf in __GI___clock_nanosleep (clock_id=clock_id@entry=0, flags=flags@entry=0, req=0x7ffefc398eb0, rem=0x7ffefc398ea0) at ../sysdeps/unix/sysv/linux/clock_nanosleep.c:78 78 ../sysdeps/unix/sysv/linux/clock_nanosleep.c: Arquivo ou diretório inexistente. (gdb) (gdb) [New LWP 11125] $1 = (void *) 0x7f3808db2000 (gdb) $2 = (void *) 0x7f3808db2000 (gdb) c Continuing.
Thread 1 "csgo_linux64" received signal SIGINT, Interrupt. 0x00007f38832433bf in __GI___clock_nanosleep (clock_id=clock_id@entry=0, flags=flags@entry=0, req=0x7ffefc398eb0, rem=0x7ffefc398ea0) at ../sysdeps/unix/sysv/linux/clock_nanosleep.c:78 78 in ../sysdeps/unix/sysv/linux/clock_nanosleep.c (gdb) c Continuing.
Thread 1 "csgo_linux64" received signal SIGINT, Interrupt. 0x00007f38832433bf in __GI___clock_nanosleep (clock_id=clock_id@entry=0, flags=flags@entry=0, req=0x7ffefc398eb0, rem=0x7ffefc398ea0) at ../sysdeps/unix/sysv/linux/clock_nanosleep.c:78 78 in ../sysdeps/unix/sysv/linux/clock_nanosleep.c (gdb) c Continuing. [LWP 11125 exited]
Thread 1 "csgo_linux64" received signal SIGSEGV, Segmentation fault.
ThirdPerson::OverrideView (pSetup=
Thread 1 "csgo_linux64" received signal SIGSEGV, Segmentation fault.
ThirdPerson::OverrideView (pSetup=
(The game crushes and closes here)
@cebaldocchi it's the same problem I add, manually merge the modifications from the last 2 PRs
Quick tutorial for merging those PRs:
git checkout -b fixed
git fetch origin pull/652/head:pr652
git merge pr652
git fetch origin pull/654/head:pr654
git checkout pr654
git rebase fixed
git checkout fixed
git merge pr654
./build
Quick tutorial for merging those PRs:
git checkout -b fixed git fetch origin pull/652/head:pr652 git merge pr652 git fetch origin pull/654/head:pr654 git checkout pr654 git rebase fixed git checkout fixed git merge pr654 ./build
I did:
cd Fuzion/
and ran all commands you tip here. One by one, same order.
My CS GO still closes and inject the Fuzion. The game crashes, close the window.
Hello guys.
I have success now.
#1: I updated my system.
#2: Re-Install Fuzion using the "original" procedure on website: https://github.com/LWSS/Fuzion
#3: I downloaded the GDB from this post #651 (download GDB from the link) and after I ran:
cd Fuzion/ wget https://nullworks.gitlab.io/cathook/cathook/gdb -O gdb.bin && sudo chmod +x ./gdb.bin && sed -i -- 's/sudo gdb/sudo ./gdb.bin/g' ./load
#4: I apply the PRs as @JuniorJPDJ said above: git checkout -b fixed git fetch origin pull/652/head:pr652 git merge pr652 git fetch origin pull/654/head:pr654 git checkout pr654 git rebase fixed git checkout fixed git merge pr654 ./build
--- By now the cheat works again. Thanks @JuniorJPDJ and Thanks @DrissiReda and Thanks @acuifex (I supposed I was annoying you, because you did not answer anymore LoL hehehe)
others picked up the topic, i didn't have anything to add