Visual Scripting System overhaul!

2 minute read

This is a changelog and manual of all the changes made to the VisualScript system of sorts. This should help you all understand the changes before you all dive in and start trying the builds already.

These changes are part of my long list of changes planned and in work for Godot VisualScript System under GSOC.

The builds are at google docs folder link They will be regularly updated.

Quick Video of the changes in action:

Let’s start with the first change that’s the unification of the Visual Script Graph.

This means that all functions are now in the same view no need for tapping around to reach them.

These changes also include the changing of the nodes figuring out the function they are part of being connected to other nodes. This is supposed to be implicit(it should feel natural) and if you have any problems with not properly being able to handle connections between nodes, be sure to go to this Pull Request and notify me or just put it in the comments section here.

This included refactoring of all the Visual Script Editor code to take into account this change which ended up kinda big. gify

Next up are a few minor changes were with UI the gifs should be enough but it’s mostly about quick function creation, more expressive search and the node connection swapping.

The latest feature of automatic type conversions or what I like to call Type Sense is still kind of WIP so this makes inter type node connection a little bit of a hassle but you can use NIL types to get over it.. Hopefully I will fix it in a day(by the time most people read this so go ahead with the builds without any worries). vs-type-sense

Some BUGS as of now:


List of known problems:

  • Undos sometimes can be a little confusing(eg: you have to undo twice for port swapping).
  • Quick Function Creation don’t work properly with non-sequence nodes
  • The position of Constructor Nodes can be a little problematic.

There maybe other bugs I don’t know of yet, so be sure to point them out in the pull request if you find them.

This is the list of changes as of 29/06/2019. (Things here are subject to change and suggestions are welcome in the Pull Request that has been created)