Aygul12345 wrote: ↑Fri Mar 05, 2021 8:27 pm
How to find the values and create ignore crafting requirements?
1: Find the quantity address of one of the required items. (Either yourself or just use some item highlighter script.)
2: Find what access it.
3: Craft something using that item.
4:
Now the hard part. Analyze the assy that referenced that address. Some will be just for display, some won't. You'll have to trace callstacks and such and determine which function checks the crafting requirements. The call count helps too. If it's 1 call per frame, it's most likely for display.
You can decompile the assy to C code with Ghidra or IDA Pro. This will help in determining what a function does, but it's still not easy. It'll make it easier than looking at raw assy most of the time.
And from there, figure out where/how to make it think you have the items. Maybe you just have to change a condition jump to always jump. Maybe you need to make a function always return true. Depends on the game and the complexity of the code.
But this is just a basic overview of what to look for. If you need more, I know you can find tut vids on Ghidra/IDA Pro.
It's probably easier to try this on another game with a simpler crafting system first. Nioh 2 lets the user chose exactly which requirements to include when crafting so it's more complicated. Like, is the check done before, after, or both, whilst using the slider to select ingredient amounts?