Jump to content

Recommended Posts

Posted (edited)
18 hours ago, Obryanov said:

As mentioned earlier, simply having a file with correct name and in correct folder doesn't solve anything beyond removing that error, the plugin refuses to load all the same. Either it needs to be actually functional or that's not the main problem.
I'll try a 6 version anyway to be sure.

Yes, I also think, the problem is not that you don't have the missing dll (because I saw in your log, that crucial Windows system dll's, like WINNT.DLL und OLE32.DLL, also require the missing dll, so if it were really missing, you wouldn't be able to start anything). The problem will be more, that something the SlaveTats dll is compiled with, requires a higher version of the dll, than you have.

 

Edit: Forget what I said, we have a total misunderstanding of what these "dll's" with these strange "ms-api-set" names are, they are some abstraction of the OS about where the actual implementations of those api's are located, and not real files which are located somewhere in the filesystem.

 

Your problem is probably something else, and has nothing to do with the missing "ms-api-set" dll's:

 

https://ofekshilon.com/2016/03/27/on-api-ms-win-xxxxx-dll-and-other-dependency-walker-glitches/

 

Edited by nopse0
Posted
4 hours ago, nopse0 said:

Yes, I also think, the problem is not that you don't have the missing dll (because I saw in your log, that crucial Windows system dll's, like WINNT.DLL und OLE32.DLL, also require the missing dll, so if it were really missing, you wouldn't be able to start anything). The problem will be more, that something the SlaveTats dll is compiled with, requires a higher version of the dll, than you have.

 

Edit: Forget what I said, we have a total misunderstanding of what these "dll's" with these strange "ms-api-set" names are, they are some abstraction of the OS about where the actual implementations of those api's are located, and not real files which are located somewhere in the filesystem.

 

Your problem is probably something else, and has nothing to do with the missing "ms-api-set" dll's:

 

https://ofekshilon.com/2016/03/27/on-api-ms-win-xxxxx-dll-and-other-dependency-walker-glitches/

 

Well, I guess it was worth a try.

The older ones didn't work btw. Will stick to original mod for now.

Posted
18 hours ago, myhouseatl said:

I'm using Bathing in Skyrim Renewed and dirt textures are not being applied.  I do have the BISR patch.  Any idea how I can work around this?

Do you also have this on a new game ? Because I think, BISR adds the dirt texture only once to the player, and after that never again (only changes the alpha value of the existing dirt). A workaround would be to add the dirt tattoos manually with the SlaveTats MCM to the 4 body areas. I would also remove the old overlays from before SlaveTats with RaceMenu (because they aren't updated anymore).

Posted

Could this mod be the reason why RapeTats Continued doesn't receive body part tags from it's .json file anymore? Maybe NG doesn't support something? It just stopped working, that's why. :classic_wacko:

Posted (edited)
On 4/24/2025 at 12:58 PM, nopse0 said:

Do you also have this on a new game ? Because I think, BISR adds the dirt texture only once to the player, and after that never again (only changes the alpha value of the existing dirt). A workaround would be to add the dirt tattoos manually with the SlaveTats MCM to the 4 body areas. I would also remove the old overlays from before SlaveTats with RaceMenu (because they aren't updated anymore).

Yes, started a new game.  Where exactly is dirt applied in RaceMenu? 

Here is a quote on BISR page:

Quote

Although BISR is technically compatible with SlaveTats, not least that FadeTats depends on SlaveTats, the subject mod in its latest version contains an issue: If the MCM is opened at least once in a playthrough, SlaveTats will populate Racemenu overlay slots with "blank.dds" and prevent BISR from properly applying dirt overlays. This is an issue on SlaveTats' end that BISR can't workaround. I highly recommend using SlaveTatsNG atop SlaveTats because this dll conversion lets SlaveTats properly release overlay slots, blank.dds or otherwise. However, do not use nopse's SlaveTatsNG "patch" for BiS Tweaked - this is not made for BISR. The alternative to using SlaveTatsNG is to avoid opening the SlaveTats MCM at all.
 

 

Edited by myhouseatl
Posted

Has anyone tried downloading this for the Nefaram Modpack from Wabbajack? It wont register it for me once I download the zip, then drag and drop the compressed zip into my download folder.

Posted
2 hours ago, AlyssaAwoo said:

Could this mod be the reason why RapeTats Continued doesn't receive body part tags from it's .json file anymore? Maybe NG doesn't support something? It just stopped working, that's why. :classic_wacko:

Noticed no problems, whole body of my player is covered with rape tats, and they are fading (continued) after a while

Posted
14 minutes ago, nopse0 said:

Noticed no problems, whole body of my player is covered with rape tats, and they are fading (continued) after a while

Odd, I'll keep looking. Thanks. :classic_unsure:

Posted
2 hours ago, myhouseatl said:

Yes, started a new game.  Where exactly is dirt applied in RaceMenu? 

Here is a quote on BISR page:

 

I meant "Body Paint", "Face Paint" etc. in RaceMenu, the BISR overlays are shown there (in the highest slot numbers). After using SlaveTats, you would also have dirt overlays (tattoos) in the lowest free slot numbers. I just meant, that the original can (should) be deleted, they aren't used anymore. But if you started a new game, you don't have them.

 

Not sure if the patch works or not. I just made a quick test: Alternate start Breezehome, 30% dirt per hour in player homes, console "set timescale to 30", after 4 minutes the dirt appeared, and after another 2 Minutes it became darker (alpha changed), and after saving and reloading the dirt was still there (I first had made the mistake to clear the dirt for all actors in the CleanDirtGameLoad function, but this must not be done for the player actor, because BISR adds dirt to the player only once). Maybe something similiar must be done in the CleanDirt function, but I don't know (and don't want to know), when BISR calls CleanDirt, and when it expects the CleanDirt function to remove the dirt from the player, and when not. But the functions are there, apply dirt tattoo to an actor, remove dirt tattoo from an actor, change the alpha value of a dirt tattoo (that's totally simple), everybody feel free to change the code as BISR expects it to be (I am staying with Mono BIS + alternate bathing animations from Baka + Improved Animatrions for some variation (not always drop the piece of soap), because, "never change a running system", you know :) 

 

Posted (edited)
5 hours ago, nopse0 said:

I meant "Body Paint", "Face Paint" etc. in RaceMenu, the BISR overlays are shown there (in the highest slot numbers). After using SlaveTats, you would also have dirt overlays (tattoos) in the lowest free slot numbers. I just meant, that the original can (should) be deleted, they aren't used anymore. But if you started a new game, you don't have them.

 

 

Ahh, that make since.  I also have fade tattoo.  Should I do something there?

 

Edit: Ok, that didn't work.  There wasn't anything in racemenu paint.  Adding tattoos for dirt in SlaveTats prevents soap from washing it off.  It just keeps PC dirty.

 

In your test, did you open SlaveTat MCM before doing your test?  I was told that once you open the MCM, it replaces the blank.dds that BISR uses and breaks the texture.

Edited by myhouseatl
Posted (edited)
On 4/26/2025 at 5:13 AM, myhouseatl said:

Ahh, that make since.  I also have fade tattoo.  Should I do something there?

 

Edit: Ok, that didn't work.  There wasn't anything in racemenu paint.  Adding tattoos for dirt in SlaveTats prevents soap from washing it off.  It just keeps PC dirty.

 

In your test, did you open SlaveTat MCM before doing your test?  I was told that once you open the MCM, it replaces the blank.dds that BISR uses and breaks the texture.

About blank.dds: SlaveTats clears overlay slots by putting an empty texture into them ("blank.dds", "default.dds" or whatever, doesn't matter), then forces that the character is rendered with this change, so that whatever has been in this slot before is gone, and afterwards it removes the texture override (and all other overrides of this slot, color, alpha, etc.) again, so that this slot is free again. From the mails here I gather, that the old Papyrus SlaveTats (or at least the MCM) didn't do this properly, some overrides were not removed, so the blank.dds blocked the overlay slot. But with NG this isn't a problem, you can open the MCM.

 

Manually adding dirt tattoos is only for upgrading running games, to replace the existing dirt overlays with SlaveTats tattoos. But in a new game you must wait until BISR adds the tattoos itself (having a dirt tattoo doesn't mean you are dirty). Did you do the test as described ? First you should have no dirt tattoo (check with SlaveTats MCM), and after ~4 minutes (if you set 30% dirt per hour in player homes and timescale to 30) it should be added by BISR (and be seen in the MCM), and then you should be able to wash it away.

 

Ps: If the dirt doesn't appear after 4 minutes with the settings above, then you very likely forgot to click "Add/Remove tattoos" in the MCM to register the new dirt tattoos. I did this at first, too, in my test, and wondered why it didn't work. Then I thought, moment, did I click "Add/Remove tattoos"? and checked  SlaveTatsNG.log, and saw something like "Trying to add tattoo with ID = 0" (this is because it didn't find the dirt tattoos in it's cache, so the id was 0). This is the only hint one gets, that tattoos aren't registered, and applying tattoos fails because of that.

 

Edited by nopse0
Posted

I would love to use this mod, but whenever I've tried to use it every time I try loading a save I more or less get a ctd/crash moments later.

The first crash happened when I bumped into an NPC and Spank That Ass triggered. I was using a UBE-race Nord there, but it's happened on normal Nords and other Player races too.

Using v0.7.0 of the mod.

Crash_2025_4_26_8-25-38.txt Crash_2025_4_26_8-30-18.txt

Posted
12 hours ago, F0xii said:

I would love to use this mod, but whenever I've tried to use it every time I try loading a save I more or less get a ctd/crash moments later.

The first crash happened when I bumped into an NPC and Spank That Ass triggered. I was using a UBE-race Nord there, but it's happened on normal Nords and other Player races too.

Using v0.7.0 of the mod.

Crash_2025_4_26_8-25-38.txt 99.89 kB · 1 download Crash_2025_4_26_8-30-18.txt 93.89 kB · 1 download

 

The crashes seem to happen in log_tattoo/_log_jcontainer_internal (at least I see this function names in the stack trace), where the output like this is produced 

 

Spoiler

 

Asked to add a tattoo (tattoo = 3578045)
[04:26:35:191]   {
[04:26:35:191]   "AREA": BODY
[04:26:35:191]   "color": 0
[04:26:35:191]   "invertedAlpha": 0.46118343
[04:26:35:191]   "name": sta_spank_ass_light.dds
[04:26:35:191]   "section": Spank That Ass
[04:26:35:191]   "texture": sta_spanky\sta_spank_ass_light.dds
[04:26:35:191]   }

 

Maybe your JContainers data (or even the whole savegame) is screwed up. Do you also have this on a new game ?

Posted
4 hours ago, nopse0 said:

Maybe your JContainers data (or even the whole savegame) is screwed up. Do you also have this on a new game ?

i've only been trying new save games since I couldn't load any existing saves either as I said. And I have the latest version of JContainers that's available for 1.5.97 on nexus, so I don't know what I'm doing wrong exactly.

Posted
1 hour ago, F0xii said:

i've only been trying new save games since I couldn't load any existing saves either as I said. And I have the latest version of JContainers that's available for 1.5.97 on nexus, so I don't know what I'm doing wrong exactly.

Can you also post the "SlaveTatsNG.log" from the crash?, maybe this gives a hint, what's going wrong.

Posted
36 minutes ago, nopse0 said:

Can you also post the "SlaveTatsNG.log" from the crash?, maybe this gives a hint, what's going wrong.

Of course, here, I had to launch it again with SlaveTatsNG to get the log though, but it still crashes. And not sure why it shows 0.6.11, I'm 100% using 0.7

BUT!

I've noticed/tried something. It's the SlaveTatsNG - Spank That Ass patch or whatever specifically that seemingly caused the CTDs at load-save. If that's my fault for still having it enabled with 0.7 then that's on me I guess ^^"

TLDR: Just having SlaveTatsNG 0.7 installed/active seems to work, but the STA patch crashes me.

SlaveTatsNG.log

Posted (edited)
53 minutes ago, F0xii said:

Of course, here, I had to launch it again with SlaveTatsNG to get the log though, but it still crashes. And not sure why it shows 0.6.11, I'm 100% using 0.7

BUT!

I've noticed/tried something. It's the SlaveTatsNG - Spank That Ass patch or whatever specifically that seemingly caused the CTDs at load-save. If that's my fault for still having it enabled with 0.7 then that's on me I guess ^^"

TLDR: Just having SlaveTatsNG 0.7 installed/active seems to work, but the STA patch crashes me.

SlaveTatsNG.log 5.15 kB · 0 downloads

 

Sorry, my fault, forgot to change the version number, the 0.7 dll has the same version number as the 0.6.11 dll, so that's ok.

That it doesn't crash without the Spank That Ass patch is clear, because without it, it doesn't use SlaveTats (uses directly RaceMenu instead).

Does SlaveTats otherwise work for you, e.g. can you add tattoos with the MCM, and do other mods which use SlaveTats (Rape/Fade tattoos continued, Apropos2, etc. work for you, or do they also crash the game ?

If not, maybe you just have a different Spank That Ass version, then the patch is for (though I don't understand why this would crash the game, I would assume, you would just get some Papyrus errors and it wouldn't work).

Ps: Or maybe the texture file "sta_spanky\sta_spank_ass_light.dds" is somehow broken (truncated, disc full, perhaps? or, maybe virus checker, false positive, quarantaine, or so?).

 

 

Edited by nopse0
Posted (edited)
1 hour ago, nopse0 said:

 

Does SlaveTats otherwise work for you, e.g. can you add tattoos with the MCM?

 

Ok well I tried, but even just clicking on the MCM menu with SlaveTatsNG enabled was an instant crash. Normal SlaveTats MCM and adding tattoos DOES work just fine. So something about my modlist on 1.5.97 really just doesn't vibe with this mod for some reason.

Unfortunately it didn't give me a crashlog for the mcm-specific crashes and the SlaveTatsNG.log didn't show anything different either really I don't think, but I'll attach it anyways.

Edit: Could it be a certain SlaveTats pack causing issues or should they all be compatible?

SlaveTatsNG.log

Edited by F0xii
Posted (edited)

It think that you either don't have the right skee64.dll (=RaceMenu), or your skee64.dll is defect, or you have something which (improperly) adds a detour to the skee64.dll, or your SlaveTatsNG.dll is defect, because the last two lines before the crash in your logs are:

Stack
{
  [SP+0]    0x7FF80249E2F2     (skee64.dll+BE2F2) (void*)
  [SP+8]    0x7FF80229569A     (SlaveTatsNG.dll+2569A) (void*)

and the address table for the NiOverride functions of the 1.5.97 version of the skee64.dll looks like this:


					static inline std::array<int, 12> _offsets97{
						0xBE160,
						0xBE090,
						0xBE2F0,
						0xBD9E0,
						0xBD780,
						0xBDC30,
						0x99D80,
						0x9A1D0,
						0x99D30,
						0x99760,
						0x99780,
						0x997A0
					};

, the third offset in the table (0xBE2F0) is the offset of the "GetNodeOverrideString" function.

So, I would check, if you have the latest RaceMenu for 1.5.97, and reinstall it, and also reinstall SlaveTatsNG-0.7.0

Edited by nopse0
Posted (edited)
1 hour ago, nopse0 said:

It think that you either don't have the right skee64.dll (=RaceMenu), or your skee64.dll is defect, or you have something which (improperly) adds a detour to the skee64.dll

Oh my god, it works now!

So, the entire time, the issue was that UBE was overwriting racemenu's skee64.dll with its own dll.

As it says on the modpage:

Quote

For Skyrim SE UBE comes with it's own RaceMenu skee64.dll, backported from AE, that has normals update functionality.

Still, normals are not updated when changing character weight. Use slider called "Normals recalc" to do that, or any other body sliders.

After going into the mod in MO2 and hiding the dll, SlaveTatsNG and the STA patch now work fine. Idk if that's something you can take a look at or if it's even worth the effort, but that was it.

So that's what was causing me all these issues. Thank you for your time! ❤️

Edited by F0xii
Posted (edited)
1 hour ago, F0xii said:

Oh my god, it works now!

So, the entire time, the issue was that UBE was overwriting racemenu's skee64.dll with its own dll.

As it says on the modpage:

After going into the mod in MO2 and hiding the dll, SlaveTatsNG and the STA patch now work fine. Idk if that's something you can take a look at or if it's even worth the effort, but that was it.

So that's what was causing me all these issues. Thank you for your time! ❤️

Ah, glad to hear this! :) 

I know a way to find out function addresses in the skee64.dll, I used this for VR with the help of users from here (see forum). But I don't think this makes sense for UBE. The regular skee64.dll doesn't change anymore, so if you have found out the addresses once, the addresses don't change anymore. But the UBE version of the skee64.dll is still in development, and each time they release a new version of their skee64.dll, the addresses would have to be recalculated. Too bad, they are saying they have backported the AE skee64.dll, but they don't seem to have backported the reflection interface of the AE version, because then it wouldn't be necessary to work with address tables, just a "SKSE::QueryInterface", and done.

Edited by nopse0
Posted

@nopse0 - how does SlaveTats NG deal with the in_bsa flag on tattoo definitions? Reason I ask is that I've had a bit of trouble getting LewdMarks to play nicely with SlaveTats NG, and I think (but haven't exhaustively tested this to be sure) that it's because it has in_bsa: 1 set on all of its tattoos, despite them not actually being packed into a BSA:

  • If I install LewdMarks out of the box with SlaveTats NG, the tattoos don't show up in the MCM
  • If I install LewdMarks out of the box with original SlaveTats, the tattoos do show up in the MCM
  • If I remove the in_bsa flag from the tattoo definitions and use it with SlaveTats NG, they show up in the MCM (although I found I had to wipe my SlaveTats cache and start a new game to get that to happen)

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...