It would seem that this mod may not be compatible with Dynamic Armor Variants. Having repeated CTD with that mod installed. When DAV is disabled, the game loads fine.
Ah, ya we hook the same area for armors (https://github.com/Exit-9B/DynamicArmorVariants/blob/9c805c3b935254a684862f10d5596fc1640409e1/src/main/Patches.cpp#L60), with Parapet's hook ASM overwriting my hook (or my hook overwriting their ASM logic). I'll see if either one of us could patch to work with the other.
For now, they are fully incompatible for that reason
Update: After further investigation, the incompatibility needs to be fixed on both sides, unfortunately it cannot be fixed by RDF alone. An update for RDF has been released to fix it on this side, and a PR is open currently to fix DAV's side
Update: Dynamic Armor Variants is supported as of version 1.5.2
I must admit, I don't know whether to be happy or cry about this. A month ago, I installed Skyrim with Devious Devices NG and DAV because some interesting mods needed it. Sad to see that RDF conflicted with them, meaning I couldn't use Skyfurry at all with them. Kind of a dealbreaker. So I deleted all 200 Gigs of Skyrim mods and went about my day. Today, I decided to try and compile the pull request on github myself, and to my surprise, found out that you patched both mods just a few days ago!!! Thank you so much!! I just wish I knew before I deleted all my hard work :(
Requiem would still be based on the original race of the NPC, as the stats / race of the NPC aren't changed in game, only the appearance. Requiem would have to be patched to be made aware of Race Distribution Framework changes.
There are papyrus functions available to report the current race, it would be a matter of patching the papyrus scripts in Requiem to use these functions if RDF is installed and running.
I had an issue and I think it stemmed from this mod, managed to "solve" it but I thought I'd still mention it (sorry if it had to do with another mod). I was wearing a piece of armor (from another mod), that normally uses both the armor and the boots slots, but after enabling this mod, I think it only started to use the armor slot (foot would reappear and clip through shoes, and, I could wear other boots even though the mod normally wouldn't let me). (by solve, I mean that I just equipped boots that didn't appear on my character)
The author of DAV hasn't merged your PR for quite some time, and I play on 1.5.97 so I decided to compile a version that merges your PR and the 1.5 DAV patch Fuzzlesz did. The game loads without crashing, but if RDF is loaded it causes models to not update. For example, if I set a helmet to hidden it will stay on and hair will start clipping through it. Maybe it's the 1.5 DAV patch causing a new incompatibility? The New Gentleman 2.3.0 caused the same issue with DAV from what I've read.
Versions involved: RDF 1.5.1, DAV 1.0.5 w/ the PR merged with 1.0.0 of the 1.5 DAV patch (Overwriting the DLL and PDB files of DAV)
EDIT: Looks like RDF now has compatibility built-in, thanks for getting it working!
How do I use this? I downloaded everything it says i need to, but it doesn't change any npcs in my game. Is there some menu I need to use first or something? I couldn't find anything in the game settings or the mod manager.
135 comments
Ah, ya we hook the same area for armors (https://github.com/Exit-9B/DynamicArmorVariants/blob/9c805c3b935254a684862f10d5596fc1640409e1/src/main/Patches.cpp#L60), with Parapet's hook ASM overwriting my hook (or my hook overwriting their ASM logic). I'll see if either one of us could patch to work with the other.
Update: Dynamic Armor Variants is supported as of version 1.5.2For now, they are fully incompatible for that reason
Update: After further investigation, the incompatibility needs to be fixed on both sides, unfortunately it cannot be fixed by RDF alone. An update for RDF has been released to fix it on this side, and a PR is open currently to fix DAV's side
There are papyrus functions available to report the current race, it would be a matter of patching the papyrus scripts in Requiem to use these functions if RDF is installed and running.
I've never gotten the other "transfer appearance" methods to work before.
Skyrim SSE v1.6.1179
CrashLoggerSSE v1-15-0-0 Oct 12 2024 11:33:37
Unhandled exception "EXCEPTION_ACCESS_VIOLATION" at 0x7FFF9285B26C RaceSwapper.dll+005B26Cmov eax, [rcx+0x218] | C:\Modding\Skyrim\SKSEDevelopment\SKSERepos\RaceSwapper\src\Utils.cpp:185 ?GetValidRaceForArmorRecursive@utils@@YAPEAVTESRace@RE@@PEAVTESObjectARMO@3@PEAV23@@Z C:\Modding\Skyrim\SKSEDevelopment\SKSERepos\RaceSwapper\src\Utils.cpp:202 ?GetValidRaceForArmorRecursive@utils@@YAPEAVTESRace@RE@@PEAVTESObjectARMO@3@PEAV23@@Z)
Exception Flags: 0x00000000
Number of Parameters: 2
Access Violation: Tried to read memory at 0xFFFFFFFFFFFFFFFF
...
PROBABLE CALL STACK:
[ 0] 0x7FFF9285B26C RaceSwapper.dll+005B26Cmov eax, [rcx+0x218] | C:\Modding\Skyrim\SKSEDevelopment\SKSERepos\RaceSwapper\src\Utils.cpp:185 ?GetValidRaceForArmorRecursive@utils@@YAPEAVTESRace@RE@@PEAVTESObjectARMO@3@PEAV23@@Z C:\Modding\Skyrim\SKSEDevelopment\SKSERepos\RaceSwapper\src\Utils.cpp:202 ?GetValidRaceForArmorRecursive@utils@@YAPEAVTESRace@RE@@PEAVTESObjectARMO@3@PEAV23@@Z
[ 1] 0x7FFF9283FD3B RaceSwapper.dll+003FD3Bmov r13, rax | C:\Modding\Skyrim\SKSEDevelopment\SKSERepos\RaceSwapper\src\Hooks.cpp:228 AttachTESObjectARMOHook::AttachToBiped (mangled: ?AttachToBiped@AttachTESObjectARMOHook@@SAXPEAVTESObjectARMO@RE@@PEAVTESRace@3@PEAPEAVBipedAnim@3@_N@Z)
[ 2] 0x7FF630B1D407 SkyrimSE.exe+03BD407 -> 24736+0x307mov sil, 0x01
[ 3] 0x7FF630B26C08 SkyrimSE.exe+03C6C08 -> 24941+0x18mov eax, 0x01
[ 4] 0x7FF6309919B2 SkyrimSE.exe+02319B2 -> 16096+0xE2mov ebp, eax
[ 5] 0x7FF630B1BD54 SkyrimSE.exe+03BBD54 -> 24725+0x1F4nop
[ 6] 0x7FF6308F37E3 SkyrimSE.exe+01937E3 -> 13111+0x1F3lea r8, [r13+0x2E8]
[ 7] 0x7FF6308F2FA5 SkyrimSE.exe+0192FA5 -> 13104+0xE5nop
[ 8] 0x7FF631564ADF SkyrimSE.exe+0E04ADF -> 75763+0xFcmp dword ptr [rbx+0x50], 0x00
[ 9] 0x7FF6315640CE SkyrimSE.exe+0E040CE -> 75738+0x2Emov rcx, rbx
[10] 0x7FF6308F080E SkyrimSE.exe+019080E -> 13057+0x33Emov rcx, [rdi+0x60]
[11] 0x7FF630A480DD SkyrimSE.exe+02E80DD -> 19742+0x16Dlea rbx, [rdi+0x70]
[12] 0x7FF630A1BEBF SkyrimSE.exe+02BBEBF -> 19061+0x21Finc ebx
[13] 0x7FF630A1C0B1 SkyrimSE.exe+02BC0B1 -> 19063+0x91cmp [0x00007FF632739998], r12b
[14] 0x7FF6308FD96F SkyrimSE.exe+019D96F -> 13316+0x6AFmov rdx, r15
[15] 0x7FF630EAE453 SkyrimSE.exe+074E453 -> 40744+0x153jmp 0x00007FF630EAE473
[16] 0x7FF630E92DF9 SkyrimSE.exe+0732DF9 -> 40438+0x6D9mov rcx, [rsi+0x650]
[17] 0x7FF630DA8173 SkyrimSE.exe+0648173 -> 36564+0x73call 0x00007FF630DABFA0
[18] 0x7FFF938BF4C9 hdtSMP64.dll+00BF4C9cmp byte ptr [rbx+0x10], 0x00 | C:\Games\Faster HDT-SMP\skse64_2_02_06_gog\src\skse64\hdtSMP64\Hooks.cpp:314 hdt::UnkEngine::onFrame (mangled: ?onFrame@UnkEngine@hdt@@QEAAXXZ)
[19] 0x7FF630DA0D35 SkyrimSE.exe+0640D35 -> 36544+0x165test bl, bl
[20] 0x7FF631C9C7EE SkyrimSE.exe+153C7EE -> 109636+0x106mov ebx, eax
[21] 0x7FF8A2D2259D KERNEL32.DLL+001259D
[22] 0x7FF8A356AF38 ntdll.dll+005AF38
https://controlc.com/3c5472d1
Versions involved:
RDF 1.5.1, DAV 1.0.5 w/ the PR merged with 1.0.0 of the 1.5 DAV patch (Overwriting the DLL and PDB files of DAV)
EDIT: Looks like RDF now has compatibility built-in, thanks for getting it working!