Blueskadoo wrote: ↑Mon Sep 18, 2023 7:28 am
There is also an INI configuration that I learned from a mod that allows free crafting even if you don't have any ingredients. But it will consume the item if its present on your inventory/cargo.
in StarfieldCustom.ini
add:
This essentially does the same exact thing as Zanzer's implementation of Ignore Craft Materials. It doesn't allow you do Workshop builds for free, so that sucks. If you want to debug what it's doing for yourself, the setting is stored at Starfield.exe+5594698.
EDIT: BTW someone fixed the weapon swap bug on nexus. The mod is called Weapon Swap Stuttering Fix. It's a pain in the ass to install though.
EDIT: I got fed the fuck up with having to add resources into my inventory and then remove them, so here's a script that makes it extremely similar to Ignore Craft Materials, except for workshop shit.
Code: Select all
// Game Executable : Starfield.exe
// Author : gir489
// Executable Version: 1.7.29.0
// MD5 Signature : 74B8EE179586633226FC7C7EFEDBCA73
// EXE Compile Date : September 06, 2023 09:23 PM
// Script Date : September 18, 2023 02:52 PM
[ENABLE]
aobscanmodule(aob_DoesHaveResources,Starfield.exe, 90 8B C7 4C 8D 9C 24 C0 00 00 00)
registersymbol(aob_DoesHaveResources)
aobscanmodule(aob_GetResourcesTotal,Starfield.exe,0F 84 EA 01 00 00 48 8B 01 48)
registersymbol(aob_GetResourcesTotal)
aob_DoesHaveResources+01:
inc eax
aob_GetResourcesTotal:
db 90 E9
[DISABLE]
aob_DoesHaveResources+01:
db 8B C7 4C 8D 9C 24 C0 00 00 00
aob_GetResourcesTotal:
db 0F 84
unregistersymbol(aob_DoesHaveResources)
unregistersymbol(aob_GetResourcesTotal)
{
// ORIGINAL CODE - INJECTION POINT: Starfield.exe+2B8A381
Starfield.exe+2B8A33B: 48 8B 45 D7 - mov rax,[rbp-29]
Starfield.exe+2B8A33F: 48 8B 55 CF - mov rdx,[rbp-31]
Starfield.exe+2B8A343: 48 8B 4D EF - mov rcx,[rbp-11]
Starfield.exe+2B8A347: E9 97 FE FF FF - jmp Starfield.exe+2B8A1E3
Starfield.exe+2B8A34C: 48 8D 4D 07 - lea rcx,[rbp+07]
Starfield.exe+2B8A350: E8 1F 37 CA FD - call Starfield.exe+82DA74
Starfield.exe+2B8A355: 83 FF FF - cmp edi,-01
Starfield.exe+2B8A358: 73 05 - jae Starfield.exe+2B8A35F
Starfield.exe+2B8A35A: 40 84 F6 - test sil,sil
Starfield.exe+2B8A35D: 75 02 - jne Starfield.exe+2B8A361
Starfield.exe+2B8A35F: 33 FF - xor edi,edi
Starfield.exe+2B8A361: 48 83 7D AF 00 - cmp qword ptr [rbp-51],00
Starfield.exe+2B8A366: 74 19 - je Starfield.exe+2B8A381
Starfield.exe+2B8A368: 44 8B 45 9F - mov r8d,[rbp-61]
Starfield.exe+2B8A36C: 33 D2 - xor edx,edx
Starfield.exe+2B8A36E: 48 8D 4D 9F - lea rcx,[rbp-61]
Starfield.exe+2B8A372: E8 41 B4 73 FE - call Starfield.exe+12C57B8
Starfield.exe+2B8A377: 48 8D 4D 9F - lea rcx,[rbp-61]
Starfield.exe+2B8A37B: E8 A8 DF 0F 00 - call Starfield.exe+2C88328
Starfield.exe+2B8A380: 90 - nop
// ---------- INJECTING HERE ----------
Starfield.exe+2B8A381: 8B C7 - mov eax,edi
// ---------- DONE INJECTING ----------
Starfield.exe+2B8A383: 4C 8D 9C 24 C0 00 00 00 - lea r11,[rsp+000000C0]
Starfield.exe+2B8A38B: 49 8B 5B 30 - mov rbx,[r11+30]
Starfield.exe+2B8A38F: 49 8B 73 38 - mov rsi,[r11+38]
Starfield.exe+2B8A393: 49 8B 7B 40 - mov rdi,[r11+40]
Starfield.exe+2B8A397: 49 8B E3 - mov rsp,r11
Starfield.exe+2B8A39A: 41 5F - pop r15
Starfield.exe+2B8A39C: 41 5E - pop r14
Starfield.exe+2B8A39E: 41 5D - pop r13
Starfield.exe+2B8A3A0: 41 5C - pop r12
Starfield.exe+2B8A3A2: 5D - pop rbp
Starfield.exe+2B8A3A3: C3 - ret
Starfield.exe+2B8A3A4: 48 89 5C 24 08 - mov [rsp+08],rbx
Starfield.exe+2B8A3A9: 57 - push rdi
Starfield.exe+2B8A3AA: 48 83 EC 30 - sub rsp,30
Starfield.exe+2B8A3AE: 48 8B D9 - mov rbx,rcx
Starfield.exe+2B8A3B1: 48 8D 3D 90 66 9D 02 - lea rdi,[Starfield.exe+5560A48]
Starfield.exe+2B8A3B8: 45 33 D2 - xor r10d,r10d
Starfield.exe+2B8A3BB: 48 89 7C 24 20 - mov [rsp+20],rdi
Starfield.exe+2B8A3C0: 48 8D 0D 71 66 9D 02 - lea rcx,[Starfield.exe+5560A38]
Starfield.exe+2B8A3C7: 45 8B DA - mov r11d,r10d
}
{
// ORIGINAL CODE - INJECTION POINT: Starfield.exe+1D0AC59
Starfield.exe+1D0AC27: CC - int 3
Starfield.exe+1D0AC28: CC - int 3
Starfield.exe+1D0AC29: CC - int 3
Starfield.exe+1D0AC2A: CC - int 3
Starfield.exe+1D0AC2B: CC - int 3
Starfield.exe+1D0AC2C: CC - int 3
Starfield.exe+1D0AC2D: CC - int 3
Starfield.exe+1D0AC2E: CC - int 3
Starfield.exe+1D0AC2F: CC - int 3
Starfield.exe+1D0AC30: 48 89 5C 24 08 - mov [rsp+08],rbx
Starfield.exe+1D0AC35: 48 89 6C 24 18 - mov [rsp+18],rbp
Starfield.exe+1D0AC3A: 48 89 54 24 10 - mov [rsp+10],rdx
Starfield.exe+1D0AC3F: 56 - push rsi
Starfield.exe+1D0AC40: 57 - push rdi
Starfield.exe+1D0AC41: 41 56 - push r14
Starfield.exe+1D0AC43: 48 83 EC 60 - sub rsp,60
Starfield.exe+1D0AC47: C5 F8 29 74 24 50 - vmovaps [rsp+50],xmm6
Starfield.exe+1D0AC4D: C5 F8 29 7C 24 40 - vmovaps [rsp+40],xmm7
Starfield.exe+1D0AC53: 4C 8B F1 - mov r14,rcx
Starfield.exe+1D0AC56: 48 85 D2 - test rdx,rdx
// ---------- INJECTING HERE ----------
Starfield.exe+1D0AC59: 0F 84 EA 01 00 00 - je Starfield.exe+1D0AE49
// ---------- DONE INJECTING ----------
Starfield.exe+1D0AC5F: 48 8B 01 - mov rax,[rcx]
Starfield.exe+1D0AC62: 48 8B 18 - mov rbx,[rax]
Starfield.exe+1D0AC65: 41 8B C0 - mov eax,r8d
Starfield.exe+1D0AC68: C5 F8 57 C0 - vxorps xmm0,xmm0,xmm0
Starfield.exe+1D0AC6C: C4 E1 FA 2A C0 - vcvtsi2ss xmm0,rax,rax
Starfield.exe+1D0AC71: C5 FA 11 84 24 98 00 00 00 - vmovss [rsp+00000098],xmm0
Starfield.exe+1D0AC7A: 33 ED - xor ebp,ebp
Starfield.exe+1D0AC7C: 8D 7D 01 - lea edi,[rbp+01]
Starfield.exe+1D0AC7F: 48 85 DB - test rbx,rbx
Starfield.exe+1D0AC82: 0F 84 44 01 00 00 - je Starfield.exe+1D0ADCC
Starfield.exe+1D0AC88: 48 8B 83 C0 00 00 00 - mov rax,[rbx+000000C0]
Starfield.exe+1D0AC8F: 48 85 C0 - test rax,rax
Starfield.exe+1D0AC92: 74 0A - je Starfield.exe+1D0AC9E
Starfield.exe+1D0AC94: 8B 48 30 - mov ecx,[rax+30]
Starfield.exe+1D0AC97: E8 D8 87 00 00 - call Starfield.exe+1D13474
Starfield.exe+1D0AC9C: EB 03 - jmp Starfield.exe+1D0ACA1
Starfield.exe+1D0AC9E: 48 8B C5 - mov rax,rbp
Starfield.exe+1D0ACA1: C5 FA 10 35 17 5A 85 03 - vmovss xmm6,[Starfield.exe+55606C0]
Starfield.exe+1D0ACA9: 48 8B 0D C8 5A 85 03 - mov rcx,[Starfield.exe+5560778]
Starfield.exe+1D0ACB0: C5 FA 10 3D 2C BC 21 02 - vmovss xmm7,[Starfield.exe+3F268E4]
}