This is a sub-page of Proto:Fallout: New Vegas/November 17, 2009.
A large number of scripts have been recovered from this dump which are either absent or altered when compared with the final build.
Ain't That A Kick In The Head
VCG01ChairJumpTriggerSCRIPT#
At some point the player needed to jump on a chair:
ScriptName VCG01ChairJumpTriggerSCRIPT
Begin OnTriggerEnter
If doOnce == 0 && GetObjectiveDisplayed VCG01 20
If IsActionRef player == 1
SetStage CGTutorial 18
Set doOnce to 1
EndIf
EndIf
End
VCG01BrahminSkullSCRIPT#
This handles grabbing the Brahmin skull, the voice line can be found in the February 16th build.
ScriptName VCG01BrahminSkullSCRIPT
Begin GameMode
If runTimer == 1
If timer > 0
Set timer to timer - GetSecondsPassed
Else
If grabbed == 1
Set grabbed to 2
SetStage CGTutorial 22
SetObjectiveCompleted VCG01 20 1
If DocMitchellREF.IsTalking
Set SayLater to 1
Else
DocMitchellREF.Say VCG01BrahminResponse 1
EndIf
ElseIf released == 1
Set released to 2
SetStage CGTutorial 24
EndIf
EndIf
EndIf
If SayLater == 1
If DocMitchellREF.IsTalking == 0
DocMitchellREF.Say VCG01BrahminResponse 1
Set SayLater to 2
EndIf
EndIf
End
Begin OnActivate
End
Begin OnGrab
If grabbed == 0
Set grabbed to 1
Set runTimer to 1
Set timer to 1
EndIf
End
Begin OnRelease
If released == 0
Set released to 1
Set runTimer to 1
Set timer to 1
EndIf
End
VCG01TestScript#
A semi interesting excerpt from the VCG01TestScript, it reveals the Big Guns starter weapon was a Single Shotgun:
If nBigGuns > nMaxValue && IsPlayerTagSkill BigGuns == 0
Set nMaxValue to nBigGuns
Set nTopOverall to 2
EndIf
Ammo For The Scorpions
VDialogueVegasWestScript#
Interesting variables from the VDialogueVegasWestScript, they are related to the cut shootout that would occur after the Scorpions had secured their ammo:
ScriptName VDialogueVegasWestScript
bFiendsGoHostile
nFiendsDeadCount
bScorpionsHelped
Biggs & Harcourt
VFreeformFoxtrot#
An otherwise unused script that contains a conversation variable for Biggs:
VFreeformRSFoxtrotScript
bBiggsMentionedHarcourt
End
Boulder City Showdown
BCConfrontPlayerTriggerScript#
Causes the Great Khan guard to forcegreet the player once they wander too close to where the hostages are being stored:
ScriptName BCConfrontPlayerTriggerScript
Begin OnTriggerEnter player
BCGreatKhanAAMRef.StartConversation player
End
BCHostageDoorScript#
Handles Great Khan hostility in the event the hostage door is tampered with:
ScriptName BCHostageDoorScript
Begin OnActivate
Activate
If IsActionRef player
If DoOnce == 0 && VMS20.Negotiator
Set DoOnce to 1
SetObjectiveDisplayed VMS20 10 0
SetObjectiveDisplayed VMS20 60 0
SetObjectiveDisplayed VMS20 80 0
SetObjectiveDisplayed VMS20 50 1
SetEnemy BoulderCityGreatKhanFaction PlayerFaction
EndIf
EndIf
End
BCTresspassTriggerScript#
Causes Hastings to start combat with the player once the pass into the restricted area:
ScriptName BCTresspassTriggerScript
Begin OnTriggerEnter player
If DoOnce == 0 && VMS20.Recon == 0 && VMS20.Negotiator == 0
BCPrivateHastingsRef.StartCombat player
Set DoOnce to 1
EndIf
End
Freeside Encounters
VFSRandomEncounterScript#
In the final game VFSRandomEncounterScript is an empty stub with no content. In this early version of the game it's packed with cut ideas. It exposes the purpose of the random markers (e.g. VFSRandom10aSP1) in the otherwise unused area Orris leads the player through. These markers would spawn different groups of random enemies when the player walked through sets of triggers. During the day these would be gamblers heading to the Atomic Wrangler and random locals leaving town. At night things would really come alive with many combinations of large groups of thugs attacking squatters, gamblers (with and without bodyguards) and of course the player. The end result would have been a much more dangerous location where the bodyguards would have made a lot more sense for the player to consider hiring. Script comments also list even more ambitious events that were not implemented:
; Spawn random encounters - Some of these shouldn't happen if you have a
; bodyguard with you
; Ideas
; - Beggar
; - Drunk
; - Cracked out drug addict
; - Kid looking for dog
; - Gambling yahoos
; - King on Thug violence
; - Van Graff beat down
; - 3 Thugs
; - 2 Thugs
; - 4 Thugs
; - Thug on Gambler violence (thugs win)
; - Thug on Gambler + Bodyguard violence (thugs lose)
; - Rats
; - Radroaches
; - Locals - Head to one of the gates (or the Wrangler) and despawn
; - Squatter - Head to one of the gates and despawn
Hidden Valley VR Simulation
A large number of scripts have been recovered from this cut activity, which give more insight on its function and purpose within the game.
HVSimMasterScript#
A long and lengthy script, this text gives us a clear insight into how the simulation would have functioned.
scn HVSimMasterScript
int DoExplosionOnce
int DoArmoryOnce
float Timer
int SpeakFlag ; Determines if a Brother says a bark
int Wave ; Represents how many enemies spawn at a time
int SpawnCounter ; Keeps track of how many spawns we do
int batchcounter ; How many groups of enemies have spawned
int numspawns ; Number of total spawned
int allyspawns ; Number of paladins currently spawned, max 2
int KillsCount ; 0 = Kills don't count, 1 = Kills count
ref SpawnPoint1 ; Set in HVSimEnterScript
ref SpawnPoint2 ; Set in HVSimEnterScript
ref AllySpawnPoint ; Set in HVSimEnterScript
ref SpawnType ; Set in HVSimEnterScript
ref AllyType ; Set in HVSimEnterScript
;---------------------------------------------------------------------------------------------------------------------------------
begin OnLoad
; Debug - set brotherhood friendly to player so turrets aren't annoying
;SetAlly BrotherhoodSteelFaction PlayerFaction
end
;---------------------------------------------------------------------------------------------------------------------------------
begin GameMode
; Give player intro period to pick a weapon and set up mines
; Determine Wave
if Timer > 15 && Wave == 0
Set Wave to 1
elseif Timer > 80 && Wave == 1
Set Wave to 2
elseif Timer > 160 && Wave == 2
Set Wave to 3
endif
; Spawn enemies every 15 seconds
if (Timer / 15) > batchcounter
Set batchcounter to batchcounter + 1
Set SpawnCounter to Wave
; Spawn an ally each wave after the second batch; you can only have 2
if batchcounter > 2 && numspawns < 12 && allyspawns <= 2
AllySpawnPoint.PlaceAtMe AllyType 1
set numspawns to numspawns + 1
set allyspawns to allyspawns + 1
endif
; Have one Paladin bark each wave
Set SpeakFlag to 1
endif
; Need explosion for first spawn
if Wave == 1 && DoExplosionOnce == 0
HVSimDoorOne.PlaceAtMe FakeMediumExplosion
HVSimDoorOne.setopenstate 1
Set DoExplosionOnce to 1
endif
; After a while, enemies will switch to the armory
;if batchcounter > 10 && DoArmoryOnce == 0
; Shake the screen to let player know an explosion happened elsewhere
; Show message explaining change of spawn points
;ShowMessage HVSimArmoryMessage
; Set spawn points to the armory
;set SpawnPoint1 to HVSimSpawnMarker3
;set SpawnPoint2 to HVSimSpawnMarker4
; Unlock the armory and shooting range doors
;HVSimShootingRangeDoorREF.unlock
;HVSimShootingRangeDoorREF.setopenstate 1
;HVSimArmoryDoorREF.unlock
;HVSimArmoryDoorREF.setopenstate 1
; Make sure this doesn't happen more than once
;set DoArmoryOnce to 1
;endif
; Spawn enemies according to SpawnCounter
if SpawnCounter > 0
; Don't spawn any more guys if 12 are already out
if numspawns < 12
SpawnPoint1.PlaceAtMe SpawnType 1
SpawnPoint2.PlaceAtMe SpawnType 1
Set numspawns to numspawns + 2
endif
Set SpawnCounter to SpawnCounter - 1
endif
; Update Timer
Set Timer to Timer + GetSecondsPassed
end
HVSimWatkinsScript#
scn HVSimWatkinsScript
begin OnActivate Player
; Jump player back to player's pod
Player.MoveTo HVPlayerPodWatkinsInteriorREF
; Open pod for player
HVPlayerPodREF.PlayGroup Forward 1
Set HVPlayerPodWatkinsREF.OpenState to 1
; Back from white to normal
imod FadeInFromWhiteISFX
end
HVSimPTSDScript#
scn HVSimPTSDScript
begin OnActivate Player
; Jump player back to player's pod
Player.MoveTo HVMcNamaraPodInteriorREF
; Open pod for player
HVMcNamaraPodREF.PlayGroup Forward 1
Set HVMcNamaraPodREF.OpenState to 1
; Back from white to normal
imod FadeInFromWhiteISFX
end
HVSimPTSDExitScript#
scn HVSimPTSDExitScript
; This script is attached to the effect given to the player when they enter the Base Defense simulation in Hidden Valley.
; It causes the player to warp back to their body in Hidden Valley when they take ample damage in the sim.
int HealthDiff
int HealthBefore
int CurrentHealth
begin ScriptEffectStart
imod FadeToWhiteandBackQuickISFX
; Restore the player's health to what it was going into the sim
Set CurrentHealth to player.getav health
Set HealthBefore to HVSimEnterTriggerREF2.HealthBeforeSim
if CurrentHealth <= HealthBefore
Set HealthDiff to (HealthBefore - CurrentHealth)
player.restoreav health HealthDiff
else
Set HealthDiff to (CurrentHealth - HealthBefore)
player.damageav health HealthDiff
endif
;---------------------------------------------------------------------------------------------------------------------
; Restore the player's limbs to what they were before the sim
; Head
Set CurrentHealth to player.getav PerceptionCondition
Set HealthBefore to HVSimEnterTriggerREF2.HealthBeforeSim
if CurrentHealth <= HealthBefore
Set HealthDiff to (HealthBefore - CurrentHealth)
player.restoreav PerceptionCondition HealthDiff
else
Set HealthDiff to (CurrentHealth - HealthBefore)
player.damageav PerceptionCondition HealthDiff
endif
;---------------------------------------------------------------------------------------------------------------------
; Left Arm
Set CurrentHealth to player.getav LeftAttackCondition
Set HealthBefore to HVSimEnterTriggerREF2.HealthBeforeSim
if CurrentHealth <= HealthBefore
Set HealthDiff to (HealthBefore - CurrentHealth)
player.restoreav LeftAttackCondition HealthDiff
else
Set HealthDiff to (CurrentHealth - HealthBefore)
player.damageav LeftAttackCondition HealthDiff
endif
;---------------------------------------------------------------------------------------------------------------------
; Right Arm
Set CurrentHealth to player.getav RightAttackCondition
Set HealthBefore to HVSimEnterTriggerREF2.HealthBeforeSim
if CurrentHealth <= HealthBefore
Set HealthDiff to (HealthBefore - CurrentHealth)
player.restoreav RightAttackCondition HealthDiff
else
Set HealthDiff to (CurrentHealth - HealthBefore)
player.damageav RightAttackCondition HealthDiff
endif
;---------------------------------------------------------------------------------------------------------------------
; Left Leg
Set CurrentHealth to player.getav LeftMobilityCondition
Set HealthBefore to HVSimEnterTriggerREF2.HealthBeforeSim
if CurrentHealth <= HealthBefore
Set HealthDiff to (HealthBefore - CurrentHealth)
player.restoreav LeftMobilityCondition HealthDiff
else
Set HealthDiff to (CurrentHealth - HealthBefore)
player.damageav LeftMobilityCondition HealthDiff
endif
; --------------------------------------------------------------------------------------------------------------------
; Remove any stuff the player picked up in the sim
Player.RemoveAllItems
; Return player's inventory
HVPlayerContainerREF.RemoveAllItems Player 1 1
; Kill all enemies still in the cell
KillAllActors
; Remove Sim ImageSpace Modifier
rimod HVSimISFX
; Remove temp sim effect
player.Dispel HVSimWakingActorEffect
; Reset enter trigger
Set HVSimEnterTriggerREF2.Once to 0
end
begin ScriptEffectFinish
; Jump player back to player's pod
Player.MoveTo HVPlayerPodInteriorREF
; Open pod for player
HVPlayerPodREF.PlayGroup Forward 1
Set HVPlayerPodREF.OpenState to 1
; Back from white to normal
imod FadeInFromWhiteISFX
end
HVSimPTSDEnterScript#
scn HVSimPTSDEnterScript
int Once
int maxhp
int HealthBeforeSim ; The health total the player had going into the sim
int HeadBeforeSim ; Head health before sim
int LeftArmBeforeSim ; Left arm health before sim
int RightArmBeforeSim ; Right arm health before sim
int LeftLegBeforeSim ; Left leg health before sim
int RightLegBeforeSim ; Right leg health before sim
int PArmorPerk ; Keeps track of whether the player can wear PA
ref AllyType
begin OnTriggerEnter player
if Once == 0
; Reset the simulation cell so it's empty
ResetInterior HiddenValleyPTSDSim
; Remove player's stuff
player.RemoveAllItems HVPlayerContainerREF 1
; Remember player's health & limb condition before sim
Set HealthBeforeSim to player.getav health
Set HeadBeforeSim to player.getav PerceptionCondition
Set LeftArmBeforeSim to player.getav LeftAttackCondition
Set RightArmBeforeSim to player.getav RightAttackCondition
Set LeftLegBeforeSim to player.getav LeftMobilityCondition
Set RightLegBeforeSim to player.getav RightMobilityCondition
; Heal the player to full health
Set maxhp to player.GetPermAV Health
player.RestoreAV Health maxhp
; Add effect that will make player warp back upon being killed
player.CIOS HVSimWakingActorEffect ; CIOS = CastImmediateOnSelf
; Fade in, apply IMOD
imod HVSimISFX
Set Once to 1
endif
end
HVSimPTSDWatkinsExitScript#
scn HVSimWatkinsExitScript
; This script is attached to the effect given to the player when they enter the Base Defense simulation in Hidden Valley.
; It causes the player to warp back to their body in Hidden Valley when they take ample damage in the sim.
int HealthDiff
int HealthBefore
int CurrentHealth
begin ScriptEffectStart
imod FadeToWhiteandBackQuickISFX
; Restore the player's health to what it was going into the sim
Set CurrentHealth to player.getav health
Set HealthBefore to HVSimEnterTriggerREF2.HealthBeforeSim
if CurrentHealth <= HealthBefore
Set HealthDiff to (HealthBefore - CurrentHealth)
player.restoreav health HealthDiff
else
Set HealthDiff to (CurrentHealth - HealthBefore)
player.damageav health HealthDiff
endif
;---------------------------------------------------------------------------------------------------------------------
; Restore the player's limbs to what they were before the sim
; Head
Set CurrentHealth to player.getav PerceptionCondition
Set HealthBefore to HVSimEnterTriggerREF2.HealthBeforeSim
if CurrentHealth <= HealthBefore
Set HealthDiff to (HealthBefore - CurrentHealth)
player.restoreav PerceptionCondition HealthDiff
else
Set HealthDiff to (CurrentHealth - HealthBefore)
player.damageav PerceptionCondition HealthDiff
endif
;---------------------------------------------------------------------------------------------------------------------
; Left Arm
Set CurrentHealth to player.getav LeftAttackCondition
Set HealthBefore to HVSimEnterTriggerREF2.HealthBeforeSim
if CurrentHealth <= HealthBefore
Set HealthDiff to (HealthBefore - CurrentHealth)
player.restoreav LeftAttackCondition HealthDiff
else
Set HealthDiff to (CurrentHealth - HealthBefore)
player.damageav LeftAttackCondition HealthDiff
endif
;---------------------------------------------------------------------------------------------------------------------
; Right Arm
Set CurrentHealth to player.getav RightAttackCondition
Set HealthBefore to HVSimEnterTriggerREF2.HealthBeforeSim
if CurrentHealth <= HealthBefore
Set HealthDiff to (HealthBefore - CurrentHealth)
player.restoreav RightAttackCondition HealthDiff
else
Set HealthDiff to (CurrentHealth - HealthBefore)
player.damageav RightAttackCondition HealthDiff
endif
;---------------------------------------------------------------------------------------------------------------------
; Left Leg
Set CurrentHealth to player.getav LeftMobilityCondition
Set HealthBefore to HVSimEnterTriggerREF2.HealthBeforeSim
if CurrentHealth <= HealthBefore
Set HealthDiff to (HealthBefore - CurrentHealth)
player.restoreav LeftMobilityCondition HealthDiff
else
Set HealthDiff to (CurrentHealth - HealthBefore)
player.damageav LeftMobilityCondition HealthDiff
endif
; --------------------------------------------------------------------------------------------------------------------
; Remove any stuff the player picked up in the sim
Player.RemoveAllItems
; Return player's inventory
HVPlayerContainerREF.RemoveAllItems Player 1 1
; Kill all enemies still in the cell
KillAllActors
; Remove Sim ImageSpace Modifier
rimod HVSimISFX
; Remove temp sim effect
player.Dispel HVSimWakingActorEffect
; Reset enter trigger
Set HVSimEnterTriggerREF2.Once to 0
end
begin ScriptEffectFinish
; Jump player back to player's pod
Player.MoveTo HVPlayerPodWatkinsInteriorREF
; Open pod for player
HVPlayerPodWatkinsREF.PlayGroup Forward 1
Set HVPlayerPodWatkinsREF.OpenState to 1
; Back from white to normal
imod FadeInFromWhiteISFX
end
HVSimWatkinsEnterScript#
scn HVSimWatkinsEnterScript
int Once
int maxhp
int HealthBeforeSim ; The health total the player had going into the sim
int HeadBeforeSim ; Head health before sim
int LeftArmBeforeSim ; Left arm health before sim
int RightArmBeforeSim ; Right arm health before sim
int LeftLegBeforeSim ; Left leg health before sim
int RightLegBeforeSim ; Right leg health before sim
int PArmorPerk ; Keeps track of whether the player can wear PA
ref AllyType
begin OnTriggerEnter player
if Once == 0
; Reset the simulation cell so it's empty
ResetInterior HiddenValleyPTSDSim
; Remove player's stuff
player.RemoveAllItems HVPlayerContainerREF 1
; Remember player's health & limb condition before sim
Set HealthBeforeSim to player.getav health
Set HeadBeforeSim to player.getav PerceptionCondition
Set LeftArmBeforeSim to player.getav LeftAttackCondition
Set RightArmBeforeSim to player.getav RightAttackCondition
Set LeftLegBeforeSim to player.getav LeftMobilityCondition
Set RightLegBeforeSim to player.getav RightMobilityCondition
; Heal the player to full health
Set maxhp to player.GetPermAV Health
player.RestoreAV Health maxhp
; Add effect that will make player warp back upon being killed
player.CIOS HVSimWakingActorEffect ; CIOS = CastImmediateOnSelf
; Fade in, apply IMOD
imod HVSimISFX
Set Once to 1
endif
end
HVSimEnterScript#
scn HVSimEnterScript
int Once
int maxhp
int HealthBeforeSim ; The health total the player had going into the sim
int HeadBeforeSim ; Head health before sim
int LeftArmBeforeSim ; Left arm health before sim
int RightArmBeforeSim ; Right arm health before sim
int LeftLegBeforeSim ; Left leg health before sim
int RightLegBeforeSim ; Right leg health before sim
int PArmorPerk ; Keeps track of whether the player can wear PA
ref AllyType
begin OnTriggerEnter player
if Once == 0
; Set var so we can't use the pod again until talking to Watkins
Set MelissaWatkinsREF.PostGameTalk to 1
MelissaWatkinsREF.evp
; Reset the simulation cell so it's empty
ResetInterior HiddenValleySim
; Remove player's stuff
player.RemoveAllItems HVPlayerContainerREF 1
; Check if player has Power Armor perk
if player.HasPerk PowerArmorTraining
Set PArmorPerk to 1
else
player.AddPerk PowerArmorTraining
endif
; Give player standard Brotherhood armament
player.AddItem ArmorPowerBrotherhoodOfSteelT45D 1 1
player.EquipItem ArmorPowerBrotherhoodOfSteelT45D 0 1
player.AddItem ArmorPowerHelmetBrotherhoodOfSteelT45D 1 1
player.EquipItem ArmorPowerHelmetBrotherhoodOfSteelT45D 0 1
; Remember player's health & limb condition before sim
Set HealthBeforeSim to player.getav health
Set HeadBeforeSim to player.getav PerceptionCondition
Set LeftArmBeforeSim to player.getav LeftAttackCondition
Set RightArmBeforeSim to player.getav RightAttackCondition
Set LeftLegBeforeSim to player.getav LeftMobilityCondition
Set RightLegBeforeSim to player.getav RightMobilityCondition
; Heal the player to full health
Set maxhp to player.GetPermAV Health
player.RestoreAV Health maxhp
; Add effect that will make player warp back upon being killed
player.CIOS HVSimWakingActorEffect ; CIOS = CastImmediateOnSelf
; Set var so Taggart talks to you about the sim
Set VDialogueHiddenValley.TriedSim to 1
; Determine what type of enemy to spawn
if VDialogueHiddenValley.GameType == 0 ; NCR
Set HVSimMasterREF.SpawnType to HVSimNCRTrooper
elseif VDialogueHiddenValley.GameType == 1 ; BoS Veterans
Set HVSimMasterREF.SpawnType to HVSimBrotherhoodPaladinVeteranEnemy
elseif VDialogueHiddenValley.GameType == 2 ; Enclave
Set HVSimMasterREF.SpawnType to HVSimEnclaveGun
elseif VDialogueHiddenValley.GameType == 3 ; BoS
Set HVSimMasterREF.SpawnType to HVSimBrotherhoodPaladinEnemy
elseif VDialogueHiddenValley.GameType == 4 ; Supermutants
Set HVSimMasterREF.SpawnType to VarHVSimSupermutant
endif
; Set Ally Type
if VDialogueHiddenValley.GameAllies == 0 ; BoS
Set HVSimMasterREF.AllyType to HVSimBrotherhoodPaladin
Set AllyType to HVSimBrotherhoodPaladin
elseif VDialogueHiddenValley.GameAllies == 1 ; BoS Veterans
Set HVSimMasterREF.AllyType to HVSimBrotherhoodPaladinVeteran
Set AllyType to HVSimBrotherhoodPaladinVeteran
elseif VDialogueHiddenValley.GameAllies == 2 ; Enclave
Set HVSimMasterREF.AllyType to HVSimEnclaveGunAlly
Set AllyType to HVSimEnclaveGunAlly
elseif VDialogueHiddenValley.GameAllies == 3 ; NCR
Set HVSimMasterREF.AllyType to HVSimNCRTrooperAlly
Set AllyType to HVSimNCRTrooperAlly
elseif VDialogueHiddenValley.GameAllies == 4 ; Supermutants
Set HVSimMasterREF.AllyType to VarHVSimSupermutantAlly
Set AllyType to VarHVSimSupermutantAlly
endif
; Spawn initial allies
HVSimReinforcementsMarker.PlaceAtMe AllyType 2
Set HVSimMasterREF.allyspawns to HVSimMasterREF.allyspawns + 2
Set HVSimMasterREF.numspawns to HVSimMasterREF.numspawns + 2
; Fade in, apply IMOD
imod HVSimISFX
; Set starting spawn points
Set HVSimMasterREF.SpawnPoint1 to HVSimSpawnMarker1
Set HVSimMasterREF.SpawnPoint2 to HVSimSpawnMarker2
Set HVSimMasterREF.AllySpawnPoint to HVSimReinforcementsMarker
; Make sure kills count
Set HVSimMasterREF.KillsCount to 1
ShowMessage HVSimStartMessage
Set Once to 1
endif
end
HVSimExitScript#
scn HVSimExitScript
; This script is attached to the effect given to the player when they enter the Base Defense simulation in Hidden Valley.
; It causes the player to warp back to their body in Hidden Valley when they take ample damage in the sim.
int HealthDiff
int HealthBefore
int CurrentHealth
begin ScriptEffectStart
imod FadeToWhiteandBackQuickISFX
; Restore the player's health to what it was going into the sim
Set CurrentHealth to player.getav health
Set HealthBefore to HVSimEnterTriggerREF2.HealthBeforeSim
if CurrentHealth <= HealthBefore
Set HealthDiff to (HealthBefore - CurrentHealth)
player.restoreav health HealthDiff
else
Set HealthDiff to (CurrentHealth - HealthBefore)
player.damageav health HealthDiff
endif
;---------------------------------------------------------------------------------------------------------------------
; Restore the player's limbs to what they were before the sim
; Head
Set CurrentHealth to player.getav PerceptionCondition
Set HealthBefore to HVSimEnterTriggerREF2.HealthBeforeSim
if CurrentHealth <= HealthBefore
Set HealthDiff to (HealthBefore - CurrentHealth)
player.restoreav PerceptionCondition HealthDiff
else
Set HealthDiff to (CurrentHealth - HealthBefore)
player.damageav PerceptionCondition HealthDiff
endif
;---------------------------------------------------------------------------------------------------------------------
; Left Arm
Set CurrentHealth to player.getav LeftAttackCondition
Set HealthBefore to HVSimEnterTriggerREF2.HealthBeforeSim
if CurrentHealth <= HealthBefore
Set HealthDiff to (HealthBefore - CurrentHealth)
player.restoreav LeftAttackCondition HealthDiff
else
Set HealthDiff to (CurrentHealth - HealthBefore)
player.damageav LeftAttackCondition HealthDiff
endif
;---------------------------------------------------------------------------------------------------------------------
; Right Arm
Set CurrentHealth to player.getav RightAttackCondition
Set HealthBefore to HVSimEnterTriggerREF2.HealthBeforeSim
if CurrentHealth <= HealthBefore
Set HealthDiff to (HealthBefore - CurrentHealth)
player.restoreav RightAttackCondition HealthDiff
else
Set HealthDiff to (CurrentHealth - HealthBefore)
player.damageav RightAttackCondition HealthDiff
endif
;---------------------------------------------------------------------------------------------------------------------
; Left Leg
Set CurrentHealth to player.getav LeftMobilityCondition
Set HealthBefore to HVSimEnterTriggerREF2.HealthBeforeSim
if CurrentHealth <= HealthBefore
Set HealthDiff to (HealthBefore - CurrentHealth)
player.restoreav LeftMobilityCondition HealthDiff
else
Set HealthDiff to (CurrentHealth - HealthBefore)
player.damageav LeftMobilityCondition HealthDiff
endif
; --------------------------------------------------------------------------------------------------------------------
; Remove any stuff the player picked up in the sim
Player.RemoveAllItems
; Return player's inventory
HVPlayerContainerREF.RemoveAllItems Player 1 1
; Remove Power Armor Training Perk if player didn't have it
if HVSimEnterTriggerREF2.PArmorPerk == 0
player.RemovePerk PowerArmorTraining
endif
; Make sure any enemies killed during cleanup aren't added to your score
Set HVSimMasterREF.KillsCount to 0
; Kill all enemies still in the cell
KillAllActors
; Remove Sim ImageSpace Modifier
rimod HVSimISFX
; Remove temp sim effect
player.Dispel HVSimWakingActorEffect
; Reinitialize the turrets so they're around the next time you try the sim
; DEBUG - need to redo turrets
;HVSimTurret1.ResurrectActor
;HVSimTurret1.ClearDestruction
;HVSimTurret2.ResurrectActor
;HVSimTurret2.ClearDestruction
; Reset enter trigger
Set HVSimEnterTriggerREF2.Once to 0
end
begin ScriptEffectFinish
; Jump player back to player's pod
Player.MoveTo HVPlayerPodInteriorREF
; Open pod for player
HVPlayerPodREF.PlayGroup Forward 1
Set HVPlayerPodREF.OpenState to 1
; Back from white to normal
imod FadeInFromWhiteISFX
; Set Watkins's waiting var so she talks to you as you emerge from the pod
Set MelissaWatkinsREF.waiting to 1
end
HVSimAllyScript#
scn HVSimAllyScript
int Marked
float FadePercent
int Batchcount
begin onLoad
EquipItem WeapLaserRifle 1 1
end
begin onDeath
Set HVSimMasterREF.numspawns to HVSimMasterREF.numspawns - 1
Set HVSimMasterREF.allyspawns to HVSimMasterREF.allyspawns - 1
Set Marked to 1
Set FadePercent to 1.0
RemoveItem WeapLaserRifle 1
RemoveItem WeapPlasmaRifle 1
RemoveItem WeapHuntingRifle 1
RemoveItem WeapNV44Revolver 1
RemoveItem WeapNVHuntingShotgun 1
RemoveItem WeapNVCowboyRepeater 1
RemoveItem WeapChineseAssaultRifle 1
RemoveItem WeapMinigun 1
RemoveItem WeapSuperSledge 1
RemoveItem WeapMissileLauncher 1
end
begin GameMode
if Marked == 1 && FadePercent > 0.0
SetActorAlpha FadePercent
Set FadePercent to FadePercent - .03
elseif Marked == 1
MarkForDelete
endif
if HVSimMasterREF.SpeakFlag
Say HVSimRandomBarks
Set HVSimMasterREF.SpeakFlag to 0
endif
end
HVSimFallbackTriggeeScript#
scn HVSimFallbackTriggerScript
begin OnTriggerEnter player
Set HVSimMasterREF.SpawnPoint1 to HVSimSpawnMarker3
Set HVSimMasterREF.SpawnPoint2 to HVSimSpawnMarker4
end
HVSimEnclaveGunEasyScript#
scn HVSimEnclaveGunEasyScript
int Marked
float FadePercent
begin onLoad
EquipItem HVWeapPlasmaRifleWeak 1 1
end
begin onDeath
if HVSimMasterREF.KillsCount
Set VDialogueHiddenValley.GameScore to VDialogueHiddenValley.GameScore + 1
ShowMessage HVGameScoreMessage VDialogueHiddenValley.GameScore
endif
RemoveItem HVWeapPlasmaRifleWeak 1
Set Marked to 1
Set FadePercent to 1.0
Set HVSimMasterREF.numspawns to HVSimMasterREF.numspawns - 1
end
begin GameMode
if Marked == 1 && FadePercent > 0.0
SetActorAlpha FadePercent
Set FadePercent to FadePercent - .03
elseif Marked == 1
MarkForDelete
endif
end
HVSimEndzoneScript#
scn HVSimEndzoneScript
ref EnteringActor
int CurrentHealth
int Damage
begin OnTriggerEnter
Set EnteringActor to GetActionRef
if EnteringActor.GetInFaction PlayerFaction == 0
; Enemies have breached the command level, simulation over
ShowMessage HVSimFailedMessage
; Damage player to trigger sim exit
set CurrentHealth to player.getAV Health
set Damage to CurrentHealth - 1
player.damageav Health Damage
endif
end
HVSimEnemyScript#
scn HVSimEnemyScript
int Marked
float FadePercent
begin onLoad
EquipItem WeapPlasmaRifle 1 1
end
begin onDeath
Set HVSimMasterREF.numspawns to HVSimMasterREF.numspawns - 1
if HVSimMasterREF.KillsCount
Set VDialogueHiddenValley.GameScore to VDialogueHiddenValley.GameScore + 1
ShowMessage HVGameScoreMessage VDialogueHiddenValley.GameScore
endif
RemoveItem HVSimWeapLaserRifle 1
RemoveItem WeapPlasmaRifle 1
RemoveItem WeapHuntingRifle 1
RemoveItem WeapNV44Revolver 1
RemoveItem WeapNVHuntingShotgun 1
RemoveItem WeapNVCowboyRepeater 1
RemoveItem WeapChineseAssaultRifle 1
RemoveItem WeapMinigun 1
RemoveItem WeapSuperSledge 1
RemoveItem WeapMissileLauncher 1
Set Marked to 1
Set FadePercent to 1.0
end
begin GameMode
if Marked == 1 && FadePercent > 0.0
SetActorAlpha FadePercent
Set FadePercent to FadePercent - .03
elseif Marked == 1
MarkForDelete
endif
end
HVSimPushbackTriggerScript#
scn HVSimPushbackTriggerScript
begin OnTriggerEnter player
Set HVSimMasterREF.SpawnPoint1 to HVSimSpawnMarker1
Set HVSimMasterREF.SpawnPoint2 to HVSimSpawnMarker2
end
I Fought The Law
NCRCFHostageTriggerScript#
A script governing the hostages factions:
ScriptName NCRCFHostageTriggerScript
Begin OnTriggerEnter NCRCFHostageREF
If bDoOnce == 0
SetEnemy NCRCFHostageFaction NCRCFPowderGangerFaction 0 0
Set bDoOnce to 1
EndIf
End
NCRCFHostageDoorScript#
Another script handling the hostages escape:
ScriptName NCRCFHostageDoorScript
Begin OnActivate player
If ScriptTriggered == 0
Set ScriptTriggered to 1
If GetStageDone VMS02 10
Else
NCRCFHostageDoorREF.Activate player
SetEnemy NCRCFPowderGangerFaction PlayerFaction 0 0
StartCombat player
NCRCFHostageREF.evp
EndIf
EndIf
Activate
End
NCRCFHostageScript#
This script updates stage 10 of I Fought The Law upon the hostage's death:
ScriptName NCRCFHostageScript
Begin OnDeath
If GetStage VMS02 == 10
SetObjectiveCompleted VMS02 10 1
SetObjectiveDisplayed VMS02 15 1
SetStage VMS02 15
EndIf
End
NCRCFBlockADoorScript#
A script handling Chavez's cut task:
ScriptName NCRCFBlockADoorScript
Begin OnActivate player
If GetLocked == 0
Set VFreeformNCRCF.ChavezFree to 1
RN VFreeformNCRCFChavezNote
EndIf
Activate
End
Quarry Junction
QJDeathclawHawkinsScript#
A script governing Hawkin's cut quest:
ScriptName QJDeathclawHawkinsScript
Begin OnDeath
Set VFreeformQuarryJunction.bHawkinsSaved to 1
QJHawkinsRef.ResetAI
End
Still In The Dark
HVRangerDEADscript#
Script handling the Ranger being sent to Quarry Junction:
ScriptName HVRangerDEADscript
Begin OnLoad
HVRangerDeadRef.kill QJDeathclawAlphaMaleRef
End
Sunset Sarsaparilla Stars
SSHQRandomEncounterTestTriggerScript#
A script that handles the Sunset Sarsaparilla Helper Ghoul's debug functions:
ScriptName SSHQRandomEncounterTestTriggerScript
Begin OnTriggerEnter player
If Encounter == 1
If DoOnce == 0
Set Marker1 to SSHQEncMarker1
MalcolmHolmesREF.Enable
MalcolmHolmesREF.MoveTo Marker1
Set DoOnce to 1
EndIf
ElseIf Encounter == 2
If DoOnce == 0
Set Marker1 to SSHQEncMarker1
Set Marker2 to SSHQEncMarker2
TomasREF.Enable
TomasREF.MoveTo Marker1
JacklynREF.Enable
JacklynREF.MoveTo Marker2
TomasREF.StartCombat JacklynREF
JacklynREF.StartCombat TomasREF
Set DoOnce to 1
EndIf
ElseIf Encounter == 3
If DoOnce == 0
Set Marker1 to SSHQEncMarker1
FeliciaREF.Enable
FeliciaREF.MoveTo Marker1
Set DoOnce to 1
EndIf
EndIf
End
HVRangerScript#
Part of HVRangerScript, this is noteworthy as it covers the cut conversation found in the February 16th build:
ScriptName HVRangerScript
Begin SayToDone HVRangerResponse
SayTo HVHitSquad1 HVRangerResponse2
End
The Moon Comes Over The Tower
Lucky38ReactorScript#
A script that shows the Lucky 38 was the original access point the player would've bugged:
scn Lucky38ReactorSCRIPT
short button
short runtimer
float Timer ;Timer used for animation control
float Stage ;Stage number
BEGIN gamemode
set Button to GetButtonPressed
if ( Button == 1 )
RewardXP 50
;Set VFreeformLucky38.bBuggedTower to 1
;SetObjectiveDisplayed vfreeformlucky38 20 1
;SetStage vfreeformlucky38 20
;SetDestroyed 1
;disablePlayerControls
RewardXP 50
NVLucky38ReactorRef.Playgroup Forward 0
endif
END
Unused NPC Scripts
A number of unused scripts exist in this build for numerous cut NPCs.
1ERobobrainScript#
An unused script intended for the cut character 1ERobobrain, making sure it is set to unconscious when the game begins:
scn 1ERobobrainScript
begin OnLoad
SetUnconscious 1
end
DoldrumsFrankieScript#
An unused script for the cut character Frankie, named DoldrumsFrankieScript internally. Multiple lines in a text only format were recovered for this NPC also from a build dated February the 16th, which seem to be the barks alluded to below:
scn DoldrumsFrankieScript
short nRandomBark
float Timer
begin GameMode
set nRandomBark to GetRandomPercent
if Timer > 0
set Timer to Timer - GetSecondsPassed
else
if nRandomBark <60
if nRandomBark <=20
;ShowWarning "Frankie Bark 1"
Say 1EFrankieTalk1
elseif nRandomBark >20 && nRandomBark <=40
;ShowWarning "Frankie Bark 2"
Say 1EFrankieTalk2
else
;ShowWarning "Frankie Bark 3"
Say 1EFrankieTalk3
endif
set Timer to 30
endif
endif
end
NVJeremiahScript#
Named NVJeremiahScript internally, it is associated with the cut NPC Jeremiah. It tells us little, other than that his death was to be of some consequence:
scn NVJeremiahScript
beginondeath
end