Last updated at 8:08, 22 Oct 2014 Uploaded at 17:23, 10 Jan 2014
Data structures framework for Skyrim
v3.2-alpha carries more Lua functionality - and some may desire to move code parts with huge JC-usage into Lua scripts, due to following benefits:
- Don't have to retain, release objects manually
- Faster than standard Lua - Just-In-Time compiler compiles Lua code of fly into fast machine code
- Code looks much compact - Draft
Testing and feedback, from your's, modder's side are required
JContainers is a modding framework that extends Papyrus by adding various data structures. It features:
- Data structures
- Import and export data to and from JSON files
- Path resolving - simplifies access to nested data
- Lua (in progress) - The main purpose is to minimize the amount of cumbersome Papyrus code needed to handle data by moving it into Lua scripts
- C++ API - interaction with JC via C++ interface. This mean you can invoke C++ analogue of any Papyrus function JC provides. See developer resources archive for usage example.
Post feature requests here please
For manual installation open you Skyrim Data folder, place the scripts, SKSE etc in that folder. When ask to merge folders hit yes.[/url]
Mods using this plugin
AH Hotkeys - Skyrim Hotkey Manager
HooKmmerse - auto resolves cross-mod jump-height, skeleton scale value conflicts. Explanation
KeyInput - text input framework
Proper Potion Names - a potion name reveals effects of the potion
Familiar Faces - you don't know what FF is?
Druids Den - Collectors Edition
JContainers uses semantic versioning scheme - API.FEATURE.PATCH. Essence:
- API version increases when API changes in backward-incompatible way. Mod requiring JC 3.x most likely will not work with JC 4.x installed
- FEATURE version increases when functionality added in a backwards-compatible manner. Mod requiring JC 3.1 will perform well with JC 3.2 and above
- PATCH version increases when backwards-compatible bug fixes added.
thanks to Saerileth and Gooser, without your interest that project would be abandoned
thanks to skwerlman, alexdunnfor documentation improvements
verteiron - his Familiar Faces mod makes my framework much more noticeable on nexus
thanks to RealAntithesis for interesting ideas
Third party libraries used
skse library - it would be impossible to imagine Skyrim modding without it
boost framework - real treasure for any C++ programmer
jansson - nice JSON parsing library
- You (as mod author) may bundle this plugin.
- It's up to you to report to a user of incompatibility of installed JC API version and the version mod has been compiled for the best user's experience. Valid condition is `JC.APIVersion == hardcodedAPIVersion && JC.featureVersion >= hardcodedFeatureVersion`.
- The files in this plugin are not to be modified under any circumstance as that could cause problems when a load order includes multiple mods that use the plugin and one or more mods have modified the files in this plugin.