Skip to content

Pure Rust cross-platform Havok behavior (De)Serialization library.(ver. hk_2010.2.0-r1)

License

MIT, Apache-2.0 licenses found

Licenses found

MIT
LICENSE.md
Apache-2.0
LICENSE-APACHE.txt
Notifications You must be signed in to change notification settings

SARDONYX-sard/serde-hkx

Repository files navigation

Havok Behavior Serialization/Deserialization Library

Features

  • 32bit to 64bit (reverse) conversion of hkx.
  • XML to 32bit/64bit hkx (reverse) conversion.
  • Display of hkx/XML state machine dependency tree.
  • Output logs that make it possible to determine the binary data location of hkx.
  • Hexdump the binary data of hkx.
  • Display data differences between two hkx/XML.

Download CLI(For behavior creator)

./hkxc --help

When used as a library(For developer)

  • Convenience wrapper API(For CLI/GUI): (e.g. CLI)
# in Cargo.toml
serde_hkx_features = { git = "https://github.com/SARDONYX-sard/serde-hkx", tag = "0.3.1" }
  • Low level API: (e.g. Tests)
# in Cargo.toml
havok_classes = { git = "https://github.com/SARDONYX-sard/serde-hkx", tag = "0.3.1" }
serde_hkx = { git = "https://github.com/SARDONYX-sard/serde-hkx", tag = "0.3.1" }

Documentation

git clone https://github.com/SARDONYX-sard/serde-hkx.git;cd ./serde-hkx; cargo doc -p serde_hkx_features;

implementation progress

The only way to find out if it is possible or not is to try it out.

  • XML Serializer
  • XML Deserializer
  • Bytes Serializer
  • Bytes Deserializer
  • Generate Havok Classes
  • Testing the API & CI.
  • Modify the code based on the test data.

About the GPL old version

GPL-dependent code (rhexdump crate) has been removed, and the GPL usage history has been completely removed.