Click here to Skip to main content
12,356,681 members (63,900 online)
Click here to Skip to main content
Add your own
alternative version

Stats

3.2K views
2 bookmarked
Posted

The Racing Sticks challenge - via Azure and the web

, 25 Apr 2013 CPOL
Rate this:
Please Sign up or sign in to vote.
Come one, come all , get your racing sticks here, throw them in and catch the winner!

Editorial Note

This article is an entry in our Windows Azure Developer Challenge. Articles in this sub-section are not required to be full articles so care should be taken when voting. Create your free Azure Trial Account to Enter the Challenge.

Introduction

I took a step back through my Game catalogue for this round of the Azure Developer Contest and decided to bring back to life the one project that always seemed to get away. 

As in every developers life there’s always that one project you have been on and off again several times in your coding life, one such game of mine is Racing Sticks.  It’s a simple game where you race a virtual stick with players round the world to see just who the stick champion is.

Confused, intrigued, bewildered? Read on. 

Background 

The origins of Racing Sticks stems from The House at Pooh Corner, a Winnie-the-Pooh book by A. A. Milne. The premise is simple, stand on a bridge over a river with your stick in hand together with a group of friends / competitors.  Drop your stick in to the stream at the same time as everyone else and then run to the other side of the bridge to see who’s stick appears first and is declared the winner (granted so long as you threw it in upstream else you would be waiting a VERY long time)

The game is actually still played today with the 2013 World Pooh Sticks Championships being held recently on the 24th March in Oxfordshire, England.

There is even a web version that you can still play today @ http://poohsticks.crowsfoot.net   

Enter Racing Sticks, the pooh sticks successor 

I've built a new client and backend for my Pooh Sticks successor (for obvious trademark reasons I cannot call it Pooh Sticks) which I have named Racing Sticks (might still change it if I come up with a better name, suggestions on a postcard please).

It’s comprised of a playful client where each player can:

  • Select / Craft the stick of their choice
  • Give it a cool and crafty name (Speedy StickMaster is already taken!)
  • Customise their stick with crazy add-ons
  • Join in any of the running competitions
  • Go wild if you wish and have several sticks in many races.

Now, obviously there isn’t any running water or streams on our devices, what we have is the internet, a wild and tempestuous current that is the information superhighway.  Races take place in this world passing from server to server, router to router and even passing a few other devices (some may get lost, that’s just how the game is played!) until it lands back at the race starting point and the winner is announced.

To keep up the fun element, players can win badges, storm the leaderboards and challenge friends and family to race.  Some races take minutes, some could take days or weeks (especially if certain internet fiends start poking at servers).

Ideally there will be some procedural commentary along the way to keep the fun going.  

High Level Overview 

The main core components of the Racing Stick system hosting Azure and connected to Web / Mobile clients would be as follows:

 

 
  • Competition Site – (Azure Website) main website for viewing information about races / competitors
  • Racing News Blog – (An Azure Virtual machine from the catalogue) A virtual machine running Wordpress or other integrated blog system to both present race news and allow competitors to brag / discuss the challenges
  • Competitors – (Azure Mobile Web services) Connected devices for players communicating through an authenticated Azure Mobile web service
  • Race Tracker – (Azure Service bus) a backed service / service bus to run races, build procedural challenges and output commentary as races run
  • Entrant / Race info – (Azure SQL) backing up the whole solution there will be an Azure SQL db to manage all the information required to run and maintain the system  
More components may be required as development goes on, only time and development work will tell. 
Other ideas I had to make use of other Azure offerings were: 
  • MNPS - Using the Push Notification system extensions for azure to update mobile devices
  • Reviewing Jon Papa's Single Page Application course on PluralSight now FREE (thanks Microsoft) to help flush out the website portion (Challenge 2) 
  • Have a look at Xamarin's "Xamarin Studio 2.0" to flush out the clients in Challenge 5
 Points of Interest 

One Idea this app / game has had in the past as a wacky alternative to most similar productions in the past was my keen interest to base this on real world items.

The Sticks would be real sticks and I spent a great deal of time collecting photos of ragged and strange looking sticks that in all likelihood would never be raced and promoted them within the game, so many adventure and park walks with the family where I would disappear for a while because I was photographing some interesting woodwork.

Each stick would also feature a crazy backstory as to why you should pick it as “your stick” 

    

 

 

History 

In the past 10 years this is probably the 3rd attempt at making this game, hopefully this time it will make the cut.

Azure proves just how easy it is to make a backend service and so long as I don’t go wild with the clients, it could be a lot of fun. 

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

Share

About the Author

Simon Jackson
Architect ZenithMoon Studios
United Kingdom United Kingdom
Long time game developer / IT maniac.
By day working as a lowly Technical Architect for a healthcare software firm, by night Masquerading as the Master Chief of ZenithMoon Studios.

At heart I'm a community developer breaking down lots of fun and curious technologies and bringing them to the masses.

I'm also a contributor to several open source projects, most notably the AdRotator advertising rotator project for Windows and Windows Phone.

After a hefty break with Windows Phone and Windows 8 I'm heading back to my XNA roots to show how beginners and current XNA devs can take their skills forward with XNA's bleak future.

ID&Xbox MVP & Best selling author
[Mastering Unity 2D Game Development] (https://www.packtpub.com/game-development/mastering-unity-2d-game-development)
[Unity 3D UI Essentials] (https://www.packtpub.com/game-development/unity-3d-gui-essentials)

You may also be interested in...

Comments and Discussions

 
GeneralMy vote of 5 Pin
stephan726-Apr-13 2:57
memberstephan726-Apr-13 2:57 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

| Advertise | Privacy | Terms of Use | Mobile
Web02 | 2.8.160621.1 | Last Updated 25 Apr 2013
Article Copyright 2013 by Simon Jackson
Everything else Copyright © CodeProject, 1999-2016
Layout: fixed | fluid