A simple and cheap way to draw LineRenderers and add EdgeCollider2Ds to them using the mouse (or touch if on mobile). Highly expandable and versatile gameplay mechanic.
Created for our upcoming game HexagoneContinue reading
A static class that handles Breadcrumbing for easy menu stacking and navigation. Easy to call/use from any input system as well as with in-game buttons.
Full script below (Creative Commons 4.0)Continue reading
An updated Save System for Unity using simple AES encryption/obfuscation. I had previously implemented a BinaryFormatter but that turned out to be vulnerable to Insecure Deserialisation attacks so this is the updated version.
Allows for encryption and storage of a wide array of data. So long as it can be serialised, it can be saved!
Though it’s not covered in the video, the code also contains things like a custom SetPref/GetPref system, support for multiple files with different data structures, and is just generally very cool!
A Sound Player for Unity that can be called from anywhere once placed in the scene. Especially useful for UI sounds and such, but pretty versatile beyond that as it contains settings for multiple different types of sounds (effects, dialogue, etc) and is easily expandable.
It even has some use in 3D gaming as the GetVolume aspects are still static functions. Meaning any AudioSource can modify its volume, accordingly.Continue reading
Setting up Steam integration for Unity. The video goes into the basics of creating achievements and leaderboards using the Unity Steamworks package. Also covers building/uploading to Steam via the Steamworks SDK. No paid addons used.Continue reading
This is my attempt at a maze generator in unity, it should be viable for any tile-based game. It takes tiles (corridors or rooms) of a fixed size and builds a customisable path from start room to end room, and then adds similar paths at random points along the chain.Continue reading
A simple, clean and expandable unity dialogue system
The system uses scriptable objects and singletons, allowing for easy creation and implementation of dialogue from anywhere else in the project. The scripts are straightforward and versatile allowing you to expand them at will.
Full script below (Creative Commons 4.0).
I wrote a camera shake script that you may find useful in your own works.
The Camera Shake is highly versatile/customisable, using perlin noise and exponential falloff for a smooth, realistic feel.
A video description/tutorial can be found below as well as the full commented script (Creative Commons 4.0).
Decided to start doing devlogs for those interested in keeping up with the project
To ensure they remain at least somewhat useful, they’ll be paired with tutorials. In this case, the camera which took a over a day of messing around and figuring stuff out (I know, I’m slow) but ended in a state that I’m quite happy with.
As per usual, the full script (Creative Commons 4.0) can be found below.
I recently created a new data type for Above the Stars. It was an interesting excursion into many things I’ve never used before so I thought I’d do a write-up regarding it.
The MegaInt is capable of holding very large numbers all in a single integer, as well displaying them in a readable format.
A basic description can be found below as well as the full script (Creative Commons 4.0).