OmniState Visual FSM is a visual state machine editor for Godot 4.x. It combines a simple node-based interface with a robust transition system, blackboard variables, animation blending, and automatic recovery features.
Visual state machine editor with drag-and-drop workflow
-
Transition system with cooldowns, delays, blending, and custom code
-
Auto-save, auto-load, and recovery from generated code
-
Sync between visual editor and generated .gd files
-
Merge preserves custom functions and properties
-
Blackboard variables for shared AI state
-
Animation detection and playback integration
-
State templates for faster behavior creation
-
Clean code generation with type hints and organized structure
Check all FEATURES
Check EXAMPLES
Assets Library OmniState
Version 1.0.1 Realease notes
Github Repository OmniStatevFSM
1 Like
Like many vibe coded things, this seems like it has polish until you dig past the surface.
This is supposedly a GUI interface, and yet all the documentation is about code. There is nothing showing how to use the actual interface. It appears to be a GraphEdit node dropped on top of some code.
The fact that you vibe coded this in 3 days, have probably never tested it, and are asking people for bitcoin in the Readme would indicate that this is more a quick cash grab than an actual project for the community.
It also appears useless for anything but Enemy AI, which I guess is fine, but FSMs are used for a lot more than that in games.
The code generator idea seems interesting. It’s obviously coded by an LLM and the code itself is a mess.
3 Likes
Hello Dragonforge, thank you for your honest opinion, it was very helpful as i spent last 4 hours since i saw your comment in refining the addon code and documentation.
The one and only reason ive created this addon is because i was stuck making my own game, im not an “addon developer “, i dont make addons for living, i created this addon for my own, and it is true that i used some AI help in making it, it is not fully vibe coded, most part is made by me with little help from AI as it has now became almost indispensable, even seniors use AI now. and for the bitcoin, as i said, im not an addon developper, this plugin was meant to be used by me only, but since i created it and found it extreamly usefull based on diffculties i faced using beehave and limbo, i decided to share it with the community and why not earn few bucks, donations are optional anyways.
And its true, this tool is indeed useless for anything but enemy AI, but when i found it useful ive decided to add few features to support multiple usage, not just enemy AI, create multiple scripts not just enemy script.
i have created a full documentation about the UI of the tool to make it clear what the tool UI consists of, features, functionalities… new documentation file
i have removed the bitcoin thingy since you are the second person who mention it, it should be entirely for free, not even for “donations“
i cleaned up the mess as you suggested, and i would love if you give it another look on Github repo since the update wasn’t pushed to the assets library
thanks again for your opinion i will try to make usefull to the community as much as possible
2 Likes
Good to hear. I’m glad you took my critique so well.
Be careful about what you assert when it comes to LLMs.
I’m a person companies bring in to teach seniors and architects at companies, and to fix software development processes, DevOps CI/CD pipelines, etc. at an organizational level. I have posted extensively on here about using LLMs for programming. (I recommend you go read some of the threads in the General section.)
Your statement is like saying even prisoners working in a chain gang used shock collars now. Of course senior developers use LLMs. They don’t want to lose their jobs. But that doesn’t mean it’s a good thing. Also the difference between a senior developer and what I see in your code, is a senior developer would not leave the telltale fingerprints of an LLM all over their code. Studies show that LLMs make senior developers 20% less efficient. And as someone who has had to turn LLM code into actual working code, I can tell you it is soul-destroying.
For future reference, being upfront about the fact that you used an LLM is important for building trust. Because people like me will notice it, point it out, and then people will think you’re trying to hide it - which often results in people avoiding your creation.
This is important information, and if you have not, I would add it to your documentation. Compare and contrast and tell people what benefits it has - and what problems it solves.
I agree with this, and there’s nothing wrong with taking donations on your GitHub account. That giant image just was a bit much. I smaller image would perhaps be more tasteful, and make it look less like a cash grab.
That looks like an improvement.
The best improvement you can make at this point IMO is instructions on how to install and create a simple behavior - with screenshots.
2 Likes
Hello again. of course, i take your critique so well, your critique was a constructive critique. And
yes, i understand, there is more disadvantages to seniors when using AI than advantages, it’s a soul eating thing, and i assure you that i will need to have a look at your threads about the LLMs.
i deleted both image and wallet address, it was unprofessional tbh, and probably too soon, since i didn’t spend a dime on making this addon.
im woking on a game of mine, when i finish setting all states, behaviors… etc, i will make a video about the process, but for now i will probably use screenshots about a simple behavior as you suggested.
i really appreciate this @dragonforge-dev this was very helpful to me, you can’t imagine the amout of information i got from these 2 comments of yours, can’t wait to read more about your threads and hear more from you.
2 Likes