Skip to content
A RawArray packer/unpacker for Godot.
C++ C Python
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.


Simple binary packing/unpacking for RawArray in Godot.


RawPacker allows Variant arrays to be packed into and unpacked from a RawArray using a format string. The approach was inspired by Python's struct.pack and struct.unpack functions. Packing/unpacking RawArray is useful for sending and storing data in a compact form.


Simply drop the rawpacker directory in your godot/modules directory and build for the platfom of your choice.


var raw_packer =
var raw_array = raw_packer.pack("?iis16fhv", [false,1,2,"fixed string",3.14,-42,"variable string"])
var array = raw_packer.unpack("?iis16fhv", raw_array)


False, 1, 2, fixed string, 3.14, -42, variable string

Format Strings

Format Serialized Type Godot Type Size (bytes)
c char integer 1
b unsigned char integer 1
? unsigned char boolean 1
h short integer 2
H unsigned short integer 2
i int integer 4
I unsigned int integer 4
q long long integer 8
Q unsigned long long integer 8
f float real 4
d double real 8
s# char[] string #
v char[] string variable


Copyright (c) 2015 James McLean
Licensed under the MIT license.

You can’t perform that action at this time.