I started using Unity in 2011. And from then on, other than the occasional dabble into Game Maker, Unity + C# is my go to for making games. It’s not the BEST GAME ENGINE EVER! But it gets the job done, and is easy to use.
But for the last few months, I've been thinking about moving on to something else(I can do another wall of text for this). And so, for Ludum dare #42, I decided to try a new game engine. Was split between Defold and Godot. Some of the considerations I had were:
Pricing
Proprietary[Defold] vs Open source[Godot]
Updates
Lua[Defold] vs engine’s custom script[Godot’s gdscript]
Engine workflow
Store/social integration APIs
Support for mobile
Ability to extend the engine, using other libraries e.g. OpenCV, native iOS/ android features
Help and tutorials
In the end I picked Defold mainly for this 2 reasons. 1) I'm not comfortable relying on Godot to make games that are for commercial purposes. 2) Lua > engine's own custom script. I'll take a more well established scripting/programming language over anything else. Which is also why I do not use Game maker.
And here is the game we made using Defold(engine) + Affinity designer(art) + Spine (animation).
Sweatin’ Spinnin’ Spacin’
https://blu3bird.itch.io/sweatin-spinnin-spacin
Knowing that we probably shouldn't do anything too complicated, this is what we came up with. I will discuss about my experiences with Defold in a later post.
Somehow, I never liked MonoDevelop. So here's  how I made Sublime text 3 work with Unity 5.
Won't go into details, go google the rest yourself.
1. install package control on Sublime
2. install omnisharp for Sublime using package control [https://github.com/OmniSharp/omnisharp-sublime]
3. follow the readme for setting up
4. in Unity, set preference for external editor to Sublime
Omnisharp might return a bunch of irritating warnings such as "Use 'var' keyword" or wanting you to name variables with _underscore. To hide these, add these lines in the "config.json" file for Omnisharp.
"IgnoredCodeIssues": [ Â Â "^Keyword 'private' is redundant. This is the default modifier.$", Â Â ".* should not separate words with an underscore.*", Â Â "^Redundant argument name specification$", Â Â "^Convert to '.*' expre.", Â Â "^Use 'var' keyword$", Â Â "^Name should have prefix.", Â Â "^Redundant ToString.", Â Â "^Initializing field by default value is redundant$", Â Â "^Parameter can be IComparable$", Â Â "^Convert to constant.*", Â Â "^Variable could be moved to a nested scope$", Â Â "^Method never reaches its end or a 'return' statement.$", Â Â ".* should start with an upper case letter. \\(Rule 'Enum Members'\\)$" ],