Search Unity

[RELEASED] Nottorus - Unlimited Visual programming plugin

Discussion in 'Assets and Asset Store' started by Stridemann, Apr 4, 2016.

  1. WillNode

    WillNode

    Joined:
    Nov 28, 2013
    Posts:
    300
    Definitely won't happen anytime soon :p
     
  2. thiagoalbert

    thiagoalbert

    Joined:
    Dec 24, 2015
    Posts:
    10
    I solved my Nottorus, I downloaded a 1.8 version of a Chinese website and it is working.
    Better to use a working 1.8 version than a broken 2.0.:(

    Sorry I can not help, for me now is just waiting for a version that works, I could not install the one from WillNode.:oops:
     
  3. WillNode

    WillNode

    Joined:
    Nov 28, 2013
    Posts:
    300
    Yea, need a bit of linux knowledge, especially if you're on Windows :rolleyes:

    (Btw I updated the readme again)
     
  4. Mark_01

    Mark_01

    Joined:
    Mar 31, 2016
    Posts:
    451

    From what you are saying, might be a guess as to why Unity is Not picking this up.
     
  5. Szaruga

    Szaruga

    Joined:
    Jan 29, 2016
    Posts:
    303
    Maybe it's something else...

    Pro users - prefer to write the code themselves traditionally
    Amateurs - they use simple toy tools, such as: Playmaker or Bolt

    Nottorus - it's like a hybrid - and hybrids, despite their huge potential - have a hard life in the ecosystem

    and Unity - growers / producers - they do not like hybrids.
     
    WillNode and DarkNBlood like this.
  6. DarkNBlood

    DarkNBlood

    Joined:
    Jun 19, 2014
    Posts:
    28
    I used Nottorus for a small project, being a C # developer, I spent more time with Nottorus than typing the code directly.
    I'm not Pro or Amateur, I'm in between. I like Nottorus for 1 to 1 (graph to C#).
    I tested Playmaker and Bolt, Playmaker is a good tool but does not suit me personally.
    Bolt is not finished and use it in production is a big risk I find, I found myself many times face bad bugs or problems of update so for now I do not use it anymore.

    I also discovered FlowCanvas and for the moment it's the only one that I appreciate, we save time even being a developer, it is stable and until now no problem of performance. Only downside, no C# script generation ...
     
    Last edited: Jul 26, 2018
  7. Szaruga

    Szaruga

    Joined:
    Jan 29, 2016
    Posts:
    303
    @fweds
    I used FlowCanvas for a year before buying Nottorus.
    FlowCanvas is nice in appearance:
    2017-07-31_22-19-05.png
    and some things are created quickly and easily

    but...
    the more "code" the worse performance, I do not know - but it seems to me that this is the consequence of the lack of clean c # scripts.
    In any case - I have the same project in two versions - one made using FlowCanvas and the other using Nottorus ... the difference in frames per second - is visible to the naked eye
     
    Last edited: Jul 2, 2018
  8. Stridemann

    Stridemann

    Joined:
    Oct 12, 2013
    Posts:
    246
    Sometimes after checking some ppl code which made in nottorus (sometimes really S***ty code, without component caching, etc) and I start thinking that better will be they use other tools for simplier creation scripts (like u mentioned (FlowCanvas) and others, I call them "Macroses"), and maybe perfomance can be even better, heh.
    Like.. I made a tool with a help of which you can make really terrible code, this is frustrating, lol

    Btw, I'm not stopped my site/forum, it was just shut down on his own due to nonpayment :rolleyes:
     
  9. thiagoalbert

    thiagoalbert

    Joined:
    Dec 24, 2015
    Posts:
    10
    I'm using google to translate, sorry for the errors in the text.
    Stridemann just answer me a question to calm my soul.
    I wonder if Nottorus is dead or not?
    I need to know, because the only tool that's holding me in Unity is Nottorus. This is the best tool I've ever used, I'm studying programming at Unity through Nottorus, for me it's like a teacher who shows me where I'm going wrong.
    This was the most expensive tool I bought today, a full 1 month salary, and I do not regret it, because this is the only tool that can make me create my whole game in C # without needing a programmer, Nottorus is not with these plugins that already have several predefined functions and when you need something more complex leaves you in the hand.
    With Nottorus it's like I'm writing code on my fingernail.
    As I said, this is the tool that holds me in Unity, if Nottorus is dead, I'm going to uninstall Unity and maybe use Unreal with blueprints.
    I'm not a programmer but with Nottorus I feel like one.:cool:

    Now Nottorus 2.0 is not even compiling the input of GetComponent:(:(, I had to scan the internet behind a version 1.8 that for me is working. but with some flaws, but that's what I have in my hands.:oops:

    Well I hope an answer is possible.o_O
    Thank you very much for your attention.
     
  10. Stridemann

    Stridemann

    Joined:
    Oct 12, 2013
    Posts:
    246
    Oh crap, really serious bug, like other guys mentioned in this thread. Now I got it.
    I think this is a new bugs from new unity 2017/2018 after the made a lot's of changes in assemblies.
    Gonna push an update today.

    UPD. Update 2.1 pushed, will be available soon (1-4 days).
     
    Last edited: Jul 2, 2018
  11. thiagoalbert

    thiagoalbert

    Joined:
    Dec 24, 2015
    Posts:
    10
    :p:D:p:D:p:D:p.
    Thank you very much, you're the best.
    Nottorus is like Leviathan, can only be dominated by its creator.:eek::eek::eek::eek:.

    Now I'm going to sleep in peace.;).
     
  12. daville

    daville

    Joined:
    Aug 5, 2012
    Posts:
    272
    So are you still patching nottorus :eek: That's nice at leat to keep it working as it is with current Unity Versions.
     
  13. WillNode

    WillNode

    Joined:
    Nov 28, 2013
    Posts:
    300
    Stridemann has contacting me personally. Now I'm locking my unofficial patches to avoid futher confusion.

    Bravo Stridemann!! Lot of things are just happening today :)
     
  14. Szaruga

    Szaruga

    Joined:
    Jan 29, 2016
    Posts:
    303
    @WillNode
    Does this mean that we should uninstall your patches and return to work with the official version 2.1?
    And what about your useful improvements? :confused:o_O
     
  15. WillNode

    WillNode

    Joined:
    Nov 28, 2013
    Posts:
    300
    I think this new version only contains changes to keep Nottorus Running out of a box, so you can keep my patch if it useful. I'm having internal discussion with Stridemann recently (I sent him those patches), but yeah maybe I'm gonna reopen that repo if there's no news happening within couple of weeks.

    (btw I still improving Nottorus at my local PC ;))
     
    Mark_01 likes this.
  16. thiagoalbert

    thiagoalbert

    Joined:
    Dec 24, 2015
    Posts:
    10
    Hello everyone, if anyone can help me, I am very grateful.
    1) I was looking at some functions in Nottorus and I came across an option (State Machine), I never saw any video or anything on the internet regarding this function in Nottorus, someone could tell me what this function is for or how I use it I do not know but I think it's to do functions similar to playmaker?
    2) Stridemann removed the site from the air and placed the Nottorus documentation in the Editor Resources folder, XML_Code_Documentation. But I can not see the documentation because it opens only the codes, how can I view the documentation as web pages? Would I have to do this? Because I'm without the documentation.
    3) WillNode as soon as version 2.1 is available how do I use your fixes;)?

    Grateful for the attention.
     
  17. WillNode

    WillNode

    Joined:
    Nov 28, 2013
    Posts:
    300
    1. I haven't tried it so maybe somebody else can chim.

    2. Since 2017.2 Unity split UnityEngine.dll into separate modules (Nottorus didn't have those), so you need to copy all .xml files in <Unity_Installation_Folder>\Editor\Data\Managed\UnityEngine\ to that XML_Code_Documentation then do recompile (or restart Unity).

    3. When Nottorus 2.1 alive, backup that version 2.0 to somewhere outside Unity asset store local cache before downloading the new version. You need that version or patches didn't work at all. You can check the repo at this tree to see the instruction. I stopped updating the patches because I'm doing *heavy* modification right now (to the point I'm only seeing compiler error), I'll reopen it again when I'm done. You can PM me if still want those, though.
     
  18. thiagoalbert

    thiagoalbert

    Joined:
    Dec 24, 2015
    Posts:
    10
    I do not know for you but for me version 2.1 is the same thing.
    When I use GetComponet Nottorus does not compile.
    I'm using Unity 2018.1, and it can not be Unity because I installed a version 1.8 of Nottorus and it worked, I just have to enable "UnityEngine.CoreModule Assemblies" to enable more options in the type of variable, because if it is disabled, only 5 types of variables.
    And almost every time I click on the right one to open options, Nottorus gets all the functions, I do not remember it being this way, I think he kept doing a read on the knot just the first time he opened it.
    For me this correction has not changed at all.
    Anyone else tested?


    I put a PrintScreen from the screen as it appears to me when I try to compile with GetComponent and a screen of the error that appears to me.

    If anyone has any idea of the problem.
     

    Attached Files:

  19. Szaruga

    Szaruga

    Joined:
    Jan 29, 2016
    Posts:
    303
    Works fine.
    but I'm working on version 2017.3.1p4
    2018-07-04_06-01-12.png
     
  20. thiagoalbert

    thiagoalbert

    Joined:
    Dec 24, 2015
    Posts:
    10
    It did not work for me.
    I tested the Unity versions (2018.2.0, 2018.1.5f1, 2017.4.3f1, 2017.4.2f2, 2017.4.1f1, 2017.3.1f1) all on windows 10, x64 bits.
    It sucks, it did not work on any compiler using the GetComponent.
    I uninstalled and reinstalled all these versions, but the same problem at all.
    In the Unity 2017x version, UnityEngine.CoreModule is enabled, only this difference.
    I'm already starting to get discouraged from using Unity.
     

    Attached Files:

  21. Szaruga

    Szaruga

    Joined:
    Jan 29, 2016
    Posts:
    303
    sad...
    But creating games is like a hardcore survival game.
    I already had similar problems and i know that in the future i will have many more.
    Well ... just the desire to create must take the lead :cool: ;)
     
  22. thiagoalbert

    thiagoalbert

    Joined:
    Dec 24, 2015
    Posts:
    10
    Hi, I came back with good news, or not so good news.
    I installed Unity 2018.2.0b11, which is the new beta available.
    Extract Nottorus 2.1, which is the new version and did not work, I deleted the nottorus and extract version 1.8 and it ran normal.
    So I saved the Nottorus 1.8 folder to get the files.
    So I deleted Nottorus 1.8 and re-extracted version 2.1 and it did not work.
    So I thought, it must be some file that is breaking Nottorus, so I was going to swap file by file and I was trying to compile in Nottorus, but the first file I got was Nottorus_Plugin.dll, with the subtitle file appeared compiling in Unity and I did the first test, and soon Nottorus is compiling normal.

    But now I do not know if the version I am using is 1.8 or 2.1, would anyone have an answer to give me regarding this?

    With this file exchange I do not know which version of Nottorus I'm using, but I know it workso_O.
     
  23. Stridemann

    Stridemann

    Joined:
    Oct 12, 2013
    Posts:
    246
    Sry, I was on holiday.


    I think because you are on Net3.5.

    @thiagoalbert
    There was an error in function AddNewAssembly (on your second screenshot) because Net 4.6 give us some Type where type.FullName is null (this is sux at all). That's why I released patch 2.1
    https://dl.dropboxusercontent.com/s/mpovidnn63clu32/notepad++_2018-07-17_12-45-58.png
    Should works fine. Dunno why you still have an errors.

    I can olny propose to do cleanup and install 2.1 then replace dll with source code:

    src/SourceCodeNotes.txt :
    then we can see on which line we have an error.

    Also I don't see the .pdb files (to show error line number) in Nottorus\Plugins folder for main dll. Seems I missed them on compilation(
     
  24. thiagoalbert

    thiagoalbert

    Joined:
    Dec 24, 2015
    Posts:
    10
    Hello Stridemann.
    Sorry for the delay in replying, Nottorus is working perfectly mind for me now, sorry my stupid, when you released version 2.1 for me the assetstore appeared Nottorus 2.1 but did not appear to update just to import and I found that if I import the new version I would already be with 2.1, but not after about 4 days was it appeared for me the option to update Nottorus for this that was not working.
    Sorry for the inconvenience.
    And I'm using Unity 5 because in the 2018 version Nottorus does not work like in version 5 of Unity, in version 5 in the panel of Nottorus when right clicking and going in Assemblies appears few options, ja in Unity 2018+ appears several options, and in 2018+ you have to be applying a function in Assemblies, a function with .core, if you do not get activated this function Nottorus does not activate some types of variables, not to mention that it has to be activating some functions in Assemblies thing ja works automatically on Unity5, in case Physics also has to activate.
    I do not know why Unity people have to be doing this on Unity, it seems like they think so we're going to screw up with the guys and at every Unity update we change how the engine works to screw with the developers.

    But Nottorus is very good now, and I'm studying C # but not typing and using Nottorus, thank you very much for the tool.
     
  25. DarkNBlood

    DarkNBlood

    Joined:
    Jun 19, 2014
    Posts:
    28
    Hi all,

    A little test I've made :

    I created 3 identical projects, one with FlowCanvas, one with Bolt and finally one with Nottorus.

    With the same actions, namely instantiate 2500 cubes where each cube contains a simple Flow allowing to move it on the X axis by pressing A and E.
    Framerate Counter from Standard assets.

    Machine:
    Intel Core i7-6700K 4.00Ghz
    16Go DDR 4
    Radeon R9 280x 3Go GDDR5

    Result of the tests (made with building off each project, not in editor):
    - FlowCanvas:
    about 2-3 seconds to instantiate the 2500 cubes.
    60 fps in idle
    60 fps moving the cubes

    - Bolt :
    about 15-20 seconds for instantiate the 2500 cubes
    60fps in idle
    30fps moving the cubes

    - Nottorus :
    less than a second to instantiate the 2500 cubes
    60fps in idle
    60fps moving the cubes

    Of course Nottorus is the best with C# generation !

    All this to say that Nottorus remains the top in visual scripting and that I have only one regret, the one that Stridemann decided to no longer evolve but we can understand the complexity of such a tool and sometimes we must take decisions :(

    At the moment Nottorus works well with the latest versions of Unity, hope it will last a long time: D
     
    Last edited: Aug 16, 2018
  26. Szaruga

    Szaruga

    Joined:
    Jan 29, 2016
    Posts:
    303
    The results of these tests are not a surprise for me.
    However, people prefer Bolt ... sad but true...
     
    daville likes this.
  27. daville

    daville

    Joined:
    Aug 5, 2012
    Posts:
    272
    yes those results are expected, since Nottors is not doing anything in runtime, it just writes the text file.

    The script itself is as efficient as if it were written by hand in C#

    And I agree, Nottorus is the best... so sad people can't see that easily and decided to support Bolt.
     
  28. Stridemann

    Stridemann

    Joined:
    Oct 12, 2013
    Posts:
    246
    After releasing Nottorus I see how complex/complicated node system with links is. I was trying to make a plugin that allows programming easier, but we get cumbersomeness on large amount of nodes.

    I decided try to make some new version of visual programming tool. It will look a lil bit different.

    Not sure it will be so successful, but I'm gonna implement all the main features of nottorus and remove unwieldiness/ complexity and slow NodesWindow filtering.

    There will be no pins, links (lines as in nottorus) and zoom, and with this you can see almost all the nodes/functions/classes of script on your screen.

    I'm trying to make a visual programming plugin that allows programming maybe even faster than in visual studio with ReSharper installed. I think this is possible.

    It will have runtime error checking, like precompiler in nottorus, but it will check for errors after each user action in code, like in VisualStudio (currently working on this atm).
    Also I'm gonna use Mono runtime compiler instead of CSharp compiler, this allows to use precompiler on MAC, which is disabled in nottorus (because it doesn't released properly in unity on mac).

    And all of this with a awesome code (architecture) and optimised as hell (in a good way) (+ open source).

    Also I hope I'll make a better implementation C# parser, so maybe you can be even able to paste some txt code to any part of current script (merge) and it will parse it into nodes.

    I have WIP version of this and can say that startup searching for types (like startup initialization in nottorus in NodesWindow on start) for less than 1 sec, searching in nodes window - almost instantly, searching/getting members of some type - instantly too. And all of this on all possible connected assemblies (ofc I'll disable some of them by default). I just cut off some useless members generations (like all methods, fields, etc for all classes), they will be generated/showed only when you are going to get members for some type.

    With a lot amount of pros then goes cons. In ui not easy to show the script object (variable/method return value) return type of some node. Maybe I'll make it as tooltip on node hover, like on pin hover in nottorus. I don't think this will be a problem and I think I can deal with this in this way.

    Finally the output will be same as in nottorus (clean C# code).
    Also you will be able to get/view/copy the source code of script (just preview) or some function without compiling script to project.

    I'm still working on and just really want to see what finally I got from this.
     
    Last edited: Aug 3, 2018
    Gekigengar, Mark_01, WillNode and 2 others like this.
  29. JasonJonesLASM

    JasonJonesLASM

    Joined:
    Sep 5, 2012
    Posts:
    142
    Everything you said addresses any left over issues with Nottorus, and half those ideas i have been wanting from ANY visual scripts tool. I've made many attempts to design my own, hats off to you, it's beyond nuts trying this as one person.

    As you are addressing a lot of the UX problems now, I highly suggest making that your main focus. There is a reason the other guy is doing so well, and it's solely the look and feel and how easy it is to use, and to see the things you need only when you need to.

    If you can you truly get it faster then coding, then I'm sold day 1. Your current product works perfect, just needs the simplification overhaul. Good luck, looking forward to what you have going.
     
    Stridemann likes this.
  30. daville

    daville

    Joined:
    Aug 5, 2012
    Posts:
    272

    Good Luck
     
  31. Stridemann

    Stridemann

    Joined:
    Oct 12, 2013
    Posts:
    246
    Nottorus use different approach for doing things and different architecture. That's why impossible just implement my new ideas to it coz it's totally broke everything in it and this will be another tool (like Nottorus -> VS text nodes lines codding). I released all what I planned in Nottorus even more then stop developing, just supporting it (bugfix in new unity versions, etc.). There was a ton of optimizations added, and even after total rewroting it- speedup will be not more than 20%.
    There should be just another approach about everything that I'm trying to develop and test this now.
     
    Mark_01 and JasonJonesLASM like this.
  32. DarkNBlood

    DarkNBlood

    Joined:
    Jun 19, 2014
    Posts:
    28
    Hi Stridemann,

    Just glad to hear that and I wish you good luck in this development in this new project.
    I think you already have a good community of potential testers here;)

    Good luck !
     
    Stridemann likes this.
  33. DarkNBlood

    DarkNBlood

    Joined:
    Jun 19, 2014
    Posts:
    28
    Yes I fell in this attraction to Bolt but what a regret!
    And when I see the number of beginners throwing themselves on Bolt and will be lost when they have to give up because of the bad performance that Bolt gives in his architecture functionally ...
    No good visual scripting tool will be valid without C# compilation and I'm even afraid that Bolt with his future C# compilation that will be supposedly unreadable by the dev is just a disappointment.

    But here I have done my practical comparison of these tools and my final choice of course is without discussing Nottorus which closes my little post a bit off-topic and which clears things up :D
     
  34. Stridemann

    Stridemann

    Joined:
    Oct 12, 2013
    Posts:
    246
    Thanks)
    I think I will release it's source code also with plugin source files to each source file of a plugin so you can open it) I hope I can start developing this plugin in this plugin soon (until some critical error happen, heh)

    One more reason why I'm not using Nottorus for programming- Nottorus is not an IDE, it can't rename code-related script objects in other scripts, so after renaming you will get project errors. I hope I can deal with this in new plugin.
     
    tph and DarkNBlood like this.
  35. DarkNBlood

    DarkNBlood

    Joined:
    Jun 19, 2014
    Posts:
    28
    Yes it is on that in case of renaming we are left with errors, it happened to me but I'm still anyway.
    My only regret today about Nottorus is its slowness to display the list of nodes, in my project it takes me up to 30 seconds when I do it by sliding a pin, without having too many assemblies included and I do not know Why. in the meantime I no longer display the list of nodes from a pin ;)

    But what a pleasure to see you again Stridemann active here and learn so many good things about your project already interesting: D
     
  36. SmartMediaNL

    SmartMediaNL

    Joined:
    Sep 29, 2016
    Posts:
    70
    @DarkNBlood

    Thanks for the performance tests. That explains why the performance question I asked Bolt was ignored.
    I understant Bolt will be able to export C# in Bolt V2.0 but i doubt it will be nearly as clean C# as Nottorus makes and even so according to Bolt roadmap V2.0 is very far away.


    I have seen Nottorus in action but i didn't buy it due to the lack of support in Nottorus forum and Unity Forums. I hope that will change with the new project.
     
    DarkNBlood likes this.
  37. Razmot

    Razmot

    Joined:
    Apr 27, 2013
    Posts:
    286
    @Stridemann for your new tool

    1/ please have a look at the usability / design of these other scripting systems that are not using nodes:

    a / Those 3 are in a way "extending the unity inspector" :
    gameflow https://www.assetstore.unity3d.com/en/#!/content/14808
    CAT https://www.assetstore.unity3d.com/en/#!/content/104577
    Herokit https://www.assetstore.unity3d.com/en/#!/content/91923
    b / Blox is using another concept https://www.assetstore.unity3d.com/en/#!/content/62473

    2 / Please think of the use case of writing unity ECS / Jobs code (at least, being able to design structs instead of classes)

    3/ Please think about this business model for the new tool :
    a free community opensource core project on github
    + selling your supported version on the store, with some examples / extra documentation
    + selling additional plugins on the store

    Cheers!
     
  38. Stridemann

    Stridemann

    Joined:
    Oct 12, 2013
    Posts:
    246
    Abot new plugin: I also wanted to say that I'm gonna make a huge discount for those ppl who bought nottorus.
    The base price also will be not to high, much more less then current nottorus price. Ofcource if this plugin will be released some day)


    Sorry (for developers and users), but I do not even consider seriously packages like that because all of that simplification leads to low functionality limitations and speed. Seems because I'm a programmer, and for ppl who are away from this all of that packages can help A LOT.

    2) You can able to do that in nottorus, why not. I just gonna make a better support for generic methods /script objects <T> in a new tool.

    3) >>a free community opensource core project on github
    I have no idea how this will looks like. Asset which selling on assetstore can't be free on github. Does some asset developers practicing that?
    But anyway I like that idea...
     
    Last edited: Aug 3, 2018
  39. Szaruga

    Szaruga

    Joined:
    Jan 29, 2016
    Posts:
    303
    In my opinion, a tool that does not create pure C # scripts is just a toy and should not even be called "visual scripting".

    One question:
    I have a lot of problems with creating and understanding traditional code. But I am also a great visual - I can quickly count by looking at irregularly scattered elements. Therefore, visual scripting is a chance for me to create relatively complicated things. Nottorus (nodes, "cables" etc ...) is almost perfect - so i am afraid that your new tool will no longer be as cool as Nottorus. Could you "show" how this new tool will look like?

    In my opinion - Unity makes a mistake by supporting and advertising things like Bolt.
    Bolt is attracting new Unity users and this is profit, but ... every project done in Bolt, even for fun - it's a potential decrease of the Unity brand ...
    There will be more reviews like:
    "Unreal vs Unity ... due to poor optimization of games created in Unity ... the winner is Unreal"
     
    Last edited: Aug 3, 2018
    DarkNBlood likes this.
  40. DarkNBlood

    DarkNBlood

    Joined:
    Jun 19, 2014
    Posts:
    28
    I am of your opinion, the system of nodes and connections is perfect, I find that the design of Nottorus is not bad, just to review the size of the nodes, which would make it as legible and clear as others like Bolt or FlowCanvas .
    But it is true that this system, very close to the UE4 Blueprints, is really the best to observe the flow in execution.

    Then to see what Stridemann is preparing for us lol, I am open to everything: D

    Yes, Unity has been promoting a tool that is far from over, a source of bugs or every update is a risk. Bolt could have been a good tool if the dev had put the C # generation right away and without "breaking" the programming concepts into C #. This promotion of Bolt will just push new users to Unreal when they see all these flaws ...

    I sincerely hope that Stridemann will give us a very good tool, for that I trust him, and I will give him my support as best as I can!
     
    WillNode likes this.
  41. DarkNBlood

    DarkNBlood

    Joined:
    Jun 19, 2014
    Posts:
    28
    A little tip if you used Nottorus with source code :

    To have automatic focus on search textfield in nodes window, juste replace in m_NewNodeWindows.cs at line 759 :

    Code (CSharp):
    1. GUI.FocusControl("NewNodeSearchTextField");
    by

    Code (CSharp):
    1. EditorGUI.FocusTextInControl("NewNodeSearchTextField");
    Working fine for me :D
     
  42. DarkNBlood

    DarkNBlood

    Joined:
    Jun 19, 2014
    Posts:
    28
    My second change, when you Add Class variable, var name is autofocus. No more need to double click on new var name ;)

    In f_Window_Toolbar.cs, insert between lines 20-21 :
    Code (CSharp):
    1. private Vector2 v_ClassesScroll = Vector2.zero;
    2.  
    3. public static ScriptClassVariable currentNewVar; // To add
    4.  
    5. private void DrawClasses()
    6. ...
    in m_BaseScriptObject.cs, between lines 202-203 :
    Code (CSharp):
    1. ScriptClassVariable newVar = _CreateVariable("NewVariable", CurClass.ClassVariables, true);
    2.                
    3. currentNewVar = newVar; // To add
    4.  
    5. CurScript.SetSelectedObject = newVar;
    In m_RenameField.cs, at line 94, replace
    Code (CSharp):
    1. GUI.FocusControl(origName);
    by
    Code (CSharp):
    1. EditorGUI.FocusTextInControl(origName);
    and finally, in f_OnGUI.cs, at line 568 add this:
    Code (CSharp):
    1. if (currentNewVar != null)
    2.         {
    3.             currentNewVar.Renamer.TempName = "NewVariable";
    4.             currentNewVar.Renamer.StartChangeName("NewVariable");
    5.             currentNewVar = null;
    6.         }
    Little tips but useful for me ;)
     
  43. DarkNBlood

    DarkNBlood

    Joined:
    Jun 19, 2014
    Posts:
    28
    Hi all,

    Another change I've made for Nottorus.
    Sometimes it will be fastidious when we have big projects to easily find our scripts. So I've created a Nottorus_Class than you can add to any gameobject and easily create your Nottorus behaviour scripts.
    Of course you can use this class and drag on it you existing Nottorus script (*.nts).

    But a little video is better than text :D



    To install this, download Nottorus_class.zip from this post, copy Editor content in your Nottorus Editor folder and script content in your Nottorus/Script folder.

    Then, in m_NewScriptWindow.cs, at line 261, change this
    Code (CSharp):
    1. private void CreateNewScriptVariants()
    2.         {
    3.             //Graphics.DrawTexture(CreateRect(0, 0, BPE.position.width, BPE.position.height), Res.LoadingOparationOverlay);
    4.  
    5.             if(!CreateNewScript(NewScript_SelectedScriptVariant == ScriptType.ForInspector || NewScript_SelectedScriptVariant == ScriptType.EditorPlugin))
    6.                 return;
    7.            
    8.  
    9.             if (NewScript_SelectedScriptVariant != ScriptType.EmptyScript)
    10.             {
    11.                 ScriptClass newClass = CreateClass(Path.GetFileNameWithoutExtension(CurScript.ScriptFileName));
    12.  
    13.                 if (NewScript_SelectedScriptVariant == ScriptType.Monobehaviour)
    14.                 {
    15.                     SetupMonobVariant(newClass);
    16.                 }
    17.                 else if (NewScript_SelectedScriptVariant == ScriptType.ForInspector)
    18.                 {
    19.                     SetupInspectorVariant(newClass);
    20.                 }
    21.                 else if (NewScript_SelectedScriptVariant == ScriptType.EditorPlugin)
    22.                 {
    23.                     SetupPluginVariant(newClass);
    24.                 }
    25.                 else if (NewScript_SelectedScriptVariant == ScriptType.ScriptableObj)
    26.                 {
    27.                     SetupScriptableVariant(newClass);
    28.                 }
    29.                 else if (NewScript_SelectedScriptVariant == ScriptType.ConsoleApp)
    30.                 {
    31.                     SetupConsoleAppVariant(newClass);
    32.                 }
    33.             }
    34.  
    35.             SaveScript(false);
    36.  
    37.             TypeDataBase.CancelAbort("newscript");
    38.             NewNode_Window.CancelAbort();
    39.             NewNode_Window.FilterBase();
    40.  
    41.             b_Active = false;
    42.         }
    by

    Code (CSharp):
    1. public void CreateNewBehaviourScript(Nottorus_Class nottorusClass)
    2.         {
    3.             NewScript_SelectedScriptVariant = ScriptType.Monobehaviour;
    4.             if (CreateNewScriptVariants())
    5.             {
    6.                 AssetDatabase.Refresh();
    7.                 nottorusClass.Script = (UnityEngine.Object)AssetDatabase.LoadAssetAtPath(CurScript.ScriptFileName + Nottorus.ExtensionType, typeof(UnityEngine.Object));
    8.             }
    9.         }
    10.  
    11.         public bool CreateNewScriptVariants()
    12.         {
    13.             //Graphics.DrawTexture(CreateRect(0, 0, BPE.position.width, BPE.position.height), Res.LoadingOparationOverlay);
    14.  
    15.             if(!CreateNewScript(NewScript_SelectedScriptVariant == ScriptType.ForInspector || NewScript_SelectedScriptVariant == ScriptType.EditorPlugin))
    16.                 return false;
    17.            
    18.  
    19.             if (NewScript_SelectedScriptVariant != ScriptType.EmptyScript)
    20.             {
    21.                 ScriptClass newClass = CreateClass(Path.GetFileNameWithoutExtension(CurScript.ScriptFileName));
    22.  
    23.                 if (NewScript_SelectedScriptVariant == ScriptType.Monobehaviour)
    24.                 {
    25.                     SetupMonobVariant(newClass);
    26.                 }
    27.                 else if (NewScript_SelectedScriptVariant == ScriptType.ForInspector)
    28.                 {
    29.                     SetupInspectorVariant(newClass);
    30.                 }
    31.                 else if (NewScript_SelectedScriptVariant == ScriptType.EditorPlugin)
    32.                 {
    33.                     SetupPluginVariant(newClass);
    34.                 }
    35.                 else if (NewScript_SelectedScriptVariant == ScriptType.ScriptableObj)
    36.                 {
    37.                     SetupScriptableVariant(newClass);
    38.                 }
    39.                 else if (NewScript_SelectedScriptVariant == ScriptType.ConsoleApp)
    40.                 {
    41.                     SetupConsoleAppVariant(newClass);
    42.                 }
    43.             }
    44.  
    45.             SaveScript(false);
    46.  
    47.             TypeDataBase.CancelAbort("newscript");
    48.             NewNode_Window.CancelAbort();
    49.             NewNode_Window.FilterBase();
    50.  
    51.             b_Active = false;
    52.  
    53.             return true;
    54.         }
    Hope you like it ;)
     

    Attached Files:

    daville and Stridemann like this.
  44. Stridemann

    Stridemann

    Joined:
    Oct 12, 2013
    Posts:
    246
    @DarkNBlood
    Thanks)
    Yeah, my bad with GUI.FocusControl. Fixed.


    Btw there is one more feature of nottorus that seems nobody know. You can drag script icon to gameobject and script will be added to it. Note: script should be compiled before doin that.


    Also you can drag gameobject to nottorus window to add some components from it as script variable
     
    DarkNBlood likes this.
  45. DarkNBlood

    DarkNBlood

    Joined:
    Jun 19, 2014
    Posts:
    28
    No problem Stridemann ;)
    And I did not know this trick in Nottorus lol
     
  46. Stridemann

    Stridemann

    Joined:
    Oct 12, 2013
    Posts:
    246
    Also there was a code that will add OpenInNottorus button for script in inspector if script have a .nts file. But I don't see that it works.
    The name of source file: m_AssetInspector.cs
     
  47. DarkNBlood

    DarkNBlood

    Joined:
    Jun 19, 2014
    Posts:
    28
    I saw this script but too late, I had already done mine: D

    By cons I do not remember to have seen this button before so I think the script does not work anymore.
     
  48. DarkNBlood

    DarkNBlood

    Joined:
    Jun 19, 2014
    Posts:
    28
    I've also cleaned all warnings for Nottorus but I don't know if I can comment this var never used :

    Assets/Nottorus/Editor/Addons/CSP/Parser_h.cs(1,78): warning CS0414: The private field `Addon_CSP.Parser.precedece' is assigned but its value is never used
     
  49. Stridemann

    Stridemann

    Joined:
    Oct 12, 2013
    Posts:
    246
    Just delete it
     
  50. DarkNBlood

    DarkNBlood

    Joined:
    Jun 19, 2014
    Posts:
    28
    Ok lol, thanks
     
unityunity