Serpens - Visual Scripting Addon

by Joshua Knauber in Scripts and Addons


What is Serpens?

Serpens aims to make the endless possibilities of blenders python scripting tools more accessible. It gives you Visual-Scripting options based on a custom node system to generate python code which you can then share and install as your own addons.

(Questions? Join the discord server!)

Tutorial series: https://www.youtube.com/watch?v=6yuKAx9wGoA&t=4s

Want to try it for free? Click here to get a test version!

(This only has the very basic functionality and is nowhere close to the full addon)


Helpful videos:

How it works

Serpens provides you with a full node system. This allows you to create UI elements as well as add new functionality. You can access and change data like object names, colors, etc. as well as creating your own buttons to run your node-based programs.

You can reload your addon with the click of one button to work as fast as possible!

You can then export your finished addons. These generated python files can then be installed anywhere. This way you can share the addons you create with others and use them in any blender file!


Functionality

Serpens allows you to make your own elements in the interface. You can create your own panels, add to existing panels, pie menus, buttons, checkboxes and more!

It makes it very easy to change your layouts: Want multiple elements in a row? Add a row node! Want a box around it? Add a box node!

You can also add your own shortcuts. These can open pie menus, show panels or run any operation you want!

You can access data inside blender, as well as change it. This allows you to manipulate your objects and anything else in your file!


We also have a built-in tutorial! You can switch through the images right in the node editor to start learning more about the addon.


For developers

While you don’t need any programming experience to use this addon it will only help you if you do! You can run your own scripts with nodes if you simply want to get help with the interface or creating an actual addon.

Apart from that we also provide the option to install custom node packages! This opens up a whole world of new possibilities because it allows for way more features!

We offer a built-in marketplace that can be updated over the air (no need to reinstall the addon) and allows developers to promote their own packages for selling or giving away!

Click here to learn more about this!


Disclaimer

What Serpens isn’t: This addon is not a replacement for python scripting in blender! While it provides a lot of ever-growing functionality, it will always lack some of the flexibility of actual scripting. It is also not meant for procedural modeling, it's for developing actual installable addons. 

The addon will grow in functionality based on your feedback, so let us know what you want to be able to do! You can join the discord server for that here!


Changelog

2.1.5

                    • Added actions to append from file
                    • Added register and unregister to script node
                    • Added file select to run script node
                    • Added clamp node
                    • Variables and properties are now supported in snippets
                    • Enum sockets are now supported by snippets and can be edited on functions
                    • Auto Save is now off by default
                    • Fixed print with no available screen
                    • Fixed preference property nodes not updating


                    2.1.4

                    • Added Display Keymap node for custom shortcuts
                    • Added Snippet marketplace
                    • Fixed addon preference property updates
                    • Fixed suggestion menu not working
                    • Fixed Workspace blend data node
                    • Changed copy python button for addon preferences


                    2.1.3

                    • Added interface snippets
                    • Added Addon Info node
                    • Changed Call Invoke on run operator to input
                    • Fixed preferences for export in some cases
                    • Fixed properties in preferences
                    • Fixed snippet export
                    • Allow for snippets without execute
                    • Removed icon from number properties


                    2.1.2

                    • Added Easy BPY support
                    • Renamed active collection to scene
                    • Fixed Is Addon Export node (again)
                    • Fixed suggestion menu for some different blender ui scales
                    • Fixed addon preferences with temp registering
                    • Fixed check for updates
                    • Fixed icon export transparency for different render settings
                    • Fixed error with removed text


                    2.1.1

                    • Temporary work around for blender bug T88986 (operator properties)
                    • Fixed Is Export property and node
                    • Fixed drag add menu with node frames
                    • Added toggle system console button in header settings
                    • Added screen output to scene context node
                    • Use blender auto save as default for serpens auto save
                    • Show message about status of auto save when creating addon
                    • Fixed property nodes for custom properties like geo-nodes


                    2.1.0

                    • Switched to 2.93 as supported release
                    • Added snippets for creating custom nodes (see N-Panel and Preferences) [BETA]
                    • Fixed issues with scripts not updating for compiling
                    • Fixed issue with active camera output of scene context node
                    • Fixed issue with casting to blend data from data
                    • Added parentheses to and/or node
                    • Fixed has custom property node error


                    2.0.5

                    • Added portal nodes to transfer data wirelessly (it's the future!!!)
                    • Fixed issues with N-Panel errors in multiple graphs
                    • Fixed row node inputs with connected nodes
                    • Fixed ability to connect interface and execute sockets
                    • Removed input from update property node and added self output
                    • Added Headers to Add to Menu node
                    • Added On Exit node
                    • Fill in default author name when creating new addon
                    • Fixed casting to int vector
                    • Moved update info from popup to node editor header
                    • Added export debug options for export


                    2.0.4

                    • Added 'Copy Python' buttons to some nodes
                    • Added get/set edit select mode nodes
                    • Added bones to 'Scene Context'
                    • Added 2 digit vector socket
                    • Fixed wrong properties and functions when using blend data nodes
                    • Fixed blend data nodes resetting when plugging into function parameters
                    • Fixed refresh view execute output


                    2.0.3

                    • Added version number to default export name
                    • Added color wheel option to display property node
                    • Added substring in string node
                    • Fixed all blend data access issues
                    • Fixed interface property node with pointer properties
                    • Fixed return and run function nodes not updating
                    • Fixed expressions with variable names on the math node


                    2.0.2

                    • Added 'Object Type' node
                    • Added functionality to get/set properties of collections
                    • Option to enable python tooltips in header
                    • Added use execute checkbox for the run function node
                    • Fixed print node set to report with multiple inputs
                    • Fixed crash when copying blend data nodes
                    • More smaller bugfixes


                    2.0.1

                    • Added auto save option to node trees
                    • Added Run Interface Script and Interface Script Line node
                    • Added Use Execute option to run function on data node
                    • Added report function to print node
                    • Added selected output on objects node
                    • Added define type to run function on data node
                    • Added Is Export node
                    • Added context selection to run operator
                    • Fixed get mesh points node outputs
                    • Fixed run function on data with modifier
                    • Fixed preference properties not working
                    • Fixed double import with random number nodes
                    • Fixed get asset node
                    • Fixed 3d view properties


                    2.0.0

                    • Rewrite of the entire addon
                    • Ability to add multiple node trees for one addon
                    • Separated Properties and Variables
                    • Ability to add custom icons
                    • Ability to add functions
                    • Export as .zip file to allow for addon assets
                    • Over 50 new nodes
                    • And much more...


                    1.0.4

                    • Added functionality to record operators and property changes and convert them into nodes
                    • Added objects and constraints to define type
                    • Added radians/degrees node
                    • Added change variable by node
                    • Added preferences to the object context node
                    • Fixed the script line node in some cases
                    • Added blend files to addon marketplace


                    1.0.3

                    • Fixed general bugs
                    • Added insert keyframe node
                    • Added context types for different node editors
                    • Fixed issues with numbers at the start of operators
                    • Added lights, nodes and sockets to define type
                    • Added node to set active
                    • Changed run script line to string socket
                    • Added python path output to get variable


                    1.0.2

                    • Fixed crashes with other addons
                    • Added split/combine vector nodes
                    • Added popover node
                    • Added subtypes to int and float variables
                    • Added context override to run operator
                    • Added slider option to display number
                    • Added get/set custom properties nodes
                    • Fixed set data properties with enum input
                    • Added define modifier type node
                    • Added more UI contexts for panel and add to panel
                    • Added set active object/action node
                    • Fixed Color variable
                    • Fixed Run Operator with empty enums
                    • Variables get found in the search prop after name change
                    • Added update function to variables
                    • Improved dynamic sockets
                    • Added min/max to float and int variables
                    • Fixed issues with print/report


                    1.0.1

                    • Added first iteration of addon marketplace
                    • Fixed crashes by removing default node setup (good old default cube :/)
                    • Added built in update notifications
                    • Added 'Show In Search' option to button node
                    • Added 'Show popups' option to run operator node
                    • Added Multiply and Divide to Vector Math node
                    • Added search to icon popup
                    • Fixed encoding error when installing on some machines
                    • Fixed spaces in variable names
                    • Operators get refreshed
                    • Changed run operator property generation
                    • Added license info button
                    • Added single line option to run script
                    • Added Select to get/set data properties nodes
                    • Fixed variable descriptions
                    • Added get path node
                    • Added path exist node
                    • Added combine paths node
                    • Added path operations node
                    • Added report option to print node
                    • Added collections and objects to set data properties
                    • Fixed import/export operators
                    • Added path subtypes to string variable


                    1.0.0

                    • Initial release

                    Sales 1000+
                    Customer Ratings 23
                    Average Rating
                    Dev Fund Contributor
                    Published 11 months ago
                    Software Version 2.93
                    License GPL
                    Have questions before purchasing?

                    Contact the Creator with your questions right now.

                    Login to Message