Jump to content

Mesh Extended Swap System


Recommended Posts

MESS - Version 2.1
(a.k.a. Version 2, take 2)

After much testing, the stripping problem was located in the SetBodyMess initialization. It was too delayed in starting and in finishing.  Besides, that problem should have only occurred one time per game load about a minute in. Well, it's fixed.  Along the way I found more stuff to fix while hunting this bug. I also looked at the bound item situation in BreakArmor.  Before bound items were just skipped altogether.  At least now with blockhead they can be supported passively.  By that, I mean it still isn't safe for BA to force the mesh switch when you equip the item or at the time of damage.  However, if something else triggers the equip, the mesh can get updated by blockhead.  In short, it's better than it was before, but still not great.

 

I'm so glad that disrobing bug wasn't blockhead's doing since that would just break this whole MESS.

 

 

 

Link to comment

Any other mesh swapping mods/ideas to try to incorporate into MESS?  I could possibly do per-NPC, but that's so specific. I mean, anyone want a particular NPC to have the meshes replaced?  I would think it'd be easier to give them clothes and/or set body type to use SetBodyMess.  I wonder if per-mod would be more interesting.  I'm just trying to wrap this mod up and call it done.

Link to comment

....just throwing an idea out there, but does the latest blockhead have a way to alter animations when equipping an item?

 

Like, if you have a spear weapon and equip it, could you have your character use a new folder for it's attack animations?

 

I know it's kind of outside this mod's goals, but In my ignorance, I thought that if such an option were available, it wouldn't be to different from what you're doing.

Link to comment

Iamnoone, hello. I want ask you how to set mesh path for TGND body in setbodymess.ini? I can't get meshswap as it goes for DMRA or Zkec - it doesn't work.

 

I stil have issues with body armors for ZCEK (as for others which ocuppy 3-4 bodytokens).

E. g. I get ZCEK replacement work specifying only upperbody slot in setbodymess.ini. As for me it stops working when lowerbody is set. It means that engine selects defined upperbody and somehow other parts (here greaves or pants) are replaced too (Despite the fact that the lowerbody isn't set in ini file and if all lower meshes are in the folder). For me the problem is that lowerbody in 3 token body cannot be dinamically changed. If I type paths and declare upper and lowerbody for ZCEK in ini the whole ExtendedMeshswap breaks for all other clothes and armors.

 

 
1. This variant works well - lowerbody is fixed and cannot be changed then.
 
set SBMessIni.iBody1 to sv_construct "ZKECExplorerE" ;petit body, ZKEC(a-bcup,l-lllowerbody) 
set SBMessIni.prefix1 to sv_construct "ZKECA"
setstage SBMessIni 10
 
2. doesn't work
 
set SBMessIni.iBody1 to sv_construct "ZKECExplorerE" ;petit body, ZKEC(a-bcup,l-lllowerbody) 
set SBMessIni.iBody2 to sv_construct "ZKECSL"
set SBMessIni.prefix1 to sv_construct "ZKECA"
set SBMessIni.prefix2 to sv_construct "ZKECA"
setstage SBMessIni 10
 
3. Also doesn't work for me
 
set SBMessIni.iBody1 to sv_construct "ZKECExplorerE" ;petit body, ZKEC(a-bcup,l-lllowerbody) 
set SBMessIni.iBody2 to sv_construct "ZKECSL"
set SBMessIni.iBody3 to sv_construct "ZKECFoot"
set SBMessIni.prefix1 to sv_construct "ZKECA"
set SBMessIni.prefix2 to sv_construct "ZKECA"
set SBMessIni.prefix3 to sv_construct "ZKECA"
setstage SBMessIni 10
Link to comment

Iamnoone, hello. I want ask you how to set mesh path for TGND body in setbodymess.ini? I can't get meshswap as it goes for DMRA or Zkec - it doesn't work.

 

I stil have issues with body armors for ZCEK (as for others which ocuppy 3-4 bodytokens).

E. g. I get ZCEK replacement work specifying only upperbody slot in setbodymess.ini. As for me it stops working when lowerbody is set. It means that engine selects defined upperbody and somehow other parts (here greaves or pants) are replaced too (Despite the fact that the lowerbody isn't set in ini file and if all lower meshes are in the folder). For me the problem is that lowerbody in 3 token body cannot be dinamically changed. If I type paths and declare upper and lowerbody for ZCEK in ini the whole ExtendedMeshswap breaks for all other clothes and armors.

 

Sorry, I'm still not sure what you're wanting and what it is/isn't doing? (it's late for me, right now) Could you post (or pm me) your complete ini? Also, links to meshes you're using would help.

 

....just throwing an idea out there, but does the latest blockhead have a way to alter animations when equipping an item? 

Like, if you have a spear weapon and equip it, could you have your character use a new folder for it's attack animations? 

I know it's kind of outside this mod's goals, but In my ignorance, I thought that if such an option were available, it wouldn't be to different from what you're doing.

I don't think it does.  Underneath the hood it is different at least from MESS and current blockhead perspectives.  Equipment based animations does seem doable, but we share common ignorance there.  That is shadeMe's department, and you could float that suggestion in the blockhead thread at Bethsoft.  I know shadeMe hasn't gotten around to address current Blockhead issues, but seems open to adding things to the "when I get a chance" list.

 

Link to comment

Here is ini.

 

I tested your TGND and ZCEK ini entries as well as the variations you posted above.  They are all valid and work for me as the mod should.  When a bodytype is matched to an ini entry, ALL bodyparts will be swapped with meshes found in that path.  That is, not just the ones defined in the iBody variables.  If only an upperbody is defined, any lowerbody type replacements found in that path will be used when a body is matched.  I get the feeling you want only the parts defined to get swapped, which is not the way SetBodyMess works.  I can look into it though.

Until then you can make  #_of_upperbody x #_of_lowerbody (x #_of_ ...) entries do each fixed combination. :D

Link to comment

 

Here is ini.

 

I tested your TGND and ZCEK ini entries as well as the variations you posted above.  They are all valid and work for me as the mod should.  When a bodytype is matched to an ini entry, ALL bodyparts will be swapped with meshes found in that path.  That is, not just the ones defined in the iBody variables.  If only an upperbody is defined, any lowerbody type replacements found in that path will be used when a body is matched.  I get the feeling you want only the parts defined to get swapped, which is not the way SetBodyMess works.  I can look into it though.

Until then you can make  #_of_upperbody x #_of_lowerbody (x #_of_ ...) entries do each fixed combination. :D

 

Thank you!

Link to comment
  • 3 weeks later...

In the old/classic Tamago Set body you set all phases in the TamagoSetBody.ini, body and clothes.

The 3 trimesters, and Prolonged pregnancy , Postpartum and Postpartum (stillbirth).

 

Isn't there a ini ?  copy the body and clothes entries from the 2nd trimester and paste them to the Postpartum phase.

 

.....................

But why the 2nd trimester body meshes and outfits during the Postpartum phase? After birth and still look pregnant ???

 

Link to comment

Movomo's Tamago Setbody Reboot 2.02 has postpartum phase. How do I set postpartum phase so it uses 2nd trimester meshes for outfits?

Very little functionality was changed from the original version to this MESS one. So if it worked then, it really should work now.  The ini is the same except for some variable additions.  However, looking at the ini:

; Mesh-swap is supported for up to 4 pregnant meshes (_prg1 to _prg4 that is), and only triggered for
; pregnant stage 110 to 140.

Mesh swap isn't even supported in the original for postpartum, which is stage 150 (151 for stillbirth).  Only body type switching is supported for postpartum.

Link to comment

MESS Version 2.2
* SetBodyMess.esp
- Added Unlimited pathsets for a bodytype combination and ranking
- Added Scanning for all possible pathsets for a bodytype and return highest ranking one

No longer limited to primary (prefix1/suffix1) and secondary (prefix2/suffix2) paths.  Those variables were replaced with prefix/suffix, bu now multiple entry blocks for the same bodytypes can be specified.  Also, added a "rank" variable to the entry block for determining the path/mesh with highest priority.  Multiple body parts can lead to multiple paths if they each have a path specified.  The previous versions would quit on the first hit.  Now all the hits are gathered and sorted by rank.  Searching goes down the line until a file is found.  Still reverts to vanilla/default if no alternate mesh file is found.

Link to comment

 

Movomo's Tamago Setbody Reboot 2.02 has postpartum phase. How do I set postpartum phase so it uses 2nd trimester meshes for outfits?

Very little functionality was changed from the original version to this MESS one. So if it worked then, it really should work now.  The ini is the same except for some variable additions.  However, looking at the ini:

; Mesh-swap is supported for up to 4 pregnant meshes (_prg1 to _prg4 that is), and only triggered for
; pregnant stage 110 to 140.

Mesh swap isn't even supported in the original for postpartum, which is stage 150 (151 for stillbirth).  Only body type switching is supported for postpartum.

 

 

Hope we get mesh swamp support for _prg4 / 150/151 / postpartum phase.

 

Link to comment

Hope we get mesh swamp support for _prg4 / 150/151 / postpartum phase.

Sorry, I don't think I could pull that one off without messing up the whole system.  movomo would be the one to make the request to, but he's been silent for a while. Though I do still see him logon occasionally (yes, I've been watching you), I would assume he's not too eager to get back into modding.

Link to comment
  • 2 weeks later...

Anyone else try RaceMESS? It's esp is on, beta blockhead with EquipmentOverride set to 1, tried both prefix and suffix in the ini as outlined by the provided txt file.

 

...and,still will not work for me.

 

set RaceMessIni.svRace to sv_construct "Imperial"
set RaceMessIni.prefix1 to sv_construct "ape"
setstage RaceMessIni 10   ;End of this entry
 

is my current setup with meshes\ape\armor\chainmail\f where I put the alt meshes, although I'd rather get the suffix to work instead

Link to comment

Anyone else try RaceMESS? It's esp is on, beta blockhead with EquipmentOverride set to 1, tried both prefix and suffix in the ini as outlined by the provided txt file.

Your ini setup looks right, if indeed your files are present named the same way.  Looking at my scripts, I see I removed all print commands (for some reason), making the debug option useless.  Unfortunately, I'm unable to do much modding/testing for a while.  I can only ask you to double-check your end.   Make sure you're using MESS 2.2 (MeshExtendedSwapSystem 2_2). Verify the NPCs are known to be Imperial (Nords and others look similar) using FormID Finder or UESP and wearing the items to be swapped (using FormID Finder).  If you have other MESS mods activated, disable those to test.  Sorry, that probably doesn't help much, but I'll try to get back into it when I can.

Link to comment
*snip*

Yeah, reinstalled the 2.2 folder's blockhead dll and racemess.esp just in case.

Wasn't running any other mess esp's. defiantly not going to mix up the races the way I modded them.

checked to see if any mods changed the name/editor ID of the imperials... still not working.

I wish I were more informative, I know how hard it is trying to figure ot the problem with something like this, best of luck when you get the time.

 

just to be clear though...

 

what should be put into the ini, the race name or the race editor ID?

Does load order matter at all?

Race mess should effect npc and player character the same with no other MESS influences, right?

 

I hope others can test if raceMESS works for them and report their findings.

Link to comment

what should be put into the ini, the race name or the race editor ID?

Does load order matter at all?

Race mess should effect npc and player character the same with no other MESS influences, right?

Thanks for taking your time to test this out.

 

I'll see if I can at least post a version with more verbose debug printing, if you're will to be the guinea pig, that is.

The race should be as it appears in character creation or formid finder.  The real name. 

Load order shouldn't matter (maybe "shouldn't" is more appropriate). 

NPCs and player should both be affected equally.

 

My last ditch suggestion is to clean save if you had any pre-2.2 versions on this save.  Otherwise, I think we've exhausted all the things you can try.

 

Oh, I just remembered!  Even though my logging got commented out, Blockhead has its own log.  If you're willing to sift through that.

Each block in the blockhead log is an equip for a single item on a single NPC (or PC). Example:

 

 

Attempting to override equipment model for NPC Ref Ahessa Yandel (9C0AC7AA) | Body Part = 2, Source Item = Forester's Shirt (00064F79)
		Handler 1 | Filters: REF(00000014), NPC( 00000000), RACE( 00000000), ITEM( 00000000)
			Filter mismatch
		Handler 2 | Filters: REF(00000000), NPC( 00000000), RACE( 00000000), ITEM( 00000000)
			Handler script returned an invalid result of type 4
		Handler 3 | Filters: REF(00000000), NPC( 00000000), RACE( 00000000), ITEM( 00000000)
			Added override item with priority 30, model source (null) (EF000806), model HGEC\Clothes\MiddleClass\MCShirtForester\F\Shirt.NIF
		Handler 4 | Filters: REF(CE000ED5), NPC( 00000000), RACE( 00000000), ITEM( 00000000)
			Filter mismatch
		Handler 5 | Filters: REF(CE001C85), NPC( 00000000), RACE( 00000000), ITEM( 00000000)
			Filter mismatch
		Applied override: Model Source - (null) (EF000806), Model Path - HGEC\Clothes\MiddleClass\MCShirtForester\F\Shirt.NIF

 

 

 

If RaceMess is successfully registered with blockhead, there should at least one Handler in the block.  If not, initialization is failing.  Now to keep it simple, just use one race to start and only RaceMESS.  That way, there should only one Handler listed.  Important: ignore NPC,RACE, ITEM parts of the output.  As far as I can tell, that filtering part of blockhead isn't working correctly and I don't make use of it in my mod.  When RaceMess finds a matching race and a mesh replacement, there should be an entry like Handler 3 in the example: "Added override..." and block should end with "Applied override...".  If there's an NPC listed with a "Source Item"  that you know should be swapped, but the end of the block says "No overrides found", that is RaceMess messing up.

Link to comment

I'm a big dummy, everything seems to work, the only oddity seems to be needing a new save after editing the ini, but I'm sure I'm mistaken.

 

So sorry to waste your time, I can't believe how stupid I was, all I needed was a fresh save.

 

Thank you for this wonderful mod.

Link to comment

"quote"

Don't worry about it.  I should apologize to you.  I wasn't sure if a clean save was necessary. I did consider advising to do it, just in case.  I guess we both discovered the hard the way the answer to that.

Link to comment
  • 2 months later...

Trying MESS now but I can't get SetBodyMess.esp to work.

 

I have the folder "meshes\DMRAReplacer" under "data" with my replacer meshes - specifically, these come from DMRA BBB Complete Clothing and Armor Replacer. I'm using this with SetBody Reloaded Blockhead Edition v1.46a. I'm using Blockhead 10.3 from the Nexus instead of the Blockhead that comes with MESS.

 

In-game I set my upper body and lower body (using the Set Body Self power) to "DMRA Original". My body changes but my clothing (in this case a green robe) doesn't.

 

This is my ConScribe static log:

 

 

Now playing: D:\Games\Oblivion\Data\Music\Special\tes4title.mp3
Now playing: D:\Games\Oblivion\Data\Music\Explore\atmosphere_08.mp3
===============================================
Game Instance : 1 | Time : 07-15-2017 21-21-29
===============================================
MMO:Updated values from 'Data\ini\Map Marker Overhaul.ini'
SetBodyMess: INI settings loaded
SetBodyMess:: Initialized
Initializing MiniMap v1.2.0...
MiniMap Initialized v1.2.0
PiiiP: INI Initialized !
RTL: Laura has a base skill of 5
[Set Body][INFO] 665 bodies are loaded.
[Set Body][INFO] (F)69menu 69items/(M)6 menu 6items are loaded.
EH:Updated values from ini file in data\ini\.
DM:Insert map rectangle
Francesco's Creatures and Items: Loaded INI Values
All Natural Tamriel: Initialised
All Natural SI: Initialised
Supreme Magicka: Initialised Succesfully
[Set Body][INFO] Blockhead Ed. v1.46 Initialized: 0 actors are in charge of SetBody. (RefID : 4D0225E2)
[Set Body][INFO] SET DMRABBBB|DMRABU Laura DMRA\HandsAndFeet\femalefoot.nif DMRA\HandsAndFeet\femalehand.nif DMRA\UpperBody\femaleupperbody.nif DMRA\LowerBody\femalelowerbody_BBB.nif

 

 

This is my SetBodyMess.ini (at first I was just using "DMRABU" as the body code until I looked in the ConScribe log; I also tried assigning "DMRABBBB" to "iBody1" and "DMRABU" to "iBody2"):

 

 

set SBMessMain.iMeshPriority to 30

set SBMessIni.iBody1 to sv_construct "DMRABBBB|DMRABU"
set SBMessIni.prefix to sv_construct "DMRAReplacer"
setstage SBMessIni 10   ;End of this entry

set SBMessMain.doodeebug to 1

 

 

And finally here's my active mods:

 

 

00 Oblivion.esm
01 All Natural Base.esm [Version 1.36]
02 Francesco's Leveled Creatures-Items Mod.esm [Version 5.0]
03 Mart's Monster Mod.esm [Version 3.8b1]
04 HorseCombatMaster.esm
05 Unofficial Oblivion Patch.esp [Version 3.5.5]
06 Oblivion Citadel Door Fix.esp
07 DLCShiveringIsles.esp
08 Unofficial Shivering Isles Patch.esp [Version 1.5.9]
09 Francesco's Creatures and Items Resources.esp [Version 5.0]
0A All Natural.esp [Version 1.36]
0B All Natural - SI.esp [Version 1.36]
++ All Natural - MMM Patch.esp [Version 1.3]
0C All Natural - Real Lights.esp [Version 1.36]
0D WindowLightingSystem.esp
0E AliveWaters_nofish.esp
0F CT-Just Another Combatant.esp
10 Simple Saves.esp
11 BookTrackerOBSE.esp
12 DarNifiedUI Config Addon.esp
13 Display Stats.esp [Version 2.0.1]
14 [Hexaae] Get Wet v0.92.esp [Version 0.92]
15 kuerteeCleanUp.esp
16 Lock Bash Omega.esp [Version 1.5]
17 MigMiscellanea.esp [Version 1.82]
18 OblivionReloaded.esp
19 Spell Delete.esp
1A Dynamic Map.esp [Version 2.1.1]
1B Map Marker Overhaul.esp [Version 3.9.3]
1C Map Marker Overhaul - SI additions.esp [Version 3.9.3]
1D Enhanced Hotkeys.esp [Version 2.3.1]
1E DLCHorseArmor.esp
1F DLCHorseArmor - Unofficial Patch.esp [Version 1.0.9]
20 DLCOrrery.esp
21 DLCOrrery - Unofficial Patch.esp [Version 1.0.7]
22 DLCVileLair.esp
23 DLCVileLair - Unofficial Patch.esp [Version 1.0.11]
24 DLCMehrunesRazor.esp
25 DLCMehrunesRazor - Unofficial Patch.esp [Version 1.0.7]
26 DLCSpellTomes.esp
++ DLCSpellTomes - Unofficial Patch.esp [Version 1.0.1]
++ MaleBodyReplacerV5.esp
27 DLCThievesDen.esp
28 DLCThievesDen - Unofficial Patch.esp [Version 1.0.15]
29 DLCThievesDen - Unofficial Patch - SSSB.esp [Version 1.0.14]
2A Francesco's Optional Dungeon Chest Loot.esp [Version 5.0]
2B Francesco's Optional House Chest Loot.esp [Version 5.0]
++ Francesco's Optional Vendor Tweaks.esp [Version 5.0]
2C Francesco's Optional Leveled Quests.esp [Version 5.0]
2D Francesco's Optional Leveled Arena.esp [Version 5.0]
2E Mart's Monster Mod.esp [Version 3.8b1]
2F Mart's Monster Mod for Fran.esp [Version 3.8b1]
++ Mart's Monster Mod - Shivering Isles.esp [Version 3.8b1]
30 Mart's Monster Mod - Additional Enemy NPC Vars.esp [Version 3.8b1]
++ Mart's Monster Mod - Looting NPCs & Creatures.esp [Version 3.8b1]
31 Mart's Monster Mod - Zombies for Body Meshes.esp [Version 3.8b1]
32 Mart's Monster Mod - Fran's leveled quests.esp [Version 3.8b1]
++ Mart's Monster Mod - Less Rats.esp [Version 3.8b1]
++ Mart's Monster Mod - Safer Roads.esp [Version 3.8b1]
++ Mart's Monster Mod - No Bone Loot.esp [Version 3.8b1]
33 Mart's Monster Mod - Safer Quest Locations.esp [Version 3.8b1]
34 Mart's Monster Mod - More Wilderness Life.esp [Version 3.8b1]
35 Mart's Monster Mod - More Wilderness Life No Gates.esp [Version 3.8b1]
++ Mart's Monster Mod - More Passive Wildlife.esp [Version 3.8b1]
36 Mart's Monster Mod - City Defences.esp [Version 3.8b1]
37 Mart's Monster Mod - Farm Animals.esp [Version 3.8b1]
38 Mart's Monster Mod - Diverse WaterLife.esp [Version 3.8b1]
++ Mart's Monster Mod - DLCHorseArmor+Slofs .esp [Version 3.7b7]
39 Mart's Monster Mod - Diverse Creatures Expansion.esp [Version 3.8b1]
++ Mart's Monster Mod - RadiantAITweaks.esp
3A APlaceToSleep.esp
3B Kvatch Rebuilt.esp [Version 3.0]
3C Kvatch Rebuilt Weather Patch.esp
3D RoadLights.esp
3E DLCBattlehornCastle.esp
3F DLCBattlehornCastle - Unofficial Patch.esp [Version 1.0.12]
40 DLCFrostcrag.esp
41 DLCFrostcrag - Unofficial Patch.esp [Version 1.0.10]
42 Knights.esp
43 Knights - Unofficial Patch.esp [Version 1.1.8]
++ Mart's Monster Mod - Knights.esp [Version 3.8b1]
44 Harvest [Flora].esp [Version 3.0.0]
++ Harvest [Flora] - Shivering Isles.esp [Version 3.0.0]
++ Harvest [Flora] - DLCVileLair.esp [Version 3.0.0]
45 Harvest [Flora] - DLCFrostcrag.esp [Version 3.0.0]
46 Better Dungeons.esp
47 Dungeon Actors Have Torches 1.6 DT.esp
48 Exterior Actors Have Torches 1.32 DT.esp
49 Toggleable Quantity Prompt.esp [Version 3.2.0]
4A Alternative Start by Robert Evrae.esp
4B Shorter Escape.esp
4C Summon Dremora Lord Saved.esp
4D SetBody.esp
4E SupremeMagicka.esp [Version 0.90b]
4F SM_ShiveringIsles.esp [Version 0.90]
++ SM_DLCSpellTome.esp [Version 0.90]
++ SM_NoSpellLights.esp [Version 0.90]
++ SM_Scrolls.esp [Version 0.90]
++ SM_SigilStone.esp [Version 0.90]
50 MigLockpicking.esp [Version 1.8]
51 Enhanced Grabbing.esp [Version 0.5]
52 DenockArrowToo.esp
53 Deadly Reflex 5 - Timed block and 150% damage.esp
54 DeadlyReflex 5 - Combat Moves.esp
55 Oblivion XP.esp
56 TimeEnough.esp
57 Oblivion_Character_Overhaul.esp [Version 2.0]
58 Remove_Persuasion_Game_Replies-3059.esp
59 MiniMap.esp
++ SM_DeadlyReflex5.esp [Version 0.86]
** All Natural - Indoor Weather Filter For Mods.esp [Version 1.36]
++ Mart's Monster Mod - Divserse Wisp and VASE Addon.esp [Version 3.8b1]
++ Mart's Monster Mod - Undead Rise Fix.esp
++ GlenroyTorch.esp
5A Waterfront Passage.esp
5B Dahyka's Vanilla Racial and Birthsign Tweaksv2.2.esp
5C Bashed Patch, 0.esp
5D SetBodyMess.esp

 

Link to comment

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • 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