Files
libloot-python/docs/usage.rst
T
Oliver Hamlet 56746ea91a Update LOOT API
To commit d1524b83d216efd2744b6575510bb4dbe390c102.
2016-08-19 17:09:04 +01:00

63 lines
2.2 KiB
ReStructuredText

*****
Usage
*****
Installing the wrapper
======================
Build archives contain two binaries:
* ``loot_api.pyd`` is the Python wrapper
* ``loot_api.dll`` is the C++ API DLL that the Python wrapper was built against.
The C++ DLL requires the `Visual C++ 2015 Redistributable (x86)`_
to be installed.
To use the wrapper, copy both files to wherever you want to import them from
(they must be in the same folder), and you're done!
.. _Visual C++ 2015 Redistributable (x86): https://download.microsoft.com/download/9/3/F/93FCF1E7-E6A4-478B-96E7-D4B285925B00/vc_redist.x86.exe
Using the wrapper
=================
Checking Compatibility
**********************
To check if the module loaded is compatible with the version of the API that you
developed against::
>>> import loot_api
>>> loot_api.is_compatible(0,9,0)
True
>>> loot_api.is_compatible(0,8,0)
False
**Note:** LOOT's development cycle increments its version number just before
releases, so snapshot builds created from commits between releases may use the
last release's version number, and so appear compatible, but contain breaking
changes that aren't yet reflected by the version numbering.
The module is currently built against revision `d1524b8`_
of the API, which is post-0.9.2 and pre-0.10.0, but uses the v0.10 metadata
syntax (as specified at that revision, in case there are further changes before
the v0.10 release).
.. _d1524b8: https://github.com/loot/loot/tree/d1524b83d216efd2744b6575510bb4dbe390c102
Getting a Plugin's Bash Tag Suggestions
***************************************
To get a plugin's Bash Tag suggestions from a ``masterlist.yaml`` metadata file::
>>> import loot_api
>>> db = loot_api.create_database(loot_api.GameType.tes4, '', '')
>>> db.load_lists('masterlist.yaml', '')
>>> tags = db.get_plugin_tags(u'Unofficial Oblivion Patch.esp')
>>> tags.added
set([u'Scripts', u'Relations', u'C.Owner', u'Actors.AIPackages', u'Actors.Stats', u'Actors.ACBS', u'C.Music', u'Factions', u'Invent', u'Relev', u'Names', u'C.Light', u'Delev', u'C.Name', u'C.Climate', u'NPC.Class', u'Stats', u'Actors.DeathItem', u'Creatures.Blood', u'Actors.CombatStyle', u'Actors.AIData'])
>>> tags.removed
set([u'C.Water'])
>>> tags.userlist_modified
False