This package provides a library for reading, changing, and writing common file formats that are found with NWN, a Bioware game.
They should work with NWN2 just as well, since the file format specifications did not change.
both with an API and useful command-line tools:
-
GFF 3.2 (are, git, gic, dlg, itp, ifo, jrl, fac, ssf, ut*, among others)
-
ERF (mod, hak, erf, among others)
-
KEY, BIF (key, data/*.bif)
-
2DA V2.0
-
TLK
-
native gff
-
yaml presentation of data
-
json presentation of data (with proper UTF-8 conversion)
-
ruby-native marshalling of gff data
-
a compact native xml format
-
nwntools.sf.net-style xml files (“modpacker”)
-
kivinen-style (“gffprint.pl”) presentation of data
-
prettyprint (ruby-specific)
-
shell scripts and tools to simplify your life (see BINARIES)
-
extensive developer API
-
a powerful get-out-of-my-way scripting system for data transformation (see SCRIPTING)
With the release of 0.4.0, the API changed significantly. Previous yaml dumps made with 0.3.x are INCOMPATIBLE, and so are all scripts. I can’t help you with your API bindings, but for your YAML dumps, a converter script has been provided (see BINARIES).
All with version 0.4.x produced files should be compatible with 0.5.0. Your application might require some porting to ruby 1.9.
YAML dumps will need to be converted due to the internal parser/generator used by ruby being replaced (syck to psych). There is a converter packaged in tools/ along with the gem distribution.
To use it, simply add the following to your Gemfile:
gem 'nwn-lib'
Also, read BINARIES for the packaged executable scripts, and HOWTO.
For nwn-lib scripts, see SCRIPTING.
For using the developer API, I suggest you start reading NWN::Gff::Struct.
The latest source is available through git.