nopse0 Posted May 14 Author Posted May 14 About your 'F6' problem, are you on Linux ? On Windows, virtual keycodes are used, which are the same for all keyboards, but on Unix the real keycodes from the hardware are used, which are different for each keyboard, you need the correct driver
XDbored Posted May 16 Posted May 16 for some reason this gives me CTD on startup which is shame because regular slavetats is pretty slow i am using address library "All in one (all game versions)-32444-11-1770897704" game version steam 1.6.1170.0 SKSE 0.2.2.6skse64.log slavetats 1.3.9 slavetatsNG 0.8.9 it loads in SKSE64.log, and then it crashes on "sending message type 8 to plugin 20" with plugin 20 being SlaveTatsNG.dll
nopse0 Posted May 16 Author Posted May 16 6 hours ago, XDbored said: for some reason this gives me CTD on startup which is shame because regular slavetats is pretty slow i am using address library "All in one (all game versions)-32444-11-1770897704" game version steam 1.6.1170.0 SKSE 0.2.2.6skse64.log slavetats 1.3.9 slavetatsNG 0.8.9 it loads in SKSE64.log, and then it crashes on "sending message type 8 to plugin 20" with plugin 20 being SlaveTatsNG.dll Hm, I think 8 is 'kDataLoaded', and there happens this: The JContainers and NiOverride (RaceMenu) interfaces get initialized. Do you have JContainers and RaceMenu installed ? If yes, what versions, latest from NexusMods ? Maybe redownloading and reinstalling helps, maybe a dll file is corrupt.
XDbored Posted May 16 Posted May 16 (edited) 1 hour ago, nopse0 said: Hm, I think 8 is 'kDataLoaded', and there happens this: The JContainers and NiOverride (RaceMenu) interfaces get initialized. Do you have JContainers and RaceMenu installed ? If yes, what versions, latest from NexusMods ? Maybe redownloading and reinstalling helps, maybe a dll file is corrupt. that is definitely it, i couldn't get my 4-2-9 SE version of jcontainers to load without CTD, so i was using the VR version of jcontainers 4-2-11 which caused CTD as soon as some other mod like slavetats NG tried to use it. somehow i had installed a 8.1.0? renamed to a 4.2.9, probably via misclick in the MO2 name dropdown, new download real jcontainers 4.2.9 fixed the problem. Edited May 16 by XDbored typo 1
nehrgumb Posted May 17 Posted May 17 Hey there, sorry to bother you but we just noticed that SlaveTatsNG takes iNumOverlays only from skee64.ini and ignores skee64_custom.ini see https://github.com/nopse0/SlaveTatsNG/blob/v0.8.1/src/nioverride_wrapper.cpp vs SKEE64GetConfigOption https://github.com/expired6978/SKSE64Plugins/blob/master/skee64/main.cpp#L258 workaround is obviously making sure the correct number is also set in skee64.ini. just letting you know and putting the info out here in case some people have weird overlay problems, like us using the skee64_custom.ini to increase the number of slots and wondering why it didnt work. Thank you for an awesome mod and all your hard work! 2
TrollAutokill Posted May 19 Posted May 19 (edited) Hi, I am using SlaveTats calls in my mod with: JMap.setInt(map, "color", colorTint) JMap.setFlt(map, "invertedAlpha", 1.0 - alpha) JMap.setInt(map, "glow", glow) JMap.setInt(map, "gloss", 1) Slavetats.add_tattoo(anActor, map, slot) Could you confirm that your SlaveTats NG is just a drop in in this case? Or do I need to do some adjustments? Cheers and thanks for the good work. TAK Edited May 19 by TrollAutokill
nopse0 Posted May 19 Author Posted May 19 9 hours ago, TrollAutokill said: Hi, I am using SlaveTats calls in my mod with: JMap.setInt(map, "color", colorTint) JMap.setFlt(map, "invertedAlpha", 1.0 - alpha) JMap.setInt(map, "glow", glow) JMap.setInt(map, "gloss", 1) Slavetats.add_tattoo(anActor, map, slot) Could you confirm that your SlaveTats NG is just a drop in in this case? Or do I need to do some adjustments? Cheers and thanks for the good work. TAK Yes, confirmed. SlaveTatsNG overwrites SlaveTats.pex, and 'SlaveTats.add_tattoo' calls the native SlaveTatsNG function. If this works with SlaveTats, it will also work with SlaveTatsNG (but I don't know how you initialize your 'map', it must also contain a valid 'texture', 'area' and 'section' from an installed SlaveTats tattoo) 1
TrollAutokill Posted May 20 Posted May 20 21 hours ago, nopse0 said: Yes, confirmed. SlaveTatsNG overwrites SlaveTats.pex, and 'SlaveTats.add_tattoo' calls the native SlaveTatsNG function. If this works with SlaveTats, it will also work with SlaveTatsNG (but I don't know how you initialize your 'map', it must also contain a valid 'texture', 'area' and 'section' from an installed SlaveTats tattoo) Thanks for the prompt reply. The map is initialized, with Int map = JMap.object() JValue.retain(map) JMap.setStr(map, key1, value1) ... And that is used by SlaveTats to get the correct file and settings from the JSON file. Said JSON file you can only update through the SlaveTats MCM.
ahsdg Posted June 12 Posted June 12 Hi, so I found this version of slavetats while going through a new install of Skyrim. I read this in the description. Disadvantages: No ModEvents are send So it seems this Slavetats NG is great because it has much better performance, but what does this 1 disadvantage mean in terms of the mods functionality? Am I correct in assuming certain mods will not work with this version then?
nopse0 Posted June 12 Author Posted June 12 (edited) 5 hours ago, ahsdg said: Hi, so I found this version of slavetats while going through a new install of Skyrim. I read this in the description. Disadvantages: No ModEvents are send So it seems this Slavetats NG is great because it has much better performance, but what does this 1 disadvantage mean in terms of the mods functionality? Am I correct in assuming certain mods will not work with this version then? This was asked often. I think there are no mods which use the SlaveTats mod events (or only very old LE ones). 1-2 years ago I was thinking about implementing this, and tested a bit, but imo the existing SlaveTats code creates far too many mod events, especially if you have a lot of overlay slots, each 'synchronize_tattoos' call causes lots of events Edited June 12 by nopse0
ahsdg Posted June 12 Posted June 12 10 hours ago, nopse0 said: This was asked often. I think there are no mods which use the SlaveTats mod events (or only very old LE ones). 1-2 years ago I was thinking about implementing this, and tested a bit, but imo the existing SlaveTats code creates far too many mod events, especially if you have a lot of overlay slots, each 'synchronize_tattoos' call causes lots of events To clarify for myself then, seems this is a good thing to use this mod. Few if any mods use the mod event code, and even then they bloat the game by spamming that function.
lk74 Posted Thursday at 03:46 AM Posted Thursday at 03:46 AM (edited) I was using SlaveTatsNG 0.8.1 with GUI 0.2.0, and got this weird problem... whenever a slavetat is updated on an npc (such as when applying DOM branding, or when applying tats directly via GUI), the NPC skin will turn purple (transparent slavetat over purple texture instead of over skin texture). disable-enable the affected NPC, or save-load will fix this. But its very annoying. ...so I reverted to 0.5.1 where this problem does not occur. Weird... Edited Thursday at 03:47 AM by lk74 add GUI error case
nopse0 Posted Thursday at 06:30 AM Author Posted Thursday at 06:30 AM (edited) 2 hours ago, lk74 said: I was using SlaveTatsNG 0.8.1 with GUI 0.2.0, and got this weird problem... whenever a slavetat is updated on an npc (such as when applying DOM branding, or when applying tats directly via GUI), the NPC skin will turn purple (transparent slavetat over purple texture instead of over skin texture). disable-enable the affected NPC, or save-load will fix this. But its very annoying. ...so I reverted to 0.5.1 where this problem does not occur. Weird... Good description, I understand. Yes, strange. The first thing, which comes into my mind, is, that 0.5.1 was before I was executing 'synchronize_tattoos' via an SKSE task (before, in 0.5.1, this was done directly in the Papyrus threads, but this sometimes gave CTD's), so the timing, when the overrides are applied, has changed since then (now they are applied later, at the next vsync). Do you have any mods installed, which are doing skin overrides ? Edited Thursday at 06:37 AM by nopse0
REALnomad Posted Thursday at 07:46 AM Posted Thursday at 07:46 AM (edited) Spoiler 1 hour ago, nopse0 said: Do you have any mods installed, which are doing skin overrides ? Can this also be bacause of for example Bathing in Skyrim and wetfunction redux (it actually works fine, I guess) How to fix already purple skin? Removing all tatoos and racemenu overlays HELPS but the mistake I noticed for example if I apply some overlay to slot_0 mods like Bathing in Skyrim puts overlay over it via racemenu and creates purple skin. Edit. My bad, it must be Bathing is Skyrim bug. Still, sometimes this bug was prior to installing bathing. Apologies Edited Thursday at 07:56 AM by REALnomad
lk74 Posted Thursday at 09:51 PM Posted Thursday at 09:51 PM 15 hours ago, nopse0 said: Good description, I understand. Yes, strange. The first thing, which comes into my mind, is, that 0.5.1 was before I was executing 'synchronize_tattoos' via an SKSE task (before, in 0.5.1, this was done directly in the Papyrus threads, but this sometimes gave CTD's), so the timing, when the overrides are applied, has changed since then (now they are applied later, at the next vsync). Do you have any mods installed, which are doing skin overrides ? that would be difficult to pinpoint, my modlist is very long... though, if you could point me to a specific mod (or skse output log) I could dig a bit further, cuz I have no idea how textures or overlays work...
nopse0 Posted 19 hours ago Author Posted 19 hours ago 10 hours ago, lk74 said: though, if you could point me to a specific mod (or skse output log) I could dig a bit further, cuz I have no idea how textures or overlays work... I am only guessing, too, don't really know how this all works. From what I read, I gather, an actor has a skin. That's a set of textures, which is applied to the naked parts of the body. Then there are armors. A special case is the armor worn in the body slot, slot 32. It contains the mesh of the armor itself plus a mesh of the naked body. The textures from the skin are then applied to the naked body mesh. But the naked body mesh/armor can have "Armor Addons", which are applied on top of the naked body armor. This is what SlaveTats is using to apply its tattoos. NiOverride (RaceMenu) has two kinds of functions, node override functions and skin override functions. The node override functions are what SlaveTats is using to add ArmorAddons to the naked body mesh/armor. But there are also mods, which are using the skin override functions to replace the skin with different textures (diffuse, normals, etc.). This is not the same as replacing the naked skin textures in the textures folder, because this is done dynamically at runtime and can be done on a per actor basis (I think). An example for a skin override mod is https://www.nexusmods.com/skyrimspecialedition/mods/177893 (has links to other skin override mods: Wet Function Redux, Racial Skin Variance, Pregnancy mods). I just had the idea, that maybe there are concurrency problems, when node and skin overrides are applied at the same moment in time, that's why I asked, if you have skin override mods.
IvaInn Posted 19 hours ago Posted 19 hours ago I had this problem too. I was using immersive hair growth, a tattoo to simulate body hair growth. The wet function was also enabled.
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