Isaiah F's profile

Tool Development

Here you'll find several of the tools I've made for my games in both Unity and Godot. I'm not a particularly skilled tool developer but I always enjoy making them, especially when they save me a bunch of time. I also contributed to Godot, which is a tool so I included it in the list.
This is my favorite tool I made in Unity. All it does is round the position of the object to the nearest half a unit. This made placing objects on a grid in Xenoparrot Puzzles far easier, and saved me some sanity.
Another tool I made for Xenoparrot Puzzles, the goal of this one was to allow me to navigate and debug the Library and its books without actually playing the game. It gave me access to everything I needed to fully test without playing.
The Prefab Spawner became obsolete after I added the Round button directly to the Transform. The point was to spawn the prefab at the position the editor camera was looking at (rounded to the nearest half unit) so I could drag it into place easily. After adding a button for that to the Transform I just dragged prefabs in and pressed the button, far easier.
This tool was built to spawn the pools for selected spawners ("Fall Spawners"). It also connected spawners to their nearest triggers ("Fall Triggers"). This was to decrease load times in-game by not having to spawn the pools at runtime. I was using a terrible computer so it was a pretty big deal at the time. This became obsolete once I started using the asset NaughtyAttributes which enabled me to put these functions as buttons in the FallTrigger inspector. If I did it today I would write a custom inspector for the class (if I didn't have NaughtyAttributes) since that just makes more sense.
This tool made in Godot uses red, yellow, and blue lines to distinguish the different angles my main character would interact with (blue is ground, yellow is walls, red is ceiling). The vertical lines are the same height as the character to show distance. Due to the organic level layouts it was hard to know while building the level how my character would interact with it, so I made this tool to speed up iteration times by getting it right the first time.
I really love making tools in Godot, it's just so intuitive. This tool was to ease my work typing out the different finish times to get each rank for a race. Then the data is saved to a chapter file that goes in the folder with all the races (which is automatically loaded up in game of course). This made a process that would take so much time without a tool take 5 seconds for each race. I knew I didn't want to type all this out into some array for 100+ races so this tool was a high priority, and is now my favorite Godot tool.
I wanted to add the ability to select a node in the scene tree to Godot. The ability wasn't there in 4.1 so I modified the source. I learned a lot about C++ in that time too, as I had never really used it. While I was writing my initial version of the feature I brought it up in the contributor chat and another contributor said they already had a similar PR open which had been sitting for months, and a couple days later his changes were merged as a result of this whole interaction. Regardless I tried to improve upon his changes by adding easier dragging and removing the unnecessary multiselect. The PR wasn't merged but it's still a fun thing I did.
This tool is something I use personally when I'm working in an unfamiliar codebase. Of course now Visual Studio comes with an arbitrary text search feature by default so it isn't really necessary to use this. I wrote it originally so I could parse the Godot source easier and find where given words or letter combinations appeared. I used it to find grammar errors in the Godot code docs, from which I then made my first PR to the Godot repo.
Tool Development
Published:

Tool Development

Published: