Preface
- Distribution Permission
- Forewords
- Disclosures
- Disclaimer
- Workbook Content
- > For Amazon Patrons Only
- > About this Workbook
- > How to Read & Use this workbook:
- > Viewing the eBook:
- > External Links
- > References Used
- Your newly obtained skills …
- More Resources
- Programming Courses
- IPart I — Concept & Design
1Role-Playing Games Workshop
- 1.1About this Workshop
- 1.2Target Market Considerations
2Building HTML5 “RPG Adventures”
- What is the shortest-lived MMO? APB!
- What went wrong? … here’s the “inside” story.
- 2.1Game Genre Components & Data
- > Adventure games
- > RPG Foundation Elements
- 2.2RPGs vs. MMoRPGs
- 2.3Role-Playing Genre Background
- 2.4Historical background
- > Adventure Games
- > Adventure Game Sub-genres
- > RPGs Adventures
- “The Unlikely Birthplace of JRPGs”
- 2.5RPG Adventure — Storyline(s)
- 2.6RPG Adventure — Environments Overview
- 2.7“RPGs” into “Action-Adventures” — the “Ping-Pong”
- 2.8What makes a “Good” RPG?
- 2.9What’s Your Competition Doing?
- > Your Targeted Market — Who’s Playing What?
- What is your favorite game genre? — Separating Developers from Gamers!
- > Game Competitor Examples
3Introduction to Game Design
- Approaching Game Development
- Focusing Your Game
- 3.1Game Design System™ & Components
- > Separation of Concerns (SoC)
- 3.2Game Mechanics (GM) — Logic & Rules
- 3.3Game Display Framework Mechanisms
- GG Interactive — FREE Game Design Course
- 3.4“Replayability” — retaining “repeat customers”!
- > Deeper Dive: Solving Poor Replayability
- Opinion: Expanding The “Replay Value” Of Games
4RPG Design Considerations
- 4.1Deeper Dive: “Using Content-as-a-Service” (CaaS)
- What is a Content-as-a-Service (CaaS)?
- 4.2Story Plot Generation
- 4.3Story Generation Tools
- 4.4Labyrinth Generation Methods
- 4.5Fixed Generation (2D Frutti)
- > To infinity and beyond …
- Arrayed pros and cons
- Linked pros and cons
- > Deeper Dive: How it works …
- 4.6Fixed-Grid & Dynamic Rooms (2D Frutti with sprinkles)
- 4.7Pure Linear Labyrinths
- > Deeper Dive: Eller’s Algorithm
- > Rules for Creating the Perfect Maze
- > Depth-First Search (DFS)
- 4.8Open-path Worlds
- IIPart II: Construct2 Production
5Lesson 1: Game Project Launch
- 5.1About Your Project:
- 5.2Project Settings:
- 5.3Configuration Settings
- 5.4Design Consideration: CMS, PWA, or SWPA!
- > Creating a C2 SWPA Game Version?
- > FYI: Creating a C2 CMS or PWA Game Version?
- 5.5Comparing your code
6Lesson 2: Scaling Game Assets & Layouts
- 6.1C2 Environment Maps — with plugins
- > Rexrainbow Maps
- > C2 Rex Plug-in Summary
- > Strategic Quest Maps
- > Regional Quest Maps
- > Tactical Maps
- > Town and Settlement Maps
- 6.2The Campaign — “…There and Back Again!”
- > As above, so below … Multi-level Gaming!
7Lesson 3: Using Layout Layers.
- 7.1Lesson Instructions
- From the Manual: How to avoid “JANK”
- “Loose lips sink ships” … and revenues!
- Serif vs Sans-Serif:
- Using Web Fonts inside a Text Object
- 7.2Layout
- 7.3Comparing your code
8Lesson 4: Game Mechanics & Events.
- 8.1Game Mechanics Structure
- 8.2How to Create Events
- 8.3Game Set-up
- 8.4Game Play Phase
- 8.5Project #1 Practicum — “Epic Battles”
- > Project #1 Instructions
- 8.6Comparing your code
9Lesson 5: Conflict & Combat Resolution.
- 9.1Game Phase Preparations
- 9.2Game Data Preparations
- 9.3Pre-Combat Management
- > How Command Buttons Work …
- 9.4Game Play Transitions
- 9.5RPG Combat Module(s)
- 9.6Comparing your code
- 9.7Single Player with Multiple Avatars (SPMA)
- > Derelict Hulks™ — Artwork, Inspiration, & Rules
10Lesson 6: He says, “He’s already Got One”!
- 10.1Designing your RPG Inventory
- Determining the Right Inventory System for Your RPG
- 10.2Backpack Dictionary
- > Deeper Dive: SKUs vs. UPC codes
- What is a SKU and How Should You Use It?
- 10.3Non-Fungible Tokens (NFT)
- What Are Blockchain Games?
- The alternative to what?
- In blockchain gaming, things are different.
- 10.4Modify a Gamer’s “Discoveries & Inventories”
- 10.5“Equipped” Items
- 10.6Inventory as a “Dress-up” game??
- > Dress-up and Construction Considerations
- 10.7Creating Your MMoRPG — the easy way!
11Lesson 7: “Japanese” vs. “Western” RPGs!
- 11.1Avatar Dialogs with NPCs as “Interactive Fiction” (IF)
- > Interactive Fiction (“IF”) Tools
- > Lesson Instructions: Construct “IF” Integration
- 11.2Dialogues with Facial Expressions
- 11.3Conversation Sequence
- > Dialog Data format
- 11.4Facial Dialogue Editor
- 11.5Dynamic Facial Dialogues
- > Deeper Dive: Understanding Facial Reactions
- > Deeper Dive: Locations and Environment Settings
- > Dialogue Pool Technology
- > Realistic Artwork Resources
- 11.6Deeper Dive: Languages & Cultural Interactions
12Lesson 8: “Game Lost & Won” Scenes!
- 12.1“RPG Quest Finished” Scene(s)
- > Determine Rules for “Encounter Won”
- > Determine Rules for “Encounter Lost”
- 12.2“Game Lost” Layout Commands
- 12.3Download Lesson 8 “
.capx” file - IIIPart III: Construct3 Production
13Lesson 1: Game Project Launch
- 13.1About Your Project:
- 13.2Project Settings: Color Theme, Start-up & Display
- 13.3Configuration Settings: Advanced & Editor
- 13.4Design Consideration: CMS, PWA, or SWPA!
- > Creating a C3 SWPA Game Version?
- > FYI: Creating a C3 CMS or PWA Game Version?
- 13.5Comparing your code
14Lesson 2: Scaling Game Assets & Layouts
- 14.1C3 Environment Maps — without plugins
- > Strategic Quest Maps
- > Regional Quest Maps
- > Tactical Maps
- How 3D works
- > Town and Settlement Maps
- 14.2The Campaign — “…There and Back Again!”
- >As above, so below … Multi-level Gaming!
15Lesson 3: # Lesson 3: Using Layout Layers.
- 15.1Lesson Instructions
- From the Manual: How to avoid “JANK”
- “Loose lips sink ships” … and revenues!
- Serif vs Sans-Serif:
- Using Web Fonts inside a Text Object
- 15.2Layout
- 15.3Comparing your code
16Lesson 4: Game Mechanics & Events.
- 16.1Game Mechanics Structure
- 16.2How to Create Events
- 16.3Game Set-up
- 16.4Game Play Phase
- 16.5Project #1 Practicum — “Epic Battles”
- > Project #1 Instructions
- 16.6Comparing your code
17Lesson 5: Conflict & Combat Resolution.
- 17.1Game Phase Preparations
- 17.2Game Data Preparations
- 17.3Pre-Combat Management
- > How Command Buttons Work …
- 17.4Game Play Transitions
- 17.5RPG Combat Module(s)
- 17.6Comparing your code
- 17.7Single Player with Multiple-Avatars (SPMA)
- > Derelict Hulks™ — Artwork, Inspiration, & Rules
18Lesson 6: He says, “He’s already Got One”!
- 18.1Designing your RPG Inventory
- Determining the Right Inventory System for Your RPG
- 18.2Backpack Dictionary
- > Deeper Dive: SKUs vs. UPC codes
- What is a SKU and How Should You Use It?
- 18.3Non-Fungible Tokens (NFT)
- What Are Blockchain Games?
- The alternative to what?
- In blockchain gaming, things are different.
- 18.4Modify a Gamer’s “Discoveries & Inventories”
- 18.5“Equipped” Items
- 18.6Inventory as a “Dress-up” game??
- > Dress-up and Construction Considerations
- 18.7Creating Your MMoRPG — the easy way!
19Lesson 7: “Japanese” vs. “Western” RPGs!
- 19.1Avatar Dialogs with NPCs as “Interactive Fiction” (IF)
- > Interactive Fiction (“IF”) Tools
- > Lesson Instructions: Construct “IF” Integration
- 19.2Dialogues with Facial Expressions
- 19.3Conversation Sequence
- > Dialog Data format
- 19.4Facial Dialogue Editor
- 19.5Dynamic Facial Dialogues
- > Deeper Dive: Understanding Facial Reactions
- > Deeper Dive: Locations and Environment Settings
- > Dialogue Pool Technology
- > Realistic Artwork Resources
- 19.6Deeper Dive: Languages & Cultural Interactions
20Lesson 8: “Game Lost & Won” Scenes!
- 20.1“RPG Quest Finished” Scene(s)
- > Determine Rules for “Encounter Won”
- > Determine Rules for “Encounter Lost”
- 20.2“Game Lost” Layout Commands
- 20.3Download Lesson 8 “
.capx” file - IVPart IV: Expanding Your RPG Prototype
- > Replayability Summary: the ability to …
21Lesson 9: Adding Unique Features.
- 21.1“Play Again?”
- > Lesson Instructions
- > Reset the Global Variables.
- 21.2A Better “Game Start”
- 21.3Integrating Multiple Languages??
- 21.4Importing Language.json …
- 21.5Don’t tell me … Show Me!
- How Languages Got Their Directionality by Steph Koyfman April 28, 2021
- Right-To-Left Languages
- Top-To-Bottom Languages
- Content languages market position report.
- Compare Who uses the Internet as compared to their language.
- 21.6Main Menu as a “Picture Gallery”?
- 21.7“Levels & Campaigns” Layout
- 21.8“Create Your Own Adventures” (CYOA)
- 21.9Mobile User Interfaces — placement & size
- > Touch & Mouse Controls
- “Dynamically Detecting Gamer Inputs”
22Lesson 10: Quests & Chance Encounters
- 22.1Inserting Chance Encounters
- 22.2Inserting new Quests
- 22.3Saving & Loading Game Sessions & Scores
- VStarting Your Own Game Studio!
23Lesson 11: One “GM” to Rule them all …
24Lesson 12 Capstone: Exchanging Artwork
- D.R.Y. Speed Limit — 5 GPH (Games Per Hour)!
- 24.1Dynamically Generated Background Stories
- 24.2RPG “Back-end” Generation Tools
- 24.3Alchemist’s Apprentice™
- 24.4Agents from U.N.C.L.E.™
- 24.5Derelict Space Hulks™ — Single Player/Multiple Avatars
- 24.6Epic Battles — Project #1
- 24.7CYOA Strategic Map Quests
- 24.83D Castles, Dungeons, Lairs, Ruins, & Spaceships
- > Soldier’s Test™
- VIWhat’s next?
- “How to publish a game on the web??”
25Game Distribution & Marketing
- 25.1Introduction: 8-Step Deployment Method.
- FGL.com
- 25.2Port to a Console
- 25.3Selling Directly — The Advantages
- Shareably (SBLY) looking to rent your games
- 25.4Book Review Protocol
- 25.5Tell the world about your game!
26Conclusion
27Bonus Development Content
- 27.1Certification Examination
- Appendix
More Resources …
- “You don’t know JS Yet” by Kyle Simpson
- Construct Demo Tutorials
Appendix: Game Developer Tool Kits
- Artwork Resources
- Selling your Game Artwork & Assets
- JavaScript Garden
Additional Appendices
Appendix: Making 3D & WebXR Games!
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 2 — Back-end Systems
- Game Services (Back-end)
- Server-side Frameworks — the CMS
- Production release version.
- CodeIgniter & Construct as an Integrated CMS
- Learn CodeIgniter v3.x (CI3) a Step-at-a-Time
- Recipe for a “CodeIgniter v3.x (CI3) CMS”
- Creating a CodeIgniter (CI3) CMS
- > Deeper Dive: Authentication Systems using
"Ion Auth"with CI3 - > Deeper Dive: Building a Fat-Free Framework (F3) for CI3
- Fat-Free Framework Tutorials
- Appendix: Safe JavaScript Using OLOO
- 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: