A curated collection of reusable scripting utilities for Unity projects.
This package provides lightweight, production-tested helpers for: - AnimationCurve-based tweening and easing - Transform and UI utilities - Object and audio pooling - Weighted random selection - Bezier paths and editor helpers - General-purpose gameplay utilities
Designed for rapid prototyping, interactive installations, tools, and full-scale game systems.
In Unity: Window → Package Manager → + → Add package from Git URL
Use:
https://github.com/williamrjackson/UnityScriptingUtilities.git
Optionally lock to a specific tag:
https://github.com/williamrjackson/UnityScriptingUtilities.git#v1.6
The repository includes demonstration GIFs and screenshots. These are kept in Documentation~ so they don’t bloat the UPM package.
Example embedded media (uses existing repository assets):
Extension methods for clean, readable motion code:
transform.Move(destination, duration);
transform.EaseRotate(targetRotation, duration);
transform.EaseScale(targetScale, duration);Supported operations include: - Move / MoveWorld - Rotate - Scale - MoveAlongPath - FadeAudio / CrossfadeAudio - FadeAlpha / ChangeColor - SnapToSibling / EaseSnapToSibling
Curves can be mirrored, ping-ponged, or customized.
Select elements with weighted probabilities:
var weighted = new WeightedElements<string>();
weighted.Add("Common", 70);
weighted.Add("Rare", 25);
weighted.Add("Epic", 5);
string result = weighted.GetRandom();Efficient GameObject reuse to reduce instantiation overhead.
Play multiple overlapping sound effects without audio artifacts.
Includes helpers such as:
- EnsureComponent
<T>() - DeferredExecution
- Switcheroo
<T>() - AffectGORecursively
- Random element selection helpers
- Coin flip helpers
- Bezier utilities
- Unit converters (FromFeet, FromInches)
- Screen size notifications
- Custom logging tools
Audio/
Editor/
LayoutGroups/
Paths/
WrjUtils.cs
PoolManager.cs
ScreenSizeNotifier.cs
...
- Unity 2022.3+
- No external dependencies
Issues and pull requests are welcome.
MIT License


