monolith Posted July 17, 2012 Posted July 17, 2012 with everyone shagging me actually. With the old sexout esm it works fine but the new one seems to freeze them. Someone else shold try to reproduce this, so we know if its a problem on my end. And perhaps its not with cb but soemthing else that was changed?
prideslayer Posted July 17, 2012 Author Posted July 17, 2012 ahhh ok, it makes more sense for it to be globally sex related than CB specific, whatever it is. I will try to investigate.
prideslayer Posted July 18, 2012 Author Posted July 18, 2012 I've found that calling ResetAI unglitches them, but I'm more interested in learning where this bug came from than just stuffing that in the code somewhere and letting it go. It's possible I was calling it after the callbacks already, before I moved them out into their own world.
prideslayer Posted July 18, 2012 Author Posted July 18, 2012 Hah problem is completely my fault. I wasn't even done moving stuff into the callback script, there's a huge block of code that needs copied there that the beta is just skipping right now. New beta shortly.
prideslayer Posted July 18, 2012 Author Posted July 18, 2012 Ok... so update. I got the issue fixed with guys getting stuck, but dialog callbacks now happen twice. The problem is that when you get back up from the knockdown, if your crosshair doesn't at least touch the NPC before the talking starts, getcrosshairref returns nothing (0) and so the callback manager doesn't know the dialog fired, and thus, fires it again. No beta until I get this fixed, still struggling to find a solution for the question "an NPC is talking to you, but who?!"
Chase Roxand Posted July 18, 2012 Posted July 18, 2012 Any way for you to add a function for it in NVSEE? I doubt there's any way for you to rig this up with existing functions, short of forcing the player to look at the NPC before talking.
torn Posted July 18, 2012 Posted July 18, 2012 I am sorry for bad English. It is machine translation. A question: whether will be in Sexout obverse animations (expression of emotions, how in lovers in Oblivion) during sex?
beck11 Posted July 18, 2012 Posted July 18, 2012 Well.... "Yay!!!" But unfortunately I still have some issue with kf exporting that Im not sure I have solved yet. "Booooo!!!" I also made sure the anim require no offsets as well per your fascist instructions you Commie pinko nazi! *shakes fist angrily" But seriously though, are no offsets still preferred to lessen w/e scripting juju problems or can we add some slight offsets. I managed to solve rotation and vertical offsets in blender but horizontal offsets are still a bother. This one would require maybe a "5" HOffset to victim. Johnhead and Chrismasters are helping me with my problems but I think even they concede that the positioning issue is pretty much a bitch to solve in not so many words. Maybe Im being too presumptuous but if it were not for the position problems I could have at least 5 new animations by now cause I dont have any issues animating, just dealing with the aftermath of a kf export./rant Got a slow, mutant BJ animation too that I made some time back before I got smacked by my blender issues. Hopefully I didnt delete them in a fit of rage.
sbseed Posted July 18, 2012 Posted July 18, 2012 img doesnt work, 404 error message link broken or something... recheck it.
beck11 Posted July 18, 2012 Posted July 18, 2012 Works for me. Dosent matter, post was addressed to pride anyway regarding offsets.
monolith Posted July 18, 2012 Posted July 18, 2012 ...I got the issue fixed with guys getting stuck' date=' but dialog callbacks now happen twice... [/quote'] Very cool! Glad it wasn't some freak bug on my side that kept you busy:) Can't help with the other problem, sorry.
prideslayer Posted July 18, 2012 Author Posted July 18, 2012 Any way for you to add a function for it in NVSEE? I doubt there's any way for you to rig this up with existing functions' date=' short of forcing the player to look at the NPC before talking. [/quote'] That's the next approach to the problem I think.
prideslayer Posted July 18, 2012 Author Posted July 18, 2012 I am sorry for bad English. It is machine translation. A question: whether will be in Sexout obverse animations (expression of emotions' date=' how in lovers in Oblivion) during sex? [/quote'] Expressions are a work in progress. Don't know if it will work out or not. Works for me. Dosent matter' date=' post was addressed to pride anyway regarding offsets. [/quote'] The image doesn't work for me either, but I get the picture anyway. Great news, looking forward to it.
jaam Posted July 18, 2012 Posted July 18, 2012 Ok... so update. I got the issue fixed with guys getting stuck' date=' but dialog callbacks now happen twice. The problem is that when you get back up from the knockdown, if your crosshair doesn't at least touch the NPC before the talking starts, getcrosshairref returns nothing (0) and so the callback manager doesn't know the dialog fired, and thus, fires it again. No beta until I get this fixed, still struggling to find a solution for the question "an NPC is talking to you, but who?!" [/quote'] GetPackageTarget "should" work for the player. It supposedly did in Oblivion (see cs wiki). In FNV, my experience is that NPC "package target" is whatever the current standard package target is, and not the interruption package target. IE a follower's target is always the NPC, not whomever they are talking to. Or you can use this in NVSE extender : GameForms-extract.xxx are cut from my current GameFoms.xxx as mine are modified too much to upload. You might simply merge them with other files.
prideslayer Posted July 18, 2012 Author Posted July 18, 2012 Thanks jaam... I'll take a look at both options later today.
prideslayer Posted July 18, 2012 Author Posted July 18, 2012 jaam, the GetPackageTarget thing seems to not be working, at least not in menumode. Can't try/use it in gamemode for obvious reasons. This just prints an endless string of "0 no name"'s.. Begin MenuMode ; dialog callback support if (MenuMode 1009) ; set dlgSelf to player.GetCrosshairRef set dlgSelf to player.GetPackageTarget printc "Conversation with %g %n" dlgSelf dlgSelf player.NX_SetEVFo "Sexout:Core:Callbacks:Target" dlgSelf endif End Going to have a look at your code and see what I can whip up with NX. You'd think it would be fairly simple to get this kind of information in the engine but.. of course not.. thanks beth! Chase, if you think infinite sex isn't as fun as it sounds, try infinite repeating conversations with deputy beagle. *shoots self in head*.
prideslayer Posted July 18, 2012 Author Posted July 18, 2012 jaam, I've started integrating what I need from your .zip into the extender and before I get too far along, it looks like the DialoguePackage definition from the .h file and some of the code from Cmd_GetDialogueTarget_Eval is all I actually need. Does that sound right? I don't think I need anything from GameForms-extract.cpp. My function (NX_GetConversationPartner) invoked in MenuMode will require a subject ref (generally always the player) and follows your pattern on walking references through pProcess, pPackage, and pDPackage. This will get me to a stage where I can return pDPackage->speaker, does that sound right? I believe if I return target in this case, as you are, it is just going to return the person I called it on? I'm going to test by printing all three (speaker, subject, target) to the console but thought I'd ask as well in case I'm missing something.
prideslayer Posted July 18, 2012 Author Posted July 18, 2012 when are we getting the robot animations When somebody with the right combination of time, talent, and interest creates them.
prideslayer Posted July 18, 2012 Author Posted July 18, 2012 Blah argh.. BaseProcess in NVSE is an empty class. I'm going to yank it in from FOSE if it's there, or OBSE if not, cross my fingers, and hope all the offsets and stuff are the same.
prideslayer Posted July 18, 2012 Author Posted July 18, 2012 So even in GameProcess.h, only the AmmoInfo structure and GetAmmoInfo() are mapped in NVSE. Can you let me know which Unk_* you replaced with the GetCurrentPackage() call? That should be all I need I think. From that I'll just create a new class (rather than modify NVSE) for use in the extender, and ship the diff off to silverlock to include in their next release to get it working in the NVSE core. Here's the vanilla class in case you've forgotten or removed all the Unk's in your own. class BaseProcess { public: BaseProcess(); ~BaseProcess(); struct AmmoInfo { void* unk00; // 00 UInt32 count; // 04 TESAmmo* ammo; // 08 UInt32 unk0C; // 0C UInt32 unk10; // 10 UInt32 unk14; // 14 UInt32 unk18; // 18 UInt32 unk1C; // 1C UInt32 unk20; // 20 UInt32 unk24; // 24 UInt32 unk28; // 28 UInt32 unk2C; // 2C UInt32 unk30; // 30 UInt32 unk34; // 34 UInt32 unk38; // 38 UInt32 unk3C; // 3C UInt32 unk40; // 40 TESObjectWEAP* weapon; // 44 }; virtual void Destroy(bool noDealloc); virtual void Unk_01(void); virtual void Unk_02(void); virtual void Unk_03(void); virtual void Unk_04(void); virtual void Unk_05(void); virtual void Unk_06(void); virtual void Unk_07(void); virtual void Unk_08(void); virtual void Unk_09(void); virtual void Unk_0A(void); virtual void Unk_0B(void); virtual void Unk_0C(void); virtual void Unk_0D(void); virtual void Unk_0E(void); virtual void Unk_0F(void); virtual void Unk_10(void); virtual void Unk_11(void); virtual void Unk_12(void); virtual void Unk_13(void); virtual void Unk_14(void); virtual void Unk_15(void); virtual void Unk_16(void); virtual void Unk_17(void); virtual void Unk_18(void); virtual void Unk_19(void); virtual void Unk_1A(void); virtual void Unk_1B(void); virtual void Unk_1C(void); virtual void Unk_1D(void); virtual void Unk_1E(void); virtual void Unk_1F(void); virtual void Unk_20(void); virtual void Unk_21(void); virtual void Unk_22(void); virtual void Unk_23(void); virtual void Unk_24(void); virtual void Unk_25(void); virtual void Unk_26(void); virtual void Unk_27(void); virtual void Unk_28(void); virtual void Unk_29(void); virtual void Unk_2A(void); virtual void Unk_2B(void); virtual void Unk_2C(void); virtual void Unk_2D(void); virtual void Unk_2E(void); virtual void Unk_2F(void); virtual void Unk_30(void); virtual void Unk_31(void); virtual void Unk_32(void); virtual void Unk_33(void); virtual void Unk_34(void); virtual void Unk_35(void); virtual void Unk_36(void); virtual void Unk_37(void); virtual void Unk_38(void); virtual void Unk_39(void); virtual void Unk_3A(void); virtual void Unk_3B(void); virtual void Unk_3C(void); virtual void Unk_3D(void); virtual void Unk_3E(void); virtual void Unk_3F(void); virtual void Unk_40(void); virtual void Unk_41(void); virtual void Unk_42(void); virtual void Unk_43(void); virtual void Unk_44(void); virtual void Unk_45(void); virtual void Unk_46(void); virtual void Unk_47(void); virtual void Unk_48(void); virtual void Unk_49(void); virtual void Unk_4A(void); virtual void Unk_4B(void); virtual void Unk_4C(void); virtual void Unk_4D(void); virtual void Unk_4E(void); virtual void Unk_4F(void); virtual void Unk_50(void); virtual void Unk_51(void); virtual void Unk_52(void); virtual AmmoInfo* GetAmmoInfo(); virtual void Unk_54(void); virtual void Unk_55(void); virtual void Unk_56(void); virtual void Unk_57(void); virtual void Unk_58(void); virtual void Unk_59(void); virtual void Unk_5A(void); virtual void Unk_5B(void); virtual void Unk_5C(void); virtual void Unk_5D(void); virtual void Unk_5E(void); virtual void Unk_5F(void); virtual void Unk_60(void); virtual void Unk_61(void); virtual void Unk_62(void); virtual void Unk_63(void); };
prideslayer Posted July 18, 2012 Author Posted July 18, 2012 BETA ESM 2.4.67b5 in OP This version adds the new (final? maybe!) NX vars requested by Chase, and also adds bighorner alignment. The 'smart' dialog callback is disabled and it will, for now, only try once (just like the old system). This is only temporary until I get a solution working in the NVSE Extender. A new datapack will be along shortly (non beta) that replaces the bighorner default body so they're all sportin' wood -- that's just how it has to be for now, until someone can fix up the mesh to be a penis prop rather than a replacement model.
jaam Posted July 19, 2012 Posted July 19, 2012 jaam' date=' I've started integrating what I need from your .zip into the extender and before I get too far along, it looks like the DialoguePackage definition from the .h file and some of the code from Cmd_GetDialogueTarget_Eval is all I actually need. Does that sound right? I don't think I need anything from GameForms-extract.cpp. My function (NX_GetConversationPartner) invoked in MenuMode will require a subject ref (generally always the player) and follows your pattern on walking references through pProcess, pPackage, and pDPackage. This will get me to a stage where I can return pDPackage->speaker, does that sound right? I believe if I return target in this case, as you are, it is just going to return the person I called it on? I'm going to test by printing all three (speaker, subject, target) to the console but thought I'd ask as well in case I'm missing something. [/quote'] GetDialogueSubject should always be the one starting the conversation. In dialogue with the player it should be the NPC. Otherwize it equals to self for the line that start the conversation. GetDialogueTarget should always be the one being talked to. In dialogue with the player it should be the player. That is the one you don't have in vanilla. GetDialogueSpeaker is the one field of the three I deduced but did not verify. By the way with vanilla NVSE you can't use the function as eval so check the DEFINE_CMD_xxx macro you need to use.
prideslayer Posted July 19, 2012 Author Posted July 19, 2012 Thanks, I have it being called now as a regular command def.. Worked ok but the first one I tried, target, was the player as you said. Tried speaker thinking that was the right one and it came up 0, so moving on to subject now for another shot. Thanks from me (and everyone else watching) for this, it's going to help out a lot.
Recommended Posts