Search Unity

  1. Unity 2019.2 is now released.
    Dismiss Notice

Monodevelop Sucks

Discussion in 'External Tools' started by Elecman, Mar 15, 2012.

  1. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,332
    Last edited: Mar 15, 2012
    annegatchell likes this.
  2. ojuzu

    ojuzu

    Joined:
    Jun 29, 2006
    Posts:
    64
    I don't use MonoDevelop anymore so I can't help but unless you're using Javascript I'd highly recommend switching to Visual Studio Express. It's free and wipes the floor with MonoDevelop in just about every way. And if you are using Javascript, UnityDevelop is a decent alternative since you're on Windows. You may have your reasons for not using these tools already but just thought I'd chime in. :)
     
  3. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,332
    Thanks for the tip. But the problem also is that debugging only works in Monodevelop, right? Would it be possible somehow to tell Unity to use one text editor for normal coding, and another package for debugging, so I don't have to change the Unity settings every time I want to single step my code?
     
  4. OmniverseProduct

    OmniverseProduct

    Joined:
    Feb 26, 2012
    Posts:
    1,569
    I remember reading that debugging will also with in Visual Studio Pro, but you have to pay for that.
     
  5. ojuzu

    ojuzu

    Joined:
    Jun 29, 2006
    Posts:
    64
    As far as I know, there's no way to get debugging working in Visual Studio. However, there's no reason that you can't use Visual Studio for coding and MonoDevelop for debugging. I routinely have both applications running simultaneously when I'm converting Javascript code or if I need to debug something. You don't need to even tell Unity that you're using Visual Studio. You just use Visual Studio to open the csharp solution that Unity generates and then open and edit all of your cs files from with the Visual Studio solution explorer. You then have to alt tab over to Unity to run the project or add new cs files but when you go back to Visual Studio the project will automatically refresh itself.

    IMO, the intellisense code completion in Visual Studio is just too good not to use. It saves me massive amounts of time over the fiddly experience of working in MonoDevelop.
     
  6. OmniverseProduct

    OmniverseProduct

    Joined:
    Feb 26, 2012
    Posts:
    1,569
    Now I have a monodevelop question. Would there be any point in using the latest version of monodevelop? Note, I'm not talking about the unity version. I'm talking about the version from monodevelop.com.
     
  7. bibbinator

    bibbinator

    Unity Technologies

    Joined:
    Nov 20, 2009
    Posts:
    507
    @OmniverseProductions You could use the regular MonoDevelop as a script editor, but it doesn't know about or play nice with Unity. Use the Unity one if you want MonoDevelop.

    +1 for MonoDevelop sucking. I still prefer Unitron to MonoDevelop...
     
  8. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,332
    I found the setting for disabling Symbol Usage Highlighting, which they conveniently called "Enable highlighting of usages", to make it easier to find [/SARC]. But unfortunately the version that ships with Unity3.5 does not have this feature to turn it off. I downloaded the latest monodevelop and it runs much faster. I wish Unity get their act together and dump their horrible version and upgrade to the latest monodevelop.

    I read that using any other monodevelop version that ships with Unity will cause problems when debugging So using the latest version from the monodevelop website is not an option :-(

    Bug report submitted.
     
    Last edited: Jul 2, 2012
  9. Ricks

    Ricks

    Joined:
    Jun 17, 2010
    Posts:
    647
    Not fitting to the topic, but +1 that Monodevelop sucks.

    Although I've seen that Unity Tech tried to fix the bug where 2 or more instances of Monodevelop are started when doubleclicking on 2 different scripts - it still happens. Not always but enough often to get annoying.
    Sometimes MD also disappears for the blink of an eye, and then reappears. Obviously some "workaround reloader logic" UT implemented - it looks very dirty.

    Overall it seems to me, that Unity Tech is struggling themselves with this awfully slow and heavy piece of garbage. It might have been be better to invest more time in the old UniScite Editor instad.
     
    Last edited: Apr 12, 2012
  10. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,332
    OMG, they just updated Unity but the MonoDevelop version is still the same. I can't believe this!
     
  11. Meltdown

    Meltdown

    Joined:
    Oct 13, 2010
    Posts:
    5,421
    There are alternatives.
    You could try NotePad++ then follow these steps in the community wiki to setup syntax highlighting and intellisense for UnityScript
     
  12. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,332
    Thanks. Will have a look. But in that case I would have to switch between MonoDevelop for debugging and NotePad++ for editing. However, It might be a good alternative until Unity get their act together.

    Edit:
    I got NotePad++ to work in Unity style. Thanks again.
    I also got some feedback from Unity. They acknowledged the "Symbol Usage Highlighting" problem and told me that the latest version of MonoDevelop will be included once some stability issues are resolved :)
     
    Last edited: Apr 17, 2012
  13. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,332
    Unity just released a new version. But O M G! The MonoDevelop version is STILL the same! That piece of garbage is unusable in it's current state when using large files!
     
  14. Sir-Tiddlesworth

    Sir-Tiddlesworth

    Joined:
    Oct 19, 2011
    Posts:
    908
    +1 for MonoDevelop sucking
    Another alternative is Sharp Develop. It doesn't support Javascript (Unityscript) but it does support both C# and Boo.
     
  15. AaronC

    AaronC

    Joined:
    Mar 6, 2006
    Posts:
    3,544
    Awesome to hear theres a new Unity release around the corner, sucks dogs balls to hear we still wont have a working monodevelop. Still at least they are getting flash working. Personally I've had flashblockers on my computers for 2-3 years though, but I guess developing nations are still using flash.

    I would really love a monodevelop that actually works properly. Maybe for Christmas?
     
  16. Razieln64

    Razieln64

    Joined:
    May 3, 2008
    Posts:
    129
    Monodevelop 3.0.2 is out and it sucks less! The scroll bar seems faster too. At least refactoring and finding references is faster (a lot faster, can't take the time to get a coffee anymore :( ). The only issue I had is that my editor project didn't have my game's project reference. Also, the other issue is that Monodevelop doesn't realize it has the same file instance opened twice. I'm used to clicking in Unity's console log to open a script file when there's an error. If I have the same file already opened, it will open another instance of the same file. When saving the file, it will always tell you that some other program has edited the file out of turn. Just make sure you don't have the same file opened twice and you'll be fine.

    I just hope Unity will bundle this version when they release 3.5.3.
     
    Last edited: Jun 4, 2012
  17. Lypheus

    Lypheus

    Joined:
    Apr 16, 2010
    Posts:
    664
    For the love of Darwin, someone please develop an IntelliJ plug-in for Unity3D! I haven't seen a more primitive lot of IDEs since coming on board with Unity in VS, MonoDevelop, et al ... feels like I'm using something from the mid 90's again :(.
     
  18. alexzzzz

    alexzzzz

    Joined:
    Nov 20, 2010
    Posts:
    1,404
    The other way around: there is an IntelliJ-like plug-in for Visual Studio called Resharper.
     
  19. ibyte

    ibyte

    Joined:
    Aug 14, 2009
    Posts:
    915
    Monodevelop is still having issues with large files. Unity dev's please fix this or tell us why you can't?

    I cannot in good conscience spend another $1300 on upgrades when the current product is non functional.

    iByte
     
    Last edited: Jul 2, 2012
  20. hesa2020

    hesa2020

    Joined:
    Jul 27, 2011
    Posts:
    259
    Then use Notepad :O
     
  21. Sir-Tiddlesworth

    Sir-Tiddlesworth

    Joined:
    Oct 19, 2011
    Posts:
    908
    Just go back to UniSciTE. It still works fine.
     
  22. AaronC

    AaronC

    Joined:
    Mar 6, 2006
    Posts:
    3,544
    I think thats a windows only solution. On Mac we can use Unitron which kicks ass but lacks essential features (codefolding for eg)

    Having a working Monodevelop would be better. This is taking so long it must be a really low priority
     
  23. ibyte

    ibyte

    Joined:
    Aug 14, 2009
    Posts:
    915
    Me thinks it would be a much higher priority if Unity Dev's were forced to use Mondevelop to edit the Unity core source code files ;)

    Oh and I don't want to use Notepad or UniSciTE or anything else for that matter ... i like monodevelop (well when it works i do)

    iByte
     
    Last edited: Jul 5, 2012
  24. Mcg

    Mcg

    Joined:
    Mar 28, 2012
    Posts:
    111
    is it not possible to use flash builder/eclise for unity that arent for android?
     
  25. OmniverseProduct

    OmniverseProduct

    Joined:
    Feb 26, 2012
    Posts:
    1,569
    forgive me if I'm not understanding this, but you cannot use flash builder and eclipse for mobile platforms (android and iOS). They are Windows and mac exclusive. Eclipse is also for linux. You can deploy to mobile platforms with both though. With flash builder, you have to use AIR as in the future android and iOS won't support flash player.
     
  26. guavaman

    guavaman

    Joined:
    Nov 20, 2009
    Posts:
    3,828
    I switched to MonoDevelop when they started bundling it with Unity. At that time I thought it was really terrible, but I found ways to get around some of the bugs like disabling auto-complete (unbelievably slow). Since then, they've updated the version at least once and added some nice features like being able to set colors, etc.

    I code in UnityScript in MD, but I have been doing a bit of C# development on other projects and have been using Visual Studio Express 10 and I have to say it is 100,000 times better than MonoDevelop in every single way. I got spoiled on the excellent autocomplete and built-in method definitions and now using MD feels like I'm coding in Notepad (SOOO much manual labor). I decided to re-enable code completion and see if they fixed that. Man, it's even worse than before!

    I can't find the pattern, but SOMETIMES code completion reacts and gives me suggestions, sometimes it doesn't. (Seems to depend on the file, how you opened the file (Unity or MD), and other factors I can't understand yet.) I always get 1 of 3 behaviors at random with each file:

    1) Code completion is working and it suggests ONLY built-in classes and statc classes and local variables in a function. NO suggestion of the current class properties! Highly annoying.
    2) Code completion is working and it suggests everything it should. (Very rare).
    3) Code completion is NOT working -- it suggests nothing no matter what I type.

    This is all with every checkbox selected under code completion, so there's nothing I'm doing wrong on my end.
    This bug makes it all but useless to me as a developer. Couple that with the fact that I too have been unable to get debugging working worth a darn. Come on, why does it want to open a new instance of Unity when it's already open! Of course, Unity won't launch two processes at once so it just craps out.

    I find it irritating the Unity team keeps focusing on adding irrelevant selling-point features with every release but doesn't address the plethora of basic functionality issues with the already existing features. (MD and the MESS that is multiple joystick handling on the PC for example.) I just plunked down for the U4 upgrade too because I know that's the only way I MAY see any of these problems fixed.

    To Unity staff: Please, oh please, plan and entire release or two to focus on JUST bug fixes and address some of these nagging problems and quit adding new features until the ones you already have work correctly!
     
  27. Boss

    Boss

    Joined:
    Jun 27, 2012
    Posts:
    133
    Monodevelopment is great. I do suggest using notepad though, to moniter mono. :)
     
  28. Tseng

    Tseng

    Joined:
    Nov 29, 2010
    Posts:
    1,217
    I get that too sometimes, it's a pain in the ass. I think it comes mostly when a compilation fails.

    Sometimes it works, then I add new code and hit safe while there is a syntax error and then then it breaks and I am forced to close MonoDevelop and restart it again.
     
  29. Dreamora

    Dreamora

    Joined:
    Apr 5, 2008
    Posts:
    26,603
    The problem is that is not MonoDevelops error.
    Thats Unitys / your error for having the auto refresh active in the unity prefs that will refresh the solution all the time basically and in consequence completely mess the state for MD more sooner than later. MD silently reloads it but if you use Visual Studio you will get the confirmation dialog for reload on every single jump from Unity to VS basically (if you don't respond to it you get multiple instances at worst)

    Unity needs to become smart enough to only replace the solution when really something changed, not just cause you jump in and out
     
  30. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,332
    Does anyone with access to the Unity4 beta can tell me if they finally ditched that piece of S*** 2.8.2 MonoDevelop version?
     
  31. Tseng

    Tseng

    Joined:
    Nov 29, 2010
    Posts:
    1,217
    Nope, still 2.8.2 and Mono 2.6.x. But you can use the official MonoDevelop builds, if you can live without debugging. Dunno if it works with UnityScript/Boo
     
  32. guavaman

    guavaman

    Joined:
    Nov 20, 2009
    Posts:
    3,828
    It doesn't. I've spent a lot of time trying to convert the UScript/Boo language addins to MonoDev 3, but it's very difficult because they dropped the whole MonoDevelop.Projects.Dom class in favor of NRefactory and it changes a whole lot of stuff with relation to how code completion works. I don't think I'm gonna get anywhere.
     
  33. Tseng

    Tseng

    Joined:
    Nov 29, 2010
    Posts:
    1,217
    Tough luck then ^^

    Just demonstrates once more, why developing Unity games in C# is far superior to US/Boo :p
     
  34. guavaman

    guavaman

    Joined:
    Nov 20, 2009
    Posts:
    3,828
    I agree 110%. After 2+ years of developing my project on UnityScript, I deeply regret my decision. You'll be jumping through hoops and implementing one half-baked workaround after another in every aspect you can imagine. Anyone starting out, save yourself the never-ending headache and just go for C# from the start even if it looks more confusing at a glance.
     
  35. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,332
    OMG! I cannot believe they still didn't update MonoDevelop.

    Using the latest non-Unity MonoDevelop build isn't an option for me because the only reason I use CrapDevelop is for debugging. But when using large C# files, it becomes incredibly slow, most of the time freezing more then one second with every mouse move. And sometimes freezing for more then 5 minutes while it is looking up similar text your mouse is hovering over. Totally unusable. And this is a confirmed bug!
     
  36. kristercollin

    kristercollin

    Joined:
    Aug 24, 2012
    Posts:
    7
    Not completely on topic, sorry.

    +1 for MonoDevelop sucking.

    As for a good text editor to program in, I've used Scite and Notepad++ (and many others), but my favourite is easily Sublime Text 2. Fully capable toolset that has a lot to offer and works across all major OSs.

    Would love to see what MonoDevelop has to offer once a release comes through that's fixed up and has a reasonable footprint, though.
     
  37. Tseng

    Tseng

    Joined:
    Nov 29, 2010
    Posts:
    1,217
    None of this "toys" can replace MonoDevelop or Visual Studio, especially with C#. With Scite/Notepad++ you will lose far more productivity, no matter how much MonoDevelop sucks it's still an IDE while the ones listed above are just simple editors which will increase your developing time by at least factor 2.
     
  38. guavaman

    guavaman

    Joined:
    Nov 20, 2009
    Posts:
    3,828
    I don't think it would be any slower using a text editor with some of the problems I'm having with MD. In fact, I know it isn't because I moved from UniSciTE to NotePad2 to MonoDevelop and it hasn't improved my productivity at all, but I'm sticking with it hoping they'll make it better. Because I simply cannot use auto-completion, I lose a huge part of what makes an IDE useful. I can use the MD build to check for errors, but the results are riddled with bogus warnings you cannot silence when using UnityScript. Ultimately, I end up using MD just like a text editor and use Unity to compile and report the errors. But regardless, in UnityScript, none of the alternative text editors speed up my workflow either, so its a wash.
     
  39. retypeNick

    retypeNick

    Joined:
    Sep 17, 2012
    Posts:
    12
  40. ibyte

    ibyte

    Joined:
    Aug 14, 2009
    Posts:
    915
    Would anyone from the Unity Team be able to tell us why Mondevelop is not getting any development cycles? Are you planning to replace it with something else?

    This still sucks .....

    iByte
     
  41. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,332
    Coming close to the release of Unity 4 and still no MonoDevelop update.

    UnityVS seems the way to solve this but I am not going to pay an extra $125 just because the build-in Unity editor sucks!

    Update:
    Unity4 is now final and MonoDevelop is still version 2.8.2

    :-(
     
    Last edited: Nov 15, 2012
  42. e5an

    e5an

    Joined:
    Jul 6, 2012
    Posts:
    93
    From the MonoDevelop site:

    The latest stable release is MonoDevelop 3.0.5. See the Release Notes.

    So what's the problem with downloading this one and setting it as the External Script Editor in preferences?
     
  43. guavaman

    guavaman

    Joined:
    Nov 20, 2009
    Posts:
    3,828
    1) No UnityScript/Boo support. 2) No debugger integration.
     
  44. Michael-Ryan

    Michael-Ryan

    Joined:
    Apr 10, 2009
    Posts:
    149
    Can we PLEASE get an update to MonoDevelop??? Refactoring and finding references on even small projects is painfully slow. It just took 2m 38s to find a single reference to a class method in my solution!
     
  45. Thormor

    Thormor

    Joined:
    Nov 22, 2012
    Posts:
    39
    Any update on Monodevelop update for Unity 4?

    I'd really like to have news of that.
     
  46. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,332
    The latest update on that is that someone asked on a recent unity hangout video when MonoDevelop is going to be updated. The reply what that there are some compatibility issues when updating. That is the same reply I got from my bug report on the super slowness of MonoSuck. They said that it will be updated at some time in the future.

    So I guess we can forget about it.

    It is really quite amazing that Unity is such a cool engine but in order to use it you have to continually switch between editors if you want to avoid the ultra buggy and mega slow MonoSuck:

    OSX:
    Debugging Player: MonoSuck
    Debugging IOS: MonoSuck
    Coding: UnIde

    Windows:
    Debugging Player: UnityVS
    Debugging Android: MonoSuck
    Coding: UnIDE or UnityVS
     
    Last edited: Jan 18, 2013
  47. Thormor

    Thormor

    Joined:
    Nov 22, 2012
    Posts:
    39
    DId they say what they intend to do for the future? Because really if they want Unity to continue to prosper coders will need a good tool that works well.
     
  48. pj17903a

    pj17903a

    Joined:
    Nov 20, 2010
    Posts:
    6
    +1 to Mono sucking.

    I am running on Mac OSX and have spent the last 3 hours trying to figure out why Mono code formatting is scrambling my source. I've deleted the cache under ~/Library. I've deleted and reinstalled the Mono app under Unity 4. I've rebooted. It's not just inconvenient now it is completely unusable.

    eg. I'm inserting a line into my Update
    Code (csharp):
    1.  void Update ()
    2.     {
    3.         if (Input.GetMouseButton (0))
    4.         {
    5.             Screen.lockCursor = true;
    6.         }
    7.  
    8.  
    9.         if (Input.GetKeyDown(KeyCode.KeypadPlus))
    10.        
    when I hit enter, code formatting does this...
    Code (csharp):
    1.  
    2.     if (Input.GetMouseButto
    3.                          Screen.lockCur
    4.         }
    5.  
    6.  
    7.          if (Input.GetKeyDown(KeyCode.KeypadPlus))
    8.            
    9.        
    10.         //      e shoot animation
    11.         if (Screen.lockCursor  !isReloading  Input.GetButtonDown ("Fire1")
    12.                 t != nul
    13.                         ();
    14.  
    15.             control         ;
    16.  
    17.             Invoke ("SpawnSnowball", 0.1f);
    18.  
    19.             Vector          transform.position + transform.rotation * handOffse            Vector3 aimDir = platformer.aimTarget.position - handpos;
    20.             networkView.RPC ("Throw"        RPCMode.Server, aimDir);
    21.         }
    22.     }
    23.  
    24.  
    in other words it borks up the entire function.

    As far as I can tell this started when I changed the C# autoformat options, but I have reset those every way I can think of with no change. I do have some files from a 3rd party library that have different line endings, but I have saved and converted those. This is without doubt the most frustration I've had with a tool in 25 years of coding.

    Thanks Elecman and others who list alternatives, I'll be looking into those. Pity I can't run VS on a Mac.

    EDIT: well the obvious workaround of turning off on-the-fly code formatting works. But still...
     
    Last edited: Jan 24, 2013
  49. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,332
    The code formatting gets messed up as well if you use nested defines. Even with normal defines MonoSuck doesn't know what to do with syntax coloring. The list of MonoBugs is endless.
     
  50. delzhand

    delzhand

    Joined:
    Jul 20, 2012
    Posts:
    20
    It's worse in Unity 4. They upgraded to a newer version of mono, but this version has a bug where you can't inspect parameterized collections while debugging. Got a queue of objects? Have fun storing popping them all to objects so you can look at them. Heaven help you if you want to debug a list of objects that also have generic collections in them.