Jump to content

Tired of invisible body syndrome: Help me understand what happens when motions finish


Recommended Posts

Posted

... and in doing so possibly hack a fix into LAPF's scripting.

 

Ever since i installed LPK for the first time years ago, i have had problems with invisible bodies after sex. Over time, i found various plugins causing this. I also found out that LAPF passionately hates the vanity cam - it hates it so much, that merely changing mouse speed settings for the vanity cam (which is a global variable of oblivion), will cause invisible bodies regularily. Other typical instigators of ghosts (often together with crucification and cloned heads (double-face)) are companion systems.

 

By now, i'm quite sure that i have banned almost all troublemakers from my oblivion installation. The only camera affecting plugin that i have still installed, is "FOV modifier", since i'm using a widescreen display. FOV modifier does dynamic FOV switching - i.e. it changes FOV when switching from/to the menu or dialogs. So, it MIGHT piss off LPK's "must have exclusive cam control!"-obsession.

 

The current state of matters on my machine is this:

 

I no longer get crucified bodies or doubleface bugs. I only sporadically get invisible sex partners, triggered exactly when sex finishes. The player never becomes invisible anymore - only other actors. I also know that i can always fix this by executing "fix follower doubleface bug" on such an invisible actor. AFAIK, all this spell does, is execute reset3DState, right? So, this got me thinking, and i started monitoring the console log for what exactly happens the moment when sex acts finish. Here's a recent log:

Lovers: START playername (00000014) and partnername (FF0042FB) / total pairs = 1
Lovers: 128_Motion Ready
Lovers: 128_Motion Use AdjustPosition memory
Lovers: END playername (00000014) and partnername (FF0042FB) / remain pairs = 0
Lovers: WARNING! partnername is NOT KnockedState, execute Reset3DState

I get the last logline pretty much ALWAYS, on EVERY sex act conclusion. Question: Does "execute Reset3DState" in the log mean that ***I*** should do that (it's a recommendation?), OR does it mean that LAPF will do this automatically at that moment? Basically, i'm wondering if the last logline either means: LAPF already knows that something might be wrong, and recommends me to execute Reset3DState on my partner - but it doesn't do so itself automatically. OR, does the last line mean, that LAPF actually does execute this on every conclusion of a sex act on my setup, and this might be what triggers the invisible bodies sometimes?

 

EDIT: Ooops, completely forgot - LO:

 

 

 

ESMs:

Oblivion.esm
Lovers with PK.esm
TamagoClub.esm
HiyokoClub.esm
Cobl Main.esm
LoversCreature.esm

 

ESPs:

Unofficial Oblivion Patch.esp
DLCShiveringIsles.esp
DLCHorseArmor.esp
DLCHorseArmor - Unofficial Patch.esp
DLCSpellTomes.esp
DLCSpellTomes - Unofficial Patch.esp
Knights.esp
Knights - Unofficial Patch.esp
_Ren_BeautyPack_full.esp
Ren's hair on Young Hot NPCs.esp
MaleBodyReplacerV5.esp
EVE_StockEquipmentReplacer.esp
Vanilla Maternity Clothes.esp
Abriael_Human.esp
Mages Guild Services.esp
Respawning Varla & Welkynd Stones.esp
MQ Refusal - No Gates + Get Horse.esp
Silver and Gold Respawns.esp
Clam Respawn.esp
RMDailyIncomeV2.esp
Valuable Gems and Silverware v1.0.esp
RealBanditsAndHighwaymen.esp
Wilderness Combat.esp
NPCsTravel.esp
Crowded Cities 15.esp
SimCamp.esp
BareNecessities.esp
em_extrabedBravil.esp
em_extrabedLeyaw.esp
em_extrabedChey.esp
EM_CompInnsleeping.esp
sycHearNoEvil.esp
kuerteeCrimeHasWitnesses.esp
racescale-fix.esp (merged into patch below)

 

>>>Bashed Patch.esp<<<

 

Lem - Bounty Reduction Over Gametime.esp
SaveSkillTrainingForLater.esp
Duke Patricks - Actors Can Miss Now.esp
Fast Arrow Collection.esp
Toggleable Quantity Prompt.esp
MadCompanionshipSpells.esp
MCS extension.esp
HUDCompanions.esp
HumantouchNPC.esp
aaHug.esp
P1DkeyChain.esp
SimpleHUDClock.esp
Map Marker Overhaul.esp
Map Marker Overhaul - SI additions.esp
MiniMap.esp
spelliconreplace.esp
CombatWarning.esp
Improved Hotkeys.esp
FOV Modifier.esp

 

Lovers with PK.esp
LoversTamagoClub.esp
TamagoDischarge.esp
TamagoPlayerHUDkil.esp
LoversAdultPlayPlusforSSP.esp
LoversSpermSplashEx.esp
LoversBackup2.esp
LoversRaperS.esp
LoversEscapeRapeVPlayer.esp
LoversCreature.esp
SetBody.esp
TamagoSetBody.esp
Calm Unicorn.esp
Shadow's Horse Wander Fix v1.2.esp
MM_StolenHorseOwnership.esp
Mounted_Steering2.esp
LoversIdleAnimsPriority.esp
LoversAnimObjectsPriority.esp

 

Posted

Update: Found the relevant location in the LAPF code. Scriptname is xLoversMainScriptEquipFunc.

 

Here's the relevant codesection:

        ;Rev60 ƒXƒ^ƒ~ƒiƒ}ƒCƒiƒX‚Å‚àƒ_ƒEƒ“‚µ‚ĂȂ¢ˆÙíó‘Ô‚ÌŒŸ’miƒoƒO‚Á‚Û‚¢‚̂łǂ¤‚µ‚悤‚à‚È‚¢j
        if eval( abort==0 && arEquipData["step"]>=101 )
            if eval( (arEquipData["flag"] & 128) )        ;Rev79 Reset3DState’¼Œã‚Í1ƒtƒŒ[ƒ€‘Ò‚Â
                let arEquipData["flag"] -= 128
                return    ;BLOCK
            endif
            if me.GetAV Fatigue < 0        ;Rev79 ¨“|‚·‚é‚Ì‚Í0ˆÈ‰º‚¶‚á‚È‚­‚Ä0–¢–ž
                if me.GetKnockedState == 0
                    if eval( (arEquipData["flag"] & 32) == 0 )
                        if Call xLoversPkrSafeReset3DState me        ;‹Ö’f‚̈—‚ðŒÄ‚Ô
printC "Lovers: WARNING!! %n is NOT KnockedState, execute Reset3DState" me
                            let arEquipData["flag"] := arEquipData["flag"] | (32+128)        ;‚à‚¤Reset3DState‚µ‚È‚¢‚æ  ;Rev79 ƒEƒFƒCƒg—pƒtƒ‰ƒO’ljÁ
                            return    ;BLOCK
                        endif
                    endif
                endif
            endif
        endif

The structure of the above code is a bit "creative" to say the least, but here's what happens in which order:

1. If the actor is not knocked down (unconscious - all actors during sex are technically unconscious), then...

2. Some flag in the actor's equipment is checked - i'm not sure what this does..

3. Reset3dState is executed on the actor - with some safety measures (i've checked the safeReset3DState function - it indeed does what it says)

4. THEN the message is printed to the console

 

So in summary - the phrase "execute reset3DState" in the console is not a recommendation to the user! It's just badly translated japanese. It should instead read: "Executed Reset3DState", not "Execute Reset3DState".

 

This also means that apparently, on my setup LAPF executes Reset3DState on sex partners at the end of every sex act. Maybe i for testing purposes should try to comment this out, and see what happens.

Posted

That 'flag' I think aligns with what you would see in the Off/DeffNudeFlag in a sex call. ( 32 being shield?)

The Call above the message checks if a bow is wielded and if not then executes the Reset3DState.

On my setup I will see the message occassionaly during gangbangs and have not had invisible body syndrome at this time.

 

 

Archived

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

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...