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 HTML5 Games
Introduction to Game Design
- Approaching Game Development
- Focusing Your Game
- Game Genre Defined
- GG Interactive — Game Design Course
- Game Tools & Generators
- References From
Standard Project Setup
- Standardized File Structure
- Barebones Set-up
- Web Server Required - Batteries not included!
Starting a Game Project
- Step 0: Review your competition and their games
- Game Examples
- Step 1: Create your “front-door”
- Step 2. Create your “Game Shell” & Phases
- Critical Rendering Path
- Network Impact
- Gamer’s Local Activity
- D.R.Y. Speed Limit - 5 GPH (Games Per Hour)!
- Select a JS Format
- ES5 Format
- ES6+ Format as “FAT Arrow” Function
- ES6+ Format as “Phaser.Class”
- ES6+ Format as “Phaser.Scene”
- Part II: Making “Puzzle” Browser Games
Jigsaw & Slider Puzzles — Core Game Construction
- Game Project Overview
- Current Demand for Puzzle Games
- Our Goal
- Puzzle Genre Description
- Game Mechanics (GM) - Logic & Rules
- Historical background?
- Game Mechanics (GM) - Data Structure
- Deeper Dive: Constructing Unique Jigsaws!
- Game Recipe™ Featured Ingredients
- Design Considerations
- Step 3: Create “Play.js”
- Step 4: Create Supporting functions.
- Conclusion
Phaser v3.16+ Code Review
- New Approach to Jigsaw Puzzles
- Deeper Dive: Phaser III Cameras
- Deeper Dive: Camera Masking
setMask(mask [, fixedPosition])- Development Considerations
- The Technical Design Approach
- Features Offered
- Deeper Dive: “Drag ‘n’ Drop” Zones
- “1st Draft” Issues Addressed
- JigSaw Metadata Structure
- Grid Creation
- Dynamically Sized Puzzle Pieces
- JigSaw Randomization
- JigSaw Input Selection
- “
getScroll(x, y [, out])“ - Summary
- New Approach to 15-Slider Puzzles
Phaser v2.x.x Code Review
- Slider Puzzle Code Review:
- Jigsaw Puzzle Mechanics & supporting functions
- Step 3. Create your core game logic & supporting functions.
- Jigsaw Game Components
- Creating Image Shards
- Cropping the pieces
- Bezier Curves
- New Jigsaw Design Consideration
- Jigsaw Puzzle Code Review:
- Jigsaw Work-Horse: Puzzle.js
- Jigsaw Work-Horse: Puzzle_Piece.js
Game Shell - The CMS!
- Main.js
- Boot.js
- Preload.js
- Splash.js or Language.js
- 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)
- Inside each Game Phase
Plug-in Enhancements
Conclusion
Bonus Development Content
- What’s next?
- Game Distribution & Marketing
- “How to publish a game on the web??”
- Introduction: 8-Step Deployment Method.
- Shareably (SBLY) looking to rent your Phaser games
- Book Review Protocol
- 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
- 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: