   Choosing the right language
  Hi guys :-)Im new in this forum.I've programmed in several languages before and I have a MSc in Computer Graphics Programming so I am not totally new in games programming. I've developed some small games in C++ & OpenGL, Java, Flash (ActionScript), and Div Games Studio. Some of those can be found in: http://www.youtube.com/user/hysspI didnt do anything related to games during the last two years, and now i am thinking in developing a 2D game, probably very similar to Worms Armageddon, which in my opinion is the best game ever made.I've found that nowadays there are plenty of tools that helps in the task of creating a game... such as:*XNA*BlitzBasic*Blitz3D*Ogre*Torque*Fenix*DirectX*OpenGLI want to make a whise decision to choose which language should i use, and I am completly confused yet.I dont want to port it to any other platform except for Windows, so portability is not a key point for me. Those are the things that I would like to focus in:* Easy and fast creation of 2D games, apply transformations (rotations, blending, etc), and hopefully collision detection but it is not so important since i can do it by myself* Easy redistribution in any Windows based system once the game is finished* Online capabilities * it could be nice if there are plenty of effects that can be aplied to the graphics... I mean... blur, glow, etc... ------------------------DirectX or Opengl && C++   is a powerful combination, but I guess there must be tools that help saving time.In my mind there are several candidates, but i can be wrong.* XNA seems to be very popular, I've found thousands of good quality games. However I kind of get the feeling that is not so easy to create redistributable games since you have to install all the libraries first to run the games. I would preffer a standalone EXE file if possible. * Torque, i ve read some good comments about it, but i dont know if it gives you the freedom to create anything you have in mind or if it is too restrictive.*BlitzBasic, seems to be nice, executables are extremelly easy to redistribute, graphics effects seems to be nice enought... but probably it is a bit out of date??-----Dunno.... what do you guys recomend me? Hopefully something to create games fast, with good quality and easily redistributable.Thanks a lot!! I would love all your coments :-)   
  It sounds like XNA has everything you need right out of the box.  It also makes it ridiculously easy to publish games for the Windows platform.  There's literally a Build -> Publish menu option that will ask you a few questions and generate a Setup.exe.Take a look at the sample game that comes with it, the source code is literally a hundred lines or two (in addition to what the normal wizard generates for you) and you have a working 2D "game".  I was blown away at how easy and straightforward it was to load sprites, render them, play sounds, do simple animation, use shaders, etc.  The focus is definitely writing games, not engines.It's also cross-platform to the 360 but since you mentioned that wasn't important I thought I'd de-emphasize it :)   ;  Hehe, thanks a lot for your reply. Yea, I was thinking that XNA was probably the best option for me...any other opinions about this topic??Thanks in advance :-)   ;  I second the XNA opinion. Follow the (really good) online tutorials, and you'll be amazed at how fast you can get a game up and running.No engine writing, no fiddling with libraries and middleware, it's all there ready to go. The XNA Creator's Community even has starter kits for certain genres of games - like the 2.5D tile-based starter kit, etc.;  XNA sounds like what you want since you don't care for cross-platform like everyone already mentioned.I just want to add to make sure you get the latest version since the earlier versions of XNA made distribution and online gaming a PITA !Other than that it's all good and good luck ;);  XNA is the right way to go for getting your first game out the door. After that, you may look into coding directly using OpenGL or DirectX. It's a much smoother progression this way.Torque is a little overkill for a 2D game. It's primarily targeted at 3d applications. And to get the most out of Torque, you really need to use C++, instead of C#. C++ requires a lot more low-level handling of your computer resources, which could very easily increase your development time by an order of a magnitude.The third option is to code from scratch using a language of your choice and OpenGL. It's fun, and not overly challenging. But unless you enjoy coding..., XNA is going to get you a game finished much more quickly.-Patrick   