OASIS Web4 Unity SDK

🎮 Unity SDK for the OASIS Web4 API - Connect your Unity games and applications to the decentralized OASIS ecosystem!

🌟 Features

  • Complete Avatar Management - Authentication, registration, profiles, karma

  • Data Storage - Holons, Zomes, and all OASIS data objects

  • Provider Integration - Connect to 80+ blockchains and storage providers

  • Async/Await Support - Modern C# async patterns with UniTask

  • Type-Safe - Full C# type definitions for all OASIS entities

  • Unity Editor Integration - Inspector-friendly components and ScriptableObjects

📦 Installation

  1. Open Unity Package Manager (Window > Package Manager)

  2. Click the '+' button and select "Add package from git URL"

  3. Enter: https://github.com/NextGenSoftwareUK/OASIS-Unity-SDK.git

Option 2: Manual Installation

  1. Download the latest release from the Releases pagearrow-up-right

  2. Extract the package to your Unity project's Assets folder

🚀 Quick Start

1. Setup OASIS Manager

2. Avatar Authentication

3. Working with Holons (Data Objects)

4. Karma System Integration

🎯 Core Components

OASISClient

Main client for all OASIS operations:

Unity-Specific Features

OASISManager Component

Attach to a GameObject for scene-wide OASIS access:

OASISConfig ScriptableObject

Create reusable configuration assets:

📚 API Reference

Avatar Operations

  • AuthenticateAsync(email, password, deviceInfo) - Login avatar

  • RegisterAsync(avatarData) - Create new avatar

  • GetAvatarByIdAsync(avatarId) - Load avatar details

  • UpdateAvatarAsync(avatarId, updates) - Update avatar

  • AddKarmaAsync(avatarId, karmaRequest) - Add karma

  • RemoveKarmaAsync(avatarId, karmaRequest) - Remove karma

Data Operations

  • CreateHolonAsync(holonData) - Create data object

  • GetHolonAsync(holonId) - Load data object

  • UpdateHolonAsync(holonId, updates) - Update data object

  • DeleteHolonAsync(holonId) - Delete data object

  • GetHolonsByTypeAsync(holonType) - Query by type

Provider Operations

  • GetProvidersAsync() - List all providers

  • GetProviderStatusAsync(providerType) - Check provider status

  • SetAutoFailoverAsync(enabled) - Configure failover

  • SetAutoReplicationAsync(enabled) - Configure replication

🎮 Unity-Specific Examples

Multiplayer Avatar Sync

Persistent World State

Achievement System

🔧 Advanced Configuration

Custom Retry Logic

Provider Selection

📱 Platform Support

  • ✅ Windows

  • ✅ macOS

  • ✅ Linux

  • ✅ iOS

  • ✅ Android

  • ✅ WebGL

  • ✅ Console (PlayStation, Xbox, Switch)

🔐 Security Best Practices

🧪 Testing

📖 Documentation

🤝 Support

📄 License

MIT License - see LICENSE file for details


Built with ❤️ by NextGen Software

Last updated