supuhmagikarp Posted September 20, 2025 Posted September 20, 2025 Is there a limit to the amount of targets listed Setup tab of the MCM? It is not listing the NPCs nearby for me.Â
nopse0 Posted September 20, 2025 Author Posted September 20, 2025 6 hours ago, throwaway182838 said: I can use the catmenu GUI to apply and remove tattoos but these changes only take effect when I open up the MCM. Any Ideas? You must press "Synchronize visuals", this applies the RaceMenu overlays, isn't done automatically. If I think about it, I don't see a reason why I don't do this automatically there, will change this. A different thing is the field editor, there one might want to change a couple of fields first (e.g. diffuse, bump and glow texture) before applying the change as a bulk. Â
nopse0 Posted September 21, 2025 Author Posted September 21, 2025 On 9/17/2025 at 2:51 AM, seethe04 said: So with the new Overlay Framework allowing one to pre-configure NPCs to have specific overlays without needing to edit them on the fly, is there a way to something similar but with SlavetatsNG?  Where I can pre-apply certain slavetats onto NPCs so I don't have to apply them everytime I start a new game?  I just saw "SlaveTats SPID Distributor" https://www.nexusmods.com/skyrimspecialedition/mods/157498 on Nexus. Guess that's exactly what you want. Quite straightforward, you have 20 different spells with which you can apply 20 different tattoo collections to actors. I don't know the details, but would be nice, if it had some randomness, with which the tattoos within those collections are chosen (like the "Levelled Lists" in the Skyrim .esp files).Â
seethe04 Posted September 22, 2025 Posted September 22, 2025 12 hours ago, nopse0 said:  I just saw "SlaveTats SPID Distributor" https://www.nexusmods.com/skyrimspecialedition/mods/157498 on Nexus. Guess that's exactly what you want. Quite straightforward, you have 20 different spells with which you can apply 20 different tattoo collections to actors. I don't know the details, but would be nice, if it had some randomness, with which the tattoos within those collections are chosen (like the "Levelled Lists" in the Skyrim .esp files). awesome, ty for letting me know
foreveraloneguy Posted September 22, 2025 Posted September 22, 2025 22 hours ago, nopse0 said:  I just saw "SlaveTats SPID Distributor" https://www.nexusmods.com/skyrimspecialedition/mods/157498 on Nexus. Guess that's exactly what you want. Quite straightforward, you have 20 different spells with which you can apply 20 different tattoo collections to actors. I don't know the details, but would be nice, if it had some randomness, with which the tattoos within those collections are chosen (like the "Levelled Lists" in the Skyrim .esp files).  I took a look at this, and it overwrites the slavetats script. I'm really interested in it, but would need @nopse0 to do a patch for NG. It's either that or go back to the old gen slavetats.
nopse0 Posted September 22, 2025 Author Posted September 22, 2025 (edited) 3 hours ago, foreveraloneguy said: Â I took a look at this, and it overwrites the slavetats script. I'm really interested in it, but would need @nopse0Â to do a patch for NG. It's either that or go back to the old gen slavetats. Oh, I was surprised he did this, so I downloaded it, and compared his SlaveTats.psc with the original one (WinMerge). He only did three tiny changes: Â (and the same change also at another location). And: Â Â (he changed the hardcoded "EmissiveMultiple" value from 1.0 to 2.5) Â I think you can overwrite this with the SlaveTatsNG SlaveTats.pex, should have no impact. Â Edit #1: The C++ RE::Actor class has only a GetActorBase() function, not a GetLeveledActorBase() function, so I don't know, if this is an issue in SlaveTatsNG (if the sex detection may be wrong for actors created from Levelled Lists containing both female and male actors). Â Edit #2: I don't understand the description from the Creation Kit Wiki, what does "editor" mean ? Â GetActorBase: Â Â Â Â Does that mean GetLeveledActorBase returns the base actor from the game, while GetActorBase returns the base actor as shown within the Creation Kit (a certain item of the Levelled List, not a randomly selected one) ? If so, this would be indeed a problem. Wonder what of both the c++ function returns. Â But anyway, since nobody ever reported problems of this kind, I assume the c++ function does the right thing. You can forget the SlaveTats.pex from this mod, and use SlaveTatsNG. Edited September 22, 2025 by nopse0
foreveraloneguy Posted September 23, 2025 Posted September 23, 2025 8 hours ago, nopse0 said: Oh, I was surprised he did this, so I downloaded it, and compared his SlaveTats.psc with the original one (WinMerge). He only did three tiny changes: Â (and the same change also at another location). And: Â Â (he changed the hardcoded "EmissiveMultiple" value from 1.0 to 2.5) Â I think you can overwrite this with the SlaveTatsNG SlaveTats.pex, should have no impact. Â Edit #1: The C++ RE::Actor class has only a GetActorBase() function, not a GetLeveledActorBase() function, so I don't know, if this is an issue in SlaveTatsNG (if the sex detection may be wrong for actors created from Levelled Lists containing both female and male actors). Â Edit #2: I don't understand the description from the Creation Kit Wiki, what does "editor" mean ? Â GetActorBase: Â Â Â Â Does that mean GetLeveledActorBase returns the base actor from the game, while GetActorBase returns the base actor as shown within the Creation Kit (a certain item of the Levelled List, not a randomly selected one) ? If so, this would be indeed a problem. Wonder what of both the c++ function returns. Â But anyway, since nobody ever reported problems of this kind, I assume the c++ function does the right thing. You can forget the SlaveTats.pex from this mod, and use SlaveTatsNG. Â If you compare that script with the one from this mod, the changes are huge. So no, you can't just use the script from this mod.
nopse0 Posted September 23, 2025 Author Posted September 23, 2025 (edited) 3 hours ago, foreveraloneguy said: Â If you compare that script with the one from this mod, the changes are huge. So no, you can't just use the script from this mod. No, you misunderstand, the things which Papyrus SlaveTats does in SlaveTats.pex, I do in the SlaveTatsNG.dll (as far as possible). So, if you want to know, what he has changed, you have to compare his SlaveTats.psc with the original one from SlaveTatsSE-1.3.9, not with my one (I am just calling the native functions from the dll in my script), and these changes are tiny, just the three lines. You can overwrite his SlaveTats.pex with mine, because he didn't change any SlaveTats functionality. Edited September 23, 2025 by nopse0 1
Herowynne Posted September 23, 2025 Posted September 23, 2025 2 hours ago, nopse0 said: So, if you want to know, what he has changed, you have to compare his SlaveTats.psc with the original one from SlaveTatsSE-1.3.9, not with my one Yes, I understood what you meant, and I appreciate that you provided that analysis for us.
nopse0 Posted September 27, 2025 Author Posted September 27, 2025 (edited) I played around a bit with glow textures, and added a field "glowtexture" to SlaveTats tattoos. With this new feature, Lewd Marks can be defined with a single SlaveTats tattoo, which looks e.g. like this: Â { "name": "048", "section": "LewdMarks", "texture": "LewdMarks\\048.dds", "glowtexture": "actors\\character\\slavetats\\LewdMarks-glow\\048.dds", "emissivemult": 5.0, "area": "Body", "in_bsa": 1 }, Â But not sure if the effect is ok. The result looks very different than the LM screenshots. The glow texture is very sharp, and only modifies the diffuse texture, and the glow effect is only visible when it is dark. The result looks like in the screenshots below (minimal Skyrim 1.5.97 installation, just 3BA, , with ENB results may look different). Comments are welcome. Â Â Edited September 27, 2025 by nopse0
lovalter Posted September 28, 2025 Posted September 28, 2025 Too bad the gui is incompatible with kreate
Leuy Posted September 28, 2025 Posted September 28, 2025 I am having a problem that no tattoos are appearing in the list when I try to apply them, but they are visible in SlaveTats MCM menu and I can apply them. Then they are visible inside the GUI but I can only remove them
nopse0 Posted September 28, 2025 Author Posted September 28, 2025 2 hours ago, Leuy said: I am having a problem that no tattoos are appearing in the list when I try to apply them, but they are visible in SlaveTats MCM menu and I can apply them. Then they are visible inside the GUI but I can only remove them  Have you installed SlaveTatsNG, and does it's SlaveTats.pex override all other SlaveTats.pexs ? (be cautious that the SlaveTas.pex from LewdMarks don't overwrite it). Because what appears in the section and area dropdown lists is read like so: void read_slavetats_cache(area_sections_t& area_sections) { int cache = JDB::solveObj(".SlaveTatsNG.cache"); if (cache) { ... } } So, if SlaveTatsNG isn't active, you have no ".SlaveTatsNG.cache", and the dropdown lists are empty. That's the only explanation I have. You can also try to click "Refresh installed tattoo cache", but I don't think this is it, I never had to do this.
Selloh Posted September 29, 2025 Posted September 29, 2025 0.8.0 seemed to be a bit broken on my mod list. At least when using Bimbo's of Skyrim, it seemed some tats would be applied strangely or not at all. Lipstick, for example, was enlarged and placed on the chest. Sorry, I didn't look too much into it before reverting back to 0.7.6, and it's possible it's just user error. I can look more into it if needed, I just thought I should quickly report it.
foreveraloneguy Posted September 29, 2025 Posted September 29, 2025 Â 0.8.0 seemed to be a bit broken on my mod list. At least when using Bimbo's of Skyrim, it seemed some tats would be applied strangely or not at all. Lipstick, for example, was enlarged and placed on the chest. Sorry, I didn't look too much into it before reverting back to 0.7.6, and it's possible it's just user error. I can look more into it if needed, I just thought I should quickly report it. Â I got the same thing: tattoos that are in the "face" section are being applied to the body.
Leuy Posted September 29, 2025 Posted September 29, 2025   Have you installed SlaveTatsNG, and does it's SlaveTats.pex override all other SlaveTats.pexs ? (be cautious that the SlaveTas.pex from LewdMarks don't overwrite it). Because what appears in the section and area dropdown lists is read like so: void read_slavetats_cache(area_sections_t& area_sections) { int cache = JDB::solveObj(".SlaveTatsNG.cache"); if (cache) { ... } } So, if SlaveTatsNG isn't active, you have no ".SlaveTatsNG.cache", and the dropdown lists are empty. That's the only explanation I have. You can also try to click "Refresh installed tattoo cache", but I don't think this is it, I never had to do this. It started to work after saving and reloading game. I can live with that. I had all in one pack installed so maybe large number made it take a while to update? Anyways thanks for clarity!
nopse0 Posted September 29, 2025 Author Posted September 29, 2025 Â Â I got the same thing: tattoos that are in the "face" section are being applied to the body. Â Yes, I can reproduce this, guess it's debugging time. But, btw., the lipstick tattoo doesn't look that bad on the upper chest, doesn't it ? Â 2
nopse0 Posted September 29, 2025 Author Posted September 29, 2025 (edited) 1 hour ago, nopse0 said:  Yes, I can reproduce this, guess it's debugging time. But, btw., the lipstick tattoo doesn't look that bad on the upper chest, doesn't it ?  Ah, yes, the usual copy & paste errors, used in all 4 areas "apply_overlay_ex(..., "Body", ...)   Edit: Is fixed now.  And, I wanted to say, in the GUI you have to press "Synchronize visuals" (calls the "synchronize_tattoos" function), so the changes become visible, and you have to press "Update NiOverride data", so that the current NiOverride data is re-read and displayed right in all windows. This is especially important for the Add/Remove Tattoo window, because after tattoo removal, the SlaveTats tattoo is gone, but since the NiOverride data isn't re-read automatically, the window now thinks there's an external tattoo in this slot, so this slot isn't displayed in the list of available slots. Summary: press the update buttons a lot after changing anything  .  Edited September 29, 2025 by nopse0 3
lovalter Posted September 30, 2025 Posted September 30, 2025 Absolutely love the GUI, particularly the ability to fine-tune colors. Here's what I have in mind, you tell me if it's feasible: I'd like to assign certain colors to certain tattoo groups, and have them automatically use that color when applied via rapetats. For example, I want Alpia riekling and orc tattoos to be a dark red to resemble cuts, but all other tats to be black. You reckon it's possible?
sidfu1 Posted October 1, 2025 Posted October 1, 2025 for the gui version would that allow applying slave tats without having that bug where the opening slavetags mcm causes overlay crashes?
nopse0 Posted October 1, 2025 Author Posted October 1, 2025 (edited) 7 hours ago, sidfu1 said: for the gui version would that allow applying slave tats without having that bug where the opening slavetags mcm causes overlay crashes? Can you explain this more?, I don't understand. When you open the Papyrus SlaveTats MCM, your Skyrim immediately crashes ? If so, this sounds like the RaceMenu skee64.dll addresses are wrong, because then the program crashes when the first NiOverride call is made. In this case, the same thing will happen with the new ImGui GUI. What Skyrim version and RaceMenu version are you using? Can you post the crash dump, and SlaveTatsNG.log? (a bit tricky to find, because of a bug in commonlibsse-ng, the log folder name sometimes is wrong, and the log file is in "MyGames\Skyrim.INI" instead of "MyGames\Skyrim Special Edition"). Edit: I added a few new entries to the skee_addresses.json file some users posted here (for Skyrim 1.6.353, for UBE-2.0, and for the new VR RaceMenu dll which supports face tattoos), so maybe your RaceMenu version is supported now. Edited October 1, 2025 by nopse0
BlameGuy002 Posted October 1, 2025 Posted October 1, 2025 Which mods work with this, concerning the no-mod events thing? Does rape tats/fade tats work? How can an average user check that every thing is working and integrating properly? Is it the sort of thing that you need to dig into the scripts of every mod you use?
sidfu1 Posted October 1, 2025 Posted October 1, 2025 7 hours ago, nopse0 said: Can you explain this more?, I don't understand. When you open the Papyrus SlaveTats MCM, your Skyrim immediately crashes ? If so, this sounds like the RaceMenu skee64.dll addresses are wrong, because then the program crashes when the first NiOverride call is made. In this case, the same thing will happen with the new ImGui GUI. What Skyrim version and RaceMenu version are you using? Can you post the crash dump, and SlaveTatsNG.log? (a bit tricky to find, because of a bug in commonlibsse-ng, the log folder name sometimes is wrong, and the log file is in "MyGames\Skyrim.INI" instead of "MyGames\Skyrim Special Edition"). Edit: I added a few new entries to the skee_addresses.json file some users posted here (for Skyrim 1.6.353, for UBE-2.0, and for the new VR RaceMenu dll which supports face tattoos), so maybe your RaceMenu version is supported now. ahh id you forget that before we trouble shooted how for slavetats over version .17(not ng but it seemed to had inherited it) some users had once the mcm was opened it would for for small ammount some users randomly cause a overlay crash. it was so random to point it could happen once every hour or 6. beyond finding that openng the mcm enabled some debug we never found why so guessed it as a mod interaction.
nopse0 Posted October 1, 2025 Author Posted October 1, 2025 (edited) On 10/1/2025 at 7:51 PM, sidfu1 said: ahh id you forget that before we trouble shooted how for slavetats over version .17(not ng but it seemed to had inherited it) some users had once the mcm was opened it would for for small ammount some users randomly cause a overlay crash. it was so random to point it could happen once every hour or 6. beyond finding that openng the mcm enabled some debug we never found why so guessed it as a mod interaction. Ah, ok, long ago. Did you try after that another SlaveTatsNG version? Because there was a big stabilty improvement since version 0.7.0. Since this version I execute the code from the 'synchronize_tattoos' function as a SKSE task instead of by the Papyrus threads. This SKSE tasks are synchronized with the Skyrim main thread, no rendering happens when they are executed. Since then I never had an overlay related crash again. I think this was the source of all evil, this concurrency between rendering and the Papyrus threads (or to be more precise, the threads which execute the native calls of Papyrus threads, because the Papyrus threads itself can do no harm, they only run in the VM and have no effect on the outside world, except when they are calling native functions). Edit: This all are only wild guesses from me, but I think the Skyrim Papyrus VM stuff was never concepted for doing things like NiOverride does, the Skyrim threading model is wrong for that. Edited October 3, 2025 by nopse0
nopse0 Posted October 2, 2025 Author Posted October 2, 2025 I think I understand now, what effect it has, when an overlay has a diffuse texture and a glow texture. The glow texture is like an alpha channel, you can sort of "see" the diffuse texture through it (how much depends on the alpha value), only that "seeing" means glowing with the glow color. E.g. the glow texture could simply be a white rectangle with texture coordinates ((0,0)(1,1) ), then the whole diffuse texture would glow white. This effect is very different from what Lewd Marks is doing. In LM the glow texture is a separate texture, some sort of aura, which can also be seen on the skin which is not covered by the diffuse texture. This effect cannot be achieved by setting a glow texture in an overlay (at least not without redesigning the diffuse and the glow texture).
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