Decoder/encoder for Konami's binary XML format
Go to file
2017-06-26 12:51:58 +10:00
.gitignore Initial commit 2017-06-13 19:57:04 +10:00
bytebuffer.py Much needed cleanup/restructure 2017-06-22 00:11:28 +10:00
format_ids.py Much needed cleanup/restructure 2017-06-22 00:11:28 +10:00
kbinxml.py Rename main module for PEP 2017-06-22 00:12:10 +10:00
README.md Add README 2017-06-22 00:17:34 +10:00
sixbit.py Fix missing ':' in sixbit encoder 2017-06-22 00:34:01 +10:00
testcases_out.kbin Add test files and expected outputs - not passing yet 2017-06-26 12:51:58 +10:00
testcases_out.xml Add test files and expected outputs - not passing yet 2017-06-26 12:51:58 +10:00
testcases.xml Add test files and expected outputs - not passing yet 2017-06-26 12:51:58 +10:00

kbinxml

An encoder/decoder for Konami's binary XML format, used in some of their games.

In [1]: from kbinxml import KBinXML
In [2]: text = KBinXML('<?xml version="1.0"?><root __type="str">Hello, world!</root>')
In [3]: text.to_binary()
Out[4]: '\xa0B\x80\x7f\x00\x00\x00\x08\x0b\x04\xdfM9\xfe\xff\x00\x00\x00\x00\x14\x00\x00\x00\x0eHello, world!\x00\x00\x00'

In [5]: bin = KBinXML(Out[4])
In [6]: bin.to_text()
Out[7]: '<?xml version="1.0" encoding="UTF_8"?>\n<root __type="str">Hello, world!</root>\n'