SuiPlay SDK for Unreal Engine

The OriginByte Unreal toolset for game developers on Sui

Features

For RPC clients’ direct interaction with the Sui JSON-RPC:

  • Get SUI objects

  • Call Sui Move contracts

  • Sign, Batch and Execute Transactions,

  • Transfer, Split and Merge SUI coins and objects

  • Mint Origin Byte NFTs

  • Restore Ed25519 Keypairs from BIP39 mnemonics and Create new Keypairs

  • Tested on Windows desktop with Sui version 1.13.0 and Nft Protocol 1.2.0 on Testnet

  • Works with Unreal Engine 5

Getting Started

Download the repository and open with Unreal Engine 5

Check the Sample Level and the Blueprint Nodes in the Level Blueprint. The SuiUnrealSDKCore module contains all the high level functionalities. Both C++ and Blueprints are supported.

To Use in Projects

Install VaRest Plugin from the Marketplace, and copy all plugins found in the Plugins folder ( Bip39UE, LibsodiumUE, SuiUnrealSDKCore )

Notice

Because of the limitations of Blueprints, Sui JSON API method signatures use signed integer types instead of unsigned counterparts (int32 and int64 types instead of uint32 and uint64). For most use-cases we believe they provide sufficient range of values. If you run into problems, please open a query on GitHub.

Usage Samples

RPC Read API

Get Object

Blueprint:

C++:

	auto Client = RpcClient(Endpoint);
	FRpcSuccessDelegate RpcSuccessDelegate;
	RpcSuccessDelegate.BindLambda([OnResult](const FJsonRpcValidResponse& RpcResponse) {
		UE_LOG(LogTemp, Log, TEXT("Response received."));
	});
	FObjectDataOptions Options;
	Client.GetObject(ObjectId, Options, RpcSuccessDelegate);

RPC Historical Event Read API

Transaction API

Call Mint Devnet NFT move contract:

Sign And Execute Transactions:

Crypto Helper API

Copy-Paste Ready Blueprint Nodes

you can copy-paste ready Blueprint Nodes here.

Dependencies

The SDK Plugin currently depends on the VaRest plugin available from the marketplace. All the other dependencies can be found in the Plugins folder.

Roadmap

  • More platform support (iOS, Android, Mac)

  • Streaming RPC client, Event subscription

  • More RPC APIs and type bindings

  • More samples

  • More NFT protocol bindings for Unreal Engine

  • Higher level APIs, easy-to-use Blueprint nodes

Our Community

Last updated