Cryengine will be $10/month with no royalties, but does not currently support mobile platforms.
For upgrades prices are halved, and their upgrade cycle is 18-24 months.
I dont mean to offend but this kind of reaction to pricing almost always comes from people with little to no money, traction, revenue etc.
The reality is, when you have a game in the market, costs like $75/mo or even 225/mo for iOS/Android targets - that cost does not even cross your mind. It is less than the cost of a single developer for a single day.
It's way too much for the Indie crowd, though, and that's Unity's big problem these days; it's being attacked from below by UDK, where the far lower upfront cost appeals to indie devs and tinkers, AND from above by UDK, which is a much better pro-level AAA framework than Unity, and for which the $$$$$ no cut of gross revenue licensing cost isn't an obstacle.
I have used Unity free version, it was great but always felt nervous about dropping $4500. UDK addresses my pain point and likewise for other indie developers by giving access to a triple A framework without having to worry about return on investment. I definitely don't mind sharing the risk with UDK for a meager 5%.
C#/Javascript vs C++/Lua
Lua is easier than C++ but is still, I don't know, quirky, to me.
[0]: http://wiki.unity3d.com/index.php?title=UnityScript_versus_J...
Since I haven't written much "UnityScript" code myself, I'd appreciate your comments about whether you think it's possible (or worth the effort) for a tool like Browserify/Unityify to translate JavaScript code so it runs in Unity3D, or for programmers to write portable modules in a dialect of JavaScript that will run in both.
Maybe Unity3D themselves could help, by fixing problems with UnityScript that make it hard to run standard JavaScript, and providing hooks in their compiler pipeline that enable passing JavaScript libraries through with minimal modification when you're targeting the web browser and WebGL.
In CryEngine their FlowGraph is basically a way of connecting predefined C++ and Lua code boxes. Blueprint in Unreal takes things to extremes and basically exposes almost the entire C++ API to the scripter.
How hard is it to do non shooters in UDK?
In any case, the limitation was never down to the scripting method, more the way that the engine was designed and what it specialises in. Remember that full licence holders had the C++ source.
If you need to develop in C++ then your cost structure (in cash or opportunity cost) means that worrying about paying $1500 for a development tool won't even move the needle.
Maya / Max seat $5000+ (and devs tend to need them too)
Unity's biggest payoff is in workflow. If what you care about is the most polygons on the screen then UDK or Cryengine will win. If you care about the price of getting something out the door and it isn't an FPS then Unity clearly wins.
It's funny because I was looking to see if I could use Unity with a python like language and Lua seems bang on the spot.
More reason to learn Lua as an excuse to use some thing like Lapis, a Lua framework for Nginx OpenResty which lets you write apps directly on Nginx.
Unity has support for Boo, which is just a Python-like front end for the CLR. I'm pretty fond of it, myself. I prefer to use it whenever I can, inside Unity and elsewhere. The docs could use a lot of love, but it's still very easy to learn and extremely productive and a joy to write. I rarely touch MonoDevelop / Xamarin Studio; I write Boo in Sublime Text, and find it very satisfying.
Another path I've been tempted to explore is to use Moonscript with Gameplay3D, but Unity is hard to leave.
I could be wrong, but I have the impression that Unreal is too unwieldy for a solo developer, which is how I plan to stay for the foreseeable future.
Unreal3 had UnrealScript + Kismet. Unreal4 has Blueprint, which is Kismet taken to extremes, but UnrealScript is no more.
And it's already been said, but in Unity you can use Boo, which is very similar to Python.