[v3.0.0 RELEASE] Advanced Variables Released: Jun 8, 2026
What’s New in v3.0.0?
Phase 1 - Foundation Overhaul
- Async Safety:
CancellationToken+timeoutSecondsparameters onWaitUntil(),WaitUntilEquals(),WaitForChange()- no more hung coroutines. - Encrypted Persistence: New
EncryptedJsonProviderwith AES-256 encryption. Drop-in replacement for the deprecatedBinaryPersistenceProvider. - Runtime Set Improvements:
OnClearevent,OnBeforeItemAdded/Removed/Clearvalidation hooks. Items list is now[NonSerialized](ScriptableObjects cannot serialize scene references). - VariableFormatter: Added
ClampedFloatVariableslot. - Bug Fixes:
Guid.NewGuid().ToString()parentheses fix, ClampedVariable file split, min==max slider fix, persistence batchMarkDirtyfix.
Phase 2 - Multiplayer Architecture (NEW)
- 4 Bundled Network Providers: Netcode for GameObjects (NGO), Mirror, FishNet, Photon Fusion - conditional
#ifcompilation, zero errors when packages are absent. - Authority System:
LocalOnly,Server,Clientmodes on all variables and RuntimeSets. Operations silently reject unauthorized changes. - Delta Compression:
IntDeltaCompressor(XOR-based),FloatDeltaCompressor(half-precision with full fallback),Vector3DeltaCompressor(component-wise). - State Interpolation:
ApplyNetworkState(T, float)for smooth transitions backed by auto-createdVariableInterpolationRunner- no setup required.
Phase 3 - Advanced Event Integration
- Variable Queries:
VariableQuery<T>(Int/Float/Vector3) with Sum, Product, Min, Max aggregation - zero-allocationListPool<T>buffers. - Pre/Post Pipeline:
OnPreValueChangeandOnPostValueChangeevents for validation, logging, analytics, or achievements. - Scheduled Operations:
ScheduleSetValue(),ScheduleReset(),ScheduleBroadcast()with delayed execution viaScheduledEventManager. - Variable Channels:
IntChannel,FloatChannel,BoolChannel,StringChannel,Vector3Channel- cross-scene broadcast without direct variable references. - Weak Listeners:
useWeakListenerstoggle on UI binding components to prevent memory leaks from destroyed GameObjects.
Phase 4 - Variable Ecosystem Expansion
- 12 New Variable Types: Vector2, Vector2Int, Vector3Int, Color, Color32, Double, Long, AnimationCurve, Gradient, LayerMask, Tag - plus all 12 corresponding
*Referencestructs (17 total). - 5 New RuntimeSets:
IntSet,StringSet,FloatSet,Vector3Set,ComponentSet<T>. - 8 New UI Binding Components: VariableToText, VariableToToggle, VariableToDropdown, VariableToInputField, VariableVisibility, VariableToAnimator, VariableToScrollbar, VariableToDropdownOptions.
Phase 5 - Developer Tooling & UI Integration
- VariableToTMPText: Reflection-based TMPro detection - zero compilation errors regardless of TMP installation. Supports format strings and optional weak listeners.
- Batch Editor:
Tools > Advanced Variables > Batch Editor- bulk edit persistence, authority, and auto-reset across all variable assets with search and type filtering. - Reference Tracker:
Tools > Advanced Variables > Reference Tracker- find all MonoBehaviours referencing a variable across open scenes and all prefabs. - State Viewer:
Tools > Advanced Variables > State Viewer- real-time Play Mode value change tracking with scrollable history.
Namespace Migration
Tools.Variables→PixelForge.Variableseliminates potential conflicts with Unity’s built-inUnityEngine.Toolsnamespace.- Full backward compatibility via
[MovedFrom]on every public concrete class/struct - existing scenes, prefabs, and asset files upgrade automatically.
Bug Fixes
- VariableInterpolationRunner struct copy bug (Elapsed never written back to list, interpolation never advanced, old tasks overwrote new values).
- VariableBatchEditor: invalid
NetworkAuthority.Ownerremoved (enum only has LocalOnly/Server/Client). - VariableChannel/Query file splits to prevent “No script asset” CreateAssetMenu errors.
- RuntimeSet
OnClearnow correctly firesOnItemRemovedfor each item before clearing.
Documentation
- README.md fully rewritten for v3.0.0.
- Documentation.md comprehensive user manual.
- Changelog.md complete through all 5 phases.
- Roadmap marked as completed.
What’s in the Box
- 18 Variable Types + 17 Reference Structs
- 7 RuntimeSets
- 4 Persistence Providers (Local JSON, Encrypted AES-256, PlayerPrefs, Mock Cloud)
- 4 Network Providers (NGO, Mirror, FishNet, Fusion)
- 11 UI Binding Components
- 4 Editor Windows (Debugger, Batch Editor, Reference Tracker, State Viewer)
- 7 Demo Scenes