Jump to content

Old HDT Support Thread.


Monsto Brukes

Recommended Posts

About hair module : current hair module is too bugly to use. I need to find out a hook point to do what I do on armor. But it's very difficute. The only thing I know is it must be somewhere near UINT __thiscall 0x005A60D0(char* nifpath, char* tripath, UINT unk/*maybe weight*/), which is used to load mesh.

 

About nioverride.dll : I don't know what's wrong. I capture an unhandled C++ except throw by nioverride itself. this is the full infomation:

Unhandled exception at at 0x76E5C41F in TESV.exe: Microsoft C++ exception: std::__non_rtti_object at memory location 0x0018F02C.

This is a member function to BSFaceGenModel, a thiscall to a string doesn't make any sense.

 

bool BSFaceGenModel::sub_5A60D0(char * path, char * triPath, UInt32 unk1)

 

The BSFaceGenModel is created prior to this and is mapped to the nif name using a member function of the MorphDatabase (object on FaceGen). The actual mapping part is probably irrelevant to what you need. 

 

The parent function to this (sub_5A3F20) is a member function to FaceGen that takes the TESModel's name of the HeadPart, as well as a ptr to ptr of the BSFaceGenModel. This is where it acquires the model path (from the TESModelTextureSwap)

 

 

bool FaceGen::sub_5A3F20(char * modelName, Unt32 unk1, BSFaceGenModel ** faceModel, UInt32 unk2, UInt32 unk3)

 

The BSFaceGenModel looks like this:

// 10
class BSFaceGenModel : public NiRefObject
{
public:
struct Data08
{
UInt32 unk00; // 00
NiAVObject * unk04; // 04
NiAVObject * unk08; // 08
UInt32 unk0C; // 0C
BSFaceGenMorphData * unk10; // 10
};
 
Data08 * unk08; // 08
UInt32 unk0C; // 0C
};

This isn't really where you want to be looking though, this is regarding generated heads that are morphed so this would be player only,

0056AEB0 is where you should be looking

 

QueuedHead happens for all actors who are about to have their head loaded, the first virtual function here (0042BCF0)

will call 0056AEB0 (GetFaceGenHead) this is the function that gets the head from either generating it 00579530 (GenerateHead) or loading it 0056A8E0 (LoadExternalHead) as you can see in the loading function 005607A0 (LoadHeadNif) references the static path: Meshes\\Actors\\Character\\FaceGenData\\FaceGeom\\%s\\%08X.NIF

 

GetFaceGenHead is also called in a few other places where the head is forcefully reloaded rather than queued. 

 

007031A0 (ActorEquipData::UpdateEquipment - Called by QueueNiNodeUpdate)

00543E50+0x588 (ModifyFaceGen console function)

 

Your best bet would be to hook somewhere after GetFaceGenHead, or right at the end of it by writing a jump before the return and code-caving.

 

Link to comment

About hair module : current hair module is too bugly to use. I need to find out a hook point to do what I do on armor. But it's very difficute. The only thing I know is it must be somewhere near UINT __thiscall 0x005A60D0(char* nifpath, char* tripath, UINT unk/*maybe weight*/), which is used to load mesh.

 

About nioverride.dll : I don't know what's wrong. I capture an unhandled C++ except throw by nioverride itself. this is the full infomation:

Unhandled exception at at 0x76E5C41F in TESV.exe: Microsoft C++ exception: std::__non_rtti_object at memory location 0x0018F02C.

 

another great mod,  thx aloot HDT !!  :blush::heart: :heart: :heart: :heart:

if u are beside me i'll kiss u passionately i swear ( if u are a girl tought  XD )

 

Link to comment

is it possible to change the values of hdtPhysicsExtensionsDefaultBBP.xml to remove the annoying butt jiggle and to make the boobs bounce like the natural breast animation?? i love these animations, but unfortunately they work only for non-drawn weapon walking, running and sprinting animations :(

 

I also would be interested in seeing how to turn off butt jiggles completely via the included xml!  Any help or input would be AWESOME!!!!!!  :D

Link to comment

Loved this mod and everything was working fine up to today. I made a new character and when I changed her Glute size using RaceMenu by expired her right butt cheek sags and deforms whenever I move. I removed all hdtPhysicsExtensions from SKSE plugins, but it still happens ( and I don't even get a slight jiggle ). I updated RaceMenu to the newest version for compatibility just now following this thread looking for a fix, as well as removed all traces of BOTH mods, and ALL of my characters are doing this.

 

Again, this is now happening on every character I have, regardless, and any new character, and it wasn't doing it until I created a new character.

 

Anyone know what could have caused this and help me fix it? I honestly have no clue, and that's saying a lot.

 

Attached is a screenshot of what I'm talking about.

 

****EDIT!!!****

 

TOTALLY MY FAULT! The other day I had a bit of an incident and had deleted by accident my actors\character folder. When I replaced everything with a copy paste I put skeleton_female.hkx back in by mistake. Got everything sorted out. THANKS FOR THIS GREAT MOD HDT!

post-36568-0-39910200-1381000351_thumb.jpg

Link to comment

I've been getting something strange with this. Been testing it out and so far with some success (Lydia doesn't piss me off quite as badly as she used to, wonder why that is), but I've been getting issues with animations, with random actors, of any gender. They just stand there in that frozen Da-Vince pose and talk, but don't move, which kills several quests right in their tracks.

I've lurked the threads and it could quite literally be anything conflicting with it at this point, as I modify the ever-loving hell out my game performance and gameplay wise. So I'm checking to see if anyone else has had this issue and if they use some similar things in skyrim, like Hialgoboost, or hialgoswitch, or modloader. I heard something about a d3d9.dll causing trouble, which is necessary for the HialgoBoost. I've installed it properly, no skeletonfemale.hkx (and loaded with it as well,doesn't solve the issue), files in the right folders etc... and I was hoping anyone might have an idea as to whats up.

Link to comment

I've been getting something strange with this. Been testing it out and so far with some success (Lydia doesn't piss me off quite as badly as she used to, wonder why that is), but I've been getting issues with animations, with random actors, of any gender. They just stand there in that frozen Da-Vince pose and talk, but don't move, which kills several quests right in their tracks.

I've lurked the threads and it could quite literally be anything conflicting with it at this point, as I modify the ever-loving hell out my game performance and gameplay wise. So I'm checking to see if anyone else has had this issue and if they use some similar things in skyrim, like Hialgoboost, or hialgoswitch, or modloader. I heard something about a d3d9.dll causing trouble, which is necessary for the HialgoBoost. I've installed it properly, no skeletonfemale.hkx (and loaded with it as well,doesn't solve the issue), files in the right folders etc... and I was hoping anyone might have an idea as to whats up.

 

That sounds like an animation issue if they are doing the T pose.

Try rerunning FNIS.

 

Or if you do not have it that is the problem download version 4 here:

http://skyrim.nexusmods.com/mods/11811/?

Link to comment

i tried the new racemenu and the dll files but somehow hdt still seem to crash when you exit the game.

The "when you exit the game" is the main part here.

-Going over 2.5gb in Data/Textures (or whatever your Ram limit is)

Man, that's olds. Just install and use ENBoost.

Link to comment

Update :

New hair module (much thanks to Expired6978).

warning:

hair will conflict with hairline because they are two different independent headpart. :(

anyone know what hairline do?

 

Fix :

CTD if hair skinned to more than 8 bones.

it's a bug of skyim itself. not my plugin.

An out-of-range error occur at

const BSFixedString& BSFaceGenModelExtraData::0x005A8220(UINT idx);

 

the class BSFaceGenModelExtraData looks like below:

class BSFaceGenModelExtraData : public NiExtraData
{
public:
	BSFaceGenModel* m_model;
	BSFixedString bones[8];
	// ...
};

and the function try to get the 9th element in BSFaceGenModelExtraData::bones(with idx 8)

 

deassember:

005A8220  mov         eax,dword ptr [esp+4] 		 
005A8224  cmp         eax,8  				
005A8227  ja          005A8230  			;if(x <= 8)
005A8229  lea         eax,[ecx+eax*4+10h]  		;return (this+x*4+10h);
005A822D  ret         4  
005A8230  mov         eax,1  				;
005A8235  test        byte ptr ds:[12E32F0h],al  	;
005A823B  jne         005A825F  
005A823D  or          dword ptr ds:[12E32F0h],eax  
005A8243  push        10D1068h  
005A8248  mov         ecx,12E32ECh  
005A824D  call        00A511C0  
005A8252  push        103CE70h  
005A8257  call        00F520BC  
005A825C  add         esp,4  				;static UNKTYPE 12E32ECh
005A825F  mov         eax,12E32ECh  			;return 12E32ECh
005A8264  ret         4  
Link to comment

I think the hairline was meant to be the only part of the mesh that is supposed to have morph capability; the other part is supposed to stay fixed I think. I never looked at the hairline vs hair accessories/ponytail or whatever it is listed as by biped/exporter plugin, but I'm sure it is only used in the case that the forehead gets wider or protrudes/recedes. Not that anyone bothers setting up those morphs, since they only seem to affect beast races.

Link to comment

I think the hairline was meant to be the only part of the mesh that is supposed to have morph capability; the other part is supposed to stay fixed I think. I never looked at the hairline vs hair accessories/ponytail or whatever it is listed as by biped/exporter plugin, but I'm sure it is only used in the case that the forehead gets wider or protrudes/recedes. Not that anyone bothers setting up those morphs, since they only seem to affect beast races.

 

hairline and hair have exactly same mesh and same tri. someone tells me that they have different NiAlphaProperty. one has flag 4845 and lower threshold, another has flag 4844 and higher threshold so it can have soft edge and can be drawn correctly.

they are drawn at the same time. with the same mesh and same morph, you can't notice that they are both showed.

I'm not sure if it's right but seems abandon the 4845 one is not unacceptable.

Link to comment

Help,new version don't read xml, even NPRChinaDres, old version v9-28 work, but new version don't read xml. Writes in logs  Invalid havok serialize file. Although with the old version, this was not, may be I missed it

 

 

 

I don't know.

I add some more log while loading hkx file. It may helps.

 

About NPRChinaDress. I uploaded a new version with fixed physics file.

Old version has wrong collision filter so the breasts strectch.

Link to comment

Very bizarre problem, first with 10-2 and now with 10-6:

 

Immediately after my PC initiated a brawl with an NPC (as part of the Thieves Guild quest line), the game crashed to desktop. Last Papyrus entry was something about "Brawl" and "Dead Body Cleanup Script". After numerous reloads & a fair bit of headscratching, I found that reverting to version 9-28 was the only way to continue (i.e. brawl). Removing/readding nioverride.dll made no difference. Now 10-2, which was stable before this happened, won't load any post-brawl save.

 

Maybe I need to call in a priest to exorcise my computer's demons, but until then I figured I'd report this latest weirdness, :blink:

Link to comment

More testing & finally some results. The bad one's first

xpms v1.8 loses the hooks after a while, hdt physics get disabled. I rolled back to 1.7b which works

I use the following files:

 

from XPMS 1-7b NMM-BAIN Installer-26800-1-7b (http://skyrim.nexusmods.com/mods/26800)

00 Skeleton Rig: skeleton_female.hkx

11 B1HS Chesko: skeletonbeast_female.nif

 

from XP32 1-7b modified skeleton-38066-1-01: (http://skyrim.nexusmods.com/mods/38066)

skeleton_female.nif

 

And I finally (finally!) realized what made me crash all the time... other skse plugins!

hdt doesn't like those at all, I had DCF_plugin.dll (Double-Cursor Fix) and a few others,

once I removed them it works without a hitch. That definitely helped

 

Did you try 1.81 fix ?? so in 1.8 was not working right. Who could know that a skeleton could mess up your game so much. Thanks for posting this fix will see if i get less crashes with the older version.

Link to comment

class BSFaceGenModelExtraData : public NiExtraData
{
public:
	BSFaceGenModel* m_model;
	BSFixedString bones[8];
	// ...
};

BSFaceGenModelExtraData is exactly 30 bytes,

00561540 (BSFaceGenModelExtraData::ctor)

 

00563E60+169 = call

005A58F0+16C = call

Just before the call it allocates on the heap, 0x30.

 

 

I think the hairline was meant to be the only part of the mesh that is supposed to have morph capability; the other part is supposed to stay fixed I think. I never looked at the hairline vs hair accessories/ponytail or whatever it is listed as by biped/exporter plugin, but I'm sure it is only used in the case that the forehead gets wider or protrudes/recedes. Not that anyone bothers setting up those morphs, since they only seem to affect beast races.

 

I think the hairline was meant to be the only part of the mesh that is supposed to have morph capability; the other part is supposed to stay fixed I think. I never looked at the hairline vs hair accessories/ponytail or whatever it is listed as by biped/exporter plugin, but I'm sure it is only used in the case that the forehead gets wider or protrudes/recedes. Not that anyone bothers setting up those morphs, since they only seem to affect beast races.

 

hairline and hair have exactly same mesh and same tri. someone tells me that they have different NiAlphaProperty. one has flag 4845 and lower threshold, another has flag 4844 and higher threshold so it can have soft edge and can be drawn correctly.

they are drawn at the same time. with the same mesh and same morph, you can't notice that they are both showed.

I'm not sure if it's right but seems abandon the 4845 one is not unacceptable.

 

I don't believe the hairline has to be exactly the same mesh, I think this mostly only occurs for hairs people have made themselves as they are too lazy to make a hairline mesh. The hairline mesh is actually just an Extra Part to the Hair, theoretically you don't really need a hairline at all it has no specific type. 

 

The valid types are:

 
kTypeMisc = 0,
kTypeFace,
kTypeEyes,
kTypeHair,
kTypeFacialHair,
kTypeScar,
kTypeBrows,
 
All "Extra Parts" are classified as Misc, except for Scars (haven't figured out why some Extra Part scars are still classified as scars instead of misc).
 
You can iterate the NPC's HeadPart list to determine what part has a relevant type you can compare the HeadPart's partName to the meshes node name, one of them in the list should be equal, if you find none then the head shouldn't technically be loaded and the game will forcefully regenerate the head (This is what happens at 0056AEB0 GetFaceGenHead, it iterates the HeadPart list and matches all their names).
 
All parts should technically be morphable, but I imagine you only really want to apply the physics to the hair, and not everything else.
Link to comment

fix:

CTD while going to brawl.

CTD sometime when outside(cause by new headpart module).

 

BTW, the "autosave when CTD" function works fine.

I'm considering using it in a wider range.(now it can only capture the CTD cause by the plugin) :)

 

The impossible has just been made possible. I'll have a hdt hair making video up later. Everything really stable now thanks. I don't need to curse at the game anymore no ctd anymore in whiterun or when loading hair :D

Link to comment
hdtPhysicsExtensions
[10/06/13 20:54:21]INFO: Queue OK
[10/06/13 20:54:21]INFO: System run with 4 threads
[10/06/13 20:54:21]INFO: Havok simulated world created.
[10/06/13 20:54:21]INFO: SKSEPlugin_Load
[10/06/13 20:54:30]INFO: Suspending ... Mist Menu
[10/06/13 20:54:41]INFO: Resuming... Fader Menu
[10/06/13 20:54:41]INFO: Suspending ... Loading Menu
[10/06/13 20:55:12]INFO: Resuming... Fader Menu
[10/06/13 20:55:12]INFO: Cell changed...
[10/06/13 20:55:12]INFO: Add character 06002b74
[10/06/13 20:55:20]INFO: Cell changed...
[10/06/13 20:55:32]INFO: Cell changed...
[10/06/13 20:55:32]INFO: Add character 06002b74
[10/06/13 20:55:35]WARNING: Physics delta time > 0.2, lose time
[10/06/13 20:55:35]WARNING: Physics delta time > 0.2, lose time
[10/06/13 20:57:08]INFO: Suspending ... Journal Menu
[10/06/13 20:57:09]INFO: Resuming... Cursor Menu
[10/06/13 20:57:13]INFO: Suspending ... Console
[10/06/13 20:57:16]INFO: Resuming... Cursor Menu
[10/06/13 20:57:16]INFO: 06002b74 now invalid, release it
[10/06/13 20:58:18]INFO: Suspending ... Console

I noticed this happening, if actor ref gets disabled the physics effect is not reapplied when the actor gets enabled.

Link to comment

Archived

This topic is now archived and is closed to further replies.

  • 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