Quick start
Configure your API key in Window → KalmForge in the editor (creates Assets/Resources/KalmForgeSettings.asset), then call KalmForgeClient.Init() on boot. Every other system in the SDK reads from this single client.
1using KalmForge;2using UnityEngine;34public class GameBoot : MonoBehaviour {5 async void Start() {6 // Reads ProjectId + ApiKey + Endpoint from the active environment7 // configured in Resources/KalmForgeSettings.asset.8 await KalmForgeClient.Init();910 // Boot Remote Config + AB Tests + Localization in parallel.11 await System.Threading.Tasks.Task.WhenAll(12 RemoteConfig.Init(),13 ABTests.Init(),14 Localization.Load()15 );1617 // Analytics auto-starts a session - just send events.18 Analytics.TrackEvent("game_started");19 }20}KalmForgeClient.Init() resolves capability flags from the API key token first (instant, no network), then refreshes them from a CDN-cached manifest. Every server call is still re-checked server-side regardless of what the SDK believes.All systems
Each page below documents the public C# API exactly as it appears in Assets/Plugins/KalmForge/, with quick-start snippets and the underlying REST endpoint.
20+ languages with on-device cache and AI translation pipeline.
Strongly-typed live values with [ConfigurableField] auto-binding.
Sticky variant assignment + Remote Config overrides + conversions.
Sessions, retention and custom events. Batched, offline-safe.
Remote push (FCM/APNs) plus device-scheduled local notifications.
Submit, rank, around-player and rotation metadata.
Issue and redeem reward codes with idempotency.
Designer-authored pop-ups, rendered with UI Toolkit / uGUI / IMGUI.
Scheduled events with rewards and server-enforced single claim.
Items + bundles + translations + soft-currency purchase log.
Conventions used in this documentation
- Code blocks are C# unless explicitly labelled otherwise. They compile against the namespace
KalmForge. - REST endpoints are listed for every system so you can integrate from non-Unity engines or backends. Authenticate with the header
X-API-Key: kf_…. - Capability gates - every system early-outs if the project's plan does not include that capability. The flags live on
KalmForge.KalmForgeCapabilities(resolved from your API key + a CDN manifest). - Async - networked methods return
Task/Task<T>. Alwaysawaitthem; the SDK does not throw - it logs and returns a default. - Identity - every call automatically attaches
player_idandinstall_idfromKalmForgeIdentity. Override the player id withKalmForgeClient.SetPlayerId(string)if you have your own account system.