@gd-com/utils
v5.0.0
Published
Serializer/deserializer utils for godot engine
Downloads
153
Maintainers
Readme
@gd-com/utils
Binary serialization helper godot and nodejs !
Written with this api
Requirements
- Godot 4.0 or greater
- NodeJS 16 LTS or greater
For Godot 3 go @gd-com/utils v3
How to install
npm install --save @gd-com/utils
Examples
What is certs-generator ?
This is a Godot project which is just used to generate SSL certificates to test TCP UDP and Websocket in "secure" mode
Basic vs Advanced
- Basic is a simple example who explain how to send variant
- Advanced is a more complex example who explain how to send custom packets
Available from gdCom
Helpers
| Method | Description | Return | |-------------------------|---------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------| | prefixWithLength(buffer) | Prefix the buffer passed in parameter by its size (required only for TCP) | Buffer | | StreamTcp | To optimize Godot send from time to time several packets in the same packet (only for TCP), to deserialize well it is necessary to use this | Class |
Encode and Decode
- getX
| Method | Return | |-------------------------------|------------------------------| | getVar(buffer, offset = 0) | Object { value, length } | | get8(buffer, offset = 0) | Object { value, length } | | get16(buffer, offset = 0) | Object { value, length } | | get32(buffer, offset = 0) | Object { value, length } | | get64(buffer, offset = 0) | Object { value, length } | | getU8(buffer, offset = 0) | Object { value, length } | | getU16(buffer, offset = 0) | Object { value, length } | | getU32(buffer, offset = 0) | Object { value, length } | | getU64(buffer, offset = 0) | Object { value, length } | | getFloat(buffer, offset = 0) | Object { value, length } | | getDouble(buffer, offset = 0) | Object { value, length } | | getString(buffer, offset = 0) | Object { value, length } |
- putX
| Method | Return | |-------------------------------|------------------------------| | putVar(value, type) | Buffer | | put8(value) | Buffer | | put16(value) | Buffer | | put32(value) | Buffer | | put64(value) | Buffer | | putU8(value) | Buffer | | putU16(value) | Buffer | | putU32(value) | Buffer | | putU64(value) | Buffer | | putFloat(value) | Buffer | | putDouble(value) | Buffer | | putString(value) | Buffer |
TYPE
| Name | Value | |-------------------------------|------| | NULL | 0 | | BOOL | 1 | | INTEGER | 2 | | FLOAT | 3 | | STRING | 4 | | VECTOR2 | 5 | | RECT2 | 6 | | VECTOR3 | 7 | | TRANSFORM2D | 8 | | PLANE | 9 | | QUATERNION | 10 | | AABB | 11 | | BASIS | 12 | | TRANSFORM | 13 | | COLOR | 14 | | NODE_PATH | 15 | | RID // unsupported | 16 | | OBJECT // unsupported | 17 | | DICTIONARY | 18 | | ARRAY | 19 | | RAW_ARRAY | 20 | | INT_32_ARRAY | 21 | | INT_64_ARRAY | 22 | | FLOAT_32_ARRAY | 23 | | FLOAT_64_ARRAY | 24 | | STRING_ARRAY | 25 | | VECTOR2_ARRAY | 26 | | VECTOR3_ARRAY | 27 | | COLOR_ARRAY | 28 | | MAX | 29 |
Test
git clone [email protected]:gd-com/utils.git gd-com-utils
cd gd-com-utils
npm install or yarn install
npm run lint && npm run test
Contributing
Please read CONTRIBUTING for details on our code of conduct, and the process for submitting pull requests to us.
TODO & CHANGELOG
License
This project is licensed under the MIT License - see the LICENSE file for details
Thanks
- Godot
- Godot France
- GDQuest
- IG-Dev
- Salsa2k for the initial work