Hello, everyone. Hope those of you in the northeast USA are keeping warm today with this big blizzard blowing through. Yesterday we started updating the Toys ecosystem to its current version (including a release candidate version of the next framework release). Today we'll wrap up that process and then, if time permits, knock out a few more deliverables.
We started the day with 1,233 mods installed, 1,291 active plugins, and a final load order index of EF.
Toy Story started its life as a demo mod that illustrated the technical capabilities of the Toys Framework. Since then, it's grown into a small quest mod with some cute features. I've only previously had the playtest version of this mod installed, so this will effectively be a new install from scratch rather than an update.
We'll start by downloading Toy Story 1.21 and its associated bodyslide file. In addition to building this mod's native bodyslides, we are going to regenerate all the bodyslide for the mods we updated yesterday, just in case some of their bodyslide output got stored in the MO2 folders for the older versions. I also need to update the animation registry, but I held off on that yesterday and indeed am still holding off on it now until all the Toys stuff is installed and updated, so as to avoid re-work.
Toy Story didn't have any asset conflicts in MO2, so let's look at it in xEdit now. Toy Story is an uncompacted 2,118 record ESP file. However, only 1,771 of its records are unique, so it is a candidate for compacting and ESL flagging. The mod contains facegen and an SEQ file, which will need to be addressed as part of that process. It does have unique sound files, but they are not Form ID indexed and therefor don't require special handling.
You may be asking why I'm compacting this mod right now. After all, isn't an update to use the new structure of Toys 1.8 coming out imminently? The nice thing about xEdit is that as long as the form ID structure of the underlying mod doesn't change (e.g., the author doesn't loop back and insert new records in between existing ones) it'll always compact the same way. This makes recompacting future releases easy and generally safe to do alongside my conflict resolution patches. Since this is an "endpoint" mod that's unlikely to have downstream dependencies, there's no reason to waste a load order slot on it.
You may note some errors here in Facegen ESLify. This is nothing to worry about; the actors in question do not have facegen, which is why it failed out. One actor is an animal and the other is a hidden actor that only exists for game mechanical purposes.
With the compacting complete, let's clean the mod and check for conflicts. xEdit found no deletions, ITMs, corrupted edge links, or errors in the file. While there were conflicts, they were limited to cell data, and most of them were top-level cell records. These were easy to patch up and quickly resolved. One thing we do need to watch out for and correct are pseudo-ITMs related to the development environment. Because this mod was developed in LE, its top level cell data forwards some deprecated information from LE that was superseded in SSE's Update.ESM. The biggest offended is water flow data, which if not patched can cause animation seams in the water at zone boundaries. As you can see below, my conflict resolution patch already has the up-to-date information in this field, but it could be an issue if a user was installing this mod at the end of their load order.
Conflicts like this are another thing we need to watch out for. In this case, the navmesh in question isn't conflicted - TS uses the vanilla version of the navmesh. But as a result, this door record reverts changes from Legacy of the Dragonborn which could cause issues, especially if the triangle in question doesn't exist in the updated navmesh.
Proceeding through the conflicts, we can see one potentially serious conflict with Ultimate College of Winterhold. It's highly likely that this geometry will either be outside of the level bounds or interposed with some other static. So we'll have to review this carefully in game and work out a conflict resolution strategy.
The reference in question here is 109d99 at approximate coordinates 705/406/0. So... there's good news and there's bad news. The good news is that the geometry conflict is actually quite mild and not really noticeable. The problem is that, as you can see from the activator label below, Circulating Collection's activator completely overlaps the bookcase. We already shrunk this activator once for compatibility with Devious Devices (which puts a bookcase right next to the one for Toy Story, so we just need to go back and further trim that activator for compatibility with TS.
While we make our working file and copy over the relevant records, there's also a small edit we need to make to TS. This mod contains an actor called "stonegirl" who is there to facilitate the proper function of the standing stone sex scene. She's a generic Nord with height 1.0. However, because I'm playing a game with variable height for different actor races and sexes, this can sometimes contribute to alignment issues. There's no perfect solution, since the player is on her hands and knees and therefore the size difference ratios won't be 1:1, but what we will do is make a custom race for Stonegirl that has the same height and skeleton as a vanilla Nord woman. This should restore the position of the standing stone's dildo pole to the its intended location. The position of the player may of course still be an issue, but at least there's just one variable in play now instead of two. We'll also remove the "playable" flag so she doesn't appear in the character creation menu.
With the new race in place, we'll make an override for Stonegirl (and her SLaVE sister) in my actor deconflict section and switch over the race data.
Now let's get back on track and fix this bookcase. You can see where I already trimmed this bounding box to support the Devious Devices bookshelf. We're going to do the same thing again to make room for the Toys one (the middle block of shelving). We're also going to do the same thing for the collision box behind it (which for somer eason I seem to have failed to properly trim before - as it only allows access to one side of the DD shelf.
After the edit, you can see below how both "forbidden bookshelves" are now accessible as neither the red activator box nor the yellow collision box are occluding them.
With that saved and backpatched, you can see in the video below how the different bookcases are all accessible now.
With that conflict patched out, we're done installing Toy Story. I'm planning on having Kirstia run through this quest in her next adventure, we this won't be the last we see of it!
This is a fairly new story mod that released around the holidays last year. Other than some promo videos I know very little about it, so it's going to be interesting to see what's under the hood.
I didn't find any conflicts or issues during the initial installation, so let's see how it looks in xEdit. This mod is a compacted, ESL-flagged ESP file with 853 records. Like I've become accustomed to with the Toys ecosystem, this mod had no issues during cleaning. It does however contain a number of edits to the various ingestibles that have conflicts, so we need to make sure those are all in good shape.
The Moon Sugar is a conflict with CACO, where TW's script attachment reverts the other characteristics of the ingredient back to vanilla. We'll merge the changes into a conflict resolution patch.
For the ingredients, I already have patches on all these records for CACO and iWant compatibility. TW adds a new magic effect to them, which we'll just forward into the existing patch.
This was a very painless installation, only requiring a few minutes even with the somewhat repetetive ingestion effect work. I'm looking forward to seeing how this mod affects my game in the future.
This is bigger one. If I understand this mod right, it's like a cross between Soul Gem Oven, Harry Potter mythos, and obscure Japanese fetish material. I've been watching it with some interest for a while, and the author tells me that its in a mature enough state to use with a large load order build. Let's get this bad boy installed and see what's involved with this mod.
Before we start the install proper, this mod has a soft dependency on a mod called SL Triggers. This mod is also used for some Sexlab Survival stuff and it's been on my list to install for a while. Triggers is a 32 record mod that is not compacted or ESL flagged. Before we do this, we need to briefly look at how the mod works to ensure that it doesn't require hard form ID calls against its current structure. Looking at the WCX triggers, we can see that they aren't calling specific form IDs, so we should be clear to the compact this mod.
Unsurprisingly for such a small mod, SL Triggers didn't require any additional cleaning or conflict resolution beyond getting it into the ESL loading space. So now on to WCX itself. This mod is an uncompacted, non-ESL-flagged ESP file with 635 records. Normally I would immediately compact this mod with extreme prejudice, however since it's still in beta I want to take a lighter touch. Basically, we need to find out if this mod is going to be a pain in the neck to unwind if, in the future, its Form ID structure changes substantially. Because of that, we're going to do a conflict check first before we do anything else.
What we find is that there is only a single (repeated) conflict regarding one script. Resolving this conflict will create a dependency on WCX, but it's the same record that's pointed to in each case, so fixing any future errors that crop up will be easy. Based on that, we are going to compact and flag WCX.
WCX did not have any deletions or ITMs, but it had a substantial number of errors. Note that based on the pattern I'm seeing here, its possible that these are glitches of some sort from the compacting job. I'll be checking the original uncompacted file at the end of this install and if it still has these issues I'll notify the author. The corrupted NAVI data should be fairly easy - we just need to regenerate the NAVI in the CK. The corrupted cell records are a little more concerning, but hopefully we can narrow these down just by looking to the appropriate record types.
Since there's only one lighting template, the cell data problems can indeed be corrected fairly easily.
The dialogue branches don't appear to have quests that match to them 1:1, and may be incomplete features since this mod is still in active development. I'll leave the be unless the original file reveals they have something on them and I just derped them somehow.
As I mentioned above, all the conflicts are just a case of needing to have both the new WCX_TempleBlessingScript attached and also forward the Death Consumes All script properties. With that work done, we just need to save this file in the CK so the Navmesh information map automatically regenerates.
Now let's check the original file to see if we need to file a bug report with the author. OK, I see it does indeed have these problems still, so at least I didn't break anything! We'll let the author know so he can address these in ongoing development.
Despite a few bumps, we got Whorecrux installed. This is another one where I have only a surface-level understanding of its content so it'll be fun to explore its weirdness and maybe get surprised a time or two!
Footnote: Classic Toy Box
The Classic Toy Box is an extension for Toys that adds the familiar bondage gear from Zadil that has been a staple of Devious Devices since its earliest days. While this means that I'll be doubling up on assets, it still serves a valuable purpose, not just by blurring the line between TT-distributed gear and gear distributed by DD mods, but also by somewhat diluting the really exotic visuals in Toys with more conventional equipment.
We already have the latest version of this mod, so I don't need to do any updating. However, I expect I'll be revisiting it after Toys 1.8 officially releases.
Some More Toys Cleanup
If you followed yesterday's comments thread, then you know that my edits to Toys weren't sufficient to get that dental retractor out of my game world. So we'll be going back and just straight up deleting it. However, we don't want to be reckless in this. We first need to go through the record and make sure nothing is depending on it. We can do this by reviewing the "referenced by" tab in xEdit.
After checking, there were no references to these devices outside of the devices themselves. Consequently, we'll just delete them. A slightly bigger issue is the Bratty Silencer in Shout Like a Virgin. It's referenced in the SLaVE main quest, and I believe it's there because the Silencer gets equipped on the Dragonborn during an early scene. I want to preserve this record, so we need to instead change the visuals of the gag. What we'll do is go into the ARMA record and replace it with the model data for the Classic Ball Gag
If the deletion of the silencers causes problems down the line, I'll probably use this same approach to change their geometry.
With that, we've got the Toys ecosystem fully up to date. Only Dark Desires Club, which is still in early development, is absent.
SOS-SLEN Compatibility in a Futanari-Friendly World
Sexlab Eager NPCs has a lot of great features, one of which is integration with SOS to detect when an actor is Futanari and use them in a male context. However, this feature is limited to 20 schlongs, and there's no good way to prioritize which ones it works on. Currently in our game we have
- Smurf Average
- Vector Plexus Regular
- Vector Plexus Muscular
- BD SOS Anthro
- BD Slit
- BD Sheath
- BD Spiky Slit
- BD Female No Schlong
- BD Female Sheath
- BD Female Slit
- BD Female Anthro
- BD Orc
- BD Orc Female
- 12 varieties of 3d pubic hair for females
At 24 varieties, this is too much to ensure that every schlong makes it onto the SLEN management menu. This means that we need to remove at least 5 of the female pubic hair items. Really we should do 6, since if I remember correctly, Sexlab Hormones adds another schlong that I should future-proof against. To do this, we are going to clone the SOS female pubic hair file into sandbox file that I can feel comfortable deleting stuff from, then move the original to a backup folder.
With that done, it's time to do some trimming. The styles we have are:
- Small Stripe
- Very Bushy
- Neat Trim
- Landing Strip
We'll start out by removing the 'decorative' styles - heart and stripes. We'll also pull the shaved style, since it duplicates the BD No Schlong entry that's already in the game. I'm genuinely not sure which one to pull out of the rest, so we'll just leave it at deleting 5 for now. Perhaps by the time I install Hormones, I will have resolved my ongoing issues with recompiling SLEN's scripts and will no longer be held back by the 20 schlong limit.
To purge the unwanted hair, we need to delete the armor and faction records (1 each) and then remove all the related global values, form lists, and scripts (tons of them). Fortunately the editor IDs are all very consistent, which makes our job easier. All in all we deleted more than 300 records - but when then dust settled we came back with no errors.
That'll satisfy SLEN's constraints, but we're not done with SOS yet.
Revisiting SOS Percentages
I've been somewhat unsatisfied with the distribution of SOS assets in my world. Other than one substantial flaw, this isn't the fault of any one mod. Rather, it's the result of multi-mod interactions by different authors with different technical approaches. Let's recall for a moment the 20 options we have:
- Smurf Average (Male)
- Vector Plexus Regular (Male)
- Vector Plexus Muscular (Male)
- BD SOS Anthro (Male and Futa)
- BD Slit (Male and Futa)
- BD Sheath (Male and Futa)
- BD Spiky Slit (Male)
- BD Female No Schlong (Female)
- BD Orc (Male and Female)
- Normal (Female)
- Very Bushy (Female)
- Neat Trim (Female)
- Bushy (Female)
- Untamed (Female)
- Natural (Female)
- Wild (Female)
I don't see a lot of value in having extremely fine differentiation between the different races. Here's the approach I plan to take:
- Men and Mer have a 25% chance for each of the four penises
- Across all races, Futanari are 5% of the population (note that when I eventually get Skyrim's Shrouded Secret installed, Futa representation will grow considerably)
- Orcs, Khajiit, and Argonians exclusively use their own options. Argonians split normal and spiky 50/50.
- Female Khajiit and Argonians who are not Futa have the BD No Schlong; e.g. 95% chance
Female Men and Mer have the following breakdown:
- [5% Futa]
- 5% Shaved (we may loop back later and manually apply the faction to actors where we want them hairless)
- 25% Normal
- 15% Neat Trim
- 10% each of the remaining styles
We'll achieve this by editing the relevant race probability Globals. We'll do the female pubic hair first so we can get it out of the way. For these, we'll want Globals 0, 1, 15, and 16 to be set to zero and the rest to use our uniform value. This is a bit easier since the author used the same compatible races structure for each type of hair.
We'll use AT Quick Change to speed up the process.
With all those changed over, let's go test it in game. After several characters, it looks like the probabilities I set are sticking. However, what you see below is the "neat trim" style, which turns out to be another stripe. We'll loop back and also pull that one out, then normalize the probabilities. That'll give us that 6th spot we needed for future expansion.
Next up is Mini Landscapes. This mod was recommended to me a while back, but I've been kind of dragging my feet about installing it. Let's tackle it today and see what it has to offer.
This is an uncompacted mod with 3737 records. It is a candidate for splitting and compacting, and we'll start by doing that. This mod has 6 worldspace branches, three of which are in DLC territories. We'll initially try peeling those off to see if it gives us enough. We need to lose about 1700 records, and the DLC regions weren't enough. We kept peeling until I hit 1777 in the overflow file. Next, we went back and changed all the novel form IDs to point at the new file. This could take a long time because of the need to navigate around vanilla records, but this mod in fact has a very light touch, which made things a lot easier.
Now that we have the mod cut up, we can compact it and flag it. Next step is cleaning. The mod had deletions and ITMs which I fixed, though no errors or bad edge links. The volume of conflicts in the file was low as well - much of it seemed to be random noise injected by the Creation Kit, which was pretty easy to patch out. There was one large clump of pseudo-ITMs that I just deleted from the file rather than deal with individually. These were cases where the CK injected a location record into random statics, causing a huge conflict with Ultimate College of Winterhold.
It's not really a good use of time to inspect each of the 24 new locations, but we're going to visit a few of them that came up in the conflict report, since I think these ones have the highest risk of containing terrain intrusions and other eyesores.
OK, so....... when I saw this was called "mini landscapes" I assumed that meant that this mod added small bits of unique terrain into the world to break up and diversify the environment. That is not what this mod does. This mod adds literal mini-landscapes, complete with tiny houses, tiny people, and tiny trees (and tiny treasure chests). This is a really cool mod, but it's not a good fit for my game world. Sadly, this one is getting deactivated.
Now I Need a Drink
Perhaps fittingly, the next mod on my list adds a liquor store to the game. I'm not expecting a lot of trouble with this one, though it uses a popular piece of real estate; I may find myself back here resolving conflicts in the future. The mod is an uncompacted ESP with only about 300 records. The mod has facegen, but otherwise should be a straightforward compacting job. I didn't find any deletions or errors, but I did remove 5 ITMs. Conflict analysis revealed navmesh conflicts.
Fortunately one of the conflicts was a pseudo-ITM that I patched over. The other one is a legitimate conflict, but fortunately it doesn't require navmesh patching in the CK since it is limited to defining a door. We can patch this in xEdit and then regenerate the NAVI record.
Now let's visit the new store!
More Merchant Outfits
I mentioned yesterday that creating the gendered lists opened the way for DIE RAV Merchants. While this mod won't achieve its full potential until I institute my modesty spectrum supermod, in the meanwhile we can at least get these outfits installed and operational. I'm not really expecting any problems from this mod - it's already ESL flagged and shouldn't have much in the way of records in it. The mod did contain some ITMs and pseudo-ITMs that I cleaned out. The author also included some edits to vanilla outfits that I removed since I'm going to use my own outfit system; likewise, I removed quests and form lists for Rotate Armor Variants since I don't use that mod and don't plan to in the future.
Review of the ARMO and ARMA records revealed a large number of entries that suggest the author either originally planned to include more outfits or built this mod from a template. I removed the excess entries. Here's what we're left with:
All of these are female-only costumes, so we're going to put them on the female merchant list and the combined lists only; they won't go on the male or unisex lists.
That's it for today. Tomorrow will probably be a lighter entry, but I do have my eye on one mod that'll require a little bit of assembly.
We ended the day with 1,241 mods installed, 1,297 plugins active, and a final index of EF.