Releases: SkyrimScripting/Bind
🦃 Thanksgiving 2024
Nov 24, 2024
🦃 Thanksgiving release
Built using NG as of CharmedBaryon/CommonLibSSE-NG@b93280e
The previous release might have worked too, but I wanted to:
- Update
BIND's build files to use the latest Skyrim CommonLib packages from https://github.com/SkyrimScripting/Packages- Build it and make sure it runs (which it does, but it might've already run)
I tested on Skyrim 1.6.1170.0 but it might possibly work for higher versions, if there are any at this time.
"They remember..." 🦖
v1.1.1
Same as v1.1 with the following added features:
- script binding now runs on
cocagain - scripts bound to named quests are remembered, they won't be bound to quest they've already been bound to
- if a quest with the provided name already exists, a new quest will not be created
NameOfScript $Quest(MyNewCoolQuest)
NameOfScript $Quest(ExistingCoolQuest)
Total of 243 Lines of Code
Below are the
v1.1features
v1.1
Same as v1 with the following added features:
- scripts are not bound to forms, if the form already has a script attached with the same name.
- script binding runs on these events: new game, game loaded
- This means that BIND no longer runs on
cocevents - you must quick save and load to run BIND
- This means that BIND no longer runs on
Total of 212 Lines of Code
Below are the
v1features
v1
The goal for v1 is to be as minimal as possible:
- Bindings are defined in
Scripts\Bindings\ - Each file should contain 1 line per desired "binding" (attach script to something)
- Support for binding to objects by Form ID
NameOfScript 0x14 - Support for binding to objects by Editor ID
NameOfScript dlc1serana - Support for binding to the Player (as an
ActorForm, not aReferenceAlias)NameOfScript $Player - Support for binding to an anonymous/generated
QuestNameOfScript $Quest - Support for binding to an anonymous/generated
Questwith a provided editor IDNameOfScript $Quest(MyCoolQuest) - Support for binding to an anonymous/generated
ObjectReferenceNameOfScript $ObjectObjects are ALWAYS placed in the
WEMerchantChestscell. This is not configurable. - Support for binding to a generated
ObjectReferenceof a specified base Form IDNameOfScript $Object(0x7) - Support for binding to a generated
ObjectReferenceof a specified base Editor IDNameOfScript $Object(FoodSweetroll) - Support for determining what to bind to automatically based on script
extendsNameOfScriptscriptName NameOfScript extends Quest ; Anonymous Quest scriptName NameOfScript extends Actor ; Player scriptName NameOfScript extends ObjectReference ; Anonymous Object scriptName NameOfScript extends CustomType ; CustomType parent(s) checked
- Nothing is configurable
.dlland.pdbprovided ~v1.1is now compiled inreleasedbgTo install, install normally as a mod using your preferred mod manager
v1.1 - KISS (Only bind once)
v1.1
Same as v1 with the following added features:
- scripts are not bound to forms, if the form already has a script attached with the same name.
- script binding runs on these events: new game, game loaded
- This means that BIND no longer runs on
cocevents - you must quick save and load to run BIND
- This means that BIND no longer runs on
Total of 212 Lines of Code
Below are the
v1features
v1
The goal for v1 is to be as minimal as possible:
- Bindings are defined in
Scripts\Bindings\ - Each file should contain 1 line per desired "binding" (attach script to something)
- Support for binding to objects by Form ID
NameOfScript 0x14 - Support for binding to objects by Editor ID
NameOfScript dlc1serana - Support for binding to the Player (as an
ActorForm, not aReferenceAlias)NameOfScript $Player - Support for binding to an anonymous/generated
QuestNameOfScript $Quest - Support for binding to an anonymous/generated
Questwith a provided editor IDNameOfScript $Quest(MyCoolQuest) - Support for binding to an anonymous/generated
ObjectReferenceNameOfScript $ObjectObjects are ALWAYS placed in the
WEMerchantChestscell. This is not configurable. - Support for binding to a generated
ObjectReferenceof a specified base Form IDNameOfScript $Object(0x7) - Support for binding to a generated
ObjectReferenceof a specified base Editor IDNameOfScript $Object(FoodSweetroll) - Support for determining what to bind to automatically based on script
extendsNameOfScriptscriptName NameOfScript extends Quest ; Anonymous Quest scriptName NameOfScript extends Actor ; Player scriptName NameOfScript extends ObjectReference ; Anonymous Object scriptName NameOfScript extends CustomType ; CustomType parent(s) checked
- Nothing is configurable
.dlland.pdbprovided ~v1.1is now compiled inreleasedbgTo install, install normally as a mod using your preferred mod manager
v3 - {!BIND}
3.0 no longer supports the Bindings/ folder
All binding is now done via "docstring" comments on scripts:
scriptName HelloActor extends Actor
{!BIND HodRef|$Player}v2.1- {!BIND}
v2 - {!BIND}
v2
v2 has the same features as v1 except you no longer need to create a Scripts\Bindings\ folder.
Simply annotate your scripts by including !BIND commands into the script's top-level comment:
scriptName BindToSomeActors extends Actor
{
!BIND HodRef
!BIND SvenRef
!BIND HildeRef
}scriptName BindToThePlayer extends Actor
{!BIND}scriptName BindToNewQuest extends Quest
{!BIND $Quest(CoolEditorID)}v1 Features (included)
The goal for v1 is to be as minimal as possible:
- Bindings are defined in
Scripts\Bindings\ - Each file should contain 1 line per desired "binding" (attach script to something)
- Support for binding to objects by Form ID
NameOfScript 0x14 - Support for binding to objects by Editor ID
NameOfScript dlc1serana - Support for binding to the Player (as an
ActorForm, not aReferenceAlias)NameOfScript $Player - Support for binding to an anonymous/generated
QuestNameOfScript $Quest - Support for binding to an anonymous/generated
Questwith a provided editor IDNameOfScript $Quest(MyCoolQuest) - Support for binding to an anonymous/generated
ObjectReferenceNameOfScript $ObjectObjects are ALWAYS placed in the
WEMerchantChestscell. This is not configurable. - Support for binding to a generated
ObjectReferenceof a specified base Form IDNameOfScript $Object(0x7) - Support for binding to a generated
ObjectReferenceof a specified base Editor IDNameOfScript $Object(FoodSweetroll) - Support for determining what to bind to automatically based on script
extendsNameOfScriptscriptName NameOfScript extends Quest ; Anonymous Quest scriptName NameOfScript extends Actor ; Player scriptName NameOfScript extends ObjectReference ; Anonymous Object scriptName NameOfScript extends CustomType ; CustomType parent(s) checked
- Nothing is configurable
v1 - Easy Papyrus Scripts!
v1
The goal for v1 is to be as minimal as possible:
- Bindings are defined in
Scripts\Bindings\ - Each file should contain 1 line per desired "binding" (attach script to something)
- Support for binding to objects by Form ID
NameOfScript 0x14 - Support for binding to objects by Editor ID
NameOfScript dlc1serana - Support for binding to the Player (as an
ActorForm, not aReferenceAlias)NameOfScript $Player - Support for binding to an anonymous/generated
QuestNameOfScript $Quest - Support for binding to an anonymous/generated
Questwith a provided editor IDNameOfScript $Quest(MyCoolQuest) - Support for binding to an anonymous/generated
ObjectReferenceNameOfScript $ObjectObjects are ALWAYS placed in the
WEMerchantChestscell. This is not configurable. - Support for binding to a generated
ObjectReferenceof a specified base Form IDNameOfScript $Object(0x7) - Support for binding to a generated
ObjectReferenceof a specified base Editor IDNameOfScript $Object(FoodSweetroll) - Support for determining what to bind to automatically based on script
extendsNameOfScriptscriptName NameOfScript extends Quest ; Anonymous Quest scriptName NameOfScript extends Actor ; Player scriptName NameOfScript extends ObjectReference ; Anonymous Object scriptName NameOfScript extends CustomType ; CustomType parent(s) checked
- Nothing is configurable