Create and publish your own Tower Defense game

Want to make a game with little to no code? Read on!

Want to make a game with little to no code that you can run on a Windows Phone? READ ON!

Want to make a game with little to no code that you can run on a Windows Phone and publish to the Marketplace so that others can play it? READ ON!

UPDATE 1: Quick note in selecting the locations to publish in.

UPDATE 2: Final step in publishing your app and getting the Deep Link

UPDATE 3: Table of contents and links to make it easier to navigate.

UPDATE 4: Added a link to Windows Phone Icons Maker to make some of the graphics side easier.

I wanted to write an article that summarized the process for a student to get up and running for Windows Phone game and application development through to publishing on the marketplace and then I realized that the best way would be to include a way that allowed the reader to not only understand the different steps of the process but to perhaps have some fun along the way.

And thus, this post was born.

The following shows you the processes you need to get the tools, tutorials, project samples and memberships – all for no cost to you other than your time – that get you started on game development. And, as mentioned, it’s even better because in the process I’m going to use a sample project that’s released under a license that allows you to take the base and build your own version (with no coding required if you don’t want to get into the programming side) which you can then publish on the marketplace (and even charge for if you think it’s good enough).

WARNING: This post is long. I did consider breaking into multiple posts, but that would get in the way of the intention of the article itself: to give you ONE spot to read through everything you need to do. I’ve put headings in so you can jump past things you’ve done before.

One small note before we get started: All of the screenshots are small to try to maintain some flow in the document without constant massive graphics getting in the way. However, all of the screenshots link to the original full-sized image, so if you need to look at the detail just click the small version and you’ll get it in all its shiny bigness.

Here we go!

Table of Contents

  • DreamSpark – Register for DreamSpark
  • AppHub – Register for AppHub
  • The Tools – Get the tools you need to make your own apps and games
  • ScriptTD – A great game to start from
  • Publish – Publishing your game to the marketplace
  • The Deep Link – Linking to your game for others to get it.



The first thing to know as a student is that you get a lot of cool stuff – at no cost. DreamSpark is the primary program we run at Microsoft to give you access to our technologies and also provides complimentary memberships to things you’ll need if you want to get into Phone development. And it’s easy to do! Head to the official DreamSpark website to get started:

Sign in to Live

Once you’re there, you should see a webpage that looks like this:


You’ll probably notice in the top right corner that it says Hello Guest and has a standard Live ID Sign In button. You’re going to need to sign in to Live first (you need to do this to both register for DreamSpark and also to get free access to AppHub). If you’ve done this right, the top-right corner area will display your first name and the Sign In button will change to a Sign Out button (don’t click this right now Smile).


Get Verified

OK! First step done and you’re on your way to winning! The next step in the DreamSpark sign up process is to get verified. Because DreamSpark is for students only, we need to make sure you ARE one. Winking smile Thankfully, it’s easy to get verified and if you look at the left hand column on the main page, you should see that there is a tick next to Sign In, and the Get Verified step is now a link you can click on:


Go ahead and click that link so you can get verified and get all the yummy goodness that students are entitled to through DreamSpark. On the next page there is a drop down list to pick the country you live in (I’m going to go with United States, but you should pick the one you live in). Once you pick your country, it will then ask how you want to do your verification in two parts – the first is to pick the Verify as a Student option, then you should pick the Get verified through my school (if you’re unsure, you can check out the information on each question mark to explain what they all do).

You’ll be asked to select the school or college you’re attending, and then the system will send you a verification email to confirm you are indeed a student. This verification email will need to be sent to your college email address, but the process explains what you need to do here.


The other options are also possibilities – if you are attending an event that is introducing you to DreamSpark, it’s likely you might get given a DreamSpark Activation Code which you can enter here and avoid the email verification, or the International Student card can also be used to verify that you are a student – plenty of ways to make sure you get access to the software and resources!


Once you’ve been verified, you’ll ultimately get to the Congratulations page like this:


Woohoo! You’re now a member of DreamSpark and you get access to all the software and other goodies that we provide to students. For now, we’re going to head over and get you signed up to the AppHub as well so that all your memberships are set up, but you have the option to come back here to grab the Windows Phone Developer Tools you’ll need to create your first game.


The AppHub is your one stop shop to getting the tools you’ll need for Windows Phone development, as well as tutorials, resources, code samples, and more. Plus, you’ll need AppHub membership to allow you to publish to the Windows Phone Marketplace. The extra awesome upside? As a student, you get that membership for free. Let’s see how to do that. Head to the AppHub by clicking on this link:

Now, one of two things will happen. If you’re still signed into Windows Live (as you probably are), you should automatically be taken to the Account Registration section. If you’re not, you’ll end up at the main home page for the App Hub which is all colorful and flashy and inviting you into a whole new world of extraordinary things:


Sign in to Live

If you need to, sign in to Live by doing the regular Sign In at the top right corner of the page. This is important… THIS IS IMPORTANT (unless you want to spend money you don’t have to): Sign in with the SAME Live ID that you used at DreamSpark. This is so that when you register your AppHub account it will allow you to pick the Student option and will verify that you are indeed a student and can have a membership here for free.

(One last case – if for some reason, signing in doesn’t result in taking you to the Account Registration page, here’s the direct link:

Register Your Account

Rocking! Here we go, getting you all signed up in a grown up’s world (non-students get to do this bit too, so you’ll have to play nice Winking smile). As you can see in this screenshot, the first page asks you to pick your Account Type. Select that shiny Student option, check the Terms of Use box, and click I Accept.


You do this right, and you’ll be asked to provide some personal details. It’s important that you do this as this is a real world account that you can ultimately use to sell stuff on the AppHub – you want to get paid, right? Well, you’ll need to provide some information to make that happen. Thankfully, it’s not too onerous and you should be done in a minute or two. Click that beautiful blue Next button when you’re done:


Activate Your Account

The next step will depend on how you do your email, but as you’ll see in this graphic, we’ll send you a verification email to make sure you have it set up right.


Click on the verification link you receive and you should be returned to the AppHub, all verified and ready to go. Congratulations, you’ve now set up your account and you can start publishing and selling applications and games just as soon as you finish creating them!

The Tools

Now that you have all your memberships and accounts set up, the time has come to grab the software you need (as well as other software that you might want to grab while you’re there – for this post, we’re only going to be looking at the Windows Phone Developer Tools). You have two options to grab the tools you need – get them from DreamSpark or get them from the AppHub. Here’s how you’ll find them on each site.


From the main DreamSpark page, you should see a list of tools and applications you can download. Pick the one that is probably blaring out at you: Windows Phone. Click that big, beautiful button and you’ll be taken to the information page for the Windows Phone tools like this:


That shiny pink button that says Download will help you do the rest – click that and follow the prompts to download the installer (if the Download button gives you a list, pick Windows Phone 7.1 which is the latest version.


If you want to get the tools from the AppHub, it’s just as easy. On the front page (and remember the link is, you’ll see a big button on the top left that says Download the free tools (it’s possible you won’t see this if you’re all signed in and clever – you can always get there though, by clicking the home link at the top left and selecting Getting Started). Click that and you’ll be taken to the Getting Started page where the first paragraph should be download the SDK. Click the Windows Phone SDK 7.1 link and follow the prompts.


Once you download the installer, run it and follow the prompts to install the tools – if you get an option to customize, take my advice and just install the whole lot. That way you get all the goodness and don’t curse yourself later when you realized you missed something. The tools include Visual Studio for Phone which allows you to create Silverlight and XNA games and applications for the Windows Phone, Expression Blend for Phone which allows you to create Silverlight applications and games for the Windows Phone, the Windows Phone Emulator so you can test things out without having to put them on a real phone and more odds and ends.

So now you have all the tools you need, next is to either start developing your own games and applications and we part ways for a while, or you can keep on following on this journey and create a cool little tower defense game of your own.


OK – so now you have the memberships you need, and the tools that will help you build your game. What’s next? Well, let’s take a cool little game that we released a couple of months ago on CodePlex that’s free for you to use as a starting point for your own games, ScriptTD. Let’s head over to its website to get started:

You need to download the code. There are a couple of places you’ll find it. The first one is (quite helpfully) on the front page. On the right hand side is a Download button; click that and you should be prompted to accept the license agreement and then prompted to download the ZIP file containing all the project files you need for the game.


You can always look at the release list if you want to see the history of the project. Click the big Red button that says Via CodePlex – Current Release Zip and you’ll be taken to the release like the following graphic. Pick the version you want and download it.


Once it’s downloaded, unzip to your preferred location on your computer. Open the game solution (it’s called Coding4Fun.ScriptTD.sln and is in the base folder of the unzipped files) and it will open in Visual Studio. Run the project and voila! A working Tower Defense game!


Now it gets cool. Michael Quandt, Clint Rutkas and crew created ScriptTD in a way that allows you to customize it without actually writing any code. All you need to do is change the graphics, the sounds, the map layouts, heck, even the menus, and make it your own game. I’m not going to go into detail on how you can change it because the Channel 9 guys did a great job of walking through the various things you can change. You’ll find a cool 45 minute walkthrough video here:

(You can of course, customize the code too if you want, but the beauty of ScriptTD is that you don’t have to do that!)

As you make the changes to graphics, audio files, level/map designs, and other modifications, you should continually build and run your game in the emulator to make sure it’s all still working.

…time passes…

You’ve made all the changes you want and you now have your own working Tower Defense game with a cool theme, graphics and your own little personal touches. Every time you built the solution, it generates the .xap file in the bin folder of your project. That .xap file is what you need to be able to publish your game.

Quick Note: If you want to build your own app or game and want to team up with other students, make sure you check out for a very cool online student community for Windows Phone development.


And now it gets extra cool. You’ve got free membership on AppHub which allows you to publish your own games and applications to the marketplace. You’ve got the tools that allow you to make your own games and applications. And you’ve taken the ScriptTD project and customised it to your own design, your own theme, your own creation. Now you get to publish it on the marketplace and showcase your talents!

Here’s how. Head back to the AppHub and make sure you’re logged in. The easiest way to start the process is to click the big blue button labeled BBBB. However, if for any reason that’s not on the home page of AppHub, or you’re somewhere else in the AppHub, you should click on the My Dashboard link at the top of the page and select Windows Phone. On the Windows Phone page you’ll end up in, click the Submit a new app button on the right hand side. Finally, if neither of those are helping you find the right page, here’s the direct link:

Start the Application Submission Process

The first page sets you up with the basics for your app: the name of your application and the .xap file that contains your game. Everything else should be left as is for now. For my sample, I’m going to submit an app that tracks what I’m up to for my friends and family called MrAndyPuppy Info. It simply consumes public information and puts it all in one place – from Flickr, FourSquare, Twitter, and so on (including this blog!). You should put in the information about your game or application and when you’re done, click Next.


Add the Details

Now you get to do some fun stuff. Pick a category, and if required, a subcategory for your application (hint: if you’re publishing a game, pick the Games category!). Give it a description which will show up in the marketplace to provide people information about your app, and a URL and some keywords if you like.


The second half of this page is actually mostly required – it contains all the various graphics you’ll need to submit to make sure your application can be published on the marketplace. The first three are the tile in different sizes (99x99, 173x173 and 200x200), and you’re required to submit at least one screenshot. As you’ll see in my sample, I’ve just resized my tile to the different dimensions for all three, and then I’ve provided four screenshots.


Windows Phone Icons Maker

This little tool makes the icon stuff incredibly easy. Browse to an image, click and drag a square around the bit you want, and hit Save Icons when you’re happy. Voila! Icons in all the right sizes output for you. Then the only other graphics you need is a splash screen for your app, and at least one screenshot for submitting into the marketplace (which are conveniently the same dimensions, hint hint).

Screenshots are surprisingly easy. Run your app or game in the Windows Phone Emulator and use the Snipping Tool to grab the different shots you want of your product. Then use Paint or some other graphics program to resize them to the 480x800 pixel dimensions that the submission tool requires. When you’ve done all of this, click Next.

Price your application

Ooh… money! This next step allows you to charge something for your app or game. For me, I know I’m clever but I also am clever enough to know that no one would want to pay money just so they can see what I’m up to on their phone, so for my sample, I’m going to keep it as a freebie. However, if you choose to charge for yours, note the various pieces of information and other options you have available on this page:


Update: Important note: Make sure you actually choose the territories you want your app available in, including the Select All link next to worldwide distribution if you want it to be accessible by all. This controls whether it appears on the marketplace in that particular territory (something I learned by mistake).

They’re important as they have tax and other financial implications for you. Once you’re done, click Next again.

Certification Testing

You’re almost done. This next step allows you to highlight any special cases for the testing of your application. If you’re keeping it simple, you should be able to leave the Test notes section blank. You can then choose how it will be published, including having it auto-publish when it’s certified, or allowing you to manually publish it when it’s read. Either way, you’re done and you can click the Submit button (yes, that’s right, it’s not Next – it’s Submit – exciting!)


Get Certified

You’re done! Can you believe it!? If you followed along with all of this, you:

  • signed up at DreamSpark to get developer and designer tools for free and in the process are authorized to get AppHub membership for free.
  • signed up at AppHub and got verified so you can start publishing applications and games for the Windows Phone.
  • tried your hand at customizing the ScriptTD Tower Defense project to one of your own design.
  • submitted your creation to the marketplace for certification and, ultimately, publication.

If you’ve done it all correctly, after hitting that Submit button, you’ll see this page:


The AppHub will keep you informed of your application’s status. When you first submit it, it will look like this, and you’ll just need to wait for certification:


If you want more information about this App Submission process, here’s another web page all about it:


If you follow along with these instructions and do indeed make a game and publish it on the marketplace, please let me know what your game’s link is on the Windows Phone site so I can take a look! Just post me feedback on this blog post and I’ll be sure to get it.

A few days later…

It WILL take some time to get your game certified. If you chose to have it auto-published, it will appear on the marketplace in the category and subcategory you specified. If you chose to publish it manually, you’ll need to return to your account and select it to publish. Since my app is still in the certification process (and since it’s all about me, someone might think it’s not a real app – hey! why would they think that!? Hmm… must stop writing down my internal thought process), I am going to save this aspect to the process until it’s approved. At that time, I’ll post a follow up article to summarize the actions you need to take (if any), and I’ll update this one as well so that – as promised – everything you need to know is all in one place.

I look forward to hearing from you and seeing what you’ve come up with!


UPDATE: Finishing the process.

Eventually, you’ll end up with a notification to let you know that your app or game has passed certification. At that point, depending on whether you chose auto-publish or not, your app will automatically propagate through the marketplace in the next 24-48 hours, or you’ll need to log back into your account and manually publish it.

If that’s the case, log back into your AppHub account and go to the details for your app. You should see something like this:


See that glorious orange Publish this app link? Go ahead and click it and you’ll see this:


WOO HOO! Your app will now be available for anyone to find. Note that the different marketplaces take different amounts of time to propagate.

The Deep Link

The other alternative to searching through the marketplace for your app is to use the direct link for your phone app or game on As an example, here is the MrAndyPuppy Info app:

To find this direct link – known as a deep link – you can get it from your App Dashboard. Open up your app in the dashboard, then click the Details link to show the information about your app. If you scroll down towards the bottom you’ll see a heading of Deep link on the right-hand side. That URL is the automatically generated direct link for your app. You can use this for publicizing your app to family, friends, and any other advertising channels you have on top of the marketplace.


Clicking my direct link takes me to my app, and I can click the Get free app to get it for my phone:


And we’re finally done and dusted. From start to finish, we’ve signed up, grabbed tools and built, certified and published our app or game to the marketplace. If you have any questions on the process, please post in my comments section below and I’ll do my best to address them.

And finally – again – if you do publish your app or game, please let me know what your deep link is so I can check it out and maybe tweet about it so more people can find out about it.

Comments (2)

  1. Andrew says:

    Is there a software to your knowledge that can be downloaded onto Mac OS X to make icons?  

  2. Iconeer has been around for a while.

Skip to main content