[RELz] The Chicken and the Egg

Post » Tue May 17, 2011 9:47 am

The Chicken and the Egg
http://www.newvegasnexus.com/downloads/file.php?id=36600 | http://fallout3nexus.com/downloads/file.php?id=10903 | http://www.mediafire.com/?tmhdigonznj

  • Author: JustinOther
  • Description: http://www.newvegasnexus.com/downloads/images/36600-1-1288988925.jpg. Renames and maintains an unused FalloutNV.ESM global such that it will always reflect:
    • NVSE's presence/absence
    • NVSE's version = X
    • NVSE's revision = Y
    • NVSE's beta version = Z
    ...So, (NVSE == X.YZ) if NVSE loader was used to start the game or (NVSE == 0) in its absence. In the event NVSE is added/removed or its version/revision/beta changes, the global's value will invariably be modified to indicate what's currently used or not. Scripts, menu buttons, quest stages, dialogue results, etc. can then check for NVSE before executing NVSE functions and will run all the way through even if NVSE's not used or is not up to date provided they're wrapped in 'If NVSE'/'(If NVSE >= X.YZ)' checks.
  • How it works: In order to keep it out of the background, it's split into two quests, the chicken and the egg. The chicken, incidentally, comes first and starts the egg and then stops itself and visa versa, however the egg is in MenuMode while the Chicken is in GameMode so neither is ever left perpetually running.
    • Chicken:
      Spoiler
      scn ChickenSCPTInt bGawkBegin GameMode	If bGawk		Set NVSE to (GetNVSEVersion + (GetNVSERevision * 0.1) + (GetNVSEBeta * 0.01))		Set Egg.bHatch to 0		StartQuest Egg		StopQuest Chicken	Else		Set NVSE to 0		Set bGawk to 1	EndIfEndBegin MenuMode 1004	If NVSE		Return	Else		Set NVSE to (GetFOSEVersion + (GetNVSERevision * 0.1) + (GetNVSEBeta * 0.01))	EndIfEnd

    • Egg:
      Spoiler
      scn EggSCPTInt bHatchBegin MenuMode 1007	If bHatch		Set NVSE to (GetNVSEVersion + (GetNVSERevision * 0.1) + (GetNVSEBeta * 0.01))		StopQuest Egg	Else		Set bHatch to 1		Set Chicken.bGawk to 0		StartQuest Chicken	EndIfEnd

  • Use: The plugin hijacks and five junk, unreferenced or duplicate FalloutNV.ESM records so they can all be easily copied into any number of plugins with FNVEdit and the resource plugin doesn't ever need to be redistributed or loaded in a mod that uses the global and, in the event multiple plugins use the resource, they'll not A) overlap each other or B) conflict in any way or result in duplicate error reports from the GECK.
  • Rights: I'm a lefty and this was designed to be a resource from the onset. Use it freely and may it serve you well.
  • Version: 1.0 Beta (working, so probably won't ever edited)
  • Bugs: None that I'm aware of. Let me know if anything goes wrong or if you think of any way this can be improved.
  • Thanks:
    • The *SE Team for providing us with all these new shiny toys (script commands).
    • HugePinball for the original inspiration as well as sage advice regarding the "Constant" flag for the global.
    • ElminsterEU for FNVEdit which I used to find the junk records to hijack/providing a wonderful tool which can be used to easily copy in these overrides.
    • Beth/Obsidian for the game and GECK.

User avatar
Ella Loapaga
 
Posts: 3376
Joined: Fri Mar 09, 2007 2:45 pm

Post » Tue May 17, 2011 8:32 am

Update for official 1.2.0.314 patch. The overriden duplicates have been reclaimed, so I moved the two quests to utilize leftover Fallout 3 junk instead. Using FNVEdit to "Change FormID to..." one can update their plugin so the two merged quests records' FormID's match the FormID's used in the new version. No script recompiling will be needed.
User avatar
Far'ed K.G.h.m
 
Posts: 3464
Joined: Sat Jul 14, 2007 11:03 pm


Return to Fallout: New Vegas