Outfit Loader Script - No More Drag-Zero-Default!

Description

Have you ever used a model whose outfit and/or hair were separate models?

If so, then you probably know the awkwardness that is waiting for the model-viewer to pop up, scrolling down to the outfit/hair piece, and then spawning them all in one by one; and then having to drag the base model onto each of them to lock them, the needing to select them all and Zero them, and then finally expand their Unknown tabs and select all of their non-locked jigglebones, rope / cloth bones, dress bones, etc, and hit them with Default.

It's a drag, but that's just the way things are. Right?

Not anymore!

With the Outfit Loader Script, there is no spawning in all of the outfit/hair pieces, no dragging, no Zero'ing, and no Default'ing. Instead, all you need do is spawn in your base model, run the script on it, pick the outfit/hair pieces you want to attach, hit Load Outfit, and close the script.

Then zip-zop-zoopity-bop, the models are spawned, positioned, and parented, with virtually zero delay! And without having to unbunch any of those pesky dress bones! (Glaring at Elizabeth intensifies)

While on a surface level this might sound like it operates on a similar level to Revzin's DOTA2 auto-loader script, there's actually very little similarity. Notedly, Revzin's script is restricted to a very naive solution of just spawning and loading models that share similar names, which works great for DOTA2 and not much else.

Instead, this script bears a great resemblance to my Bodygroup Presetter Script, and indeed shares ~90% of its code (including its UI) with said tool. As such, it does require a first-time set-up for models and outfits, but once you've got it all set up, you're golden!

Setting up is extremely easy: simple spawn in your model and all the outfits / hairs that you want to load onto it. Make sure that only the models you want on a given outfit are visible (click the "eye" icon to hide all of the others), load the Outfit Loader on the model you want to add the outfits to (it loads like an IK rig script), hit "Save Outfit", give it a name, and save. And then, voila! Every other model visible at the time of saving is now considered an outfit piece.

This particular solution allows you to group multiple models together into a single unified outfit, so if you have a model whose outfit is, say, spread across 4 models, then with a single "Load Outfit", you can automatically spawn and attach all 4 models!

The only downside to this solution is you can't really use it while in the middle of a scenebuild, because you have to turn everything else invisible - otherwise, you'll be saving your entire scene as an outfit, and while hilarious, that probably isn't what you want!

Though that being said, you could use this as a way to prefab scenebuilds. Hint, hint.

By default, when you save an outfit, it will also save the bodygroup set-up of the model you're saving it on. So if your model has bodygroups that clip through the outfit (such as a bra, for example), then you simply turn those bodygroups off before saving.

There is a "Use Bodygroups?" option that you can turn off to make your outfit be bodygroup-agnostic, meaning it won't change your bodygroups when you load the outfit. Perfect for hair!

I have provided some pre-existing prefabs for you all. Included are the following:

Enough words, though! You want to see videos of just how easy this tool really is to use! So have some gfycats showing exactly that! Due to embeds currently being broken, you'll have to click the links. Sorry!

This last one isn't a gfycat, but is a real-time demonstration of the time saved to load the Student outfit onto Elizabeth. With the classic way, it takes nearly 50 seconds - with the Outfit Loader, it takes just barely 6!

The modular way that these Outfit Presets are saved is really simple, too! The data is saved as an .OFL file (OutFit Loader file) in the LordAardvarkScriptData, in the same folder that houses your usermod folder. The files are named after the models they're for.

This modular design means that it's really easy for people to make presets for other models (such as, for example, Ganon's Witcher models, which also use separate models for outfits), and then share them with the world.

In fact, it's so easy, that people can send me their presets through SFMlab's messaging system, and I will mirror them and list them at the bottom of this post, for others to download and enjoy! So if you've got some new presets you want to share with the world, just toss me a message with them!

As a final note, if you're missing some of the DOAFantasy or Curvy outfits that these presets are made for, you can find them all on the Assets page of my website. The DOAFantasy lingerie is currently not released, but will be released tomorrow.

While all of the presets and examples are for NSFW models, this tool itself is not NSFW (it contains no model or texture data, only text files), and so I am not marking it NSFW. If that's an incorrect decision, then the moderators can feel free to tag it NSFW or message me to do so.

The Outfit Loader just shortcuts the classic way of attaching outfits. Though it uses parent constraints rather than locks - it is possible that parent constraints do not transfer scale, unlike locks. I've never tested it, as I don't rescale models.

Outfit Loader doesn't properly works for me. When I'm trying to load some outfits like "exotic" I just get a huge red ERROR text instead of the costume. Also when I'm trying for example to load anything on some (not all) of your models like for elizabeth_curvy I have just the empty list. Only loading of hairs does work properly. Do I need to download the costumes manually? Can't find the exotic one on your profile.

Yes, you have to download the outfits yourself.
"Exotic" is Lisa's outfit.
You also need to download or create the Outfit Loader .OFL files manually. Elizabeth's, for example, comes with the latest version of her, here on SFMLab.
Not all of the outfits I've released are on SFMLab. You can find them all on my Assets page, of my website: **[http://lordaardvark.com/assets.html](http://lordaardvark.com/assets.html)**