Originally Posted by Zyphion
I was just wondering how most indie game developers create games. Do they normally make their own Engines, or do they use ones that are already there such as Unity3D. Also if you were to make a game, which Engine do you think that you would use.
Those are such open ended questions that it's completely impossible to give an absolute as an answer.
Indie developers code in whatever language they want. Minecraft was written in Java, some games are written in C#. Others prefer C++. However it's more complicated than even just preference as target platform can play a part. eg if you're writing a game for Android or iOS, then it would make more sense to use those platforms SDKs (Java + C++ for Android, Objective-C for iOS).
Then you asked about game engines, and that's a case of what language the developers are confident in, what platform they're using and - most importantly - what type of game they're developing. eg I wouldn't use the Unity3D to build a 2D scroller. Sometimes game engines don't exist that cater for that style of game well, so developers prefer to build their own rather than shoehorn any existing one. Sometimes developers prefer to build their own engine just for individuality or just because they can / it's fun.
As for me personally, when building stuff for fun, I always code things from scratch because I enjoy the problem solving more than anything. I have no other preferences beyond that.
My advice to any budding new developers would be pick a platform first, then pick a language that suites that platform well (my suggestions would be ObjectiveC for OS X / iOS, C# for Windows, Java for Android / Linux - but of course you're welcome to use other languages if you prefer). And then just bang out some code. Also don't bother with any game engines until you've grasped enough of whichever language to understand how the game engines work (otherwise it would be like trying to service a car when you've only ever seen push bikes).Edited by Plan9 - 3/21/13 at 2:36am