Jump to content

OSex+ The Greatest Virtual Sex Ever


Recommended Posts

Posted

i have a problem guys, i installed everything correctly according to myself but my character can only interact with other males... wtf its kinda gay and i need help also the animations  are kinda stiff but i rlly wanna fix the " only banging males" prob

Posted

It is possible (in my opinion, likely) that the number of animations listed in each behavior file is not the cause of the game load CTD.  But rather, the length of file names and paths.

 

Evidence:

 

My Music and Dancing mod has never had a report of game loading CTDs.  It is 3.5 years old but still works with the latest FNIS.  These are the stats for its behavior file:

287 animations
13,520 characters without comments and blank lines.
Longest line: 65 characters
behavior hkx file size:  163KB
 
Now two of the larger 0Sex behaviors for comparison:
 
0Sex_0MF_K:
242 animations
29,861 characters without comments and blank lines.
Longest line: 155 characters
behavior hkx file size:  279KB
 
0Sex_0MF_S:
200 animations
24,884 characters without comments and blank lines.
Longest line: 164 characters
behavior hkx file size:  231KB

 

CEO doesn't have a behavior file with more animations than my old mod's behavior file.  However...

 

My behavior lines look like this:

b -h LSPUP3Sit1 ..\Pinups3\Pinups_Sit1.hkx

 

CEO's behavior lines look like this:

b -Tn 0Sx0MF_HJ-LiftedLotusHJO_S3_1  ..\..\..\..\0SA\mod\0Sex\anim\0MF\Sy6LLy9\HJ\LiftedLotusHJO\0Sx0MF_HJ-LiftedLotusHJO_S3_1.hkx

 

Analyzing the line above:

0Sx0MF_HJ-LiftedLotusHJO_S3_1 is the idle name in the CK.  It can't be changed without overhauling the animations portion of the mod in the CK.

 

0Sx0MF_HJ-LiftedLotusHJO_S3_1.hkx is the animation file.  I suspect this file name is unique (no other 0Sex animations have the same name).

 

..\..\..\..\0SA\mod\0Sex\anim\0MF\Sy6LLy9\HJ\LiftedLotusHJO\ is the path to the animation file.  If the animation file names are unique, this is where changes need to be made for testing.

 

CEO, if I modify the animation file structure, reducing the path length, and don't change the animation file name or animation name in the CK, then recompile the behavior file, it should theoretically still work.  Does your actionscript care about those paths?

 

 

Posted

 

 

Hi Migal,

Thank you for doing this test it would help me a lot.

 

You might already know this but I'll quickly explain:

 

b -Tn 0Sx0MF_HJ-LiftedLotusHJO_S3_1  ..\..\..\..\0SA\mod\0Sex\anim\0MF\Sy6LLy9\HJ\LiftedLotusHJO\0Sx0MF_HJ-LiftedLotusHJO_S3_1.hkx

 

Is the one we are looking at:

 

b -Tn    Is the FNIS flags for how the animation is played

0Sx0MF_HJ-LiftedLotusHJO_S3_1   is the ID of the animation which you call it with from Skyrim debug.sendanimationevent

 

 ..\..\..\..\0SA\mod\0Sex\anim\0MF\Sy6LLy9\HJ\LiftedLotusHJO\0Sx0MF_HJ-LiftedLotusHJO_S3_1.hkx

is the directory

 

 

------------------------------

 

If you move the animation files to somewhere else in a different folder: You will have to change the directory in the NIS entry to point to the new location then run the blue Generate FNIS for Modders and it will be fine. The directory has no impact on anything in the script. The only thing that needs to stay the same is the ID part after the flags.

 

 

---------------------------------

 

I'm not sure though really because the reality of the situation is just kind of weird. There's nothing to specifically do to make it happen or not, it's like the files get a kind of unique failure to a certain setup. I used to have all animations in a single behavior and started getting the crash myself, I found 500 to be the magic number and split them all up and it worked fine for me from there on out. There's something strange at play and I'm not sure it's going to wind up be something literal it's most likely something weird in FNIS that we will never know or be able to fix. 

 

I do think your test has a chance of being right so I'm curious to see  the results. Thank you Migal!

Posted

 

 

Some more thoughts on this Migal:

 

I haven't really had time to animation much since the 1.07 failed, it got a ton of animations from 1.06 but as soon as I couldn't get 1.07 to work I've been mostly just rebuilding the code since then. The recent changes with the UI have made the animation names get shorter where as before the transitions were autogenerated long names:

 

Prior: It would combine the pre scene to the destination scene to find the animation:

 

MyCrazyPrefix003j2+2313+DoggyStyle_S1_01+MyCrazyPrefix003j2+2313+Missionary_S1_01

 

where as now I use abbreviations since the actionscript can handle this easier:

 

MyCrazyPrefix003j2+2313+DoggyStyle_S1_01+T180

 

 

I've also cut the animations down in the packs because I've removed Bad Boys for now and created an additional pack before there was just cowgirl + mish  but I broke out a 3rd pack which is misc laying down like spooning.

 

In a sense things have gotten smaller both in names and even animations in some ways since 1.07, and not that many new animations. But this crash is something that I do feel like just kind of started recently.

Has moving characters to align them yourself been disabled? 

 

Yes most likely. I got in an e-fight with some child molestors and was determined to not bring it back but I've changed my mind and I am going to  implement it in a way that should adjust for regular usage in the deviations that can occur, for futa or difference in face gen / difference in body meshes.

Posted

..\..\..\..\0SA\mod\0Sex\anim\0MF\Sy6LLy9\HJ\LiftedLotusHJO\0Sx0MF_HJ-LiftedLotusHJO_S3_1.hkx

is the directory

It's the path to the directory plus the animation file name. Your animation file names are unique (FNIS demands this, no matter the folder), which means they could all go in one folder.

 

I did FNIS behavior files years ago, back when Fore was still assigning specific slots to modders and we couldn't invent our own animation names. Things got easier after he changed all that.

 

If you move the animation files to somewhere else in a different folder: You will have to change the directory in the NIS entry to point to the new location then run the blue Generate FNIS for Modders and it will be fine. The directory has no impact on anything in the script. The only thing that needs to stay the same is the ID part after the flags.

I understand. The only difference in the way you do it and the way I've done it is that you call animations with debug.sendanimationevent and I did it with PlayIdle (or PlayIdleWithTarget for paired animations). In the early Skyrim modding days, there was advice floating around to avoid using debug commands if possible, so I did. However, there is a disadvantage with using PlayIdle – all the idles you want to use in a script must be a declared property (unless you want to write a bunch of getformfromfile-related code, which nobody was doing at the time). I really had no choice in the matter. I figured out that the animations had to be registered in the CK as idles or they couldn't be used in AI packages or for idle markers, both of which I needed to do, so I passed this information on to Fore and it still appears in his instructions today.

 

There's nothing to specifically do to make it happen or not, it's like the files get a kind of unique failure to a certain setup.

It could literally be the longest line in one behavior file. Or, the longest line in three behavior files. I don't know the threshold, if there is a threshold. But, you're right in that it's odd. You would think if a path maximum length is exceeded, that animation simply wouldn't work, or FNIS would fail to compile the behavior file from the list. On the other hand, Fore's FNISforModders may accept a longer length than the behavior file should have. The line may successfully get into the behavior file (which is actually a kind of encoded xml as I understand it), but Skyrim may not always interpret the line correctly during game load, or it might be failing based on path confusion (at what point during game load does Skyrim start to recognize the internal path roots for Data\, Meshes\, Textures\, etc.).

 

I haven't really had time to animation much since the 1.07 failed, it got a ton of animations from 1.06 but as soon as I couldn't get 1.07 to work I've been mostly just rebuilding the code since then.

Right. Which is why you shouldn't be the one to do this test. But, the test has to be done, IMO. You are going to make more animations for 0Sex and you need to know if it is better to change the path structure.

 

MyCrazyPrefix003j2+2313+DoggyStyle_S1_01+T180

I've seen scene IDs that look like that, but not quite. The Scene IDs clearly include a sort of parsed version of a partial file path which uses pipe symbols instead of backslashes. That's what I'm worried about. I assume that path is getting passed to actionscript somehow. If it is just for display purposes, it doesn't matter. But, if it is for more than that, I could run into problems.

 

I've also cut the animations down in the packs because I've removed Bad Boys...

I'm currently only working with animations that come with the last build your posted here, which is a reduced set. It should be enough for testing if Kinky can still get the foot IK CTD with the latest version's reduced set.

 

But this crash is something that I do feel like just kind of started recently.

I had the foot IK crash back in 1.063. It was exactly as Scorpion described it here. First load attempt, CTD. Following load attempts, no CTD, until game quit. I did not originally identify the CTD as "foot IK" because I wasn't using meh321's crash fixes yet. After I installed his crash fixes, I got the crash less frequently, but I still got it sometimes, now with the foot IK error. This leads me to believe it might have to do with memory allocation while animations are being registered on game load and path lengths might effect it. I started getting other types of CTDs in alpha builds during run up to 1.08 (the t-pose and an unidentified CTD other than foot IK), but I never used any of the 1.07 builds, so I don't know if they were present at that time.

 

The raw number of animations being pointed to in your behavior files cannot by itself be the problem. I can think of three other possible causes:

 

1. The number of animations being pointed to in the behavior file matters as part of an aggregate, because the problem actually has to do with the total size of all the animation files being pointed at in the behavior, combined. Some animations are more complex than others and are thus larger files. Meaning, 100 animations of 50kb each in a single behavior file may be a problem, but 300 animations of 5kb each wouldn't be a problem at all. This would make perfect sense if all the animations in a behavior file are stored in a binary object array during game load, for game speed purposes during game play. Skyrim's memory management has always been a weak point.

 

2. Some of the paths are too long.

 

3. There may be characters Skyrim doesn't play well with in some of the file names (the +).

 

I'm guessing 2, but 1 is good candidate. I should look at both. The file size of the behavior file itself is definitely not the problem. 1hm_behavior.hkx (I believe it comes with xpmse) is 941kb. The list text file isn't included, so I can't count the number of animations or path lengths in that behvior, but it's something I would love to do.

 

 

Kinky,

 

Are you still getting CTDs sometimes when loading game saves with the latest version? I cannot get them when I COC straight to a cell from the starting menu, which is how I've been doing API and scale testing.

 

 

CEO,

 

Does the animation directory structure get scanned by OSA to discover new animation files? Or, is that all handled by xml somehow?

Posted

It's probably worth mentioning that somehow this mod conflicts with Scoped Bows 3.0.1 Ranger edition. It causes a freeze about 3-4 seconds after a save loads.

Posted

Good news is I finished updating and making a proper website for the project. Here's the banners I got so far  in case it's needed if anyone wants to throw a link around etc. for promo. Clicking will go to the website. Still spellchecking but it's getting there.

 

 

tumblr_o8ukw7ewID1ubnr1mo1_500.gif

 

X-Rated Version

 

tumblr_o8ukw7ewID1ubnr1mo2_500.gif

 

PG-13 Family friendly version 

 

 

 

Basically an intro, features of the engine, dev for future plans and credits, and extra for links to my guides and faq etc.

 

Installation is a big page but only the first part is for the actual installation of OSex the rest is just recommendations to make Skyrim look better in the usage of OSex. I think a lot of OSex users aren't really Skyrim players and just downloading it trying to get OSex to work so I figure a quick run down on how to make Skyrim look decent would help. It's based on my own set up which is fairly minimal in terms of mods and should be straight forward.

 

 

-------------------------------------------------

 

I'm going to clear out the OP here and just rely on the webpage for general information to keep things cleaner. The Nexus will still have some basic information since users would have to subscribe to LL to get to the website link which some might not want to do.

 

 



 

 

 

Thanks Migal, 

No the directory has no purpose in the script. The only thing that matters is the ID. It's getting fed that simply from each XML document, you give it a starting scene it loads that XML, that XML has destinations to other scene IDS etc. It's not aware of any scene until you have an option to navigate to it. Whatever you do to the directories has no bearing on it at all.

 

The [scene] folder is handled differently in that case the directories do matter but that's just to the XML files. The [Anim] folder can be whatever you want for the tests and everything will still function.

 

 

 

Posted

The [scene] folder is handled differently in that case the directories do matter but that's just to the XML files. The [Anim] folder can be whatever you want for the tests and everything will still function.

Questions:

 

1. The scene folder contains the subfolders which contain the xml files defining the scenes, but these have nothing to do with animation paths, correct?

 

2. Additional animations for OSex are enabled by adding their animation files, the presence of an osplug file (oplug in earlier versions), and by defining the plugin in pandect.xml, correct?

 

3. Have any of your released versions ever included BGMF or EPMF? I suspect 1.063 contained something now probably defined as part of BGMF, but there wasn't the same XML system then. Just checking in case I already have their plugins and anims sitting around on my hard drive somewhere and don't know it. I figure that if I'm going to simplify paths, I might as well simplify them all.

Posted

 

The [scene] folder is handled differently in that case the directories do matter but that's just to the XML files. The [Anim] folder can be whatever you want for the tests and everything will still function.

Questions:

 

1. The scene folder contains the subfolders which contain the xml files defining the scenes, but these have nothing to do with animation paths, correct?

 

2. Additional animations for OSex are enabled by adding their animation files, the presence of an osplug file (oplug in earlier versions), and by defining the plugin in pandect.xml, correct?

 

3. Have any of your released versions ever included BGMF or EPMF? I suspect 1.063 contained something now probably defined as part of BGMF, but there wasn't the same XML system then. Just checking in case I already have their plugins and anims sitting around on my hard drive somewhere and don't know it. I figure that if I'm going to simplify paths, I might as well simplify them all.

 

 

.osplug files are kind of just a facade. The purpose of the plugins folder is just for the titles of the .osplug files to be scanned and sent as a string array to the UI that way the UI knows what nav buttons to show and what to hide. It's basically an ini made of files, if the files is there = 1 if it's not = 0 but I did it this way so modules/plugins could be installed without having to force the user to go in an add the name to an ini. What they do is create a list for the UI to know when to hide buttons but it doesn't effect the animations at all more of just a navigation button toggle kind of thing. They do nothing except generate a string array though when OSA turns on.

 

Yes the scene files have nothing to do with the animations. They do have a line anim="0SMF_DoggyStyle" for example which let's the UI know what animation to play but that's based just on the animation ID in the FNIS and doesn't get impacted by the directory at all.

 

Hmm BB and BG are the abbreviations for bad boys and bad girls EMF is the abreviation for the vanilla undressing scenes but that doesn't quite match the one's you typed. 

 

As a note Migal, if it comes down that this is the case of name length I can just dump all the animations into a single short directory which would take 20-30 characters off each one, the way it's structured now is for organization so I can find animations easier and it makes it easier for me to overwrite batches since I'm usually doing 4 files for transitions at once or 8+ speeds at a time, makes the finding and copy pasting of it all a lot easier for me. The base level of Plugin is needed though because I will pack animations with plugins so I need that to separate them.

 

I'm just saying mostly that if the test is true I can consolidate them all into a single folder to avoid this bug but if it's irrelevant to the crash the way they are situated is for organization and ease of updating as opposed to a folder with 1000+ files in it.

Posted

Hmm BB and BG are the abbreviations for bad boys and bad girls EMF is the abreviation for the vanilla undressing scenes but that doesn't quite match the one's you typed.

I was referring to EPMF, which is an ID for a plugin called "Empress". For all I know it might not even exist yet.

 

As a note Migal, if it comes down that this is the case of name length I can just dump all the animations into a single short directory which would take 20-30 characters off each one, the way it's structured now is for organization so I can find animations easier and it makes it easier for me to overwrite batches since I'm usually doing 4 files for transitions at once or 8+ speeds at a time, makes the finding and copy pasting of it all a lot easier for me. The base level of Plugin is needed though because I will pack animations with plugins so I need that to separate them.

 

I'm just saying mostly that if the test is true I can consolidate them all into a single folder to avoid this bug but if it's irrelevant to the crash the way they are situated is for organization and ease of updating as opposed to a folder with 1000+ files in it.

I'm currently doing it per the FNIS 6.2 modders instructions. I'm leaving your behavior file list folders intact and placing their matching animations inside the same folder as the list. This allows me to completely delete the entire file path for each animation in the list. However, it means the following folders would now be useless:

 

meshes\0SA\mod\_ESG\anim

meshes\0SA\mod\0Sex\anim

 

I could put all the animations and lists in one folder but I figured it does no harm to keep the folder structure for behavior lists that you have now for organizational purposes, especially since you can (and do) keep notes in the list text files.

 

So far the text list file sizes are being reduced by at least 50%. However, because paths in the actual hkx behavior files are compressed using CRC32 for indexing purposes, the hkx behavior files are only seeing about a 10% reduction in size. That doesn't mean path lengths aren't going to matter, because I believe the CRC32 compression is being reversed before being read by the the game engine.

Posted

 

 

Migal and Kinky,

I'm trying to recreate this scaling issue resulting in a .95 scale dom when female is in the dom role. So far I can't get it , I'm getting 1.0, 1.3 no matter what I try. in any gender / role combination. Are other people besides Kinky experiencing this? It might be a mod conflict but I can't really tell what could do it.

 

It might have something to do with not setting the scale to 1.0 prior to measuring, but most likely not. At a loss to what might be causing the incorrect scaling. Arrange, FF FM MF all seem to be right on from my tests.

Posted

Migal and Kinky,

I'm trying to recreate this scaling issue resulting in a .95 scale sub as opposed to Dom but maybe only with the female first. So far I can't get it , I'm getting 1.0, 1.3 no matter what we try. Are other people besides Kinky experiencing this? It might be a mod conflict but I can't really tell what could do it.

 

It might have something to do with not setting the scale to 1.0 prior to measuring, but most likely not. At a loss to what might be causing the incorrect scaling. Arrange, FF FM MF all seem to be right on from my tests.

It happened to me as soon as I started playing with a female player character instead of male.

 

Try this: From the start menu, COC straight to a cell you know has NPCs in it. You'll be the default male nord at this point. Open ShowRaceMenu and turn your character's sex female. Default Male and Female nords are the exact same height (1.03), so it shouldn't matter that the game loaded and your toon was originally male when Actra was applied and the toon was measured. Now trigger 0Sex on some male and female NPCs.

 

Err... It occurs to me that if the toon's Actra is never applied again, the height may be the same when you switch sexes, but OSex is still going to think the toon is male and this may effect roles (and thus scaling). Translation, my testing method may have been flawed. But, if it was flawed, it means 0Sex scaling would not be likely to work properly when a new game is started, until the player had made his final character and saved, then loaded that save. Not that I think this is a big deal. It's not like you can jump Rikke's bones as soon as you get off the wagon wearing shackles. Granted, the idea of spanking her at that point in the game is intriguing.

Posted

Yep that's exactly true I'll need to add some kind of showracemenu check to clear the data to correct that. Hopefully that's the problem but seems like there might be something else happening also. .95 might be a result of 1.0 scale being applied to a 1.0 who's being a fake 1.03. 

Posted

Yep that's exactly true I'll need to add some kind of showracemenu check to clear the data to correct that. Hopefully that's the problem but seems like there might be something else happening also. .95 might be a result of 1.0 scale being applied to a 1.0 who's being a fake 1.03.

It can't just be showracemenu. AFAIK, Kinky plays with a female toon all the time. This definitely has to do with the role and female player characters. Scaling with my male toon (and the default male nord) is utterly bulletproof in your latest build (although admittedly, I've only tested it with female target NPCs). If it can be bulletproof for male player characters, it can be bulletproof for female player characters. We just haven't figured out why it isn't yet.

 

I'm not too worried about showracemenu. The same issue could occur if some user starts playing with setscale in the console. It's not hard to warn people against doing that. Otherwise, the only way to deal with it is to stop applying actra to the player character during game load and instead apply it at scene start, when it gets applied to the target NPC (which may not be an entirely bad idea, simply to reduce processing during game load). You can always move the keybinds into the MCM's OnGameReload event. It gets run even if you never try to open the MCM menu (which is good, considering it no longer exists).

 

Hrm... Considering what I just wrote, it may be a decent idea to make a quick build that has actra being applied to the player character during game load commented out (disabled) and pass that build to Kinky for testing, just to see if it reduces CTD frequency during game load. He wouldn't have to start a scene to test, he would just have to load game saves that were previously borking sometimes. If no improvement is made, you just revert to a backup prior to the commenting. If improvement is made, you could start thinking about changing it permanently.

 

PS: This thing I'm doing with the the behavior files may be a wild goose chase. But, I won't stop working on it if it is. I'd really like to find a way to reduce the CTDs. If we can do that and scaling is 100% solid under all conditions, you can go back to worrying about completing animation sets and putting the finishing moves back in (that is not a combat reference), or whatever it is you'd rather be doing.

Posted

Yes i was getting CTD sometimes when loading save. Doing coc first is also my way of avoiding footik crash.

 

The save i loaded is clean save with female character lvl 36 so scaling issue is not related to running racemenu.

 

Main issue of footik error is its randomness. I think randomness can happen only coz of some kind of lag between actions where one is about to do something but previous one is still not finished, so perhaps shortening info that you feed to skyrim on load could solve this.

Posted

Yes i was getting CTD sometimes when loading save. Doing coc first is also my way of avoiding footik crash.

I've categorized it into three crashes on load:

 

1. Foot IK

 

2. Random CTD not Foot IK

 

3. T-pose and crash immediately or crash after moving

 

2 and 3 might be the same thing, but in the case of 2, we never see the t-pose because the game hasn't presented any visuals yet.

 

When you COC first does it avoid all three types?

Posted

 

Yes i was getting CTD sometimes when loading save. Doing coc first is also my way of avoiding footik crash.

I've categorized it into three crashes on load:

 

1. Foot IK

 

2. Random CTD not Foot IK

 

3. T-pose and crash immediately or crash after moving

 

2 and 3 might be the same thing, but in the case of 2, we never see the t-pose because the game hasn't presented any visuals yet.

 

When you COC first does it avoid all three types?

 

 

I dont think i ever got FootIk error message after loading cell with coc.

But what i did experience once is T-pose followed by FootIk error message. It was on regular load of already saved game (no coc-ing).

 

Posted

I dont think i ever got FootIk error message after loading cell with coc.

But what i did experience once is T-pose followed by FootIk error message. It was on regular load of already saved game (no coc-ing).

These two things must be true in order for me to experience any of the three CTDs on load.

 

1. I have to be loading a save that had OSA running when the save was made.

 

2. OSA.esm (or the old esp) must be active while loading the save.

 

Is the same true for you?

Posted

 

I dont think i ever got FootIk error message after loading cell with coc.

But what i did experience once is T-pose followed by FootIk error message. It was on regular load of already saved game (no coc-ing).

These two things must be true in order for me to experience any of the three CTDs on load.

 

1. I have to be loading a save that had OSA running when the save was made.

 

2. OSA.esm (or the old esp) must be active while loading the save.

 

Is the same true for you?

 

 

No. I can get footIk error on loading clean save with OSA.esm installed so 1st statement is not true.

 

Or in short as soon as i have Osex installed crashes start to happen on load, except i dont get footik error if i coc qasmoke first then load my saved game, but sometimes game crashes when i try to load qasmoke like that - except no footik error.

 

Posted

Or in short as soon as i have Osex installed crashes start to happen on load, except i dont get footik error if i coc qasmoke first then load my saved game, but sometimes game crashes when i try to load qasmoke like that - except no footik error.

Would you mind doing me a favor and testing some new behavior files? Just overwrite the files that came with the 1.082 build CEO posted here a few days ago. Please test it against game saves that might typically produce a CTD during load. You will need to run FNIS again.

 

If CTDs persist at the same rate as before, please try it on a clean save. Do a scene or two with these new behaviors on the clean save, then make a new save or two and test from those new saves. It's possible the anim paths get cached in the game saves so the old paths could be hanging around.

 

CEO,

 

I added the following where it should logically go:

 

--------------------------

' Migal - No scene XML file for this pair but anims exist - commented out

'b -a,Tn 0Sx0MF_Ho-Noble+01Emb_1 0Sx0MF_Ho-Noble+01Dnf_1.hkx

'b -a,Tn 0Sx0MF_Ho-Noble+01Emb_0 0Sx0MF_Ho-Noble+01Dnf_0.hkx

' -------------------------------------------------

 

' Migal - added this pair because anims were there and XML in scene folder existed

b -a,Tn 0SxEMF_ApU-St9Dally+01helmet_1 0SxEMF_ApU-St9Dally+01helmet_1.hkx

b -a,Tn 0SxEMF_ApU-St9Dally+01helmet_0 0SxEMF_ApU-St9Dally+01helmet_0.hkx

'----------------------------------------------------------------------

0Sex1.082-newBehaviors.zip

Posted

 


 

SF I recall you posting this a while ago, am I on the right page here with what you are suggesting:

(In the last few days I managed to finally get some C+ to compile and work/do what I want and usually from that point I learn pretty quickly with code. If so I'm going to take it on it doesn't seem so bad.)

 

http://www.loverslab.com/topic/51365-0sex-skyrim-sex-sim-other-0s-content-wip/page-126?do=findComment&comment=1542564

 

My impressions on this to make sure I'm understanding. This is relating to the mfgconsole upgrade to the skyrim console that displays extra information so in a way it's gathering similar data to what OSA needs. The top part gets the formID which we already have and the second part gets details. 

 

I can make that kind of output to papyrus from a dll now myself so unless it needs an entirely different style of function to reach the actionscript (then papyrus needs) I should be good to go. This could allow for a lot of simplification, removing actra entirely most likely. I think now I could get a DLL to do everything from equipment to mfg to getting actra details without needing to modevent, except maybe getscale since it's a native function that wasn't rebuilt in SKSE.

 

-------------------------------

 

Sorry it took me so long to get to this, I was not able to get C to work so wasn't ready but I've had some breakthroughs. Do you think it's possible, should I try this? I could most likely replicate that custom mfg function to get the details OSA needs in the same way.

 

I was confused by the array kind of. The function has no = to define the array but I do get the gist of how array's work and that they are just pointers. I would have thought the DLL and Actionscript kept separate arrays but I guess the pointer is shared and you can set things up just like that. I'll have to see hopefully there's no more C troubles in regards to the DLL > SWF process. I have 0 learning hope without working examples to play with partly why I've had such a hard time getting C+ > Papyrus to work. The working examples are to sparse and what is there is crazy technical.

 

------------------------------------

 

A question that comes to mind is since I can call the DLLs directly and they all have a version registered in the .h that is a replica of the skyrim native version could I just call them all directly for example nioverride. I might be able to just access the nioverride DLL from flash and use the functions there that papyrus uses. I suppose I'd hit a wall not having an actor or actorbase form in flash and would need some kind of conversion before handing it over. But papyrus UI does seem to have the ability to send a form as an object so maybe that will work, although I imagine it will still get upset if I try to stick a form un casted  in where it wants an actorbase.

 

-------------------------------------

 

Not going to start this until 1.082 is on the nexus because there's a lot of bug fixes we've got fixed etc. I want to get up. 1.083 I think it will be relatively hopefully to get the actionscript talking straight to the game and clean up the whole thing and make it a bit more efficient.

 

The boot process will be cut in half also because I won't have to go back and forth between Skyrim and the swf with mod events to get information in order.

Posted

CEO,

If you're interested, I did the same for BB and Wiz. I took the animations from 1.08D7, because they were included in that release.

I modified the lines for one pair:

' Migal --- animation files for this pair are missing so I'm commenting out
'b -Tn 0SxWZH0_Ap-Mast_1 0SxWZH0_Ap-Mast_1.hkx
'b -Tn 0SxWZH0_Ap-Mast_0 0SxWZH0_Ap-Mast_0.hkx
' ------------------------------------------------------------------------------------


Keep in mind that I'm only testing with my normal male character. I don't use SOS, but I do have XPMSE, so the bones are there.

I have not had a CTD in 5 saves and 20 loads. Between saves I've done scenes in various Skyrim locations. Saved in the same location as the last scene run. Saved in locations where I've never run a scene. I'm not jumping for joy yet, because it's not an entire play-through and Kinky hasn't reported his results.

 

Edit:  Finally got Foot IK on the 63rd save/load attempt.  Still haven't seen the t-pose or non foot IK CTD (which I'm suspicious are actually the same issue).

0Sex1.082-newBehaviorsBBWiz.zip

Posted

 

I think for your purposes you will be better served doing as much of the work in Papyrus as possible.  SKSE plugins should really only be used when something is either not available (or not functional) or is practically impossible (due to speed - ex physics implementations) in Papyrus.  That is just my opinion though.

 

As for calling nioverride.dll functions directly, you would have to load their addresses in your own dll.  That seems like a great headache and introduces possible failure points that wouldn't exist otherwise.  Expired didn't include source (corrected, see here), and nioverride.dll doesn't export anything but SKSEPlugin_Load and SKSEPlugin_Query.  To find the address of the individual functions you would have to resort to one of the following methods: hook/add to the SKSE plugin loading register functions to get loaded function addresses, or disassemble the dll and find the entry points, map manually or pattern search on load.  After that you would need to guess the data types based on the nioverride.psc and similar functions in SKSE's NetImmerse.  (Side note: if anyone knows a better way to do something like this please let me know.)

 

I may have missed it but is there a reason to use nioverride instead of SKSE's Netimmerse functions? It is highly likely that where their functionality overlaps they are doing the same thing under the hood.

 

EDIT: If you want some example code to look at Quick Loot is built using libSkyrim and could be instructive as it has a UI component.

EDIT2: libSkyrim's dump_functions_plugin looks like it can be used to get SKSE plugin function entry points.

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...