[RELEASED] Nodus - A simple node based visual programming system

Hey all!

Over the course of the last 3 years, trying to find time between work and finishing my degree, I built Nodus.
And this is it! For only $50! (Or whatever the Euro equivalent is with VAT…)

Nodus is a Visual Programming Language for Unity, designed to replace the need for having to constantly tweak scripts and dig through code to debug.

This extension can be used by anyone, whether it’s experienced programmers, or artists and animators.
Some knowledge of how to program in C# goes a long way however, as that is the language Nodus is based off of, and uses the standard aspects of the language.

The main purpose of this system is to allow you to create MonoBehaviour components without ever having to look at a single line of code.

Some details for the interested (Programmers/Enthusiasts/etc.):
ACCESSING EXISTING CODE:
You can add namespaces to the HInfo object, and every class/type/function/property in that namespace is then accessible by Nodus. (That’s literally all you have to do).
This is for Unity’s own API, and 3rd Party APIs. The reason behind this is that you don’t need or want EVERY single function Unity has ever made in every namespace, but the option is there for you. And if you have another 3rd Party system that’s wrapped in a library, adding the namespace does everything for you. (Just tell Nodus to compile that into it’s library)

If you make changes above, Nodus will require a recompile, but this is the only time you have to do it.
(Unless you change a function header, or add new functionality into your own code).
And the massive XML library Nodus creates is Editor side only, so the only information that goes out to your end game is a series of instructions in the form of nodes.

ADDING YOUR OWN CODE:
The main goal of Nodus was to make things as easy as possible.
No one should ever have to actually touch the Nodus source, but can if they wish.
Similarly, no one should ever have to worry about reflection, or anything more than writing their code as normal.
It’s all done with attributes, and you’ve 3 to work with.

So syntax wise, you have a choice.

  • [NOBJECT] will pull in every prop/field/function in a class/struct
  • [NFUNCTION] will add a function as a singular node for you
  • [NEVENT] makes an event accessible as a node for you

IT DOESN’T END THERE:
I forgot to mention that not only is there all of the code based stuff above, but users can create their own sub functions!
Subgraphs as they’re called behind the scenes in Nodus (in case you ever look).
They can be saved out to your assets, and shared through here.
Essentially they are normal looking Nodes within Nodus, and you can double click (or right click) to enter it, and it is similar to a scripted function, with entry and exit points, and you can design it as if it was a normal graph.
So if you made something cool, you can share it with others!

Here’s a gif of me entering my looping timer sub-function:

Other Details:

WHAT YOU GET: (Functionality)

  • Works on Unity Pro and Free!
  • Simple, yet useful UI
  • Uses all of the basic principles of C#
  • Create custom functions within the editor and save them for later
  • Real Time Debugging
  • Full Undo/Redo Features
  • Full ‘behind the scenes’, customisable Metadata system for node names and descriptions
  • Reflective precompile of the entire assembly creates over 100,000 node by default, and 1000’s more can be added with a click.

WHAT YOU GET: (Assets)

  • Nodus Editor
  • Full Source Code
  • Reflective C# precompiler which builds the Node library, which is excluded from built games.
  • Demo Top Down Shooter Game, built entirely with Nodus.

THINGS TO COME:

  • Full Code Generation (Any script type)
  • Networking Implementation
  • Editor Extensibility.
  • Multilingual Support.
  • Tutorial Videos.
  • Store submissions from earlier versions of Unity 5.

Nodus Site (Tutorials can now be found here too!)
Nodus Forums
Thanks for checking it out!
Change Log:
1.0.5f2:

  • Added Overload handling.
  • You can now choose the overload you want from the hierarchy.
  • Highlighting the overloads will tell you their details (variables and return) in a tooltip.
  • The same can be said for all Nodes that don’t have a user given summary.
  • You can now add user only generated code through your compilation asset.

1.0.5f3:

  • Reorderable Compilation info
  • New way to save/load hierarchy (Makes things faster for playing, changing info, etc)
  • Added graph-only based Nodes to favourites
  • (Better than events where you have to also reference your graph, as these self reference).
  • Always available basic/primitive types
  • Drag and drop variables
  • “This” (Graph Self Referencing) node

1.0.5f4:

  • Now the hierarchies only load once on editor start up, and persist for the duration of your Unity Session.
  • The ability to search when dragging off from a type.
  • Left click empty graph to cancel mouse selection
  • “Don’t show again” for expansion options
3 Likes

I have been waiting a long time for Nottorus to go on sale, only to be disappointed with the result finally being a 30% reduction - still too expensive for the average Indie. Well I’m extremely pleased to see competition in the form of Nodus.

Face value looks to be similar node-to-code Visual Scripting tool, but actually targets Indies.

You win, Sir :smile:

I’m behind my company firewall here, but I just went ahead and purchased - can’t wait to get home to download and put this through it’s paces.

I also like the quick & full response over on your forums, and I get the feeling that it will become a cool place to hangout. Looking forward to participating. Good luck…

Richard.

Any version to test it, as there are many such package can not invest in all. Even though it is only 50$.

Hey,

I am one of the guys that has been waiting for Nottorus price to drop to an extend that I can afford it. (Now on Sale for ~185€; still to much for me as I marry next month and need that money currently)

Nodus looks really nice so far and I am thinking about buying it instead of Nottorus.

But before I do so I need a few questions answered:

Does Nodus generate C# code/scripts? If yes - how does it look like?

  • This is one of the things that catched me on Nottorus as it generates neat C# scripts from the nodes without any overload - only the pure needed code is generated.

Can I use native scripting in Nodus?

  • What I mean with this is: Am I going to be able to use Visual Scripting without looking at some documentation for translating what the “Transform” component is called in Nodus? If I want to add a Vector3 then I want to be able to select “Vector3” in some list to add it - and not for example “3D Location” or something like that. I am a programmer and can work best with the words and names I know.
  • At least I should be able to identify exactly what something does by its name. If I have to look up a documentation 5 times to create a simple loop then the simplicity is not worth the extra-time.

Could you please make a video showing the generation of something simple - and afterwards show the generated script (if Nodus generates one)

  • Maybe similar to this one about Nottorus:
    https://www.youtube.com/watch?v=Ht-w-yIHbPM

  • Short explanation: I saw this Video before knowing anything about visual scripting or Nottorus. It instantly made me want to buy the asset, so I looked it up and got let down by the immense price. If it would have been Nodus that I saw there for the 50$ I would have instantly bought it (Which i will also do if you provide a similar video).

And please do everyone a favor.
If you want to take some “security measures” later (as Nottorus does for example) then use a licensing system (like any other sane company is doing) which allows the user to continue to work with Nodus without internet access.
An initial verification is okay.
Asking for a recheck every month (like Unity for example) is okay too.
But if people are going to need to reevaluate the license every 2 or 3 days to continue using it - and therefore loosing much money if their internet provicer screws up - people are going to request a refund and leaving bad reviews. (Or not buying your asset at all)

Great work so far! I am looking forward to your answer.

Roy

1 Like

Doesn’t look like Nodus generates code YET, but it is the first thing in his list for Future Updates. I’m willing to wait for that while I get developing, I’m sure the backend won’t force us to re-node as such.

As for the DRM, I think the big thing to realize here is that the dev is releasing the full source code with this tool… so I think that means piracy isn’t something he is concerned with… if they want to crack it… they will… so why waste time & piss off your customers?

And I think a lot of folk will ask for a demo, and if you can without too much effort it would be great… although at $50 at least I don’t feel that I’ve invested too much.

Hey Roy,

Nodus is currently priced at: €54, so you’d be saving around €130~
Although it’s not quite as complete as Nottorus. Yet!
(I’ll soon have other Devs helping out, which will help with future updates).

Thanks, I put a lot of work into it!

To your questions:

Rixly is correct!
Nodus doesn’t generate code yet, but that will be a future release at no extra cost.
This means that it can be slightly slower on device, but is an amazing prototyping tool.
This will be remedied soon however will full code generation.

Everything is names exactly how it is in C#.
However Properties are listed as “Get [Name]”, and “Set [Name]”
For variables, I currently have a selector tool which shows type names, which unfortunately means a float is “single”.
But all primitives and the usual suspects such as transform, vector2/3, etc. are at the top of the list.

Basically, if you can program, Nodus should be a breeze.

The videos will be coming soon.
I’m unfortunately on a limited schedule as I still have my primary job to attend to.

I’m not bothering with DRM of any kind.
I mean someone would just come along with ILSpy, recompile without the DRM, and not have to pay, so why bother.
Full source code access, and people can do as they please.
However, I’d prefer it if it wasn’t shared. The standard licence per seat is appreciated.

  • Peace
2 Likes

Hey Rahuxx,

Unfortunately, I can’t give out a “test” version, as that would mean full source code access without having to pay.
However, videos are coming soon, and you should hopefully be able to get a feel from those.

  • Peace
1 Like

Hey Loken and Rixly,

thank you for your fast answers! I will probably buy this asset as soon as the next wave of sales starts on sunday/monday (if there is not too much in there that I need).

I just noticed “- Multilingual Support.” in your TODO-list.

  • Do you already have a plan on which languages are going to be supported?

  • You could provide a list of the words/sentences that have to be translated at your forum - with a list of languages that are needed. This way users could take a part of that work from you. I can almost always tell if a native person translated something, or if google-translate was used (Or someone that has no clue of the topic) and am always happy to see something translated correctly.

  • If you plan on including german and I would be happy to help you on this part (if you need help there).

Hey Roy,

I have contact with a translation company that my current job has ties with, and I was considering using them, as they are fast, professional, and reliable.
But getting users to help is actually a fantastic idea!
I think I might jump on that the second I get the chance!

  • Peace

Hey Loken,

another thing that i just noticed is that the scripts in the asset have pretty basic names which could lead to possible incompatibility with other assets as the editor most probably cant differ between your Manager.cs and the Manager.cs of other assets.
Example of the problem:
Scripts that would probably result in errors if i would import them to my current project (if i wouldn’t prefix my scripts - and i know many people don’t):

  • Graph.cs
  • Language.cs
  • Manager.cs
  • Comments.cs
  • Connection.cs

I think it would make thinks easier for the users if you would prefix your scripts.
UFPS and Probuilder do this for example with “vp_” and “pb_”.

I know this is probably half an hour of work, but you should consider doing it now where the count of scripts is not as big as it probably will be one day.

With a lot of assets I have to clean up incompability issues for half an hour before using them. You could prevent this and attract even more users with the good reviews that are going to come by users that say that your asset integrates very easily and without problems - instead of “20 errors after importing” reviews.

Roy

1 Like

Hey Roy,

Basically any script that has a simple name is in the Nodus namespace, and most scripts are in the Editor solution.
But if people warn me of compatibility issues that they are actively experiencing, then I will definitely get to it.
I will keep an eye out.

  • Peace

Hey Loken,

nice to hear!
Thank your for being so open to critics.

1 Like

Guys, I’ve just bought this tool & am basically open to anyone asking me to test some things or post screen shots. I’m not a coding guru, so if it’s complicated I’ll need a walkthru or example.

I don’t have a lot of time on my hands, but I appreciate those without much cash may have questions before committing.

The first thing I will attempt is to convert some of my existing code. Out of the box, I couldn’t find Lists or Select Case… but you simply add the namespace into the provided holder & bam… in they come (eg System.Collections.Generic and now I have Lists). By the looks of it, the entire C# library can be obtained… the dev just hasn’t included everything by default to avoid loading unnecessary classes that you may not need.

It needs more polish, but it is a first release. If you compare to say Nottorus, it has some catching up to do… but not that much… and once the dev adds code generation… it’s a no-brainer IMO… $50 versus $250. With source code ie no DRM will ever be applied & if the dev abandons it, u pros are not stuck for upgrades. Like I said, polish. The meat & bones are there.

At this cost, I would think Nodus will get a big & strong community compared to zero community elsewhere. Here’s hoping…

Hey Rixly,

“Select case” should be under “Switch”
And if not, drag out from any enum, and right click and the context menu should bring it up for you. (I think).

You’re right in that it needs polish, but I reached the limits of what I could think about myself.
This project is early days, and I hope to build a community around it.

I plan to be listening and implementing the features users ask for. That for me is priority one.

Things need tweaked, polished, added, etc.
For instance, if you wanna iterate through a list, you’d need to call “to array” first, and that needs changed.

I’ll be doing some tutorial videos tonight hopefully, and that’ll hopefully settle a lot of people’s minds.
Thanks for your help and support!
Super appreciated.

If this can become my main income, it’ll have weekly updates! At least, that’s he long term plan.
Trying to juggle this with me job.

  • Peace
    Noel

Nice one Noel, I’ll have a hunt tomorrow. It’s vino time here at home lol.

Will post idea’s on your main forum to keep this one free. I’ve always been jealous of the BluePrints forum over on Unreal, would love to have something similar here on Unity. I thought Nottorus could get there, but money is such a huge factor these days. Nodus counters that hurdle. The videos are also something a community really really wants, but so very few devs invest time in it… fill that niche with this type of product and u have something special.

I’ll definitely help out where I can because it is part of the hobby for me.

I’ll have a crack at the roll-a-ball video question asked on your forum… albeit with a like-for-like of end result picture of how your tool compares… or if u can find the time for that by way of video it would be a priceless showcase… It’s the Hello World of Unity…

Peace out…

Can someone give a comparison to playmaker. In sense of performance and in sense of workflow. Is it simple like playmaker. Will there be predefined nodes, like in playmaker, that makes life easier. And are there build in tweening options, or an option for addons like DOTween, and so on. Very important for me :wink:

Hey All!

There’s been a number of changes made at people’s request. Version 1.0.5f2!
You can view the change log in the top post.
This changes will be going live as soon as the videos are finished, and it’s all been submitted to the asset store.

  • Peace

Hey Rixly,

Thanks for helping!!
Also, I double checked. Switch statements can be created by dragging out and right clicking from an Enum. (I’d forgotten because this was created very early in development).

Also, I can’t seem to find that rollerball question…
(Feeling like a dunce right now).
I’ll be making a swing at it though as another video for potential users.

Also, check out the change log!

Hope you like it!

  • Peace

Hey Sledgeman!

Unfortunately, I wouldn’t compare this to playmaker.
Playmaker is more of a behavioural editor, with events happening based on triggers, etc.

But Nodus does have predifined Nodes that make your life easier, and you have the added benefit of being able to create new predifined Nodes without having to script at all.

There are no tweening options as this isn’t an animation system, but it could easily be tied to one, with a tweening Node being an optional creation!

In terms of “addons”, Nodus is capable of talking to every single API you desire with ease.
All functionality of all other systems can be added with a string of text and a single button click!

Hope this helps!

  • Peace

Hey All!

Tutorials are now up on the Nodus site and Youtube, and the new version has been submitted!
Once that version goes live, you’ll be able to access the videos from the store page too!

  • Peace