With the landscape of modern video gaming trending more and more towards mobile devices, it’s worth taking a look back at how gaming on-the-move took off—and it more-or-less starts with Java.
Created in 1995 by James Gosling, Java is a programming language. While there are many programming languages, Java is special. This is because it’s a general-purpose programming language to let developers write once, run anywhere (WORA).
This philosophy makes Java incredibly versatile. It allows almost everything written in Java to be run on anything. This means it can work from phones to PC to games consoles to supercomputers.
Over time, this has made Java one of the most common programming languages, with over 9 million developers.
Back in the early 2000s, mobile phones were becoming to become very commonplace, and most supported Java.
Of course, this didn’t mean you could put cutting-edge games onto phones back in 2002. There were still a whole host of limitations. From low processing power and sound limitations to the tiny screen sizes around 96 x 64 pixels.
However, that didn’t stop developers from using Java.
Games like Sola Rola, Silent Hill (Java Version), Wolfenstein RPG, and Gameloft’s CSI titles stand out as incredibly enjoyable experiences. They all offered unique gameplay opportunities for many different types of devices.
These games, often produced by big names from Konami to EA, show that the Java game had a place alongside console and PC games at the time.
While these games became very popular for mobile devices there were also some developers using Java to create some truly legendary games. The most prominent example being Jagex’s Runescape.
Jagex, a name quite literally derived from the phrase “Java Gaming Experts”, released RuneScape in 2001. Two decades later, players still flock to RuneScape 3 and Old School Rune Scape (OSRS) making it potentially the most successful game ever written in Java.
If you’re one of those many players still diving into RS3 or OSRS, head on over to ElDorado.gg to get your hands on some RS3 Accounts. Or, if you already have your own account running up, you can grab some RS3 items to upgrade your gear.
Thus, despite us rarely hearing of games written in Java, it’s certainly a player in the gaming landscape. But, then the question begs: why do so few developers use Java now?
While Java is an incredibly versatile and useful programming language used for many, many programs worldwide, there are a variety of reasons game developers chose to drop it as their weapon of choice in preference for other languages.
It is true that Java may beat C++ (an incredibly popular game dev language) in terms of computational speed, but in practice, it certainly isn’t all about speed.
The two biggest things which held Java back have been prejudice against the language and a lack of portability.
The first relates to game developers’ unwillingness to use Java. First, due to the language’s history in creating business and computational systems (instead of entertainment). And, secondly, the fact that the managing Sun Microsystems never opt to create consumer products from Java. In short, the language seems useless to many game developers as its use is generally far more mundane than the exciting world of games.
The lack of portability is a little harder to wrap your head around. Especially since Java prides itself on the write once, run anywhere philosophy. In older video game consoles programs needed “direct access” for performance and UI reasons. However, these require programs known as virtual machines in order to bridge the gap between one programming language and another. Old consoles (including Xbox 360 and PlayStation 3) didn’t include Java virtual machines. Therefore, developers couldn’t simply run their Java apps directly in games consoles. This effectively makes Java obsolete in console video gaming.
This, of course, means Java video gaming is isolated in the PC and mobile gaming spheres. Console gaming opts for C++ the vast majority of the time, making this the norm across all gaming spaces.
Furthermore, the reliance on PC gaming on DirectX was problematic for Java. DirectX didn’t have strong Java support meaning that optimizing large-scale projects became increasingly problematic.
This further isolated Java into the web-based video game, where it became another option to the popular Flash format.
Despite the video gaming industry being historically stacked against Java, there are plenty of arguments why modern game developers might want to look into incorporating Java into the industry.
Firstly, in contrast to its historical issues, the portability of Java is an incredibly attractive prospect. If essentially any device which can run Java can run Java games, this means that game may not need to be repackaged and reformatted if there was an industry-wide adoption of the Java format.
Furthermore, Java has come a long way in forming a library ecosystem of networking, sound, AI, image processing, and many more topics, making it a great hub for game developers. Plus, it has become easier to learn key features like multithreading in Java through quality online tutorials.
Finally, Java virtual machines (JVM) are among the best-engineered virtual machine execution environments in use today, while also offering up a variety of JVM languages for specific purposes. These languages are incredibly versatile.
Ultimately, Java video games have their own place in gaming history. It also continues to live on through Jagex’s RuneScape. Whether that history will continue going strong throughout the 2020s is something that we can’t quite predict just yet.