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 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
- IMaking HTML5 Games
1Introduction to Game Design
- Approaching Game Development
- Focusing Your Game
- 1.1Game Genre Defined
- GG Interactive — Game Design Course
- 1.2Game Tools & Generators
- 1.3References From
2Standard Project Setup
- 2.1Standardized File Structure
- 2.2Barebones Set-up
- 2.3Web Server Required; Batteries not included!
- 2.4Step 0: Review your competition and their games
- Game Examples
- Official Phaser v3.16+ Examples
- 2.5Step 1: Create your “front-door”
- 2.6Step 2. Create your “Game Shell” & Phases
- Get in and get out!
- Network Impact
- Critical Rendering Path
- Gamer’s Local Activity
- D.R.Y. Speed Limit - 5 GPH (Games Per Hour)!
- 2.7Select a JS Format
- ES5 Format
- ES6+ Format as “FAT Arrow” Function
- ES6+ Format as “Phaser.Class”
- ES6+ Format as “Phaser.Scene”
- IIPart II: Making “Action-Arcade” Browser Games
3Game Project Overview
- 3.1Our Goal
- 3.2“Action-Arcade” Genre Description
- 3.3Historical background
- 3.4Game Mechanics
- Excerpt from “Scientific Speed Reading: How to Read 300% Faster in 20 Minutes”
- The Six Seven Laws Of “Attention”
- 3.5Game Recipe™ Featured Ingredients
4Action-Arcade — Core Game Construction
- 4.1Design Considerations
- Human Reaction Timing
- Reaction Time Statistics (quote from www.humanbenchmark.com)
- JS Format
- Gameboard Development
- Right or Left-handed?
- Cursor Keys: Timing vs. Movement
- Game Mechanics - Data Structure
- Deeper Dive: Multi-Player version
- 4.2Step 3a: Create “Play.js”
- 4.3Step 3b: Create Supporting functions.
- 4.4Conclusion
5Phaser v3.16+ Code Review
- 5.1Main.js
- Lines 127 to 169
- Lines 174 to 190
- Game Mechanics Component
- 5.2Play.js
- Lines 59 to 321
- destroyTones - Lines 329 to 334
- onHit - Lines 351 to 377
- noteTone object - Lines 386 to 434
- banjoString - Lines 446 to 481
- banjoString.prototype - Lines 483 to 527
- button object - Lines 528 to 579
- button.prototype - Lines 580 to 583
- noteHandler - Lines 584 to 597
- noteHandler.prototype - Lines 598 to 645
- note object - Lines 646 to 678
- note.prototype - Lines 679 to 697
6Phaser v2.x.x Code Review
- 6.1Main-mbg.js
- Lines 114 to 140
- Game Mechanics Component - Lines 145 to 502
- Supporting Game Functions - Lines 304 to 655
- 6.2Play-mbg.js
- Game Framework Mechanisms Component - Lines 113 to 301
- Game Mechanisms Supporting Functions - Lines 302 to 516
7Game Shell - The CMS!
- How to monetize hyper-casual games
- 7.1Generic
- 7.2Generic Boot.js
- 7.3Generic Preload.js
- 7.4Generic Splash.js or Language.js
- 7.5Generic Menu.js
- Sample CMS page — Credits.js
- Deeper Dive: Using JAMStack as an SSG …
- Visit JAMStack http://jamstack.org
- Deeper Dive: Static Site Generators (SSG)
- 7.6Inside each Game Phase
8Plug-in Enhancements
9Conclusion
10Bonus Development Content
- IIIWhat’s next?
- 10.1Game Distribution & Marketing
- “How to publish a game on the web??”
- Introduction: 8-Step Deployment Method.
- Shareably (SBLY) looking to rent your Phaser games
- 10.2Book Review Protocol
- 10.3Tell the world about your game!
- Appendix
More Resources
- JavaScript Garden
- Additional Content Appendices
- Other resources:
- Selling your Game Assets
Appendix: Making WebXR games!
Appendix: Online Game Development
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
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: