New tools and updates (early 2023)
Hi everyone, in this post I will talk about new tools and updates to existing ones coming in the future.
I’ve worked as a Tool Developer in a big company during a year, this experience helped me grow as a developer and come up with new ideas that I hope will please you 😀
New Tools
- Simple Pooling
Right now the unity asset store lacks a recent and simple pooling system.
This asset will be one. Focused on simplicity it will make for a fast and easy to use pooling system, perfect for small projects or prototyping.
This will be a free asset!
- Quick Singleton
Wether you see singleton as great, a necessary evil, or bad programming, everyone have to deal with them from time to time.
This asset will let you create either a Prefab or ScriptableObject singleton in seconds, and offer a simple API to retreive them during runtime.
Same as the previous asset it is great for prototyping, it is also reliable enough to be used in a real production.
I made it a few months ago and have used it in every projects since then. It just needs a few tweaks, some unity required elements and then I will release it on the store.
- Persistent Asset
Every game needs a save system, but it usually requires you to write repetitive code and deal with text files.
This asset will let you make some fields of a ScriptableObject persistent, meaning its value will be saved and loaded automatically in the background.
This makes for a very simple and error-proof way of having saved data in a game, you can define default values in the editor when not playing and check the current saved data in play mode.
It will have multiple features, including an anti-cheat system, a regular auto-save, and some protection so that you won’t loose any data if Unity crashes while in play mode.
I made and am using this tool for a few months too, but it needs a bit more work to reach my standards before releasing it.
Updates
- Infinite Value
Thanks you very much to all of you that downloaded the Infinite Value asset already 🙂
I’m planning an update that will add some features, mainly having the possibility to use “aa” notation, and also refactor part of the code that relates to displaying and parsing a value. The goal is to make the asset easier to use and customize.
This is not an easy tasks as the current code is a bit messy. Also, adding the aa notation is pretty simple to do when it comes to display, but is a bit tricky in the InfValInputField component.
I’m also updating every scripts to higher documentation and architecture standards.
This update may not come very soon, if you need to display aa notation right now and are not sure about how to do it, feel free to contact me and I’ll help you modify the code.
Possible future tools
Here are some tools that I am not working on right now but may be coming later, if any of those pick your interest please feel free to leave a comment about it 🙂
- Generic Calculator
Despite having a ton of technical features, the Concurrent Value asset is not downloaded by a lot of people, my interpretation of it is that it is a bit niche and pretty confusing :/
The Generic Calculator asset would pretty much be only the technical part of the Concurrent Value asset that relates to template arithmetics.
With the added feature of using dynamic source generation instead of the current meta-programming window, it would make for a cheap and easy way to have generic calculation in any Unity project.
- Integrated Boards
Integrated Boards would let you create kanban or other kind of boards directly into Unity as an asset.
It would have multiple features, including drag and drop of cells, custom cell types with a user made ScriptableObject, custom board types, etc.
I’d like to make both a free and pro version of this asset, with the pro version having additional features like synchronization across a team.
- Easy Reflection
Reflection is complicated to use for people new to C#, and is always a bit tedious even for advanced users.
The Easy Reflection asset would let you use private members from another assembly just like you would any public member.
It would still use reflection, so as to not require weird stuff like using the IgnoresAccessChecksTo attribute, but would hide it from the user.
My main plan is to use source generation and an editor window where the user could choose which class he want to access using reflection, and if that fails I could do it using the dynamic keyword and a custom intellisense extension for visual studio (and possibly rider).
Last words
Also coming soon are some little changes to the website, I’ve made the very good decision to migrate from wordpress.com to wordpress.org and can now replace some hacky things I did with cleaner stuff.
Thanks you very much for reading this, feel free to contact me directly or leave a comment below if you have anything to say about this post 🙂