AFter playing for some time now I can confirm that most factions have assigned ID seem random and creates more confusion and I#ll be stopping using this mod. There are scientists who wear same uniform as Spark guys and all those scientists are marked as Spark, even though they can be sorted by not having a spark patch, another issue game devs made is by creating faction based armors and then allowing different factions to use it, or by the name, you can tell which faction person comes from, like Valera Sneaky briki is obviously a criminal and he has same voice, but his (modded label is Freedom), while wearing Stalker patch or something like that.
In Pripjaty, Bison, traded guy has Merc faction and Digtyarov has no faction. Actually, many are flagged as Mercs in pripjaty, while they are in that special; Digtyarov faction, Patch says Corps.
so on gamepass i got this to work constantly by adding it to engine.ini the way simple mod loader spells it out in his readme, if anybody is struggling
This thing is not working with UE4SS (+UE TOOLS). Just not working with my expirience. Anybody knows, how to solve this? For a smartest guys: swapping to Simple Mod Loader is not a solution. :)
This mod is very helpful, any chance you can add the faction name under the icon as well? I find myself having to keep looking up the names cause I'm retarded :/
Finally figured out how to get this to load with UE4SS BPModLoader.
Basically, this mod doesn't follow the naming rules that BPModLoader uses. We should be able to use a config.lua file, that's how BPModLoader is setup to deal with this. But without an example I don't know the correct syntax. Thus, we hardcode it by adding a special case to cover the mod.
In BPModLoaderMod\Scripts\main.lua go to line 153 and find: if FileExtension == ".pak" and not Mods[ModNameNoExtension] then
Replace it with this: if ModNameNoExtension == "Pamplemousse_StalkerId" and not Mods[ModNameNoExtension] then Mods[ModNameNoExtension] = {} Mods[ModNameNoExtension].AssetName = "BP_StalkerIdentification_C" Mods[ModNameNoExtension].AssetNameAsFName = UEHelpers.FindOrAddFName("BP_StalkerIdentification_C") Mods[ModNameNoExtension].AssetPath = "/Game/Mods/StalkerId/BP_StalkerIdentification" elseif FileExtension == ".pak" and not Mods[ModNameNoExtension] then
This is implementing custom AssetName and AssetPath for StalkerId based on the filename (Pamplemousse_StalkerId). The elseif line keeps the standard BPModLoader behavior for all other filenames.
Make sure to put the mod files in Paks/LogicMods not the usual Paks/~mods. BPModLoader only loads from LogicMods.
Tried this, but i think I'm missing some steps For gamepass version, the 3 archives from this mod should be on "S.T.A.L.K.E.R. 2\Content\Stalker2\Content\Paks\LogicMods" ?
In BPModLoaderMod\Scripts\main.lua lines 148 to 168 look like this: -- Load a default configuration for mods that didn't have their own configuration. for _, ModFile in pairs(Files) do local ModName = ModFile.__name local ModNameNoExtension = ModName:match("(.+)%..+$") local FileExtension = ModName:match("^.+(%..+)$"); if ModNameNoExtension == "Pamplemousse_StalkerId" and not Mods[ModNameNoExtension] then Mods[ModNameNoExtension] = {} Mods[ModNameNoExtension].AssetName = "BP_StalkerIdentification_C" Mods[ModNameNoExtension].AssetNameAsFName = UEHelpers.FindOrAddFName("BP_StalkerIdentification_C") Mods[ModNameNoExtension].AssetPath = "/Game/Mods/StalkerId/BP_StalkerIdentification" elseif FileExtension == ".pak" and not Mods[ModNameNoExtension] then --Log("--------------\n") --Log(string.format("ModFile: '%s'\n", ModFile.__name)) --Log(string.format("ModNameNoExtension: '%s'\n", ModNameNoExtension)) --Log(string.format("FileExtension: %s\n", FileExtension)) Mods[ModNameNoExtension] = {} Mods[ModNameNoExtension].AssetName = DefaultModConfig.AssetName Mods[ModNameNoExtension].AssetNameAsFName = DefaultModConfig.AssetNameAsFName Mods[ModNameNoExtension].AssetPath = string.format("/Game/Mods/%s/ModActor", ModNameNoExtension) end end
is this also correct?
I need to use any command in-game? if so can tell me which
edit: found what i did wrong at line 153 i had too much space
I need to use any command in-game? if so can tell me which
edit: found what i did wrong at line 153 i had too much space
I take it you got it working?
All of that looks correct. You don't need to enter anything in-game. That's more or less what this is doing. You will see entries in UE4SS.log, which should tell you if it successfully loaded, or give you an error if it didn't.
192 comments
Just not working with my expirience.
Anybody knows, how to solve this?
For a smartest guys: swapping to Simple Mod Loader is not a solution. :)
Appreciate the work.
Basically, this mod doesn't follow the naming rules that BPModLoader uses.
We should be able to use a config.lua file, that's how BPModLoader is setup to deal with this.
But without an example I don't know the correct syntax.
Thus, we hardcode it by adding a special case to cover the mod.
In BPModLoaderMod\Scripts\main.lua go to line 153 and find:
if FileExtension == ".pak" and not Mods[ModNameNoExtension] then
Replace it with this:
if ModNameNoExtension == "Pamplemousse_StalkerId" and not Mods[ModNameNoExtension] then
Mods[ModNameNoExtension] = {}
Mods[ModNameNoExtension].AssetName = "BP_StalkerIdentification_C"
Mods[ModNameNoExtension].AssetNameAsFName = UEHelpers.FindOrAddFName("BP_StalkerIdentification_C")
Mods[ModNameNoExtension].AssetPath = "/Game/Mods/StalkerId/BP_StalkerIdentification"
elseif FileExtension == ".pak" and not Mods[ModNameNoExtension] then
This is implementing custom AssetName and AssetPath for StalkerId based on the filename (Pamplemousse_StalkerId).
The elseif line keeps the standard BPModLoader behavior for all other filenames.
Make sure to put the mod files in Paks/LogicMods not the usual Paks/~mods. BPModLoader only loads from LogicMods.
For gamepass version, the 3 archives from this mod should be on "S.T.A.L.K.E.R. 2\Content\Stalker2\Content\Paks\LogicMods" ?
In BPModLoaderMod\Scripts\main.lua lines 148 to 168 look like this:
-- Load a default configuration for mods that didn't have their own configuration.
for _, ModFile in pairs(Files) do
local ModName = ModFile.__name
local ModNameNoExtension = ModName:match("(.+)%..+$")
local FileExtension = ModName:match("^.+(%..+)$");
if ModNameNoExtension == "Pamplemousse_StalkerId" and not Mods[ModNameNoExtension] then
Mods[ModNameNoExtension] = {}
Mods[ModNameNoExtension].AssetName = "BP_StalkerIdentification_C"
Mods[ModNameNoExtension].AssetNameAsFName = UEHelpers.FindOrAddFName("BP_StalkerIdentification_C")
Mods[ModNameNoExtension].AssetPath = "/Game/Mods/StalkerId/BP_StalkerIdentification"
elseif FileExtension == ".pak" and not Mods[ModNameNoExtension] then
--Log("--------------\n")
--Log(string.format("ModFile: '%s'\n", ModFile.__name))
--Log(string.format("ModNameNoExtension: '%s'\n", ModNameNoExtension))
--Log(string.format("FileExtension: %s\n", FileExtension))
Mods[ModNameNoExtension] = {}
Mods[ModNameNoExtension].AssetName = DefaultModConfig.AssetName
Mods[ModNameNoExtension].AssetNameAsFName = DefaultModConfig.AssetNameAsFName
Mods[ModNameNoExtension].AssetPath = string.format("/Game/Mods/%s/ModActor", ModNameNoExtension)
end
end
is this also correct?
I need to use any command in-game? if so can tell me which
edit: found what i did wrong at line 153 i had too much space
I take it you got it working?
All of that looks correct. You don't need to enter anything in-game. That's more or less what this is doing.
You will see entries in UE4SS.log, which should tell you if it successfully loaded, or give you an error if it didn't.
Got it working, but sometimes when i quick load, my game crashes
anyone know how i troubleshoot this?
thank you very much