Plugin Documentation

DataCourier
Flexible data delivery over many transports

Move payloads over TCP, UDP, shared memory and WebSockets with pluggable packet rules and delivery boxes.

v1.0.0
UE 4.27–5.0+
Win64 · Mac · Linux
Category Networking
Alpha XP
DataCourier diagram
DataCourier — architecture & feature overview

Overview

DataCourier abstracts sending and receiving framed data over multiple protocols. You pick a protocol, a packet rule (fixed length, size+body, terminator…) and a delivery box that marshals typed payloads.

Fork note Modules ObjectDeliverer / ObjectDelivererTests were renamed to DataCourier* for UE 4.27–5.0+, with CoreRedirects for content. Several UE5-only APIs (EAllowShrinking, FProperty/object helpers, a WebSocket binding) were ported to 4.27–5.0+ and a conversion helper library was added.

Requirements

RequirementDetails
Unreal Engine4.27–5.0+
LanguageBlueprints and/or C++
PlatformsWin64 · Mac · Linux

Installation

  1. Copy the DataCourier folder into your project's Plugins/ directory.
  2. C++ projects: regenerate project files and build. Blueprint-only projects can launch the editor directly.
  3. Open Edit → Plugins and confirm DataCourier is enabled.

Concepts

TypeKindDescription
Protocol* (Tcp/Udp/SharedMemory/WebSocket)CallableTransport implementations.
PacketRule* (FixedLength / SizeBody / Terminate…)CallableFraming strategies.
DeliveryBox*CallableTyped send/receive endpoints.

Helpers (DataCourier Utility Library)

NodeTypeDescription
String To Bytes / Bytes To String / Bytes To HexPurePayload conversions.
Base64 Encode / Base64 DecodePureBase64 round-trip.

Utility node pack

General-purpose networking utilities added to UDataCourierUtilityLibrary — available from Blueprints and C++.

NodeTypeDescription
CRC32 Of BytesPureCRC32 checksum of a byte array.
MD5 Of String / SHA1 Of StringPureHex digests of a UTF-8 string.
Make Guid StringPureNew random GUID (hyphenated).
Now Unix SecondsPureCurrent UTC time as Unix seconds.
Unix Seconds To ISO8601PureUnix seconds → ISO-8601 UTC string.
Format Byte SizePureHuman-readable size, e.g. 1536 → 1.5 KB.
Random TokenPureRandom alphanumeric token (ids, nonces).
XOR Bytes With KeyPureXOR bytes with a repeating key (obfuscation, not encryption).
Is Valid HostnamePureRFC-952/1123-style hostname validation.

Credits

© Alpha XPalphaxp.net. Developed and maintained for UE 4.27–5.0+.