DocClox Posted December 19, 2024 Posted December 19, 2024 I'm getting a crash on orgasm. Not every time, but maybe every other time or one in three. The main addition lately has been to update community shaders & related mods, and the trainwreck log supports that: https://pastebin.com/yssPRZrW That said ... I tried disabling the CS mods and the crash just moved to SexLabUtil. All skse plugins, of course. I have Hentai Pregnancy loaded, which triggers on orgasm, and which also applies SlaveTats, so there's no shortage of candidates. Loar Oderd: https://pastebin.com/88jM0fmb
traison Posted December 19, 2024 Posted December 19, 2024 (edited) This crash was indirectly caused by CommunityShaders.dll. Perhaps some feature or plugin called "TruePBR". What kind of outcome did you have in mind here? Are you looking for a workaround, or a fix? These kind of crashes are why I haven't personally swapped to CS. I like what they're doing, but stability seems to be questionable. 11 minutes ago, DocClox said: I tried disabling the CS mods and the crash just moved to SexLabUtil. Unless the faulting offset remained the same, the crash didn't move. More likely scenario here is that you just ran into another crash. Also, side note: Switch to a different crash logger. Working on trainwreck logs is unecessarily difficult - especially remotely. Edited December 19, 2024 by traison 1
DocClox Posted December 19, 2024 Author Posted December 19, 2024 6 hours ago, traison said: Unless the faulting offset remained the same, the crash didn't move. More likely scenario here is that you just ran into another crash. I'm thinking maybe some corruption in the stack that hung around even after the dll was unloaded. 6 hours ago, traison said: Perhaps some feature or plugin called "TruePBR". I think it's a feature, or maybe a unreleased plugin and we're just seeing the hook. I can check if there's an option I can turn off. 6 hours ago, traison said: What kind of outcome did you have in mind here? Are you looking for a workaround, or a fix? Anything that lets me keep playing. I'm on Linux, so CS is a lot more appealing than ENB but worst case, I can do without. Maybe fall back to ENB for a bit. 6 hours ago, traison said: Also, side note: Switch to a different crash logger. Working on trainwreck logs is unecessarily difficult - especially remotely. I'll do that. Thanks.
DocClox Posted December 19, 2024 Author Posted December 19, 2024 Crashlogger report: https://pastebin.com/W5xTEvmu I might try posting that on the CS discord and see if anyone bites.
DocClox Posted December 19, 2024 Author Posted December 19, 2024 (edited) Swapped out CS + dependent mods and set up ENB. Still crashes at the same point. https://pastebin.com/FJZUKaxu Faster SMP I could believe, but it's been working just fine up until now. I could start a new game and see if it happens with a fresh save, I am going to miss the CS subsurface scattering. Edited December 19, 2024 by DocClox
traison Posted December 20, 2024 Posted December 20, 2024 (edited) 11 hours ago, DocClox said: Faster SMP I could believe, but it's been working just fine up until now. Very unlikely, considering where it is in the callstack and the fact that SMP has a tendency to show up in all crash logs because of its hook positions. 11 hours ago, DocClox said: Swapped out CS + dependent mods and set up ENB. The latest log I'd say proves that the problem is not in either CS or ENB. However the PDB for CS might be giving a hint as to where the problem might be: TruePBR.cpp:1011. Considering it crashed because it tried to dereference RDX, the call to "func" at line 1009 most likely nulled the shader reference. Func is a reference to a vanilla game function, presumably called "SetupGeometry". Just like the vanilla game, CS didn't check for shader being null before trying to dereference it. Same in English: This is a problem with shaders in the vanilla game. Looking further down in the stack of your latest log suggests RaceMenu overlay slot 0 ("Body [Ovl0]") of form id 0x00039cf8 "Bandit" in form id 0x2005eab "Redwater Den" is your problem. The name "Soapy" might be relevant, but I'm not sure in what context (overlay name?). Also check "slavers_spellbook.esp" for things that may be adding or altering RM overlays. Edit: RDX was most likely reused after the code in TruePBR.cpp. Previous analysis is wrong. Edited December 20, 2024 by traison 1
DocClox Posted December 20, 2024 Author Posted December 20, 2024 6 hours ago, traison said: Looking further down in the stack of your latest log suggests RaceMenu overlay slot 0 ("Body [Ovl0]") of form id 0x00039cf8 "Bandit" in form id 0x2005eab "Redwater Den" is your problem. The name "Soapy" might be relevant, but I'm not sure in what context (overlay name?). Also check "slavers_spellbook.esp" for things that may be adding or altering RM overlays. "Soapy" is the name of an enslaved bandit. Slaver's Spellbook I'm reasonably confident isn't doing anything at this point. It's got a polling loop, but that doesn't do anything unless you use the brand spell to explicitly add an actor to the update list, and I've not even found the spellbook in this run. So the overlay is probably between SlaveTats applying a pregnancy tattoo via Hentai Pregnancy, or else Diary Of Mine removing the blush textures it uses. It could also be Sexlab applying cum overlays. The question is, why would any of this wait until I hit level 30 before manifesting? It's nothing I haven't been doing since the character started. It isn't as if I've been power-leveling either: I've been taking my time and trying to do things organically. I'm not sure about the PDB part. I don't have any mods using that in their name. Although I have been playing with Pfuscher's Skyrim 20xx textures, which may be stressing the material handling code somewhat. There's a long overdue update I've been meaning to apply to those. I might do that and see if that helps.
DocClox Posted December 20, 2024 Author Posted December 20, 2024 OK. Updated 202x textures and restored community shaders. Something in my messing around with ENB seems to have clobbered my reshade setup, but I'll get to that. Long story short: same thing happens: https://pastebin.com/SygGE69A Possibly relevant - I've noticed it seems to happen on the second occasion. I get the first one free, and then the second time it goes boom. If I save quit and reload I get another free orgasm. I wonder if this hasn't been a problem for a while, but one that only kicks in when the engine gets stressed by having a lot going on.
traison Posted December 20, 2024 Posted December 20, 2024 (edited) 1 hour ago, DocClox said: The question is, why would any of this wait until I hit level 30 before manifesting? Typically when that happens its simply because some new leveled NPC starts spawning; like a Sabre Cat spawning instead of a Wolf around level 7-10. In your case its likely something else obviously, but my point is player level can affect what the code is doing. I edited my previous post, as the analysis in it is wrong. Not the first time I've made this mistake - posting here while doing something else at the same time. Still though, considering the other options I can think of right now. Simply going through mods that react to the OrgasmStart and OrgasmEnd events seems like the simplest thing to do. Use a tool such as Notepad++ or my SkyrimStringSearch CLI utility to search through all pex files in all mods for scripts containing those 2 event names. That's your list of suspects. Edit: grep is probably the better option for you. Edited December 20, 2024 by traison 1
DocClox Posted December 20, 2024 Author Posted December 20, 2024 New game didn't help. Replicated the setup as best I could, only outdoors at Riverwood. Crashed on the first one this time. Might not have helped that it was pouring with rain. If it is shader related, the wet effects sharders are probably stressing things more than usual. https://pastebin.com/hYJnSDK5
DocClox Posted December 20, 2024 Author Posted December 20, 2024 1 hour ago, traison said: Still though, considering the other options I can think of right now. Simply going through mods that react to the OrgasmStart and OrgasmEnd events seems like the simplest thing to do. Use a tool such as Notepad++ or my SkyrimStringSearch CLI utility to search through all pex files in all mods for scripts containing those 2 event names. That's your list of suspects. Got to be worth a shot. Let's see if I can remember how to spawn a shell inside MO2's VFS.
DocClox Posted December 20, 2024 Author Posted December 20, 2024 (edited) Couldn't start a bash shell from inside MO2. Googled it extensively and every single suggestion doesn't work. Must be a Friday. So I did a find & grep from MO2 mods folder. Filtering out what I don't have loaded, this is what I find. Quote ./Diary Of Mine 5.5.0_SE_fomod/Scripts/DOM_Mind.pex ./SexLabArousedSSELoose/scripts/slamainscr.pex ./SexLabFrameworkAE_v166b/scripts/sslThreadController.pex ./SexLabHentaiPregnancy SE 2022-09-06/scripts/HentaiPregnancy.pex ./SexLab-Separate-Orgasm 2023-01-16 xxx/Scripts/slamainscr.pex ./SexLab-Separate-Orgasm 2023-01-16 xxx/Scripts/sslThreadController.pex ./slavers_spellbook_sse_/scripts/docbook_familiar_spirit_scr.pex ./slavers_spellbook_sse_/scripts/docbook_reiklings.pex All of it stuff that's been there forever. Which isn't to say it hasn't been causing problems for a long time. I've been generally resolved to the idea that my game will usually become unstable, but I thought that was because I had too many PAHE/DoM slaves clogging up the script engine. But maybe it's been something else. So. since I can replicate the issue, early game, I suppose the thing to do is remove Hentai Pregnancy, SLSO and the Spellbook and see if the problem goes away. Either that or say "to hell with it!" and play something else for a while. I'm getting that "restarted the game too many times" feeling. Oh well, it it was easy, it wouldn't be any fun... [edit] OK. Without those three, the problem doesn't seem to manifest, at least not so quickly. I suppose add HP back in next. Edited December 20, 2024 by DocClox
DocClox Posted December 20, 2024 Author Posted December 20, 2024 Add Hentai Pregnancy and "Boom!" https://pastebin.com/aKQJhiJm Which is a pain, since that's been working for years. HP does a fair amount on Orgasm, but the main one in shader terms is probably using SlaveTats to apply a wormb symbol to show pregnancy state. Which again, has been working just fine, but I did recently switch to SlaveTats NG, so reverting that has to be worth a shot.
DocClox Posted December 20, 2024 Author Posted December 20, 2024 And swap the other mods back in again and it all still works. Looks like SlaveTatsNG is the culprit. I suppose I should probably report that. Many thanks for the help!
traison Posted December 21, 2024 Posted December 21, 2024 Oh, your version of SlaveTats has a dll, yeah that would explain it. Its probably using it to speed up processing of tattoo changes, but something its doing is breaking the game engine. A race condition would explain why it used to work and no longer does. Perhaps its swapping out the tattoo while the game engine is in the middle of rendering or something along these lines. Performance at the cost of stability I guess. Seems far simpler to me to increase the Papyrus ops budget.
nopse0 Posted December 21, 2024 Posted December 21, 2024 6 hours ago, traison said: Oh, your version of SlaveTats has a dll, yeah that would explain it. Its probably using it to speed up processing of tattoo changes, but something its doing is breaking the game engine. A race condition would explain why it used to work and no longer does. Perhaps its swapping out the tattoo while the game engine is in the middle of rendering or something along these lines. Performance at the cost of stability I guess. Seems far simpler to me to increase the Papyrus ops budget. Name: "Feet [SOvl0]" this is a spell overlay. "swapping out a tattoo while the game engine is in the middle of rendering" is not possible, I think, because the swapping out is done in the Skyrim main thread (=> DLL). But I could imagine, that SlaveTatsNG/SlaveTats doesn't detect spell overlays, and tries to apply tattoos to these slots. I know almost nothing about spell overlays, except that there is a setting in skee.ini, "iSpellOverlays", and there are 4 functions with "Spell" in NiOverride.psc: int Function GetNumSpellBodyOverlays() native global int Function GetNumSpellHandOverlays() native global int Function GetNumSpellFeetOverlays() native global int Function GetNumSpellFaceOverlays() native global Does anybody have an idea, what spell overlays are, how they are applied with NiOverride, and what's the difference to normal overlays ?
traison Posted December 21, 2024 Posted December 21, 2024 23 minutes ago, nopse0 said: "swapping out a tattoo while the game engine is in the middle of rendering" is not possible, I think, because the swapping out is done in the Skyrim main thread (=> DLL). Technically there's nothing stopping a dll from doing that. I wouldn't even guarantee that in any vanilla system, considering the entire game seems to lack these kinds of protections: you can crash the game with improperly configured esp and nif files for example.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now