Shadow Wars - Designing a Frontend - Part 1

Monday, February 1st, 2010

This is part 1 of what will be somewhat of a technical series, as I mentioned in my last post, a lot of stuff is going on ‘under the hood’ which for most isn’t really exciting, but to show that we are alive, i’ll post a few interesting tidbits for those technically minded, or those interested / curious!

In the last few days we decided to move back to our original GWT based frontend, this was somewhat put on hold and reverted back towards a more static site design mostly due to the complexities of GWT RPC calls, and how it had difficulties nativly handling mouse events in some situations (it took me days to get a prototype drag/drop library working).

Since the release of GWT version 2, mouse handlers have been improved massivly, generics have been added to the java code (THANK YOU GOOGLE!), and we’ve made moves to implement our own RPC generator.

For those of you who aren’t technical, RPC is a ‘Remote procedure call’, a method of communication between multiple componants of a system (in this case, the frontend UI and the backend core server) in previous incarnations of TurnEngine, this was achieved via a custom developed XML API, however for performance purposes, this is being replaced by a more optimal layer, and set of libraries which will allow the frontend UI to behave as if it’s the core, and have the requests and responses layered back transparently. The difficulty presenting us at the moment, is the way that GWT has it’s own RPC protocol (for ajaxy stuff), so what we’ve done, is create a very large config file of mappings, and a small but complex piece of code to generate all the files relevant for GWT which allows for us easily to send messages from your browser, through the web core, then out to the server and back again, which has accellerated frontend development significantly!

So what does all this mean for you? Well, firstly, we will be unable to support Internet Explorer 6 (which coinsides nicely with google dropping support for the browser as well), also your browser will need to support javascript which unless specifically disabled, most browsers will! Other than that, you can look forward to some fast response times and dynamic gameplay elements (Drag+Drop queues, mouse overs as well as other cool stuff!)

So still moving forward and looking to the future! Hopefully i’ll have some funky screenshots when everything starts coming together.

– Craig “FrostyCoolSlug” McLure

Welcome to the TurnEngine Blog!

Friday, July 18th, 2008

Welcome one and all to the new TurnEngine blog, a place where myself and Zedd can dump random thoughts, on both a general and Technical level with all those who hope to keep track of the development process.

The blog is separated into different sections (indicated on the right), although everything we post will be presented on this page, if you’re not interested in the technical details, you can just hit the ‘General’ link and see all the English (as opposed to geek) posts. We’ll try and make sure everything goes to the right place :)

All comments will be moderated by myself, to help prevent the same spamming here we occasionally see on the forums (you know who you are :P).

We also provide RSS feeds on this blog, so feel free to subscribe, and be notified whenever we make a new post :)

Enjoy!