Sign in to follow this  

Help choosing language (or platform)

This topic is 1982 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hey guys

I've been looking around the game development world for a while and I want to do a few games as hobby projects. Just for fun. However, I'm bad with making choices so I want everyone to help me brainstorm on which language to use. These are the possible choices;

[b]Java[/b] and [b]Mono[/b] are my ideal choice. The use of a virtual machine means that my games will be inherently cross-platform and fairly performant. Using these platforms will also give me a fairly wide amount of extra languages like Scala, Clojure, etc. P/Invoke and JNA also allow me to use C libraries. Not to mention that these are the languages I've been trained to use professionally.
However, what stops me from just using these languages is that they require a rather large runtime. I'm a bit hesitant to ask potential players to install the JRE or .NET/Mono. I know most pc's have these runtimes nowadays but still.

[b]C/C++, Go [/b]and [b]Object Pascal[/b] are my second choice since it allows me to simply distribute all dll's and such with my application. The problem with this 'platform' is that it's rather difficult to create a cross-platform application. Sure, I can use cross-platform libraries but I still have to compile my application for every platform and Linux isn't exactly known for its ABI-compatibility.

And finally,[b] HTML5[/b] and (obviously) [b]JavaScript[/b]. This seems a really good platform since it's very cross-platform and stuff. However, it somehow doesn't really seem 'cool' to embed all your game code into a webpage. It's just a silly reason that I can't quite explain. Also, browser performance isn't really comparable with the above.

So, any thoughts? Comments? Any opinion is appreciated.

Share this post


Link to post
Share on other sites
I don't think starting a language war on a forum is going to help you making decisions [img]http://public.gamedev.net//public/style_emoticons/default/biggrin.png[/img]

Anyway.. here's my suggestion:

C# / OpenTK / Xna / SlimDX
+ You can use Visual Studio
+ You can keep your game core classes and run on Windows, Linux, Mac, Android, iOS, WP7, XBox, PS Vita, Win8 Metro, WP8
+ Elegant code
+ Easy to debug
+ Fast.. on MS .NET you won't believe how fast it runs

if you want to get exotic:

Google GO
+ Beautiful, small and simple language
+ Compile to Windows, Linux, Mac
+ Great community
+ Fast (not as fast as C# on MS .NET but hopefully it'll get there) Edited by kunos

Share this post


Link to post
Share on other sites
[quote name='armornick' timestamp='1341600151' post='4956422']
However, what stops me from just using these languages is that they require a rather large runtime. I'm a bit hesitant to ask potential players to install the JRE or .NET/Mono. I know most pc's have these runtimes nowadays but still.
[/quote]
Right, don't ask nobody to install runtimes [i]separately[/i] - just add them to the game installer.
Can't speak of .NET, but you can bundle your private JRE which won't interfere with customer systems at all, they won't even notice what's under the hood.

Share this post


Link to post
Share on other sites
[quote name='6510' timestamp='1341646589' post='4956589']
[quote name='armornick' timestamp='1341600151' post='4956422']
However, what stops me from just using these languages is that they require a rather large runtime. I'm a bit hesitant to ask potential players to install the JRE or .NET/Mono. I know most pc's have these runtimes nowadays but still.
[/quote]
Right, don't ask nobody to install runtimes [i]separately[/i] - just add them to the game installer.
Can't speak of .NET, but you can bundle your private JRE which won't interfere with customer systems at all, they won't even notice what's under the hood.
[/quote]
Yeah, that might work.
For .NET, I could probably bundle mono with my game since it's open source.

Share this post


Link to post
Share on other sites
I can't say I would worry about file size. Hell Steam reinstalls the whole C++ runtime for every game! On Windows PCs, it's pretty safe to assume .NET 3.5 and earlier are already installed. Otherwise it just becomes another part of your application. I mean, if I go through my steam library, I have multiple ( most? ) games well over a Gig in size.


Java + PlayN, or LibGDX are two interesting Java projects I would like to check out. I have also been using cocos2D for HTML5 lately, and been enjoying that experience.

Share this post


Link to post
Share on other sites
[quote name='Serapth' timestamp='1341683584' post='4956689']
I can't say I would worry about file size. Hell Steam reinstalls the whole C++ runtime for every game! On Windows PCs, it's pretty safe to assume .NET 3.5 and earlier are already installed. Otherwise it just becomes another part of your application. I mean, if I go through my steam library, I have multiple ( most? ) games well over a Gig in size.


Java + PlayN, or LibGDX are two interesting Java projects I would like to check out. I have also been using cocos2D for HTML5 lately, and been enjoying that experience.
[/quote]
Oh yeah, PlayN and GDX seemed really interesting when I was looking at it. Never got PlayN to work, though.
The C++ runtime doesn't take much space, though, since it's a single DLL. But yeah, I guess I shouldn't make a big deal out of file size.

Share this post


Link to post
Share on other sites
[quote name='armornick' timestamp='1341688306' post='4956713']
[quote name='Serapth' timestamp='1341683584' post='4956689']
I can't say I would worry about file size. Hell Steam reinstalls the whole C++ runtime for every game! On Windows PCs, it's pretty safe to assume .NET 3.5 and earlier are already installed. Otherwise it just becomes another part of your application. I mean, if I go through my steam library, I have multiple ( most? ) games well over a Gig in size.


Java + PlayN, or LibGDX are two interesting Java projects I would like to check out. I have also been using cocos2D for HTML5 lately, and been enjoying that experience.
[/quote]
Oh yeah, PlayN and GDX seemed really interesting when I was looking at it. Never got PlayN to work, though.
The C++ runtime doesn't take much space, though, since it's a single DLL. But yeah, I guess I shouldn't make a big deal out of file size.
[/quote]


Yeah, it's a pain in the ass configuring PlayN, especially because of Eclipse + Maven.

If you are willing to use NetBeans, I [url="http://www.gamefromscratch.com/post/2012/05/24/Using-Netbeans-712-with-PlayN-13.aspx"]wrote this guide[/url] which will get you up and running, and able to use all of the project types. It isn't quite as complex as it looks. Edited by Serapth

Share this post


Link to post
Share on other sites
[quote name='Serapth' timestamp='1341689760' post='4956716']
[quote name='armornick' timestamp='1341688306' post='4956713']
[quote name='Serapth' timestamp='1341683584' post='4956689']
I can't say I would worry about file size. Hell Steam reinstalls the whole C++ runtime for every game! On Windows PCs, it's pretty safe to assume .NET 3.5 and earlier are already installed. Otherwise it just becomes another part of your application. I mean, if I go through my steam library, I have multiple ( most? ) games well over a Gig in size.


Java + PlayN, or LibGDX are two interesting Java projects I would like to check out. I have also been using cocos2D for HTML5 lately, and been enjoying that experience.
[/quote]
Oh yeah, PlayN and GDX seemed really interesting when I was looking at it. Never got PlayN to work, though.
The C++ runtime doesn't take much space, though, since it's a single DLL. But yeah, I guess I shouldn't make a big deal out of file size.
[/quote]


Yeah, it's a pain in the ass configuring PlayN, especially because of Eclipse + Maven.

If you are willing to use NetBeans, I [url="http://www.gamefromscratch.com/post/2012/05/24/Using-Netbeans-712-with-PlayN-13.aspx"]wrote this guide[/url] which will get you up and running, and able to use all of the project types. It isn't quite as complex as it looks.
[/quote]
Oh, you're the guy from that site? If so, I like your work very much ;)
I'll give netbeans a try.

Share this post


Link to post
Share on other sites

This topic is 1982 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this