The New Game Client - how it all started, past, present and future...
It’s been a year and a half since the beta release of the HTML5 RuneScape 3 client. As we mentioned at RuneFest, we’ve since begun work on another brand new game client, and you may be wondering why we’re trying this again.
After much deliberation, we all agreed that the weaknesses of the HTML client couldn’t be worked around, and that the RuneScape community (and developers too) deserved something really awesome in its stead. This could only mean one thing: we decided to take everything we’d learned from our first attempt, and start afresh.
A unanimous decision was made to begin work on a brand-new, cross-platform, C++ RuneScape client. The back-end code (rendering, audio, networking, build systems, etc.) would be written from scratch, but for the client code itself we would port the HTML5 code base to C++. This way, we made the most of the work we’d already done, while focusing on fixing the bits that just didn’t work.
Now, you may wonder why we need to create a new client at all – why not just stick with the technology that’s served RuneScape so far?
Firstly, the Java language is no longer fit for purpose as a modern game client solution. Even major browsers are going to stop supporting it soon, starting with Chrome, and with Firefox following suit soon after.
Sounds too good to be true? Actually it isn't, and our progress so far gives us confidence we can meet these goals. Adding to that, C++ is the best cross-platform language and gives us more scope for getting RS working on non-Windows platforms with the best possible performance (e.g. Linux, OSX, more web browsers), etc.
The bottom line... the existing client software doesn’t do justice to what RuneScape can be and has significant drawbacks which are getting worse over time. We have to adapt, and this is the best way forward!
Today, things are shaping up nicely. We're nearly finished implementing the core client features, with visuals and performance already better than the Java client. To whet your appetites, here's a brief summary of what the new client aims to deliver:
● Better performance over existing Java client
● Better visual than HTML5 RS3 client
● More platform and OS support (Windows XP/7/8, OSX, Linux, web browser)
● Improved loading speed
● Improved draw distances over Java
● Improved graphics:
- Global illumination lighting (irradiance via spherical harmonics and ambient occlusion)
- Atmospheric light scattering
- Cascaded shadow maps (highly detailed sun shadows over larger distances)
- Improved post-processing
- Improved reflections
- Gamma correct and HDR rendering pipeline
The list goes on, but I'll save details for future blog posts that will aim to satisfy the more technical among you, and hopefully answer your questions.
We're going to make every effort possible to give you a better RS experience, without losing certain features of the Java client that some of you have grown to love. Ultimately, we have to do what’s best for RuneScape - all we ask is that you keep an open mind, and trust us. You won't be disappointed.
Lead Graphics Programmer
Some pictures were released with the post as well: