Category Archives: Technology

Unified Online Network Gaming Language

The case for a unified online gaming language has been with us for some time, as consoles, codebases, platforms and the networks that these systems run upon evolve, asking the impossible is no longer the impossible, everything now falls within the realms of reality and only take a few genius’s are needed to figure it all out and turn a few well taken truths on their heads.

The general consensus is not that separate platforms cannot exchange data with each other it is the manner in which these exchanges take place, the amount of work and manpower required to code these types of language and the business model behind allowing multiple platforms to play together.

The most recent example of cross platform play was in the case of Shadowrun (a game by FASA studios) which allowed players on both the Microsoft Xbox 360 and a normal household PC to play together in the same network, perhaps not the overwhelming success that it could have been, but they may be down to the fact that Live! For windows is still in it’s infancy and the face that shadowrun was never a FPS (First Person Shooter).

Consoles used to be about franchises, the exclusives, the must haves – nowadays, exclusives are expensive and with the 3 console manufacturers all heading to or surpassing the 10 Million installed base, platform holders no longer have the ‘exclusive’ bartering PR lines of old, with the exception of a few titles – Halo and MGS spring to mind.So the war is now fought, on power, reliability, usability and functionality.

Why can’t we all play together, the simple fact – money. If we all had the ability to choose our platform irrespective of our friends choice or ‘who’ we could play with then perhaps our choice of platform would be different. If we get the politics out of the way what really stops us from playing together.Games are often released on all platforms – take Call of Duty 4, available on PC, Xbox 360 and Playstation 3 – all of these platforms are online, they all operate on the same TCP/IP free exchange of information and I would assume that they use the same data for working out online play.At it’s heart online play comes down to a set of data being sent across and network, interpreted and displayed. Player A moves their character 10m forward, their location in terms of X, Y and Z is sent to the cluster and everyone else receives this data so their screen is updating accordingly.
That’s an incredibly basic overview of a single action in an online shooter. But you would have to assume that the data that is sent is similar or near identical across the platforms.So maybe it is the architecture behind the games, behind the technology, the servers. PC’s use their own dedicated servers for online play (player’s can even set up their own servers), 360’s use the Live! architecture provided by Microsoft, and the PS3’s use their own proprietary set of servers (I’m not sure who provides these). I can’t envisage a time when Microsoft will let Sony use their servers and certainly not for free, PC’s players will always want to set up their own clusters for clan play or private matches, the same is true of Sony renting out their infrastructure.

Maybe then it is the players who are unwilling to change, happy with their platforms and respective bragging rights.In the constantly connected world we live in, perpetually online, constantly contactable – is it really to much to ask that we all be allowed to treat our games like we treat or social lives. To be free of the restrictions placed upon us by platform choice and to be able to buy what we want to play on the platform we wish to play it, but more importantly to able to play with whomever owns the game.

Digital Convergence – HCCB / Microsoft

High Capactity Color BarcodeIn the last post we covered a world with GPS / Friend Tracking / Latte’s and a prevalent advertising model involving our lovable capitalists Starbucks. We’re heading off to a slightly different convergence model this time around – that of the humble bar code.

The bar code has been with us for as long as I can remember, it’s elegant black lines transposed against a bright white background strewn with an assortment of numbers few if any understand. But where can this humble stock checker take us next – enter Microsoft with the advert of the HCCB or to you and me the High Capacity Colour bar code, consisting of minute triangular coloured squared this barcode can hold 300 times the information of the traditional bar code that we all know and love. The bar code we have at the moment can not either do a great deal or store a great deal of information – in order to push our technologies we need the extra capacities that the HCCB affords us.

Picture the scene a few years from now, you wander into a shop with your iPhone V3 and spy a new HD TV that you really want, you snap a picture of the bar code on your mobile, your mobile in turn (with its persistent online connection) downloads all of the information directly from the manufacturers website (they may even be an entire section of the net dedicated to this – something like .pinfo / samsunghdtv42sp2.samsung.pinfo) onto your browser – you know everything you need about the product and want to buy it, great.

Your phone looks up the price of the TV in all stores with a 50 mile radius (calculated with GPS) and gives you a rundown on the pricing differences and stock levels, shows you a map of how to get to the store, shows you the store contact details so you can reserve it (or the store website / order form) – even works out the comparative cost of fuel use to get you there – what do we get? The best possible deal.

Barely a few years ago, this kind of information architecture and distribution would have been considered impossible, but with the advent of the new ‘web’, faster speeds, everybody with a permanent mobile pocket based browser and a new found trust in the internets’ ability to deliver the truth, there is now no reason why we should think that we can’t or more accurately won’t follow these lines in the not so distant future.

See more of the HCCB at: http://research.microsoft.com/research/hccb/

Update 14th May: A prototype version of something similar to the above by Jefferey Sharkey Android Scan.

Digital Convergence

gpssat.pngThe future of tech? With RFID and privacy becoming a prevelant threat to our modern privacy orientated lives, where will our technology take us next. We have wifi, bluetooth, gps and a whole host of technolgy related items to encroach upon our digitally orientated lives. The modern mobile phone is 20 years old and has far exceeded what anyone ever thought it would become at it’s inception.

We live in a digitally conected world, the trouble is that our digital world is often fragmented. Differening protocols, and service providers, differing standards and a lack of co-operation between the major players in the tech world makes for a less than stella convergance model.

As with all things, they take time but imagine the future of our digitally connected lives.

Starbucks / GPS and a friend?

Back in University when studying for my Degree we were always talking about convergence this and digital mediums that, a lot of what we discussed and designed ended up on the floor or archived somewhere on a distant hard-drive, but now a few years on, many of these core technologies are beginning to make their way into our lives. Try this one for size:

Your wandering down the street, your mobile bleeps at you to inform you of an event – as it happens, your phone is hooked up with GPS / 3G / WiFi and is actively scanning an online database map for the locations of all of your friends – who also ‘conveniently’ have GPS enabled and have agreed to have their data publicly accessible.

‘Come and enjoy a free coffee with your friend, bring this message with you – Starbucks’

Your phone informs you via sms.

What has just happened

Simple, you walked within 200m of 1 of your friends GPS signal (well, on the global map, you were within 200m). The server picked this up and sent an SMS to both you and your friend – who until that point were completely unaware that you were in each other’s vicinity.

  • You both get to meet (which may or may not have happened anyway)
  • You get a free ‘sponsored’ coffee from starbucks
  • Starbucks (or whoever) get increased brand awareness and possibly the chance to upsell

All parties are happy as everyone seems to have got something for nothing. The two friends have received their free coffee and Starbucks have received 2 customers that otherwise might not have passed through their doors.

A simple demonstration but not beyond the realms of possibilities. Sure, there are the privacy issues and the tin-foil wearing hat crowd to consider, but a real use for a multitude of technologies and a use that actually offers so form of benefit to all parties involved.

Next time – the humble barcode….

The new broadband?

So, we finally switched the broadband for the entire company last week. We moved lines from both IZR solutions and BT over onto Griffin Internet. Admittedly, we had the obligatory 10 day ‘wibbely-wobbeley’ period while the lines decided which speed they wanted to run at, not a bad result at our main building. We load-balance two incoming connections over a Sonicwall TZ-170, and they both achieve an acceptable 3-4Mb, with their upstreams set to approx 78Kbps, giving us a total upstream in peak times of 156Kbps, which I’m more than happy with – quite a jump from 54Kbps!

I’ve got one on the lines covering my house on a rangemax router, and the figure above is what I’m getting on a 802.11g connection, I haven’t even upgraded the MBP to n yet, but I’ll be trying it shortly – I don’t expect an increase in speed but owing to leaving the 2.4Ghz band, I am expecting less interference and a more steady connection speed.

Subversioned….

What is Subversion?
subversion logoSubversion is an open source revision control system. What does that mean? – I hear you cry, in a nutshell, it means that you can keep a copy of your files with all the changes you made from day one and more importantly bring back any version you previously worked on. Think about a project you’ve been working on (A web site, programming project, database systems etc.), anything which requires a code base. If your the only person working on this project that you should probably stop reading here (although subversion could be useful to you), but if you work with many people on a project one of the biggest problems is making sure everybody is working on the same code and that where subversion makes things really easy. It can keep track of who has what files, what versions (revisions) of those files and make sure that everybody is working with the same code so you avoid destroying each others work – brilliant.

What do I need?
Depends on which way you want to go about it, I’ve tried both the graphical utilities and just plain old simple command line (which I find much easier), this tutorial covers the command line so you’ll only need one thing to start with and that the subversion client:

Subversion Client Download Site

The link above will take you to the packages pages where you can download binaries (compiled source) for the popular operating platforms (Mac, Windows and Linux), this turorial assumes you are using Mac / Linux.

What is a repository
A repository can be thought of like a file store, it’s really just a fancy name for a directory and subset of directories / files on you subversion server.

ACL
The access control list sorts out who can access your repository and what they can or can’t do, put in basics, you can let your users read / write files, deny access to private directories or just configure guest access so that anybody can read / write. A sample acl file looks like:

[YourProject:/]
User1 = rw
User2 = rw
User3 = rw

This would give complete read / write access to 3 users. Guests would not have any access to your repository.

[YourProject:/Hidden]
User1 = rw
User2 =
User3 =

Only user 1 would have access to the directory /Hidden, users 2 and 3 would not have any access. If you put the two files together, all 3 users would have access to the entire project barring the /Hidden directory which only user 1 would be able to edit – clear enough.

Import
So you have a repository, you have your users set up with their own ACL’s, now you need to stick something in your repository to start working with it. Open up your terminal, navigate to the directory that contains the files you want in the repository and tap in the following:

svn import https://location.of.your.server/repos/your.repository

Now that all depends on how your server is setup, you may have it locally on your computer, or within your lan or hosted on a remote server / hosting service. You’ll need to know the location in order to continue.

Once you’ve imported your files, you still can’t start working with subversion until you have what is known as a ‘working copy’. Navigate to where you would like to store your working copy and tap in:

svn co https://location.of.your.server/repos/your.repositry

This will bring the latest version of the files down from the server for the first time and you should get:

At Revision 1

Great! So now you have a working copy and you can start editing your files under version control. All you need to know now is how to update your files, add and delete and check for difference which we will cover below.

Basic Usage
So you’ve edited your files and given your developers / users access to the repository, but how do you put your latest revisions onto the server:

svn commit

Your computer will access the repository and probably ask you to edit the log file to make a note (On my mac this takes me into a VIM session), if you don’t want to add a note just type

:q

If prompted just press ‘c’ to continue with the upload. Your files will then be uploaded into the repository and tagged as a new revision:

At revision 2

Your developers can simply open their terminal and tap in:

svn update

This will update their copies to match your own, so again you are all working from the latest revision. There you go, subversion in a few simple steps. You might want to look up some additional command and command line arguments for svn. You still need to learn about adding / deleting files, and checking the status of your files against the repository. Here’s a clue:

svn status

August Update

The last month has been manic! Sure… I’m becoming the systems admin for the company I work for, my time for design and creativity is dwindling. Looks like we’re going to be hosting all of our sites ‘on site’. Wanted to learn a bit of SQL, so have moved one of my blogs from blogger to WordPress, what a fantastic piece of code! Things to do this month – write a proposal for our new Win2K3 server, INSTALL IT :( and setup. Get a nice linux box, running as a webserver to host our sites from…. and set that up., thinking of using Fedora Core, from my limited experience it seems great, I’m not hosting our sites on a windows server.

>> Finish the rest of my design work, polish the old portfolio, get the creative juices flowing again – and maybe return to study.

Try to get some time off to visit friends. ( I do have them!)