- All games
- Fallout New Vegas
- Mods
- Utilities
- New Vegas Script Extender (NVSE)
New Vegas Script Extender (NVSE)
-
Unique DLs--
-
Total DLs--
-
Total views--
-
Version6.2.2
File information
Last updated
Original upload
Created by
NVSE TeamUploaded by
PickysaurusVirus scan
Safe to use
Tags for this mod
Current section
About this mod
The New Vegas Script Extender, or NVSE for short, is a modder's resource that expands the scripting capabilities of Fallout: NV. It does so without modifying the executable files on disk, so there are no permanent side effects.
- Requirements
-
Off-site requirements
Mod name Notes x86 Visual C++ Redistributable Latest version required Mods requiring this file
- Permissions and credits
-
Credits and distribution permission
- Other user's assets Some assets in this file belong to other authors. You will need to seek permission from these authors before you can use their assets
- Upload permission You are not allowed to upload this file to other sites under any circumstances
- Modification permission You are not allowed to modify my files, including creating bug fixes or improving on features under any circumstances
- Conversion permission You are not allowed to convert this file to work on other games under any circumstances
- Asset use permission You are not allowed to use assets from this file under any circumstances
- Asset use permission in mods/files that are being sold You are not allowed to use assets from this file in any mods/files that are being sold, for money, on Steam Workshop or other platforms
- Asset use permission in mods/files that earn donation points You are not allowed to earn Donation Points for your mods if they use my assets
Author notes
This author has not provided any additional notes regarding file permissions
File credits
This author has not credited anyone else in this file
Donation Points system
This mod is not opted-in to receive Donation Points
- Mirrors
- Changelogs
-
-
Version 6.2.2
- Fix another subtle lambda issue - thanks Eddoursul for bug report
- Fix possible crash while loading save
- Fix crash if GetWeaponType is called on non-weapon
-
Version 6.2.1
- General bug fixes
- Fix lambda issues
- Add support for loops, lambdas and macros in console
- Add ar_Any, ar_All, ar_DeepEquals, GetWeaponRegenRate, SetWeaponRegenRate script functions
- Add support for int a, b, c variable declaration syntax
- Fix if blocks being validated inside multiline comments
- Allow == to compare arrays without just comparing IDs
- PluginAPI: add GetContainerType
- Ar_Generate improvements
-
Version 6.2.0
- Fix public ref maps not getting loaded from cosave.
-
Version 6.1.9
- Fix co-save issues with 6.1.8
- Show vanilla script errors only for mods you have edited scripts for in the past.
-
Version 6.1.8
- Remove hardcoded 4 MB co-save limit
- - Introduce warning if mods are deemed to be leaking, display which mods and instructions on how to clean the co-save.
- bWarnScriptErrors
- - Fix decompiled line being wrong
- - Only enable by default if GECK was opened in the past 2 days
- GECK Editor
- - Fix variable assign macro being case sensitive to variable types
- Ar_Filter, Ar_MapTo, Ar_Generate, Ar_FindWhere
- - Allow no SetFunctionValue if return value is 0
-
Version 6.1.7
- Bug fixes
- Fix lambda crash
- Fix some decompiler issues
- Fix Vanilla UI+ / Stewie's Tweaks bug with bContainerDefaultToRightSide
- Fix hot reload lambda issue
- Add commands ar_Generate, ar_Init (thanks Demorome)
- Optimize string var assignments from let expressions to be much faster in scripts
- Capture lambda variables inside SetEventHandler in temporary scripts (UDFs and effect scripts)
- Add inline expression support in console, allow string_var and array_var in console (ported from Improved Console plugin)
- Only issue script error warnings in top corner if GECK is installed (for mod authors) or [Release] bWarnScriptErrors INI option is set to 1
- Print decompiled lines for vanilla game script errors if bWarnScriptErrors is 1
- Prevent Dispel from spamming script error log when it returns false to stop script
-
Version 6.1.6
- New scripting functions/commands
- Ar_Filter
- Ar_FindWhere
- Ar_MapTo
- DecompileScript
- HasScriptCommand
- GetCommandOpcode
- Introduce script decompiler for mod scripts which sources are lost
- Decompiler can be used to verify that scripts compiled correctly as GECK can sometimes mess up the compilation
- It can also be used to find out which script lines caused errors in mods.
- Add to PluginAPI
- HasScriptCommand
- DecompileScript
- Fix lambda issue with error messages
- Fix assignment shorthand syntax for math inside array brackets
-
Version 6.1.5
- Add support for lambda scripts to capture variables from parent script if the lifetime of the parent script is shorter than the lambda (UDFs and effect scripts) in select functions (CallFor, CallAfter and CallWhile).
- EDITOR: Fix variable assignment macro syntax being bugged when prefixed with a variable type (int iVar = 10 would not work for example before)
- Additions to PluginAPI: IsScriptLambda, LambdaSaveVariableList and LambdaUnsaveVariableList (latter two are used to capture variables)
- 6.1.6 Changelog
-
Version 6.1.4
- Fix save bloat issue (NVSE string and array types not getting cleaned up for UDF parameters) introduced in last version
-
Version 6.1.3
- Add Expression Evaluator to Plugin API
- Fix shorthand assignment bugs
- Fix minor lambda issues
- Revert script crashing functionality change as it broke old broken (yet still used for some reason) mods
- Scripting: allow = to be used in place of := in more contexts for consistency with shorthand assignment macro
-
Version 6.1.2
- Fix vanilla commands failing if the ParamInfo* was nullptr
- Increase maximum args for plugins calling UDF scripts from 5 to 10
-
Version 6.1.1
- Fix string concatenation bug (broke sprint animations)
- Fix comments making line numbers in compiler errors inaccurate in GECK
-
Version 6.1.0
- See https://www.nexusmods.com/newvegas/articles/55693
-
Version 6.0.9
- Fix GoTo and Label, which got broken in 6.0.7 and subsequently broke some mods.
-
Version 6.0.8
- Add new commands (old UI functions are bugged)
- GetUIFloatAlt
- SetUIFloatAlt
- SetUIStringAlt
- Fix bug related to UDF parameters and Hot Reload NVSE
-
Version 6.0.7
- Fix ToString ($) not working on too long strings after JIP removed own hook
- ExtractArgs replaced with ExtractArgsEx for all functions
- Fix GetAltPerkRank function
- Fix V3Normalize function
-
Version 6.0.6
- Fixes some bugs that got introduced in 6.0.5
-
Version 6.0.5
- Bug fixes related to strings and set ... to
- Fixes for NVSE that used to be in JIP LN now transferred to NVSE
- Add ParamType_ScriptVariable for plugins
-
Version 6.0.4
- Fix minor array bug
- Fix crash / NVAC alert that could happen in events
- Improve error reporting
-
Version 6.0.3
- Fix string bloat issue that haunted some mods
- Fix cosave not saving mod index for strings
- Fix GetInGrid for some mods
- Fix some string formatting issues
-
Version 6.0.2
- Fix crash that could happen
- Fix array bug
-
Version 6.0.1
- Fixed some bugs and refined some console messages in regards to scripting
- Fixed a crash that could happen when loading interiors (handled by NVAC)
- Updated loaded version for Vortex
-
Version 6.0.0
- NVSE expression evaluator heavily optimized for performance (let, eval, foreach, call etc. no longer considered slow)
- NVSE arrays heavily optimized for performance
- NVSE cosave saving and loading heavily optimized for performance
- Optimizations in UI functions and string formatting functions
- Automatic cleanup of string variables and array variables (no more string and array var save bloating)
- Mod authors should however continue using Sv_Destruct and Ar_Null to prevent save bloating for people using older versions of NVSE
- Short circuit evaluation of conditional expressions in eval
- Examples:
- Func0 && Func1 - Func1 won't be called or evaluated if Func0 returns false
- Func0 || Func1 - Func1 won't be called or evaluated if Func0 returns true
- Improved error logging and reporting on NVSE script errors (script line printing)
- Ease restrictions on console (NVSE commands call and print can now be used in console for example)
- Improved error reporting when NVSE plugins fail to load
- NVSE Plugin API expanded (added messages DeferredInit for callbacks when all objects are initialized, MainGameLoop for main loop callback)
- Minor bug fixes in various parts of NVSE, including tiny memory leaks and crashing code sections
- Codebase refactoring and cleanup
-
Version 5.1b4
- versions where not coherent.
-
Version 5.1b3
- CTD when starting a new game with the NoGore edition of NVSE.
-
Version 5.1b2
- Update3D works again.
-
Version 5.1b1
- Possibly Important: ExtractArgs used in Compiler Override mode was always returning true even if the argument types were wrong.
- pretty much all commands are affected by that change so it is possible for your mods to suddenly display errors they weren't before.
- Change definition for SetWeaponAmmo and SetWeaponProjectile to allow for AnyForm.
- Change a few functions to take either an actor (ref) or an actorBase (npc). It was implemented in the code but not in the function definition.
- GetBaseSpellListSpells, GetBaseSpellListLevSpells, GetBasePackages, GetBaseFactions, GetBaseRanks and GetHeadParts.
- Fix ToggleUIMessages(True), thanks to RoyBatterian
- SetPermanent applies to reference as intended rather than to base forms (as that would simply duplicate IsQuestItem).
- Possible bugfix:
- Added multi threading handling to the calling of functions due to hard to track reports of function call failling.
- I have no idea if it will help, but..
- Also, those calls error reports have been stligthly changed to help distinguish possible causes.
- GetSourceModIndex will accept any form as the optional parameter.
- Remove restriction on Set3D for the playerCharacter (highly experimental) and known to have a visual glitch. When compiled in debug mode it is not working at all.
- GetPermanent should persist accross saves now.
- SpecialIdles for NPC and Creature:
- [actor or npc or creature].GetNthAnimation index [npc or creature or actor]
- returns the nth animation selected on an NPC or a creature as a string_var
- [actor or npc or creature].AddAnimation animationName [npc or creature or actor]
- Select an alternate animation for an NPC or a creature
- [actor or npc or creature].DelAnimation animationName [npc or creature or actor]
- Deselect an alternate animation for an NPC or a creature
- [actor or npc or creature].DelAnimations [npc or creature or actor]
- Deselect all alternate animation for an NPC or a creature
- [actor or npc].GetClass [npc or actor]
- Returns the class of an NPC
- [actor or npc].GetNameOfClass [npc or actor]
- Returns the class name of an NPC
- ShowLevelUpMenu
- Optional Alternate Update3D for the player (set AlternateUpdate3D to 1 in nvse.ini section [RELEASE] and/or [DEBUG]). It has an effect but with a huge visual defect that should be temporary.
- Misclaneous: New data interface for plugin authors needing internal offset to NVSE code.
-
Version 5.1.6
- Fixed heap corruption bug
- Fixed hacky piece of code making recompiles buggy
- Everything should be a lot faster since NVSE was compiled using a newer toolset
-
This page was created to provide metadata about NVSE, you must download NVSE from GitHub or http://nvse.silverlock.org/ listed under "Mirrors" above.
The New Vegas Script Extender, or NVSE for short, is a modder's resource that expands the scripting capabilities of Fallout: NV. It does so without modifying the executable files on disk, so there are no permanent side effects.
Once installed, no additional steps are needed to launch Fallout New Vegas with NVSE's added functionality. You can start the game using NVSE from nvse_loader.exe
Installation (Manual):
Install with Vortex
The New Vegas Script Extender, or NVSE for short, is a modder's resource that expands the scripting capabilities of Fallout: NV. It does so without modifying the executable files on disk, so there are no permanent side effects.
Once installed, no additional steps are needed to launch Fallout New Vegas with NVSE's added functionality. You can start the game using NVSE from nvse_loader.exe
Installation (Manual):
- Download nvse_6_0_7.7z (or whatever the latest version is)
- Extract all files inside the nvse_6_0_7 folder to your game folder (where FalloutNV.exe is located)
- Run the game using nvse_loader.exe
- To confirm it is working, open the console with the tilde (`) key and type GetNVSEVersion. This will display the version number of the current NVSE build.
Install with Vortex