This is the first post in a little while and the first that I’m trying out a new setup for socials. So this post will be auto-shared to FB & Twitter (x) when posted and all I have to do is post the discord, bluesky and any other platforms manually once posted and that should be it. For now, I’m not going to bother with Instagram, the account will remain live though.
While I have been quite recently, I haven’t been idle. There has been a lot of smaller updates to a lot of the tools and some more progress on my little Persona 5 side project that I’ve been working on for fun. I have also just been taking more time away from the side hustle so I don’t completely burn out.
Website updates
As you can see, the website has a new theme and a small layout update. Nothing too mad, but it does look a bit neater than the old theme. I do plan on posting whenever new releases to assets get put out from now onwards, with the release notes for that version. These will be quick but will be used by the social media plugin to post across those platforms etc.
Asset Updates
The Cart 0.6.x
The main reason I wanted to make a post is to go over some of the changes to The Cart library that I have made recently. For the last few weeks, I’ve been experimenting with a modules setup that installs & removes unity packages into pre-defined locations. The idea is that not all elements of the library are needed all the time. Sometimes entire systems can be ignored. I could’ve used scripting defines and written a system to handle the modules but I preferred to not have to worry about missing defines etc.
The flow comes with a new window. You can see the status of each module based on its icon. A tick denotes the module is installed and up-to-date. An up arrow denotes a module is installed but has an update from the installed revision and a cross denotes the module is not installed. The setup does have some bugs still, mostly with the install locations of packages. But once I iron these out it will be a good system for sure.
I wrote the system to use revisions over a semantic version number for simplicity. Most of these modules will not need updating much and cannot work without the core library. So it made sense to just keep it as a revision instead.
Any code that isn’t used for the management of the asset now lives in the core library. This includes a few bits that could be modules themselves, but I decided to keep them core as I just use them so often. These are the events system, a wrapper class for action events with better listener management and anonymous listener support. It recently got an update to make it use a base class. And the random system, my solution for random number generation using a variety of setups. I debated having data be in the core library, but for now I’ve placed it as a module. That may change in a future update.
The core also has all the extension methods and general helpers that made no sense leaving out of the core library.
Save Manager
There have been a few bug-fix updates to the Save Manager over the last few months. These have all been fixes for issues either reported by users or ones that I have found myself. I do have a minor update mostly ready for save default values and save locations. However, I want to make sure it’s all good first and write some tests as the asset now has a much larger audience than before. This will probably be out in late summer if I was to guess.
Leaderboard Manager
Just like the save manager, leaderboard has had some bug-fix updates. The demo scene was rather broken and some of the logic for the leaderboard timer variant wasn’t working as expected. This has all been fixed now and should be okay for the time being.
Audio Manager
With the new asset management flow that went into the Save Manager & Cart, I ported the solution to the Audio Manager 3.x. Since added it the asset has been a tad more stable. I also refactored the whole auto-scanning process to be more modular. Which has also helped with that reliability. I’m hoping to do the asset store release by the end of the year if it decides to behave.
Multi Scene
It’s been a while since I updated this asset, like 1 & 1/2 years. So I recently did an update to it to bring it in line with the rest of the assets in terms of structure & code standards. I do plan to add an additive scene loading method that’ll have the base scene be generated at runtime and have all scenes in groups be additive only. But as of writing this is still in the planning stage.
New games?
In the relative downtime, I’ve also been planning out some future game ideas to possibly prototype. A lot of them are still in the early design phase at the moment and I’ve yet to nail down an idea I want to make. The hope is to start trying these ideas out to see if they are viable when I want a break from other bits. There will be more on this later in the year if all goes well.