Phaser III Game Prototyping
Building 100s of games using HTML and Phaser3 JavaScript Gaming Framework
The 6th edition workbook -totally rewritten for upcoming v3.5+ release- is your tutorial guide for Phaser III JavaScript Game Framework. Easy to read, humorous approach to modern game development for single-player games.
About
About the Book
This workbook is the new edition 6th -- a hands-on tutorial guide for Game Prototype creations using component object programming with an emphasis on Phaser v3.5+, WebXR, and "Headless Game Design". The reason we delayed this book's publication was due to the massive rewrites since v3.16+ OCT 2018 and 100% features final made availability since v3.24.1 release scheduled for mid-July, 2020.
As of February 2017, this book was the first and only available tutorial for Phaser III and will continue to supplement version 3 as more framework features become available. Therefore, if you've purchased this book from LeanPub.com, you will have a continually updated version on the latest Phaser III features.
Phaser v3.24+ examples will use our unique component object programming. This book delves into many of the great classic game mechanisms and design mechanics techniques. All written in a fun and friendly style with completed projects and open-ended exercises that encourage you to build your own projects. You'll also download supporting tools to classify the book’s snippets and add your own modification.
You’ll find detailed working examples links from the book's website with dozens of illustrations with many concepts you can freely apply to your own gaming projects. All the source code annotations enhance the book’s explanation. You will learn to convert your former Phaser v2.x.x games and upgrade them into Phaser 3 now. I'll show you how I've upgraded my entire product line from Adobe Flash & Phaser v2.x.x.
What you’ll learn:
By the end of this workbook, you’ll have integrated into your own game designs:
- Adopted processes for business project management and software development.
- Organized a standardized file structure for rapidly developing games;
- Used a blank game prototype templates to scaffold further game projects with automation tools;
- Converted Phaser v2.x.x and adopted the new features and upcoming changes into Phaser v3.5+.
- Imported resources and game assets;
- Displayed, animated, and moved game avatars on various screen and scene renderings;
- Managed groups of game objects;
- Deployed heads-up display (HUD) on parallel game scenes both inside and outside the canvas;
- Used customized web fonts;
- Incorporated multiple game-inputs (touch, multi-touch, "accelerometer", mouse, and keyboard);
- Rendered several physics systems on gaming components;
- Included graphics effects (gfx) (particle systems, rotations, fades, shaders and more);
- Created and managed game phases with multiple Scenes;
- Managed permanent game assets across various game phases;
- Optimized your game for various mobile devices;
- Integrated 3rd-party plugins and blueprints.
- Deployed single- and multi-player games from the workbooks tutorials.
- Web Sockets demystified for scalable massive online game deployments.
Who This Book Is For:
Students -- and software professionals in -- game development with little experience in HTML5, CSS or JavaScript who want to enhance -- or begin learning the essential techniques from Phaser v3.5, and WebXR to build game prototypes. If you are interested in making browser games, especially for the mobile, Augmented or Virtual Reality markets, then Phaser III Game Prototyping is your choice.
Categories
Feedback
Installments completed
17 / 17
Packages
Pick Your Package
All packages include the ebook in the following formats: PDF, EPUB, and Web
6th Edition Book
Minimum price
Suggested price$39.99Book contents and access to supporting website.
$5.99
- Example Game RulesFollowing the Game Recipes, these are 3 game rules examples
- Free Affiliate GuideLearn how to use this document and leverage revenues in our Gaming Community.
5th Edition Book Resources and Game Developer Certification Course
Minimum price
Suggested price$169.99Earn your respect in the industry with Phaser v3.x.x Game Developer Certification course includes free access to the Phaser v3.x.x Game Development Workshop Course.
$99.99
- Book and Game Developer Certification CourseThis book and the Phaser III Game Design Workshop Course and Certification. Available after 95% book complete. Bonus Content: x,xxx files xxx MB (2018xxxx unzipped)
- Free Affiliate GuideLearn how to use this document and leverage revenues in our Gaming Community.
- Book 2D Rooms Creation (66 files; 17.2 MB)Following the book examples of generating Room Movement table with 2D arrays. (66 files; 17.2 MB
- Book Artificial Intelligence (73 files; 3.91 MB)A*Star path finding for Phaser.
- Book Back-end server-side middleware for ARRA (91 files; 1.94 MB)Two website back-ends to support ARRA games in ASP and PHP (91 files; 1.94 MB)
- Book Bonus Games Source Code (416 files; 58 MB on disk)The book describes several games beyond ARRA rv_8 and rv_15. Here is the collection of software code for those bonus games. (416 files; 58 MB on disk). Life-Time licenses included a value of $180.
- FREE Amazon Rule Books (2 files; 3.35 MB)Legends of Renown Deeds rulebook (Amazon edition - $2.99) - an active online RPG since 1993!
- Book Labyrinth Generators Source Code (32 files; 4.02 MB) various methods to generate dynamic mazes in JavaScript, C/C++, and Java. Content includes a rare and hard to find document of Jamis Buck.
- Phaser v3.x.x game project template (91 files; 37.9 MB)game project template using OLOO style game construction.
- Blood Pit Walk-through TutorialStep-by-step Game Recipe Series creating the Blood Pit In-Game-Module for Legends of Renown Deeds Gaming System.
- Example Game RulesFollowing the Game Recipes, these are 3 game rules examples
Author
About the Author
Stephen Gose
Avatar is an adorable cartoon sketch of my wife. My 48th anniversary is this coming Sept 1, 2026!
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 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 been a licensed minister since 1972 and 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 website is: https://www.Stephen-Gose.com/
His game showcase is: http://www.renown-games.com
His theology website: http://kingdomofgodprinciples.com/
Game Support Site: http://makingbrowsergames.com/
Review my profile on LinkedIn.com: https://www.linkedin.com/in/stephen-gose/
Contents
Table of Contents
Distribution Permission
- Supporting website
Forwards
Disclosures
Disclaimer
About this Workbook:
- Viewing the Source Code
- Links and References
- Who should use this workbook?
- Your newly obtained skills…
Game Design System™
- 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
- IPart I - Concept & Design
1Game Studio & Project Setups
- ACTUALLY START THE DAMN GAME …
- 1.1Workstation Setup
- Batteries not included … Web Server Required
- Deeper Dive: Testing MMoGs Locally
- Development Tools
- 1.2Project Setup
- Project Structure
- And its name shall be called …
- Project Directories & Files
- 1.3Game Project Preparations
- What makes a “Good” Game?
- Quoted Recommendations from Modd.io
- Game Copyrights
- Quoted from: http://www.copyright.gov/fls/fl108.pdf
- 1.4Game Design System™
- How it works
- 1.5Game Genres
- Deeper Dive: Game Genres
- GGInteractive — Game Design Course
- Deeper Dive: Game Modes
- 1.6Game Recipe™ Summarized:
- Development:
- Design:
- Encoding:
- 1.7Summary
- 1.8Chapter References:
2Building a Game Prototype
- How to Succeed at Making One Game a Month
- 2.1Example: Using Box Graphics
- 2.23D Prototypes
- 2.3“ToTo, … we’re not in Kansas anymore” — Dorothy
- 2.4Creating Prototype Mechanisms — 4-Step method
- Step 0) Preparation and Research
- Step 1) Generate Game Phases (as needed).
- Step 2) Generate code for triggering events.
- Step 3) Generate transition
- Step 4) Create your Game’s Core & auxiliary functions
- Deeper Dive: Writing D.R.Y. JS code
3Making a “Game Recipe”™
- 3.1Step #1) the Front-Door
- Task #1-1 Instructions:
- Compare your code
- Mobile “Single Web Page Applications” (SWPA)
- Cocoon.js Cloud Alternatives
- 3.2Task #2: Launching a Game
- Launching the Game.
- Game
Config - 3.3Deeper Dive: To Infinity and Beyond!
- 3.4Summary
- 3.5Chapter References:
4Game Phases, Scenes & Roses.
- You Don’t Know JS- How We Organize in JS by Kyle Simpson
- 4.1Bare-Bones Prototypes
- 4.2Using a Phaser Scene as a “Game Phase”
- 4.39 Essential Functions of a Phaser “Scene”
- 4.4Game Phases as Modules
- “Phaser.Game” — One File to Rule them all …
- Yes, Gandalf got it wrong!
- Main.js (aka “launch” or index.js)
- Boot.js
- Preload.js
- Deeper Dive: Artwork & Resources Security
- Deeper Dive: Phaser
Cache - Working with the Phaser Cache:
- Deeper Dive: Loader Examples
- Splash.js or Language.js?
- Main Menu.js
- Play.js
- Deeper Dive: JS Modules
- You Don’t Know JS Get Started - 2nd Edition by Kyle Simpson (Quote)
- 4.5Step #1 of 4: Generate Game Phases
- Dynamically Including Game Phases
- Deeper Dive: D.R.Y. Stand-alone
- Step #2 of 4: Game Phase Transitions
- Deeper Dive: The CMS “Game Shell”
- Deeper Dive: When to use a game shell
- 4.6Encoding Phaser Scenes as a “Game Phase”
- Vanilla, Chocolate, or Strawberry Creme-filled?
- Overriding Essential Functions inside Phaser.Scene
- Creating Scenes using ES5 Prototypes
- Creating Scenes using Phaser.Class
- Creating Scenes by extending Phaser.Class
- ES6 Considerations: “Strawberry”
- Creating Scene Configuration files
- Deeper Dive: Defining Other Scene Properties
- Deeper Dive: ES9 Modules
- 4.7Summary
- 4.8Chapter References:
5Game Recipe™ Automation Tool
- 5.1Deeper Dive: Database Protection Considerations
- 5.2Database Schema Construction (Copyright-able!!)
- Database Record Construction
- Database structure
- 5.3Remote Codebase Using AppML
- 5.4Building an AppML application
- 5.5Sample AppML codebase (Public Access)
- 5.6Remote codebase Using JSON
- Per-user storage
- 5.7Chapter Source Code & Demo
- 5.8Summary
- 5.9Chapter References
- IIPart II - Mechanisms & Mechanics Production
6Building Game Prototypes, Mechanisms & Tools
- 6.1Task #3: Mini-Me
- Creating an Avatar - “visual display”
- Deeper Dive: Display selected frames from a sprite-sheet.
- Displaying a particular sprite from sprite-sheet
- Deeper Dive: Using Base64 Images
- Creating an Avatar’s metadata
- Deeper Dive 3.19+ Tweens
- 6.2Task #4: Moving Game Elements
- Deeper Dive: Phaser III Input Manager
- Quoted from Dev Log 90 & Dev Log 133!
- Callbacks and Events
- 6.3NEW in v3.16.x (JAN 2019!)
- Deeper Dive: Future Proofing your source code.
- Deeper Dive: Configuring the Keyboard (Phaser v3.16+ updated)
- 6.4Task #5: Things that go bump …
- Walls and Camera boundaries
- Interior Decoration
- Deeper Dive on Game Objects hit areas.
- Doors, Knobs, and Buttons
- Deeper Dive: Writing Optimized Code
- Deeper Dive: Buttons as a “Class” or “Scenes”?!!?
- Deeper Dive: Button size considerations
- Deeper Dive: Adding Buttons & Mobile Touch
- 6.5Task #6: When Worlds Collide …
- 6.6Task #7: It’s curtains for you …
- 6.7Other Game Mechanics Categories
- 6.8The Finish Line: You’re AWESOME … Gloat, Gloat …
- 6.9Chapter Source Code & Demo
- 6.10Summary
- 6.11Chapter References
7Game Mechanics Systems
- 7.1Game-Play vs Game Mechanics vs Game Mechanism
- 7.2Game Mechanics (GM) Overview
- Game Mechanics Suggested by Schell
- Game Mechanics: “Actions”
- Game Mechanics as: Attributes, Objects, & States
- Deeper Dive: Game Phases Revisited
- Apple’s
GameplayKit - Deeper Dive:
StateManager - Deeper Dive: Object Manipulation in ES5/6/7/8/9/10+
- Game Mechanics: “Chance”
- Game Mechanics: Rules
- Deeper Dive: Rules
- Deeper Dive: Rule Categories
- Game Mechanics: “Skills”
- Game Mechanics: “Space”
- 7.3Phaser III API Relation to Game Mechanics
- Deeper Dive: Input Manager Event Horizon
- Quote Phaser Newsletter #118
- 7.4Summary
8Dem’s fightin’ words
- 8.1Launching Web Sockets
- 8.2Dynamic Combat Menus
- 8.3So, Give Me Some Space …
- “The Four Virtues of a good tactical turn-based combat system”
- Melee Weapons
- Ranged Weapons
- Is your game ‘juicy’ enough?
- 8.4OO!, OW! AH!, OW! Stayin’ alive! Stayin’ alive!
- Grid-less Combat
- Grid-ed Combat
- 8.5Tactical Tiled-Maps
- 8.6Squares and Checkered Grids
- References from Mozilla Developers:
- Deeper Dive: Phaser III Grids
- Grid Plugin
- Hexagonal Grids
- Red Blob Games
- Deeper Dive: Real hexagonal grids
- Squishes
- 8.7Rules of Engagement: Take 5 paces, turn, and …
- Been there … done that …
- 8.8“Where’s the beef?”
- Click-fest
- Guitar hero - Time to get it Right!
- Days of our Lives - Drama Theater
- SCA Virtual “Fighter Practice” by Steve Echos
- En Guard method
- Yeap! Ya betcha’ ‘ur life!
- 8.9Story narrative
- 8.10Frisking, Fondling, or Groping
- 8.11Chapter Source Code
- 8.12Complete Combat Prototypes
- 8.13Summary
- 8.14Footnotes
9Phaser III Game Mechanism Components
- 9.1“ToTo, we’re not in Kansas …” — Dorothy
- Index page inline script - Reviewed
- Adding Display objects
- Adding Control Mechanisms
- Adding Buttons & Mobile Touch
- Phaser III “Actions”
- Components
- What’s the Difference Between Class & Prototypal Inheritance?
- DOM
- Game Objects
- System Components
- 9.2Tile Map
- Tilemap Rendering - new Dynamic method
- Tilemap Rendering - new Static method
- Quote from Devlog 82:
- 9.3Phaser III Systems
- v3 Boot
- v3 Cache
- v3 Device Manager
- v3 Events
- v3 Input Manager
- Callbacks and Events
- Deeper Dive: v3.16+ New Keyboard rewrite!
- Keyboard Input - New Features
- v3 Loader
- v3 Sound
- v3 Scene Manager
- From v2.x.x States to Scenes
- v3 Texture Manager
- v3 Tween Manager
- Deeper Dive 3.19+ Tweens
- 9.4Phaser3 Finish Line: You’re AWESOME … Gloat!, Gloat!
- Phaser v3 Source Code & Demos
- Quote from Devlog 85
- 9.5v3 Animations
- Deeper Dive: History of Animation
- Animation Today
- Animation Recommendations
- Frame Rates Recommendations
- Tweens
- 9.6Camera & Viewports
- 9.7Summary
- 9.8Chapter Footnotes:
10Whazzz-sUP! …. HUD Development
- 10.1HUD Housing Development
- Quote Newsletter 146
- 10.2HUD as Panels
- 10.3HUD Panels outside the Canvas?!?
- 10.4HUD Demos
- 10.5Summary
- 10.6Footnotes
11Don’t make me think or “Artificial Intelligence for Dummies”
- 11.1The “6 of 9”
- 11.2Chasing
- 11.3Evading
- 11.4Patterns
- 11.5Fuzzy logic
- 11.6Finite State Machines (FSM)
- FSM Resolving Combat Outcomes
- FSM Resolving AI behaviors
- 11.7Recursive World Feedback
- Probability Data Tables
- 11.8Complete AI Prototypes
- 11.9Chapter Source Code
- 11.10Summary
- 11.11Footnotes
- IIIPart III: Distribution!
12Game Distribution
- “How to publish a game on the web??”
- 12.1Introduction: 8-Step Deployment Method.
- 12.2Distribution Preparation
- Development vs. Production
- 12.3Create A Game Pipeline
- 12.4Preparing for WebXR Deployment
- Does mobile gaming still need publishers?
13Marketing Channels
- 13.1Channel Selection
- 13.2What do I need?
- Advertising
- Quoted from Pocket Gamer.biz JAN 2020
- Deeper Dive: “Playable” Ads
- Partnerships & Sponsors
- Retail
- Billing
- Data
- Player Interactions
- Paraphernalia Merchandising
- 13.3Chapter Reference
- IVPart IV - Resources & “Walk-thru” Tutorials
14Phaser III Game Prototype Library
- 14.1Walk-through Tutorial Series
- Difficulty Rating #1: Introductory
- Difficulty Rating #2 to #3: Intermediate
- Difficulty Rating #4: Advanced - “The Full Monty!”
15What’s next?
- 15.1Game Distribution & Marketing
- “How to publish a game on the web??”
- Introduction: 8-Step Deployment Method.
- Shareably (SBLY) looking to rent your Phaser games
- 15.2Book Review Protocol
- 15.3Tell 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
- Test sites:
- WebSocket Protocol Handshake
- Deeper Dive: WebSocket API
- Sample Source Code: Client-side WebSocket
- Step #1: Game
indexpage - Step #2: Generate Event handlers
Common Pitfalls
- Lacking Debugging Tools?
- Deeper Dive: Console Commands
- Same “Name-spaces”
- Callbacks
- Missing Documentation
- Deeper Dive: What is Dragon Speak
Phaser III Book Examples & Samples
Appendix: OLOO - Safe JavaScript
- JS Objects: “TL;DR”
- 15.2.2 Inside the body of a class definition
- Deeper Dive: JS Delegation (aka “Inheritance”?)
- The old way
- “Object Oriented JavaScript Pattern Comparison”
- ECMA-262 7th Edition / June 2016
- Objects Linking to Other Objects (OLOO)
- Compare your code
- Object.create
- Exercise Lesson 9:
- Exercise 1
- Game Singletons
- Deeper Dive: Object Manipulation objects in ES5/6
- Lesson Summary
- Resource References:
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...
Earn $8 on a $10 Purchase, and $16 on a $20 Purchase
We pay 80% royalties on purchases of $7.99 or more, and 80% royalties minus a 50 cent flat fee on purchases between $0.99 and $7.98. You earn $8 on a $10 sale, and $16 on a $20 sale. So, if we sell 5000 non-refunded copies of your book for $20, you'll earn $80,000.
(Yes, some authors have already earned much more than that on Leanpub.)
In fact, authors have earned over $14 million writing, 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.