Jump to content

  • Log In with Google      Sign In   
  • Create Account


Help choosing language (or platform)


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
7 replies to this topic

#1 armornick   Members   -  Reputation: 108

Like
0Likes
Like

Posted 06 July 2012 - 12:42 PM

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;

Java and Mono 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.

C/C++, Go and Object Pascal 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, HTML5 and (obviously) JavaScript. 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.

Sponsor:

#2 kunos   Crossbones+   -  Reputation: 2203

Like
0Likes
Like

Posted 07 July 2012 - 12:51 AM

I don't think starting a language war on a forum is going to help you making decisions Posted Image

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, 07 July 2012 - 12:52 AM.

Stefano Casillo
Lead Programmer
TWITTER: @KunosStefano
AssettoCorsa - netKar PRO - Kunos Simulazioni

#3 6510   Members   -  Reputation: 151

Like
0Likes
Like

Posted 07 July 2012 - 01:36 AM

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.

Right, don't ask nobody to install runtimes separately - 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.

#4 armornick   Members   -  Reputation: 108

Like
0Likes
Like

Posted 07 July 2012 - 01:41 AM


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.

Right, don't ask nobody to install runtimes separately - 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.

Yeah, that might work.
For .NET, I could probably bundle mono with my game since it's open source.

#5 Serapth   Crossbones+   -  Reputation: 5230

Like
0Likes
Like

Posted 07 July 2012 - 11:53 AM

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.

#6 armornick   Members   -  Reputation: 108

Like
0Likes
Like

Posted 07 July 2012 - 01:11 PM

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.

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.

#7 Serapth   Crossbones+   -  Reputation: 5230

Like
0Likes
Like

Posted 07 July 2012 - 01:36 PM


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.

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.



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

If you are willing to use NetBeans, I wrote this guide 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, 07 July 2012 - 01:36 PM.


#8 armornick   Members   -  Reputation: 108

Like
0Likes
Like

Posted 07 July 2012 - 01:38 PM



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.

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.



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

If you are willing to use NetBeans, I wrote this guide 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.

Oh, you're the guy from that site? If so, I like your work very much ;)
I'll give netbeans a try.




Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS