Overview
SocketSnap is a function-library wrapper over FSocket. Open a connection, poll for data, send and receive bytes/strings, and close — ideal when you want direct socket control without writing the boilerplate. Handles also self-clean on garbage collection.
Fork note Module
Socketer was renamed to SocketSnap for UE 4.27–5.0+; a UE5-only IWYUSupport Build.cs flag was removed, and connect-timeout, byte send/receive, and conversion helpers were added.Requirements
| Requirement | Details |
|---|---|
| Unreal Engine | 4.27–5.0+ |
| Language | Blueprints and/or C++ |
| Platforms | Win64 · Mac · Linux |
Installation
- Copy the
SocketSnapfolder into your project'sPlugins/directory. - C++ projects: regenerate project files and build. Blueprint-only projects can launch the editor directly.
- Open Edit → Plugins and confirm SocketSnap is enabled.
Library API
| Node | Type | Description |
|---|---|---|
| Connect To TCP Server | Callable | Open a connection (with optional timeout); returns a connection object. |
| Send Message / Send Bytes | Callable | Send a UTF-8 string or raw bytes. |
| Get Message / Get Bytes | Callable | Read all currently-pending data. |
| Has Pending Data | Pure | True when data is ready to read. |
| Is Connected | Pure | Connection state. |
| Get Peer Address | Pure | Remote address:port. |
| Close Connection | Callable | Close and destroy the connection. |
Conversion & address helpers
| Node | Type | Description |
|---|---|---|
| String To Bytes / Bytes To String / Bytes To Hex | Pure | Conversions. |
| Hex To Bytes / Base64 Encode / Base64 Decode | Pure | Encode / decode. |
| Is Valid IPv4 / Parse Endpoint | Pure | Address validation & parsing. |
Framing & socket control (v2.1)
Length-prefixed messaging and fine-grained socket control on USocketSnapLibrary.
| Node | Type | Description |
|---|---|---|
| Send Framed Message / Send Framed String | Callable | Send with a 4-byte big-endian length prefix. |
| Get Framed Message | Callable | Extract one complete framed message from the connection's accumulator. |
| Send Message Line | Callable | Send a UTF-8 string plus a line ending. |
| Wait For Data | Callable | Block up to a timeout waiting for readable data. |
| Get Bytes Available | Pure | Bytes readable right now without blocking. |
| Set No Delay | Callable | Toggle Nagle's algorithm (TCP_NODELAY). |
| Shutdown Send | Callable | Half-close: stop sending, keep receiving. |
| Get Local Address | Pure | Local address:port of the connection. |
| Get Connection State | Pure | Connected, NotConnected, Error or Invalid. |
| Make Endpoint / Is Private IPv4 | Pure | Compose host:port; RFC1918 range check. |
Utility node pack
General-purpose networking utilities added to USocketSnapLibrary — available from Blueprints and C++.
| Node | Type | Description |
|---|---|---|
| CRC32 Of Bytes | Pure | CRC32 checksum of a byte array. |
| MD5 Of String / SHA1 Of String | Pure | Hex digests of a UTF-8 string. |
| Make Guid String | Pure | New random GUID (hyphenated). |
| Now Unix Seconds | Pure | Current UTC time as Unix seconds. |
| Unix Seconds To ISO8601 | Pure | Unix seconds → ISO-8601 UTC string. |
| Format Byte Size | Pure | Human-readable size, e.g. 1536 → 1.5 KB. |
| Random Token | Pure | Random alphanumeric token (ids, nonces). |
| XOR Bytes With Key | Pure | XOR bytes with a repeating key (obfuscation, not encryption). |
| Is Valid Hostname | Pure | RFC-952/1123-style hostname validation. |
Credits
© Alpha XP — alphaxp.net. Developed and maintained for UE 4.27–5.0+.
