Jump to content

Bethesda Modding Diary - 09 June 2022


gregaaz

461 views

Happy Thursday, everyone! Sounds like we've got quite a night of television ahead of us today with new Star Trek, new Orville, and of course the opening of the public-facing portion of the 1/6 inquiry. But before that, we need to start getting my various gems and jewelry mods playing nice. You saw the tip of the iceberg yesterday, when I foolishly thought I could install Immersive Jewelry without doing a huge amount of work.

 

So what's the issue? It's basically a knot of interlocking conflicts that we really need to resolve all at once to avoid a ton of re-work. Here's the issue.

 

  • Immersive Jewelry changes vanilla Corundum into Copper, which conflicts with NeV-P Extreme Materials' improved Corundum meshes. It also conflicts with Gemstone Collector, which adds standalone copper ore and ingots.
  • NeV-P, IJ, Gemstone Collector, Legacy of the Dragonborn, CACO, and more all make extensive changes to the leveled list structure, including alterations to the probability structure, which don't intuitively play nice with each other. This is similar to the multiple 'versions of truth' on the Clutter Books leveled list that we ran into during some of our past work.
  • Legacy of the Dragonborn natively integrates some, but not all, of Gemstone Collector's treasure, resulting in duplication throughout the world where these hand-placed stones exist. 

 

So as you can imagine, the solution here is more complex than just smashing together a bunch of conflicting records. We need to address these conflicts in an integrated way to get all of these mods to play together nicely. We may also need to make some nif and/or texture map changes to redirect texture paths for the corundum, since otherwise we may end up some unusual-looking objects.

 

Today we'll start with this process, though this might stretch over multiple days. For bonus points, I'm fast accumulating open tabs with other mods that I want to install, so the days ahead are going to have plenty for us to do!

 

image.png.70a528fe9f7775263b4f18f7de6f1f0e.png

 

Preparatory Work: Removing Hax's Coins

Spoiler

Hax's Coins was integrated into Gemstone Collector in the new beta version, so we'll start by uninstalling that mod. We can't just turn off the mod, because my leveled list conflict resolution patch uses it as a master. Let's unwind that connection in xEdit so we can remove this mod.

 

We'll start by using the "Report Masters" script to identify all records in my patch that reference Hax's mod. 

 

image.png.83845bbcb896384a9a7b433ad5d8d423.png

image.png.18907a027d2592cb2e18459c85656a72.png

 

Now we'll go through each record and remove the Hax's Coins items from my patch. We can speed up the navigation process by control-double-clicking on the form IDs on this report. We'll then filter by value to quickly identify the records with Hax's form ID structure and remove them from the conflict resolution patch.

 

image.png.2370536b5081564dfc95cdb000053ffa.png

 

With that done, we'll use "clean masters" to remove Hax's Coins from my patch's master list, then we can save the modified patch and proceed to deactivate Hax's Coins. Now we're ready to proceed with the main project.

 

Copper Control

Spoiler

First off, let's address the copper issue. The ideal solution here would be the following:

 

  1. Corundum will be used for its vanilla purposes - creating steel alloys for weapons and armor
  2. Copper will be used for copper jewelry
  3. The basic material for copper will change to the copper ore/ingots from Gemstone Collector, while Corundum retains its vanilla sourcing
  4. The two new intermediate objects need to have their texture data updated to use the Gemstone Collector copper texture rather than the NeV-P Corundum one.

 

image.png.72362eba75f5b3e816ce1b3ac6503268.png

image.png.4e7ab31cf68c8605815c70e7e4243510.png

 

Here you can see Gemstone Collector's standalone copper ore, and the injected records for copper that IJ creates. 

 

So first things first, let's put all the foundational items into a working file. This will make it easier to quickly navigate through them. Note that Corundum Ore is mostly just there as a form ID reference, though we will revert its naming convention to vanilla.

 

image.png.d5c7960a60b7df242ea050d4616903ed.png

 

Now we want to integrate these two item trees. First, we want the two IJ copper-based items (the tabs and jeweller's bars) to use GC copper ingots instead of corundum ingots. We'll find the COBJ records for those two items and copy them to our working file. You can see below all the copper items that use corundum ingots as an ingredient.

 

image.png.faa8f6d7f9fcbcf0d96e536e2139ac1d.png

 

We're going to change all of these to use TGSCIngotCopper instead.

 

image.png.2889c5ad0c8be61d53e38ea14cf28b29.png

 

Next, we need to make some changes to the leveled- and form lists that impact the materials. Rather than remove any of the copper items from the corundum leveled lists, we will instead add the ingot and ore from TGSC, to ensure maximum compatibility and to enhance the availability of these metals in merchant inventories.

 

image.png.1b3fec8c10135219c248d7efddf25f20.png

 

So now we've updated the constructible object relationship as well as the leveled lists to support this new schema. The final activity is to update the two new refined raw materials (the tabs and bars) to use the copper texture from TGSC instead of the Corundum texture from NeV-P Extreme Materials. Let's avoid making direct nif edits - instead, we'll apply a texture set. To do this, we're going to look up the texture information for the copper ingot in NifSkope and then copy it to the texture set. Though, one thing I notice here that we'll need to pay close attention to is the presence of a full file path in the nif - this may cause compatibility issues for us down the road, since our game isn't installed on C drive.

 

image.png.c69890bf1eacf059043b8d720762622d.png

 

image.png.074726719dcaee5db5355de9357afcba.png

 

Now let's apply this texture set to the two meshes from IJ.

 

image.png.79fef7ef860cfaf92c8d8e365d8b239c.png

 

Now let's go into the game and check these. You can clearly see the NeV-P corundum texture on the ore and the vanilla ingot, but the IJ bar/tab are now showing the texture from the Gemstone Collector ingot instead. Looks good!

 

image.png.2185b684b98897c7ce814785c8205e8a.png

 

Duplicate Displays - Legacy of the Dragonborn

Spoiler

The next thing we want to address are the duplicated items between the Gemstone Collector mod and LOTD. Legacy natively integrates some, but not all, of the GC minerals. What we want to do is identify those and then remap them to their TGSC equivalents. At this point, we won't be adding any of the missing items to the museum, though that might be fun to do eventually. However, TGSC has its own museum already, so that's not strictly necessary. Indeed, I might solve it instead by adding a portal to the TGSC museum into the Dragonborn Gallery, rather than creating duplicate displays.

 

image.png.f5afba179d606c84d8266467d9881fd7.png

 

We'll copy all of these to a working file, then cross-reference them with TGSC. Any that aren't from that mod, we'll prune out before we go further. After narrowing the list, we still have a substantial number of items but not nearly as many. Some of them don't line up 1:1 because of changes in naming conventions.

 

image.png.af3e7610de7742acd0e2716142ef7a9f.png

 

Let's use Alexandrite as an example of what we're going to do. This one is pretty lightweight, because LOTD only distributes it via leveled list. However, we need to update the form IDs on all of these records to map to the TGSC version.

 

image.png.48af29523bbac4ad0271c1951fca623a.png

 

image.png.8cf75e6ceb79615a07d4348b38ba3e42.png

 

Amazonite covers the remaining element that Alexandrite didn't cover - worldspace object references. For this one, we need to look at the TGSC version and see if it has a reference to the same place. If so, we'll disable the LOTD version rather than changing the baseform.

 

image.png.d2e0dad86f2a0f82b823c715cd2661b2.png

 

As you can see below, TGSC puts its copy in a different place, so we don't need to do anything special here.

 

image.png.ee561362be9920d2640c9ee3a0d92e2e.png

 

On this one, I've got a lot of records to process, and I'll be continuing this effort into tomorrow, but as you can see below my patch is already starting to come together nicely. One fun discovery is that as both mods evolved, LOTD and TGSC have diverged on where they placed the gemstones, so thus far I haven't had to disable any refs. This is good, as it will make it easier for me to fill the displays in both museums as I find these items.

 

image.png.e0ac999e481ec2807d5378ccdf029812.png

 

Something A Little Different Now

Spoiler

I didn't want to focus solely on the gemstones and jewelry project, so I did grab a couple more mods off my to-do list.

 

First was an easy one: XS Sporty Hardbody. This is a BHUNP bodyslide preset and all I had to do was slide it into my mod stack - OBody will pick it up automatically as an option. I did hide the CBBE XML file just to ensure it doesn't get loaded accidentally.

 

To go with that nice new body, I downloaded COCO Pinup Cheongsam. I never particularly liked how the Blue Palace servants from Hydragorgon were naked, and this seemed like a nice outfit that still leaves little to the imagination but is a bit classier than the bareskinned look. Since we've had some issues with COCO's slot assignments in the past, let's start by looking up those pieces in xEdit. We have:

 

  • Gloves: Slot 33 (OK)
  • Coat: Slot 46 (OK)
  • Panties: Slot 45 (Should be 49)
  • Heels: Slot 37 (OK)
  • Bra: Slot 32 (OK - includes reference body)
  • Furs: Slot 57 (Acceptable, but probably should be 47)
  • Stockings: Slot 56 (Should be 53)
  • Torso (Skirt): Slot 58 (Acceptable, but ideally would be 49 with a third mesh that merges it with the Panties)

 

On this mod, none of the models have Dismember data in the nifs, so we only need to edit their data in xEdit. Let's do that now. We also need to add our traditional keywords and slot blocks to the top and bottom. We won't initially do this for the dress until we assess how close it lies to the torso (i.e., will pubic hair intrude through the mesh?). 

 

image.png.a5d589e9ad5d49127cac93f14f9b4f10.png

image.png.59ab337dd5384709a93ede3220bca775.png

 

Now we'll make two outfits - an indoor one and an outdoor one. The indoor outfit will omit the panties, furs, and coat. 

 

image.png.ab36238d015c768998bdabdb1b93ca50.png

 

With these made, let's identify the Hydragorgon servants for Solitude - specifically the Blue Palace servants and the "city property" slaves. The former get the "indoor" outfit, while the latter get the "outdoor" version. Now let's examine what we've got.

 

image.png.86814ef2f25ec99df84d5f90a3cd6ed2.png

 

OK, there's some fuckery going on here. It looks like the morphs for the outfit aren't asserting themselves properly (also, the high heels aren't getting handled right - might be missing RMHH data). I'll need to keep working on this tomorrow to smooth out the way everything's looking. For now though, I think I've put in enough modding time for the day!

 

 

Alright, well, I've got a lot of 'work in progress' ongoing, but when all's said and done we should have some nice enhancements in the game. See you all tomorrow!

 

2 Comments


Recommended Comments

I want to take some time to thank you. I struggled with xEdit because there is so much missing or conflicting information about xEdit. Before I found your blog I was putting bits and pieces together to be able to use xEdit at a basic level and most of the time I had no idea what I was doing. You broke everything down so simplistically and start with the basics. I now have a much better understanding of xEdit and conflict resolution thanks to both your mod diaries and case studies. You more than anyone else have helped me to properly set up a mod list. I always look forward to reading your mod diaries

 

Link to comment
1 minute ago, OceanPepper said:

I want to take some time to thank you. I struggled with xEdit because there is so much missing or conflicting information about xEdit. Before I found your blog I was putting bits and pieces together to be able to use xEdit at a basic level and most of the time I had no idea what I was doing. You broke everything down so simplistically and start with the basics. I now have a much better understanding of xEdit and conflict resolution thanks to both your mod diaries and case studies. You more than anyone else have helped me to properly set up a mod list. I always look forward to reading your mod diaries

 

 

Thanks for letting me know, and I'm glad I was able to help out! I had two goals with writing these diaries:

 

  1. Document the lessons I'd learned as I developed my modding hobby so other folks could benefit from them, and
  2. Challenge myself to take things to the next level by putting a spotlight on me and discouraging me from cutting corners.

From what you've said, it sounds like I'm succeeding at goal #1, and that's great to hear. I totally agree with you about the problem of missing and conflicting information, both about xEdit in particular and about Skyrim modding more broadly. I don't pretend to be a perfect source of knowledge - I myself have huge gaps in my capabilities still - but I want to do my part to make things a little better.

 

I hope you'll continue enjoying my technical blogs in the days ahead!

Link to comment

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more information, see our Privacy Policy & Terms of Use