Making Tower Defense Browser Games

Making Tower Defense Browser Games

Creating "Innovative" TD Gaming Mechanics for Phaser.js Gaming Frameworks v3.16+ & v2.13+

About the Book

Discover how to make a standard Tower Defense (TD) online game, a "bi-directional" TD game and an Anti-TD game using the production methods in this guide. This is a "Mega" construction chapter compared to its sister chapter in the Phaser Game Starter Kit Collection; you'll learn to create a standard TD game then put an innovative spin to its gameplay in two different TD-styled games. When you're finished, you will have a production pipeline ready to create as many different TD games as your imagination can dream of!

You'll also get bonus download examples, source code, references on how to do every single thing in this workbook, so you could copy and paste these into your own game design and then modify those resources for your own purposes.

This extraordinarily comprehensive workbook will teach you how to: 

  • Use Phaser v2.x.x and/or v3.24.
  • Create a TD, "bi-directional", and "Anti-TD" games.
  • How to integrate TD gaming mechanics into other game genres such as RPG or MMoG!
  • Use Phaser in a Progressive Web Application or Single Page Web Application for any device.
  • Analyze current business demand for these game's genres and where to deploy them.
  • Automatically generate new quizzes and dating simulations.
  • Instructor Guides and teaching resources available for workshops in this course's special Teacher edition.

If you have any feedback or suggestions please join our email listing or participate in the forum for this course!

  • Share this book

  • Categories

    • Game Development
    • Product Management
    • Artificial Intelligence
    • JavaScript
    • Gaming
    • Web Development
  • Installments completed

    8 / 10

  • Feedback

    Email the Author(s)

About the Author

Stephen Gose
Stephen Gose

Avatar is an adorable cartoon sketch of my wife. 46th anniversary this coming Sept 1, 2024!

Stephen Gose, Ph.D. Information Systems (honorary) (and second-generation German) is a retired Professor Emeritus with a 41-year career as a certified network engineer, and "Certified Cisco Academy Instructor" (CCAI) since 2002. He is listed in the Who's Who for Information Technology for his directly related work for the Internet backbones found in the Caribbean, Netherlands, Israel, and Russia. He was awarded "Letters of Appreciation" from AT&T, and the German, Israeli, Dutch, and Russian Governments. Steve has nearly three decades of international "teaching and conference lecturing" in both Local-Area and Wide-Area Networks, network security, Internet backbones, software engineering, and program/project management. He is a retired US Army Signal Corps Officer. He earned, in 2014, the ITT Technical Institute's "Instructor of the Year" out of 8,000 instructors across 144 campuses throughout the USA. 

He graduated from Grand Canyon University with his first B.A. in Religions and Music Education, then a B.S. in Business Admin. from the University of Maryland, and an M.B.A in International Management from Liberty University.

He is currently pursuing his Th.D. He has served as a licensed minister since 1972 and as a missionary to Okinawa, Japan. He earned the US Army Chaplain Outstanding Service Award in 1983. 

In his spare time(?), Steve enjoys creating online casual games, software engineering, and managing his online gaming businesses. 

My driving theme: "Always stay humble and kind"

His personal website is:

His game showcase is:

His theology website:

Game Support Site:

Review my profile on

Table of Contents

    • Distribution Permission
      • Supporting website
    • Disclosures
    • Disclaimer
    • About this Workbook
      • Links and References
      • Workbook Content
      • How to Read & Use this workbook:
        • Viewing this eBook:
        • Who should use this workbook?
    • Your newly obtained skills …
    • Game Design Resources
      • Game Studio - Book Series
      • Game Studio - Online Courses
      • “Making Browser Games” - Books Series
      • “Making Browser Games” Series - online Courses
      • Programming Courses
      • “Walk-Thru Tutorial” Series - Online Courses
  • Making an HTML5 Game
    • 1 Introduction to Game Design
      • 1.1 Game Genre Defined
      • 1.2 Game Artwork, Tools & Generators
      • 1.3 References From
    • 2 Standard Project Setup
      • 2.1 Barebones Set-up
      • 2.2 Standardized Project File Structure
      • 2.3 Web Server Required - Batteries not included!
    • 3 Starting a Game Project
      • 3.1 Step 0: Review your competition and their games
        • 3.1.1 Game Examples
      • 3.2 Step 1: Create your “front-door”
      • 3.3 Step 2. Create your “Game Shell” & Phases
        • 3.3.1 Select a JS Format
        • 3.3.2 “Game Phases” & Surrounding Content
        • 3.3.3 Network Impact
        • 3.3.4 Gamer’s Local Activity
        • 3.3.5 Inside each Game Phase
      • 3.4 Step 3: Create “Play.js”
      • 3.5 Step 4: Create Supporting Functions
        • 3.5.1 Deeper Dive: Static Site Generators (SSG)
        • 3.5.2 Deeper Dive: Using JAMStack as a SSG …
  • Part II: Making “Tower Defense” Games
    • 4 Tower Defense — Core Construction
      • 4.1 Game Project Overview
      • 4.2 Our Goal
      • 4.3 Game Recipe™ Featured Ingredients
      • 4.4 Historical background
      • 4.5 Game Mechanics (GM) - Logic & Rules
        • 4.5.1 Feature Recommendations
      • 4.6 Game Mechanics (GM) - Data Structure
        • 4.6.1 Game Framework Mechanisms Elements
      • 4.7 Design Considerations
        • 4.7.1 Gameboard Development
        • 4.7.2 Deeper Dive: Path Follower Resources
        • 4.7.3 TD Game Modes
      • 4.8 Conclusion: “What vs. How”
  • Phaser v2.13+ Code Review
    • 5 Game #1: “p2a” prototype
      • 5.1 Initial Project files (Phaser v2.0.6):
      • 5.2 Step #1: Front Door Analysis
      • 5.3 “p2a” Game Mechanics (GM) Overview
        • 5.3.1 GM: main.js
      • 5.4 Step #2: Game Shell & Game Phases
        • 5.4.1 Boot.js Modifications
        • 5.4.2 Menu.js prototype (No Modifications)
      • 5.5 Step #3 Game Framework Mechanisms (GFM) Overview
      • 5.6 Step #4: Supporting Functions: Lines 217 to 557
        • 5.6.1 btnOut: Lines 226 to 257
        • 5.6.2 btnOver: Lines 259 to 310
        • 5.6.3 vpFSM: Lines 312 to 343
        • 5.6.4 doUpgradeReturn: Lines 344 TO 417
        • 5.6.5 doAssignReset: Lines 418 to 518
        • 5.6.6 doSelect: Lines 518 to 553
      • 5.7 Game #1 Stage 2: “Beta” Pre-release
    • 6 Game #2: “p2a” prototype (Draft)
      • 6.1 Game Features
    • 7 Game #3: “p2a” prototype (Draft)
  • Phaser v3.16+ Code Review
    • 8 Game #1 “p3a” prototype
      • 8.1 Initial Project files (Phaser v2.0.6):
      • 8.2 Step #1: Front Door Analysis
      • 8.3 “p3a” Game Mechanics (GM) Overview
        • 8.3.1 GM: main.js
      • 8.4 Step #2: Game Shell & Phases
        • 8.4.1 Boot.js Modifications
        • 8.4.2 Menu.js prototype (No Modifications)
      • 8.5 Step #3 Game Framework Mechanisms (GFM) Overview
        • 8.5.1 Play.js “create”: Lines 84 to 464
        • 8.5.2 Design Options
        • 8.5.3 Play.js “update”: Lines 465 to 472
      • 8.6 Step #4: Supporting Functions: Lines 475 to 725
        • 8.6.1 doAssignReset: Lines 474 to 585
        • 8.6.2 doSelect: Lines 586 to 624
        • 8.6.3 doUpgradeReturn: Lines 625 TO 686
        • 8.6.4 vpFSM: Lines 687 to 720
      • 8.7 Game #1 Stage 2: “Beta” Pre-release
    • 9 Game #2 “p3a” prototype (Draft)
      • 9.1 Game Features
    • 10 Game #3 “p3a” prototype (Draft)
  • What’s next?
    • 11 Plug-in Enhancements
      • 11.1 Twitter Plugin
    • 12 Game Distribution & Marketing
      • 12.1 Introduction: 8-Step Deployment Method.
    • 13 Book Review Protocol
    • 14 Tell the world about your game!
  • Appendix
    • More Resources
      • JavaScript Garden
      • Additional Appendices
      • Other resources:
      • Selling your Game Assets
    • Appendix: Online Game Development
    • Appendix: Making WebXR Games!
    • Appendix: Phaser III Plugins
    • Appendix: “How to Start a WebSocket”
      • Testing Your Browser
      • WebSocket Protocol Handshake
        • Deeper Dive: WebSocket API
      • Sample Source Code: Client-side WebSocket
        • Step #1: Game index page
        • Step #2: Generate Event handlers
  • Appendix: OLOO - Safe JavaScript
      • Deeper Dive: JS Delegation (aka “Inheritance”?)
      • The old way
      • Objects Linking to Other Objects (OLOO)
      • Compare your code
      • Object.create
      • Exercise Lesson 9:
      • Game Singletons
      • Deeper Dive: Object Manipulation objects in ES5/6
      • Lesson Summary
      • Resource References:
  • Notes
  • Answers to Exercises
      • Appendix: OLOO - Safe JavaScript

The Leanpub 60 Day 100% Happiness Guarantee

Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.

Now, this is technically risky for us, since you'll have the book or course files either way. But we're so confident in our products and services, and in our authors and readers, that we're happy to offer a full money back guarantee for everything we sell.

You can only find out how good something is by trying it, and because of our 100% money back guarantee there's literally no risk to do so!

So, there's no reason not to click the Add to Cart button, is there?

See full terms...

80% Royalties. Earn $16 on a $20 book.

We pay 80% royalties. That's not a typo: you earn $16 on a $20 sale. If we sell 5000 non-refunded copies of your book or course for $20, you'll earn $80,000.

(Yes, some authors have already earned much more than that on Leanpub.)

In fact, authors have earnedover $13 millionwriting, publishing and selling on Leanpub.

Learn more about writing on Leanpub

Free Updates. DRM Free.

If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).

Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.

Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.

Learn more about Leanpub's ebook formats and where to read them

Write and Publish on Leanpub

You can use Leanpub to easily write, publish and sell in-progress and completed ebooks and online courses!

Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks.

Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. (Or, if you are producing your ebook your own way, you can even upload your own PDF and/or EPUB files and then publish with one click!) It really is that easy.

Learn more about writing on Leanpub