Position of Resource Ores/Nodes
I wanna create a C++ application (dll) that can fully manipulate resource nodes (changing positions, types, purity, randomize them, etc.) in the game by hooking functions without Unreal Engine (I'm so bad with it)., but I can get how to do that.
I'm not familiar with the Unreal objects, but how to get this data by hooking game? Even in this repository I can't find necessary information: https://github.com/Spectralcss/Satisfactory-1.0-Headers-Updated/tree/main/Source/FactoryGame/Public
I was hoping it would be something like in Unity, every object has an own transform, but seems it's not.
GitHub
Satisfactory-1.0-Headers-Updated/Source/FactoryGame/Public at main ...
Contribute to Spectralcss/Satisfactory-1.0-Headers-Updated development by creating an account on GitHub.
Solution:Jump to solution
The idea is to inject a component into an actor, the code in the component can easily retrieve the actor using "Get Owner"
5 Replies
Cant tell u exactly what to hook etc. but i think u gotta take a look at BP_ResourceNode
https://docs.ficsit.app/satisfactory-modding/latest/Development/Satisfactory/CustomLevels.html#_adding_objects_to_a_custom_level
Btw a mod to randomize location/ore/purity already exists(Possibly outdated/not working ofc)
https://ficsit.app/mod/8Pv7v66NMQEHWZ
Random Resource Node Location - SMR
Randomizes the Type and the Purity of the SOLID Resource Nodes around the map.
Modding this game without Unreal Engine? Pretty much impossible. The modding documentation should cover enough of the basics to get started.
Yes, every Actor has a transform, and changing this on a resource node should allow moving it. But you may also want to move the visuals (e.g. meshes for nodes / wells, decals for oil).
About hooking: the documentation explains how to use hooks, but be aware that C++ hooks are a lot less flexible compared to, say, Harmony patching (managed C# compiles to IL, which is significantly easier to modify at runtime). There's other ways to move a resource node that don't require C++ hooks, such as SCS hooks (we have docs about these).
such as SCS hooks
what is it?Solution
The idea is to inject a component into an actor, the code in the component can easily retrieve the actor using "Get Owner"