About this mod
Run Skyrim Papyrus scripts without any .esp
- Requirements
- Permissions and credits
- Changelogs
- Donations
- Easily distribute scripts to any object in Skyrim!
- Distribute via: base form, form list, keyword, form type
- Easier than Creation Kit!
Installation
If you installing No .esp as a requirement for another mod, simply download the file for your version of Skyrim (SE, AE, VR) using your favorite mod manager.
Demo for Mod Authors
Usage for Mod Authors
Long story, short...
- Create Papyrus scripts as your normally would
- Create a .txt file in Data\Scripts\AutoBindings\
- Name the text file something unique, e.g. the name of your mod
- Put the names of any scripts you want auto-initialized into the text file!
- View the format reference below for details on using the text file
- Oh, and there's a Papyrus interface. Bind scripts to objects at runtime!
If you haven't already, watch the Demo for Mod Authors which walks through the process of creating scripts with No .esp
Note: You can not use No .esp with scripts packaged in .bsa files
Example Papyrus Script
Make sure that your script extends the type of object you would like to attach it to, e.g. ObjectReference
AutoBinding File Reference
Papyrus Function Reference
By default, the Papyrus functions will add scripts to objects even if a script with the same name is already attached to that same object.
If you want to enforce the script name checking so it won't add a script with the same name to the same object, pass true to the functions.
Nearby Search for Newly Spawned Objects (configurable)
No .esp can regularly search near the player for freshly spawned objects.
For example, objects created by scripts using PlaceAtMe.
By default, No .esp searches for objects within 1000 units every 3 seconds * we can change this any time / disable it be default if desired
[ObjectSearch]
fSearch1Radius=1000
iSearch1IntervalMs=3000
; fSearch2Radius=1000
; iSearch2IntervalMs=10000
Multiple searches can be configured.
Logging
Logs can be found in My Games\Skyrim Special Edition\SKSE\no-esp.log
You can enable logs printing to the Skyrim ~ console in the no-esp.ini
[Logging]
bLogToConsole=false
Highly Recommended: po3's Tweaks
Is you use po3's Tweaks, then the Editor ID feature becomes *very powerful*. You can reference anything/anyone in the game via Editor ID.
FAQ
Can you bind the same script to an object multiple times?
Yes. But currently only via the provided Papyrus functions (see above)
The scripts specified in AutoBinding files are only attached to objects if the object does not already have an attached script with the same name.
How does this work with Save Games?
Same as any vanilla Papyrus script. The scripts are saved to the regular Skyrim .ess save game files. You can remove scripts-without-esp.dll and the scripts continue to function.
Source
https://github.com/mrowrpurr/no-esp
Thank You
Special Thank You to Charmed Baryon for being an amazing mentor while I learn C++ and SKSE development!
Also thank you to Nem for your help and powerofthree for po3's Tweaks and Base Object Swapper which helped us get object attaching working!
Finally, thank you to my whole Twitch community for being with me during the whole development of this mod! (especially kirglow!)
That's it y'all
Enjoy <3
~ Mrowr Purr ~