I worked out No Sway.
Code: Select all
// Game Executable : Cyberpunk2077.exe
// Author : gir489
// Executable Version: 3.0.74.53121
// MD5 Signature : C1D52108733C0E154A4B549B2B7AC788
// EXE Compile Date : September 20, 2023 01:31 PM
// Script Date : October 02, 2023 12:22 PM
[ENABLE]
aobscanmodule(aob_WeaponSwayManagerTick,Cyberpunk2077.exe,0F 2E 58 14 74 C3 E9)
registersymbol(aob_WeaponSwayManagerTick)
aob_WeaponSwayManagerTick+4:
db EB
[DISABLE]
aob_WeaponSwayManagerTick+4:
db 74
unregistersymbol(aob_WeaponSwayManagerTick)
{
// ORIGINAL CODE - INJECTION POINT: Cyberpunk2077.exe+499D08
Cyberpunk2077.exe+499CB9: 33 F6 - xor esi,esi
Cyberpunk2077.exe+499CBB: 40 38 B7 B0 00 00 00 - cmp [rdi+000000B0],sil
Cyberpunk2077.exe+499CC2: 75 21 - jne Cyberpunk2077.exe+499CE5
Cyberpunk2077.exe+499CC4: 40 38 B7 E8 00 00 00 - cmp [rdi+gadgetQuantityOffset],sil
Cyberpunk2077.exe+499CCB: 75 21 - jne Cyberpunk2077.exe+499CEE
Cyberpunk2077.exe+499CCD: 40 86 33 - xchg [rbx],sil
Cyberpunk2077.exe+499CD0: 48 8B 74 24 48 - mov rsi,[rsp+48]
Cyberpunk2077.exe+499CD5: 48 8B 5C 24 40 - mov rbx,[rsp+40]
Cyberpunk2077.exe+499CDA: 0F 28 74 24 20 - movaps xmm6,[rsp+20]
Cyberpunk2077.exe+499CDF: 48 83 C4 30 - add rsp,30
Cyberpunk2077.exe+499CE3: 5F - pop rdi
Cyberpunk2077.exe+499CE4: C3 - ret
Cyberpunk2077.exe+499CE5: 40 38 B7 B1 00 00 00 - cmp [rdi+000000B1],sil
Cyberpunk2077.exe+499CEC: 75 D6 - jne Cyberpunk2077.exe+499CC4
Cyberpunk2077.exe+499CEE: 8A 8F E9 00 00 00 - mov cl,[rdi+000000E9]
Cyberpunk2077.exe+499CF4: 48 8D 87 B4 00 00 00 - lea rax,[rdi+000000B4]
Cyberpunk2077.exe+499CFB: 84 C9 - test cl,cl
Cyberpunk2077.exe+499CFD: 0F 57 DB - xorps xmm3,xmm3
Cyberpunk2077.exe+499D00: 48 0F 44 C7 - cmove rax,rdi
Cyberpunk2077.exe+499D04: 0F 2E 58 14 - ucomiss xmm3,[rax+14]
// ---------- INJECTING HERE ----------
Cyberpunk2077.exe+499D08: 74 C3 - je Cyberpunk2077.exe+499CCD
// ---------- DONE INJECTING ----------
Cyberpunk2077.exe+499D0A: E9 95 D2 91 01 - jmp Cyberpunk2077.exe+1DB6FA4
Cyberpunk2077.exe+499D0F: CC - int 3
Cyberpunk2077.exe+499D10: 48 89 5C 24 10 - mov [rsp+10],rbx
Cyberpunk2077.exe+499D15: 57 - push rdi
Cyberpunk2077.exe+499D16: 48 83 EC 40 - sub rsp,40
Cyberpunk2077.exe+499D1A: 48 8D 99 40 01 00 00 - lea rbx,[rcx+00000140]
Cyberpunk2077.exe+499D21: 0F 29 74 24 30 - movaps [rsp+30],xmm6
Cyberpunk2077.exe+499D26: 48 8B F9 - mov rdi,rcx
Cyberpunk2077.exe+499D29: 0F 29 7C 24 20 - movaps [rsp+20],xmm7
Cyberpunk2077.exe+499D2E: 48 8B CB - mov rcx,rbx
Cyberpunk2077.exe+499D31: 0F 28 FA - movaps xmm7,xmm2
Cyberpunk2077.exe+499D34: 0F 28 F1 - movaps xmm6,xmm1
Cyberpunk2077.exe+499D37: E8 A4 9B 2C 00 - call Cyberpunk2077.exe+7638E0
Cyberpunk2077.exe+499D3C: 8B 87 2C 01 00 00 - mov eax,[rdi+0000012C]
Cyberpunk2077.exe+499D42: 3B 87 28 01 00 00 - cmp eax,[rdi+00000128]
Cyberpunk2077.exe+499D48: 0F 85 28 01 00 00 - jne Cyberpunk2077.exe+499E76
Cyberpunk2077.exe+499D4E: 0F 28 C6 - movaps xmm0,xmm6
Cyberpunk2077.exe+499D51: 0F 28 D6 - movaps xmm2,xmm6
Cyberpunk2077.exe+499D54: F3 0F 58 87 B0 00 00 00 - addss xmm0,[rdi+000000B0]
Cyberpunk2077.exe+499D5C: 0F 28 CF - movaps xmm1,xmm7
}
Apparently, it was in the leaked source code, so the game always had sway? I guess my old perks and attachments on the gun just made it so I didn't notice. But I matched the source code function of game::WeaponSwayManager::tick up to 2.0 and removed it and my gun stopped swaying.
EDIT: If you want to know where Relic Points are, search for perk points, and then add 0x18 to the address.
EDIT: Fixed Infinite Ammo affecting other items.
Code: Select all
// Game Executable : Cyberpunk2077.exe
// Author : gir489
// Executable Version: 3.0.74.53121
// MD5 Signature : C1D52108733C0E154A4B549B2B7AC788
// EXE Compile Date : September 20, 2023 01:31 PM
// Script Date : October 01, 2023 05:26 PM
[ENABLE]
aobscanmodule(InfiniteAmmo,Cyberpunk2077.exe,0F 4E D1 89 57 78) // should be unique
aobscanmodule(ReturnAddress,Cyberpunk2077.exe,41 FF D2 48 8D 4D C0 E8 ? ? ? ? E9)
alloc(newmem,258,InfiniteAmmo)
registersymbol(InfiniteAmmo)
label(return)
newmem:
push rbx
mov rbx, ReturnAddress+3
cmp [rsp+150], rbx
pop rbx
je short @F
cmp ecx,edx
cmovle edx,ecx
@@:
mov [rdi+78],edx
jmp return
InfiniteAmmo:
jmp newmem
nop
return:
[DISABLE]
InfiniteAmmo:
db 0F 4E D1 89 57 78
unregistersymbol(InfiniteAmmo)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: Cyberpunk2077.exe+57018D
Cyberpunk2077.exe+57014C: 32 C0 - xor al,al
Cyberpunk2077.exe+57014E: EB 8D - jmp Cyberpunk2077.exe+5700DD
Cyberpunk2077.exe+570150: 48 89 5C 24 08 - mov [rsp+08],rbx
Cyberpunk2077.exe+570155: 57 - push rdi
Cyberpunk2077.exe+570156: 48 83 EC 20 - sub rsp,20
Cyberpunk2077.exe+57015A: 48 8B 01 - mov rax,[rcx]
Cyberpunk2077.exe+57015D: 8B DA - mov ebx,edx
Cyberpunk2077.exe+57015F: BA 91 04 00 00 - mov edx,00000491
Cyberpunk2077.exe+570164: 48 8B F9 - mov rdi,rcx
Cyberpunk2077.exe+570167: FF 90 68 01 00 00 - call qword ptr [rax+00000168]
Cyberpunk2077.exe+57016D: 8B 4F 78 - mov ecx,[rdi+78]
Cyberpunk2077.exe+570170: BA 01 00 00 00 - mov edx,00000001
Cyberpunk2077.exe+570175: F3 48 0F 2C C0 - cvttss2si rax,xmm0
Cyberpunk2077.exe+57017A: 3B C2 - cmp eax,edx
Cyberpunk2077.exe+57017C: 0F 43 D0 - cmovae edx,eax
Cyberpunk2077.exe+57017F: 33 C0 - xor eax,eax
Cyberpunk2077.exe+570181: 03 CB - add ecx,ebx
Cyberpunk2077.exe+570183: 48 8B 5C 24 30 - mov rbx,[rsp+30]
Cyberpunk2077.exe+570188: 0F 48 C8 - cmovs ecx,eax
Cyberpunk2077.exe+57018B: 3B CA - cmp ecx,edx
// ---------- INJECTING HERE ----------
Cyberpunk2077.exe+57018D: 0F 4E D1 - cmovle edx,ecx
// ---------- DONE INJECTING ----------
Cyberpunk2077.exe+570190: 89 57 78 - mov [rdi+78],edx
Cyberpunk2077.exe+570193: 48 83 C4 20 - add rsp,20
Cyberpunk2077.exe+570197: 5F - pop rdi
Cyberpunk2077.exe+570198: C3 - ret
Cyberpunk2077.exe+570199: CC - int 3
Cyberpunk2077.exe+57019A: CC - int 3
Cyberpunk2077.exe+57019B: CC - int 3
Cyberpunk2077.exe+57019C: 48 8B 89 80 00 00 00 - mov rcx,[rcx+00000080]
Cyberpunk2077.exe+5701A3: E9 CC 07 C6 FF - jmp Cyberpunk2077.exe+1D0974
Cyberpunk2077.exe+5701A8: 48 8B C4 - mov rax,rsp
Cyberpunk2077.exe+5701AB: 48 89 58 08 - mov [rax+08],rbx
Cyberpunk2077.exe+5701AF: 48 89 70 10 - mov [rax+10],rsi
Cyberpunk2077.exe+5701B3: 48 89 78 18 - mov [rax+18],rdi
Cyberpunk2077.exe+5701B7: 4C 89 70 20 - mov [rax+20],r14
Cyberpunk2077.exe+5701BB: 55 - push rbp
Cyberpunk2077.exe+5701BC: 48 8B EC - mov rbp,rsp
Cyberpunk2077.exe+5701BF: 48 83 EC 70 - sub rsp,70
Cyberpunk2077.exe+5701C3: 48 8B 02 - mov rax,[rdx]
Cyberpunk2077.exe+5701C6: 48 8D 3D E3 CA CF 02 - lea rdi,[Cyberpunk2077.exe+326CCB0]
Cyberpunk2077.exe+5701CD: FE 42 62 - inc byte ptr [rdx+62]
}
EDIT: Here's a Cyber Engine Tweaks mod I wrote to get the game back to where I had it during 1.62 Hotfix.
Code: Select all
registerForEvent("onInit", function()
--Optical Camo lasts 30 seconds and instantly is off cooldown.
TweakDB:SetFlat("BaseStatusEffect.OpticalCamoPlayerBuffLegendary_inline1.value", 30)
TweakDB:SetFlat("BaseStatusEffect.OpticalCamoPlayerBuffEpic_inline1.value", 30)
TweakDB:SetFlat("BaseStatusEffect.OpticalCamoPlayerBuffRare_inline1.value", 30)
TweakDB:SetFlat("BaseStatPools.PlayerOpticalCamoChargesDecay_inline0.value", 0)
TweakDB:SetFlat("BaseStatPools.PlayerOpticalCamoChargesDecay_inline1.value", 0)
--Big Mag has 150% mag capacity and no reduction on reload speed.
TweakDB:SetFlat("Items.ARSMGLMGMod1_Base_inline0.value", 0.3)
TweakDB:SetFlat("Items.ARSMGLMGMod1_Base_inline1.value", 0.3)
TweakDB:SetFlat("Items.ARSMGLMGMod1_Base_inline2.value", 0.00000001)
--Haemocide increases damage by 400% instead of reducing it. (Visually it says reduction on the mod, but the weapon will have increased damage.)
TweakDB:SetFlat("Items.BladeMod3_Base_inline4.value", 400)
--Replace Equalizer's damage against elite enemies with regular damage buff and increases it by 200%.
TweakDB:SetFlat("Items.RangedMod3_Base_inline1.value", 200)
TweakDB:SetFlat("Items.RangedMod3_Base_inline1.statType", TweakDB:GetFlat("Items.BladeMod3_Base_inline4.statType"))
end)
Needs to be saved as init.lua into Cyberpunk 2077\bin\x64\plugins\cyber_engine_tweaks\mods\OpticalCamo. (It was originally just optical camo cooldown, but I added the other stuff for 2.0)
Now if I could only get the LMG to have a sight, it'd be exactly like 1.62.