prideslayer Posted June 6, 2013 Author Posted June 6, 2013 The inversion I mean is that it should be a >0 check. That function returns 0 if the form isn't valid, so that check (if 0 = ...) is only ever going to pass if the form isn't valid. I think what I'm going to do is change it to do the approach right there (along with approach % test), take that part out of the spell, and then make it break out if it hits one successfully. That and a delay down to 5s or so instead of 30s should fix the issue along with the other fix.
RitualClarity Posted June 6, 2013 Posted June 6, 2013 There has never been any actual boomer content. Loogie had some ideas for it at one time, but none of it was ever released except the MCM setting, which has been gone for some time. Cool I never really tried it before so I wouldn't know. Nice to see it cleaned up. It also seems that my clumsy bumbling around beta testing has done some good Sorry I couldn't be more scientific. I don't mod and thus don't know how they are working to be able to give a better descriptions .
prideslayer Posted June 6, 2013 Author Posted June 6, 2013 (edited) Ok here's what I've got for the new effect script, bumping rev to 3 (and getting rid of the 00 prefix). scn SexoutWorkingGirlEffectScriptV3 ; ; Working Girl Script ; Rewrite of 00SexoutWorkingGirlEffectScriptV2, by prideslayer ; globals ref self int abort int reason ref walkAI ref goal int bRun float elapsed short redirect short ChaScore short BarScore short wage int bVeronica int bCass int bSunny ; ***************** ; ScriptEffectStart ; ***************** Begin ScriptEffectStart set self to GetSelf set goal to playerREF set abort to 0 ; is veronica available? set bVeronica to 0 if (VeronicaREF.GetInSameCell player) if SexoutWorkingGirl.veronicaMode && VNPCFollowers.bVeronicaHired if SexoutWorkingGirl.veronicaMode == 1 || SexoutWorkingGirl.veronicaAgrees set bVeronica to 1 elseif SexoutWorkingGirl.veronicaMode == 2 set bVeronica to VMS49.nFinalState set SexoutWorkingGirl.veronicaAgrees to bVeronica endif endif endif set bCass to 0 if (RoseofSharonCassidyREF.GetInSameCell player) if SexoutWorkingGirl.cassMode && VNPCFollowers.bCassHired if SexoutWorkingGirl.cassMode == 1 || SexoutWorkingGirl.cassAgrees set bCass to 1 elseif SexoutWorkingGirl.cassMode == 2 if GetStage VCassCompanion == 100 set bCass to 1 endif endif set SexoutWorkingGirl.cassAgrees to bCass endif endif set bSunny to 0 if (SunnyREF.GetInSameCell player) if SexoutWorkingGirl.SunnyMode && SunnyREF.GetInSameCell Player if SexoutWorkingGirl.sunnyMode == 1 || SexoutWorkingGirl.sunnyAgrees set bSunny to 1 elseif SexoutWorkingGirl.sunnyMode == 2 set SexoutWorkingGirl.sunnyAgrees to bSunny endif endif endif set walkAI to SexoutWorkingGirlWalkToPlayer AddScriptPackage walkAI set abort to 0 set elapsed to 0 set redirect to 0 set bRun to 1 End ; ScriptEffectStart ; ***************** ; ScriptEffectUpdate ; ***************** Begin ScriptEffectUpdate set elapsed to elapsed + ScriptEffectElapsedSeconds if (0 == bRun) ; how did we even get here? dispel SexoutWorkingGirlEffect return else if (elapsed >= SexoutWorkingGirl.elapsedMax) CIOS SexoutWorkingGirlFailedEffect set bRun to 999 set abort to 999 endif endif if (1000 == bRun) ; aborted and waiting to die elseif (999 == bRun) ; abort PrintToConsole "WorkingGirl: %i : Aborting %.0f (%.0fs)" self abort elapsed if GetIsCurrentPackage walkAI RemoveScriptPackage walkAI endif set bRun to 1000 dispel SexoutWorkingGirlEffect EvaluatePackage elseif (30 == bRun) ; Sexytime! ; New system, let sexout handle the random aspect and respect player wishes as ; indicated in MCM. Also sexout has more effects for male, female, male-as-female, ; and female-as-male, which are more reliable than the SCR/SSR strapon lists. set SexoutNG.ActorA to Self set SexoutNG.ActorB to Goal CIOS SexoutBegin CIOS SexoutWorkingGirlOldEffect if sexoutworkinggirl.Gom == 1 set ChaScore to (goal.getAV Charisma * SexoutWorkingGirl.ProstitutionLevel) set BarScore to (goal.getAV Barter / 10) set wage to ChaScore + BarScore SexoutWorkingGirlWageBoxREF.additem Caps001 wage elseif sexoutworkinggirl.Wrang == 1 set ChaScore to (goal.getAV Charisma * SexoutWorkingGirl.ProstitutionLevel) set BarScore to (goal.getAV Barter / 20) set wage to ChaScore + BarScore SexoutWorkingGirlWageBoxREF.additem Caps001 wage endif if goal == player set SexoutWorkingGirl.tricks to SexoutWorkingGirl.tricks + 1 endif set bRun to 999 elseif (20 == bRun) ; Player is having sex, find alternate target if bVeronica && (0 == VeronicaREF.GetItemCount 00SexoutActor) set walkAI to SexoutWorkingGirlWalkToVeronica set goal to VeronicaREF AddScriptPackage walkAI set bRun to 1 elseif bCass && (0 == RoseOfSharonCassidyREF.GetItemCount 00SexoutActor) set walkAI to SexoutWorkingGirlWalkToCass set goal to RoseOfSharonCassidyREF AddScriptPackage walkAI set bRun to 1 elseif bSunny && (0 == SunnyREF.GetItemCount 00SexoutActor) set walkAI to SexoutWorkingGirlWalkToSunny set goal to SunnyREF AddScriptPackage walkAI set bRun to 1 else ; no buddies available, abort set abort to 31 set bRun to 999 endif if bRun == 1 set redirect to (redirect + 1) endif elseif (10 == bRun) ; We have arrived, final preflight check if (0 == GetItemCount 00SexoutActor) && (0 == goal.GetItemCount 00SexoutActor) set bRun to 30 else set bRun to 20 endif elseif (1 == bRun) ; The waiting game if GetDistance goal <= 160 PrintToConsole "WorkingGirl: %i : finished chasing %n in %.0fs" self goal elapsed set bRun to 10 if GetIsCurrentPackage walkAI RemoveScriptPackage walkAI endif endif ; If self starts having sex with someone, abort if GetItemCount 00SexoutActor set abort to 2 set bRun to 999 endif endif end ; ******************* ; ScriptEffectFinish ; ******************* Begin ScriptEffectFinish PrintToConsole "WorkingGirl: %n : Done {%n for %.0fs [%.0f %.0f %.0f]}" self goal elapsed bRun abort redirect End ; ScriptEffectFinish Rundown is basically this. EffectStart: set b* flags for companions to 0, update to 1 if in cell, available, etc. set goal to player add the AI package runstage to 1 EffectUpdate: get elapsed value If timer elapsed, stage -> 999 if/elseif block for runstage: stage 1: If self starts having sex, stage -> 999, elseif distance < 160 stage -> 10 and remove package. stage 10: if goal and self have no sexout tokens stage -> 30 else stage -> 20 stage 20: if any companion is availble according to flag and not having sex, update package and goal, then stage -> 1 else stage -> 999 stage 30: SexoutBegin and WorkingGirlOldEffect Do payout Stage -> 999 stage 999: Print abort message, remove package, evp, dispel, and stage -> 1000 stage 1000: do nothing, waiting on dispel. Goal here was to update for the change to approach now being in the quest script, get rid of all the different flag vars and mid-script-returns in favor of a single flag/stage var. I also removed some other semi-wrong stuff from the effect script, things that should be handled by sexout itself. The anal/oral/vaginal, as this is handled by players sexout prefs in MCM. Also I removed all the male/female/strapon checks as sexout should already be managing those correctly through the heshemale and whatnot effects of the strapons. It will also redirect now an 'unlimited' number of times provided that the effect does not expire, and at least one of the valid targets is available. Check to only send male johns is removed, ladies may need lovin' and be willing to pay for it as well. The quest script scans 'twice' now. The first one is a simple abort if any NPC is approaching anyone via the working girl effect above. If that doesn't abort, then the normal scanner kicks off tests the approach percent, and if it succeeds sends them off towards the player. Going to test it out now and post an update if it works as intended. Edited June 6, 2013 by prideslayer
RitualClarity Posted June 6, 2013 Posted June 6, 2013 Like astor stated I don't know what you just said except it sound awesome.
prideslayer Posted June 7, 2013 Author Posted June 7, 2013 ok, new WG beta version attached, just to this post for now. I'll update the SSR beta with it if it works for those of you interested. *just* has a fixed scanner. I have not looked into why the tossouts aren't working, but they may all be related given the issues with the quest script that are now fixed. Did not test it with any followers, but seems to be working fine solo. Unfortunately I just don't have any saves with companions right now.
jaam Posted June 7, 2013 Posted June 7, 2013 The inversion I mean is that it should be a >0 check. That function returns 0 if the form isn't valid, so that check (if 0 = ...) is only ever going to pass if the form isn't valid. I think what I'm going to do is change it to do the approach right there (along with approach % test), take that part out of the spell, and then make it break out if it hits one successfully. That and a delay down to 5s or so instead of 30s should fix the issue along with the other fix. I meant, the very first code was if 0 == IsFormValid scanner return endif
prideslayer Posted June 7, 2013 Author Posted June 7, 2013 Oh.. that's not what I have in the current official download.. it was simply added to the bigger if statement allowing the actor to be selected. Somebody must've combined and forgot to flip the equality check.
jaam Posted June 7, 2013 Posted June 7, 2013 Yep I had them all lined up one after the other, and all with a different abort code for debugging.
prideslayer Posted June 8, 2013 Author Posted June 8, 2013 r78b5 promoted to release and beta downloads, except SSRified mods, removed from OP. I'm going to spend some time trying to track down any bugs in tryouts now, and see what in sexout or NX is causing the game & geck unload crashes. There will be no new additions to SSR until everything needed from SCR is copied over, if anything is missing. I'm going to try to keep them from diverging, formid wise, until compatability is assured.
Nverjos Posted June 9, 2013 Posted June 9, 2013 Not sure if a true bug or not, but when using bDontUndress, if the actor its called on isn't wearing anything in slot 2 (upperbody) then all actors being used freeze in place permanently. I was calling it on the player at the time. Exact code I was using, just in case it was a mistake on my part, I added a check for "rVictim.GetEqObj 2 != 0" and it quit freezing when called. if (rRapistA.GetIsCreature) && (SexAssault.iSmartRape) rVictim.NX_SetEVFl "Sexout:Start::bDontUndressB" 1 endif
prideslayer Posted June 10, 2013 Author Posted June 10, 2013 Added to the todo list jallil, thanks. Will look into it.
Halstrom Posted June 11, 2013 Posted June 11, 2013 Not sure if a true bug or not, but when using bDontUndress, if the actor its called on isn't wearing anything in slot 2 (upperbody) then all actors being used freeze in place permanently. I was calling it on the player at the time. Exact code I was using, just in case it was a mistake on my part, I added a check for "rVictim.GetEqObj 2 != 0" and it quit freezing when called. if (rRapistA.GetIsCreature) && (SexAssault.iSmartRape) rVictim.NX_SetEVFl "Sexout:Start::bDontUndressB" 1 endif This sounds like the issue I found with Bodyswapping, if the script tried to remove "nothing" or GetHealth "nothing" it crashed the script. I have to do a check: Set rOutfit to player.GetEquipped 2 If rOutfit <Do stuff> endif
RitualClarity Posted June 17, 2013 Posted June 17, 2013 Is there a reason for only having the SSR on the main OP? I don't see Sexout beta anywhere.
Halstrom Posted June 17, 2013 Posted June 17, 2013 Is there a reason for only having the SSR on the main OP? I don't see Sexout beta anywhere. The beta was upgraded to a release, there is no beta yet............
RitualClarity Posted June 17, 2013 Posted June 17, 2013 I have 2.6.78b5. Is this the lastest "release"? the reason I am asking is I wanted to your latest SCR beta. I needed at least 2.6.78. I wanted the latest that was being used for any last minute bug fixes of course.
prideslayer Posted June 17, 2013 Author Posted June 17, 2013 The latest release is 2.6.78 for core, and .79 for data, both in the official release thread. No 'b'-anything.
RitualClarity Posted June 17, 2013 Posted June 17, 2013 Thanks Pride I was looking at the older threads. Duh. Now I have found the new thread. I was looking for the file in the "Download" not on the forum page where if I just looked I would of seen the new relase. It would probably help the confusion of others if the downloads section was updated as well. The b was from the previous testing "beta" Not anything to do with the release verison.
Halstrom Posted June 17, 2013 Posted June 17, 2013 I have 2.6.78b5. Is this the lastest "release"? the reason I am asking is I wanted to your latest SCR beta. I needed at least 2.6.78. I wanted the latest that was being used for any last minute bug fixes of course. It probably works fine with 2.6.77, it doesn't use any new features or anything, it's just I make a point of doing my testing with latest releases.
prideslayer Posted July 10, 2013 Author Posted July 10, 2013 SSRv1b6 is available in the OP. This has an updated working girl ESP that should reenable approaches in the casinos.
hornguy6 Posted July 11, 2013 Posted July 11, 2013 SSRv1b6 is available in the OP. This has an updated working girl ESP that should reenable approaches in the casinos. I'm testing right now to see if this is the case, but I think the addition of that esp breaks the NCR "Tour of Duty" quest. Just FYI.
Loogie Posted July 11, 2013 Posted July 11, 2013 SSRv1b6 is available in the OP. This has an updated working girl ESP that should reenable approaches in the casinos. I'm testing right now to see if this is the case, but I think the addition of that esp breaks the NCR "Tour of Duty" quest. Just FYI. Tour of Duty has nothing to do with Working Girl.
hornguy6 Posted July 12, 2013 Posted July 12, 2013 SSRv1b6 is available in the OP. This has an updated working girl ESP that should reenable approaches in the casinos. I'm testing right now to see if this is the case, but I think the addition of that esp breaks the NCR "Tour of Duty" quest. Just FYI. Tour of Duty has nothing to do with Working Girl. Yeah, I messed up something when I was loading. Made the NCR Prostitute Outfit not register as one so I had to get a new one. Sorry.
RitualClarity Posted July 13, 2013 Posted July 13, 2013 Just a FYI. For the most recent RELEASE SexoutNG download, see here. Your link is no longer working.
DoctaSax Posted July 14, 2013 Posted July 14, 2013 Just a FYI. For the most recent RELEASE SexoutNG download, see here. Your link is no longer working. That link points to astymma's latest upload (2.6.76/7?) to the files section of the site. I deleted that page to avoid confusion with the latest release version that's only in the pinned thread in this forum section (2.6.78).
Recommended Posts