Fallout 3
0 of 0

File information

Last updated

Original upload

Created by

HugePinball

Uploaded by

HugePinball

Virus scan

Safe to use

Tags for this mod

17 comments

  1. Ez0n3
    Ez0n3
    • member
    • 53 kudos
    Thanks for this.
  2. HugePinball
    HugePinball
    • premium
    • 114 kudos
    Then I'm not sure exactly what's going on in your case. I had tested it quite a bit myself, and then it's been part of FOOK2 for almost a year (up to the current v1.1 which uses JO's method), and for all that time in the wild so to speak, I'm not aware of any reports that would indicate either false positives or negatives.

    Could you send me the test scripts you used which indicated false positives for you? Maybe I can see exactly why that was happening. You should also try JustinOther's method. If for some reason you really need to utilize a FOSE check at the first instant the game engine starts, you should probably instead use a system similar to this one, which I mention in the tutorial. It encapsulates the check within a quest stage result script, which you then call (almost like a function) each time right before you need the check value.

    Whatever the case, thinking about all this again has been good because I think I may have thought of the best solution yet, that is if it will actually work and the FOSE guys are game <img class=">
  3. ripvanwinkle111
    ripvanwinkle111
    • premium
    • 160 kudos
    I'm not intentionally trying to trigger it.
    It's running randomly, sometimes one goes first, sometimes the other.

    That's why I put in the 3 second timer, but that isn't foolproof either. I still get false negatives.

    It's not a problem with the script logic itself that is causing the false negatives, its a problem with how the FO3 engine runs the scripts.
  4. HugePinball
    HugePinball
    • premium
    • 114 kudos

    EDIT: And yes, I am talking about that very first second when the game loads up. Which I guess is only important if it triggers a one-time script.

    That's the last thing I just said above. If you're intentionally trying to use the FOSE.isPresent value before the first FOSE check runs, of course you can't guarantee it will be correct in either case. You have to use some awareness when designing your other scripted features so they allow time for at least the first FOSE check to run after the game is started.
  5. ripvanwinkle111
    ripvanwinkle111
    • premium
    • 160 kudos
    I was indeed getting false postives.

    I used a simple showmessage, with the base code, and just loaded and reloaded multiple times.

    if fose.ispresent == 1
    showmessage foseOk
    elseif fose.ispresent == 0
    showmessage foseBad
    endif

    Even with questdelay of 0.1

    EDIT: And yes, I am talking about that very first second when the game loads up. Which I guess is only important if it triggers a one-time script.
  6. HugePinball
    HugePinball
    • premium
    • 114 kudos

    That is, every 5 seconds, it toggles the value back to 0, then back to 1.

    If you're running with FOSE, yes it does, and that is in fact the whole point, and why it works. Since scripts don't run simultaneously (as far as I'm aware), you can't query the value of the FOSE.isPresent variable between the two commands in FOSEDetectionScript. So if FOSE is present, anytime you check the value it will be 1 (unless you check before the first iteration). If FOSE is not present, the script runs once and dies on the GetFOSEVersion command, leaving the value at 0.

    This is all explained in the tutorial thread: http://www.fookunity.com/forum/showthread.php?t=622



    As for rechecking everytime the game is loaded, try:
    GetGameLoaded
    ...
    GetGameRestarted
    ...

    Since those are FOSE functions, any scripts calling them while not running with FOSE will also fail.



    I had to use two seperate quests and scripts and extra messages due to getting false positives:

    I assume the false positives you mention were with your modified code, not with the FOSE Detect code as given. It's been tested extensively and doesn't give false positives* because of the behavior described above.

    * unless you're checking the FOSE.isPresent value before the first iteration of the quest script. This is why I recommended changing that quest delay to 0.5 rather than the default of 5 as stated earlier in this thread and in the tutorial.


    In any case, this may all be mostly academic, as I believe a better solution is JustinOther's Chicken and the Egg method. His implementation is better for a few reasons I won't try to explain here or now. I want to exhaustively test it myself before fully endorsing it as the recommended standard for FOSE detection - I've been meaning to do so for a while, but just haven't gotten around to it <img class=">. However, just from examining the code, I'd say I'm about 95% sure it works as flawlessly as this one.
  7. ripvanwinkle111
    ripvanwinkle111
    • premium
    • 160 kudos
    Actually, this method has some timing issues.

    That is, every 5 seconds, it toggles the value back to 0, then back to 1.

    Its still a good place to start though.

    As for rechecking everytime the game is loaded, try:


    GetGameLoaded

    Description: returns 1 after a game is loaded on a per-script basis. For each script that calls GetGameLoaded, the command will return true exactly once each time the game is loaded and false thereafter.

    GetGameRestarted

    Description: returns 1 when the game is restarted on a per-script basis. For each script that calls GetGameRestarted, the commands returns true exactly once per game session. Useful for situations in which a script must set certain object properties or settings each time the game is started.


    I had to use two seperate quests and scripts and extra messages due to getting false positives:

    QUESTONE

    scn checkfose
    Begin Gamemode

    if fosewarning.ispresent != 1
    set fosewarning.ispresent to getfoseversion
    endif

    END
    -------------
    QUESTTWO
    scn fosewarning

    short fixtimer
    short checknow
    short ispresent
    short checkctr

    begin GameMode
    if fixtimer < 1 && checknow < 1
    set ispresent to 0
    set fixtimer to 3
    set checkctr to 0
    endif

    if fixtimer > 1 && checknow < 1
    set fixtimer to (fixtimer - getsecondspassed)
    setquestdelay fosewarning 0.1
    setquestdelay checkfose 0.1
    elseif fixtimer <= 1 && checknow < 1
    set checknow to 1
    set fixtimer to 1
    endif

    if checknow == 1
    setquestdelay fosewarning 0
    setquestdelay checkfose 0
    if ispresent == 1
    showmessage aaaRTSrvwFoseTestok
    set checknow to 2
    elseif ispresent == 0
    if checkctr < 4
    showmessage checkfosemsg
    set checkctr to checkctr + 1
    else
    showmessage aaaRTSrvwFoseTestbad2
    endif
    endif
    endif

    END
  8. myrmaad
    myrmaad
    • supporter
    • 239 kudos
    i have i question has eney body ifer had this prob

    everything is fine on load then i take about 5 6 steps then my walking sound for power armor goes away and all my key commands shut off none of them will work and after trying a key about 5 times my game will crash i cant seme to fix this eny help welcome i just reinstaled to try to fix this but no go



    You would be better served to create a new topic in the Fallout Mod Troubleshooting subforum.

    When you create your new topic, add the following information, as you didn't give enough information to help us help you:

    -does your game play normally when you load without FOSE?
    -what FOSE Version are you using?
    -what is your game patch version?
    -what FOSE dependent mods are you using?

    Have you thoroughly read and understood the FOSE documentation?

    Do you know how to post your load order?

    Remember, do not reply to this message, create a new topic as directed above. -myrmaad
  9. Overmind
    Overmind
    • member
    • 1 kudos
    i have i question has eney body ifer had this prob

    everything is fine on load then i take about 5 6 steps then my walking sound for power armor goes away and all my key commands shut off none of them will work and after trying a key about 5 times my game will crash i cant seme to fix this eny help welcome i just reinstaled to try to fix this but no go
  10. HugePinball
    HugePinball
    • premium
    • 114 kudos
    I ended up using this method modified to my own ends in my mod Achievements for All, but when it came time to make the readme and notify you, it completely slipped my mind. Really sorry about that.

    No problem at all. Thanks for the endorsement and note of credit <img class=">

    Feel free to go into detail about any thoughts you may have about modifying this method or coming up with a better one in the discussion thread.


    BTW - a while back I was almost ready to start on an offline Achievements mod, until someone pointed out you had already done it <img class=">