Sign in to follow this  
ManStaringAtScreen

Talk to me about java in gaming

Recommended Posts

Complete beginner here, I very much enjoy coding in java, hoping soon to do some game dev with it. What is the future for this language, in terms of the 'big boys', established developers, support on consoles etc. Forgive me if this seems like a bit of a 'non-question' to those more experienced but I'm curious.[img]http://public.gamedev.net//public/style_emoticons/default/smile.png[/img]

Share this post


Link to post
Share on other sites
SimonForsman    7642
[quote name='ManStaringAtScreen' timestamp='1340115041' post='4950579']
Complete beginner here, I very much enjoy coding in java, hoping soon to do some game dev with it. What is the future for this language, in terms of the 'big boys', established developers, support on consoles etc. Forgive me if this seems like a bit of a 'non-question' to those more experienced but I'm curious.[img]http://public.gamedev.net//public/style_emoticons/default/smile.png[/img]
[/quote]

Android requires it (Allthough you can also use native modules written in other languages), some ARM cpus run java bytecode nativly and ofcourse it is fairly common on PC/Mac/Linux.

For consoles it isn't that well supported so console games are usually written in other languages. (And thus AAA studios targeting consoles tend to not use it)

Share this post


Link to post
Share on other sites
6677    1054
I haven't actually heard of any console supporting java. Someone was telling me theres a java derivitive for .net and mono so that might work on the PSVita or the xbox but thats it really.

Share this post


Link to post
Share on other sites
rionSk    109
Yep, there's no console using java as programming language because of JVM. It would require huge amount of money to update JVM for consoles and big game companies will not invest in this. They rather make game in C or C++..

I personally think Win/Linux/Mac has enough users, gamers, who will play your game. So if you want to create games for consoles Java is not the solution and you should look for another programming language.

Share this post


Link to post
Share on other sites
Serapth    6671
[quote name='ManStaringAtScreen' timestamp='1340188897' post='4950911']
Well its obvious use for the android OS is something. Do developers here have any success with games on the google store or is it pretty hit and miss?
[/quote]

Some do, most don't. I keep hearing numbers suggesting established apps that are on both iOS and Android markets make about 10% of earnings on the Android side of the fence.

That said, these things are so loaded with fanboy BS, its hard to really tell. I can tell you one thing though... whenever I fire up Google Play on my Galaxy Note or Transformer tablet, I always walk away disappointed... the same (meh) apps always dominate the sales charts, which is telling.

Share this post


Link to post
Share on other sites
[quote name='Serapth' timestamp='1340218185' post='4951080']
I always walk away disappointed... the same (meh) apps always dominate the sales charts, which is telling.
[/quote]So by this do you mean there is a gap waiting for quality content, or perhaps the more depressing, people don't want quality content, and as the majority pretty much rules what makes it to the front pages..?

Share this post


Link to post
Share on other sites
6677    1054
If you think you can make the next great app then go ahead, chances are that if you get the word out that its there its rating might go up so others will find it on the play store more easily.

Share this post


Link to post
Share on other sites
jbadams    25676
On the point of established developers, some Java success stories include Minecraft, RuneScape, Wurm Online and Puzzle Pirates. [img]http://public.gamedev.net//public/style_emoticons/default/smile.png[/img]

Share this post


Link to post
Share on other sites
Tipotas688    86
Always use the right tools for the job, in this case Java isn't the right tool.. When you have limited resources to create an application you need every little thing that's available for you. The mobile market supports java just because Apple and Google want to make money off developers more than they want off users so they give you an "easy" language for you to work with.

At the end of the day, use what you are most comfortable with but the games industry is a tricky place to be!

Share this post


Link to post
Share on other sites
jbadams    25676
[quote name='Tipotas688' timestamp='1340274641' post='4951282']
Always use the right tools for the job, in this case Java isn't the right tool.
[/quote]
You were on the right track to start with, but then you veered off into the wilds.

Java is quite capable of making commercially successful games, as evidenced by the examples I already gave in reply above. You [i]should[/i] always choose tools that are suitable and which you are comfortable with. For some people, that [i]does[/i] mean Java.

Share this post


Link to post
Share on other sites
6677    1054
[quote name='Tipotas688' timestamp='1340274641' post='4951282']
mobile market supports java just because Apple and Google
[/quote]Actually iOS doesn't support java

Share this post


Link to post
Share on other sites
SimonForsman    7642
[quote name='ManStaringAtScreen' timestamp='1340263276' post='4951243']
[quote name='Serapth' timestamp='1340218185' post='4951080']
I always walk away disappointed... the same (meh) apps always dominate the sales charts, which is telling.
[/quote]So by this do you mean there is a gap waiting for quality content, or perhaps the more depressing, people don't want quality content, and as the majority pretty much rules what makes it to the front pages..?
[/quote]

People do want quality and there is definitly a gap on Android (Allthough there are quite alot of high quality apps on the market), the primary reasons as i see them are:
1) The Android market is fragmented, if you make an app that puts some stress on the hardware it will run badly or not at all on a large portion of the devices out there (Which can lead to horrible reviews pushing your app down on the lists or force you to do extensive pre-release testing to find out which devices you can sell it to), for iOS you got what ? 4-5 different models to test your app on.

2) iOS users on average are younger and more likely to play with their phones (Which also makes them more likely to spend money on apps).

3) The iPhone hit the mainstream market first and has alot of momentum, users who want (and are willing to pay for) quality apps will buy iPhones since that is where the great apps are and developers who make quality apps will target the iPhone first since that is what most of their potential customers are using.

4) People in general don't play large, time consuming games on their phones, game apps are primarily played when nothing else is available, users want games that can be picked up, played for 1-2 minutes (or even less) and then put away again, they don't want to spend alot of money on them (as they aren't really played seriously anyway) which means developers can't spend alot of money on the games either.

As for the OPs question i can add that it doesn't make much sense, it is completely irrelevant if it is supported on consoles as the OP will not get a console devkit anyway, (They're not sold to individuals or small independent studios) nor does it matter what the big established studios use as he doesn't work for them nor will he work for them any time soon, any programmer who gets hired by one of the big studios(or even a smaller one) is likely to know several programming languages (including Java) and should be competent enough to pick new ones up when needed.

The skills involved in software development transfer between languages and APIs quite easily so the language you start with is pretty irrelevant, My language "progression" for game development thus far has been:

BASIC->Pascal->Pascal+x86asm->C++->Delphi(This was my DOS->Win95 transition when i was 14, i still remember my bluescreens from trying to switch to VGA mode13 from a Windows application and the frustration i felt when things didn't work as i was used to)->C++->Java->C++(my first OpenGL game)->ActionScript->C++->Java->C++&Lua(abandoned/postponed project, if i pick it up again it'll probably be ported over to Unity, UDK or some other third party engine)->Java(Android(This project was ported over to Unity/C# and is my current project))->C#(Unity)
Alongside that i've also used PHP, JavaScript, SML, Small(now called Pawn), VBScript and probably some other languages i've forgotten for non game purposes.

Some of those languages i might never use again but i don't think learning them was a waste, they all served a purpose at the time i used them and the projects i made with them has taught me alot, in my opinion there are two good ways to start:
1) Use whichever language you're most familiar with allready and get to work.
2) Grab a good engine and use whichever language it supports. Personally i just love Unity, despite learning a new language at the same time my productivity went up dramatically with it allowing me to add features, increase the overall quality and still reduce development time. I only downloaded it since i was asked to tutor a beginner and didn't think it would be that good. (I was wrong)

Share this post


Link to post
Share on other sites
frob    44908
[quote name='ManStaringAtScreen' timestamp='1340188897' post='4950911']
Well its obvious use for the android OS is something. Do developers here have any success with games on the google store or is it pretty hit and miss?
[/quote]

It is hit-and-miss, but not because of the nature of the store.

Too many people develop games and hope to sell them with no business sense. They have a "build it and they will come" mentality.

When it comes to any revenue it boils down to simple math:

Number of people who visit * visitors who actually buy * buyer's amount they spend = revenue.

You need proper advertising and brand awareness to build the first one.
You need a proper product that is slick and polished and tested for the second one.
You need to charge enough that they can afford but not so much that they balk for the third one.

There are many tricks to fine tune each number --- figure out why people are visiting but then stop short of buying, figuring out exactly how much you can charge, etc., but it still boils down to those three issues.

Too many products just leave the first number at zero, and let the zero multiply right through the other factors. Edited by frob

Share this post


Link to post
Share on other sites
Serapth    6671
There are actually things you can blame the store for though. For a search engine company, App discovery is pretty horrid. It has improved slightly, but even with the improvements ( like staff highlighting apps, or sales promos they have ), its still pretty hard to discover apps. To this day there is still no RPG or Strategy section, plus another half dozen common genres.To say nothing of the number of apps that never make it to a given phone. I never even knew there was a Mass Effect application, then when I heard about it ( on TV ), I headed over to the store and it isn't available for either of my Android devices, one of which is the best selling Android Tablet not named Kindle, the other is the Galaxy Note, which is among the top 5% fastest phones on the market right now. It is a pretty dire situation.

On top, Freemium seems to be the only market that really works on Android, and I dont know if that is a matter of the demographic or what. You need simply look at the top grossing apps, and you will quickly understand why.

One of the problems with Freemium, is the ad supported market, at least on Android, is horribly broken. I have talked to people who had a top 10 placed app that was add supported, downloaded in the 100K-1m range, and their revenue a month from AdMob didn't even approach triple digits. So with the exception of a scarce few Pay X price style apps, I think the only games really making money are those with a huge install base and in-app purchases. Edited by Serapth

Share this post


Link to post
Share on other sites
eFoDay    300
I just came across a posting for a Sr. Java Engineer at Nintendo.
[url="http://www.nintendo.com/corp/jobs.jsp"]http://www.nintendo.com/corp/jobs.jsp[/url]

Nintendo of America Inc.
Job Posting:Jun 4, 2012
Engineer, Software or Engineer, Software, Sr (Java Application Development) (1200000028)[list]
[*]Software development and support using Java toolsets.
[*]Knowledge of application server development and frameworks such as Spring, Struts, iBatis, and Hibernate
[*]Experience with web service development using JAX-WS and JAX-RS is a plus
[*]Ability to write and understand complex SQL; Oracle PL/SQL experience is a plus
[/list]


Also not sure if you've seen it but there is a Java game engine:

[url="http://jmonkeyengine.com/"]jMonkeyEngine 3.0 | Java OpenGL Game Engine[/url]

Share this post


Link to post
Share on other sites
[quote name='eFoDay' timestamp='1340329965' post='4951573']
I just came across a posting for a Sr. Java Engineer at Nintendo.
[/quote]
Great find, although could the position be for, say, networking and databases in general, perhaps not actually related to work with in house development (not that I'm going to apply, just curious [img]http://public.gamedev.net//public/style_emoticons/default/wink.png[/img] ) And I'm vaguely aware of Jmonkey, I guess it's as good as anything to get started with.

Share this post


Link to post
Share on other sites
frob    44908
[quote name='Serapth' timestamp='1340325035' post='4951553']
On top, Freemium seems to be the only market that really works on Android, and I dont know if that is a matter of the demographic or what. You need simply look at the top grossing apps, and you will quickly understand why.

One of the problems with Freemium, is the ad supported market, at least on Android, is horribly broken
[/quote]
Freemium works so well because of the simple formula of revenue mentioned earlier:

[left][background=rgb(250, 251, 252)]Number of people who visit * visitors who actually buy * buyer's amount they spend = revenue.[/background][/left]

Because people are not fearful of spending money the first factor goes up. Since too many (paid and free) games let that sit around zero, perhaps getting into the hundreds, the freemium model immediately generally opens up revenue by an order of magnitude.

Players in freemium may have a smaller purchase rate (attach rate of maybe 0.005) but the amount paid per item is much better (often $0.99 per purchase). The 99.5% who don't pay will have a perfect attach rate (1.0) but the amount per ad is horrible (about $0.00001 per daily unique player). Having every player giving some revenue, even if the revenue is tiny, is much better than having zero revenue at all. Since the model increases the first revenue factor the offset is generally acceptable.


From an experienced business perspective it is not horribly broken, but instead seems very successful. Edited by frob

Share this post


Link to post
Share on other sites
JDGamedev    266
[quote name='ManStaringAtScreen' timestamp='1340115041' post='4950579']
Complete beginner here, I very much enjoy coding in java, hoping soon to do some game dev with it. What is the future for this language, in terms of the 'big boys', established developers, support on consoles etc. Forgive me if this seems like a bit of a 'non-question' to those more experienced but I'm curious.[img]http://public.gamedev.net//public/style_emoticons/default/smile.png[/img]
[/quote]

Just so you know, I'm also a complete beginner.

Even so, I wanted to let you know about Google's little game development project that they are now calling [url="http://code.google.com/p/playn/"]PlayN[/url]

Since you are a Java developer, you should be able to use their framework pretty easily and also release your games for many platforms.

Hope this helps. Good luck!

Share this post


Link to post
Share on other sites
SimonForsman    7642
[quote name='frob' timestamp='1340378011' post='4951759']
[quote name='Serapth' timestamp='1340325035' post='4951553']
On top, Freemium seems to be the only market that really works on Android, and I dont know if that is a matter of the demographic or what. You need simply look at the top grossing apps, and you will quickly understand why.

One of the problems with Freemium, is the ad supported market, at least on Android, is horribly broken
[/quote]
Freemium works so well because of the simple formula of revenue mentioned earlier:

[left][background=rgb(250, 251, 252)]Number of people who visit * visitors who actually buy * buyer's amount they spend = revenue.[/background][/left]

Because people are not fearful of spending money the first factor goes up. Since too many (paid and free) games let that sit around zero, perhaps getting into the hundreds, the freemium model immediately generally opens up revenue by an order of magnitude.

Players in freemium may have a smaller purchase rate (attach rate of maybe 0.005) but the amount paid per item is much better (often $0.99 per purchase). The 99.5% who don't pay will have a perfect attach rate (1.0) but the amount per ad is horrible (about $0.00001 per daily unique player). Having every player giving some revenue, even if the revenue is tiny, is much better than having zero revenue at all. Since the model increases the first revenue factor the offset is generally acceptable.


From an experienced business perspective it is not horribly broken, but instead seems very successful.
[/quote]

This isn't just limited to freemium. Purchasable addons, power boosts, etc are available in some $1 games on appstore aswell and on the PC pretty much every game has DLC for sale these days.

It is easier to get people to pay a little bit multiple times than to get them to pay alot once, and some people get far more willing to open their wallet once they've invested their time in the game. Edited by SimonForsman

Share this post


Link to post
Share on other sites
Hello, im not much a developer, but i have some experience in Java and C++.

There are some games out there that are fully written in Java . . . there's even a game engine based on Java http://jmonkeyengine.com, So i wouldnt say its impossible to write games in Java, there are also graphic Libraries light the http://www.lwjgl.org/

But in My Personal Opinion, Java wont go as much as,,,, lets say C++ ... At least not for now, the Java VM takes out too much performance for power-hungry games.
If your project is lightweight, JAVA i think is great for that.

The very first language i learned was Java, and I really really Like IT [img]http://public.gamedev.net//public/style_emoticons/default/smile.png[/img] I think its a very intuitive and elegant and i think an OOP language like Java is the best way to learn programming (unless you try smalltalk, but its not so much fun).

In my opinion, if you like Java,, Learn JAVA! [img]http://public.gamedev.net//public/style_emoticons/default/smile.png[/img] try to make something, and then go on to C++ [img]http://public.gamedev.net//public/style_emoticons/default/biggrin.png[/img] which is also one of my favorites (by the way, Java is 70% C++)
so you wont feel a rough change.

Hope this was useful BYE![img]http://public.gamedev.net//public/style_emoticons/default/wink.png[/img]

Share this post


Link to post
Share on other sites

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