Skip to content

israelburns/WealthPathGame

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

16 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿฐ Wealth Path Quest - Game Development README

Overview

Wealth Path Quest is a tactical board game built as a Google Apps Script web app. It gamifies the real estate buyer journey while collecting intake data for lead generation.

Target Visual Style: Pokemon Gameboy Color meets Monopoly - 2D side-scroller with pixel art aesthetics.

Current Version: v1.08 RELEASED Live Site: wealthpathquest.com


๐Ÿ“‹ Version 1.08 Release Notes

๐ŸŽฎ Minigames

Speed Round (Commission Negotiation)

  • Transparent buttons with modern styling
  • Flash & shake animations on wrong answers
  • Performance-based results: GOOD ๐Ÿ† / OK ๐Ÿ‘ / BAD ๐Ÿ˜ฌ
  • Score colors: Green (8+) / Orange (5-7) / Red (<5)
  • Unlocks commission rates: 2% / 2.5% / 3.5%

Catch The Deal (Property Showings)

  • Transparent canvas with glowing gold lane dividers
  • House emoji ๐Ÿ  as player avatar
  • Falling items: ๐Ÿ’ต ๐Ÿ’ฐ ๐Ÿ’Ž ๐Ÿ† (good) | ๐Ÿ“‰ ๐Ÿ’ฅ ๐Ÿš๏ธ (bad)
  • Score = Discount: $30K+ = 35% | $15K+ = 20% | <$15K = 5%
  • Color-coded results with Good/OK/Bad emojis

Underwriting Boss (Word Search)

  • Transparent tiles over video background
  • Find 10 real estate terms: DEED, TITLE, ESCROW, etc.
  • Performance rating based on words found

๐Ÿ”Š Audio System

  • Minigame Music: Energetic beat starts after 3-2-1 countdown
  • Victory Jingle: Triumphant ascending melody for Good/OK results
  • Defeat Sound: Mario-style descending death sound for Bad results
  • All audio procedurally generated via Web Audio API

๐Ÿ“ฑ UI Enhancements

  • Clickable Phone Icon: Tap ๐Ÿ“ž to call Israel Burns (347-709-2491)
  • Enlarged Broker Avatar: 130px for better visibility in video call frame
  • Video Backgrounds: Immersive video loops behind all minigames
  • Floating Feedback Button: ๐Ÿ’ฌ available throughout the game

๐Ÿ’ฌ Feedback System

  • Floating Button: ๐Ÿ’ฌ button in bottom-left corner throughout the game
  • Victory Screen Button: "LEAVE FEEDBACK" button after completing game
  • Star Rating: 1-5 star rating system
  • Categories: General, Bug Report, Feature Suggestion, Content Issue, Other
  • Text Feedback: Free-form text area for detailed feedback
  • Optional Email: Users can provide email for follow-up
  • Auto-capture: Session ID, player name, page location, device type
  • Data Storage: All feedback sent to Google Sheets "Feedback" tab

๐Ÿ“Š Google Sheets Integration

  • Sheets: Dashboard, Scores, Choices, Sessions, Minigames, Feedback
  • Dashboard: Live analytics with charts and summaries
  • Scoreboard: Hall of Fame leaderboard with reviews
  • Feedback Summary: Recent feedback, ratings, bug reports

Feedback Sheet Columns

Column Description
Timestamp When feedback was submitted
Session ID Unique game session identifier
Player Name Name entered during game
Email Optional email for follow-up
Category Type of feedback (General, Bug, etc.)
Rating 1-5 star rating
Feedback The actual feedback text
Page Where in the game (general, victory, etc.)
Device Mobile or Desktop

๐Ÿ† Victory Screen

  • Animated confetti celebration
  • Player stats summary with rank
  • Email input for PDF certificate download
  • Scoreboard access
  • "Contact Israel Burns" CTA button
  • Feedback button

๐ŸŽฎ Game Mechanics

Core Loop

1. Tap to Start (initializes audio)
2. Setup: Choose Avatar + Enter Name
3. Board Navigation: Move through 10 tiles
4. Each tile = Encounter (make decision)
5. Decision โ†’ Stat changes โ†’ Visual feedback
6. Check thresholds (Risk > 80 = Delay Event)
7. Cutscenes on milestones
8. Tile 10 = Summary + Certificate

The 10-Tile Board

# Tile Type Data Collected
1 Funding Type choice fundingType: cash/mortgage
2 Income Docs choice incomeType: w2/self/mixed
3 Doc Inventory checklist docs: {w2, paystubs, etc}
4 Pre-Approval tap Milestone celebration
5 Neighborhood multi-select neighborhoods[], schoolsPriority
6 Property Type choice propertyType
7 Offer Strategy choice offerStrategy
8 Inspection choice inspectionChoice
9 Underwriting Boss choice underwritingChoice
10 Closing Table end Summary + PDF

Stat System (0-100 scale)

Stat Color Effect
Readiness Green Buyer preparedness. >70 = bonus path
Risk Red Problems. >80 triggers Delay Event
Timeline Orange Days to close (starts 90). <30 = warnings
Savings Power Gold Down payment strength

Stat Modification

Every choice modifies stats:

impact: { readiness: 10, risk: -5, timeline: -10, score: 5 }

Visual feedback:

  • Animated stat bars
  • Popup: "+10 Readiness | -5 Risk"
  • Sound effect (success or warning)

Delay Event

When Risk >= 80:

  1. Pause gameplay
  2. Show modal with 2 recovery options
  3. Player must choose to continue

๐ŸŽจ Visual System

Board Layout

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  [Parallax Sky - Layer 1 (far)]                                 โ”‚
โ”‚  [Parallax City - Layer 2 (mid)]                                โ”‚
โ”‚  [Parallax Buildings - Layer 3 (near)]                          โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚                                                                  โ”‚
โ”‚  ๐Ÿง‘ โ† Player Token (floats, bounces)                            โ”‚
โ”‚                                                                  โ”‚
โ”‚  [T1]โ”€โ”€[T2]โ”€โ”€[T3]โ”€โ”€[T4]โ”€โ”€[T5]โ”€โ”€[T6]โ”€โ”€[T7]โ”€โ”€[T8]โ”€โ”€[T9]โ”€โ”€[T10]๐Ÿ โ”‚
โ”‚  โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ• ROAD PATH โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ• โ”‚
โ”‚                                                                  โ”‚
โ”‚  [streetlamp] [tree] [hydrant] โ† decorative elements            โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

Tile States

  • Locked: Grayscale, opacity 40%, no interaction
  • Current: Full color, cyan glow, scale 115%, pulse animation
  • Complete: Full color, green border, opacity 70%

Player Movement

function moveToTile(index) {
  playSound('move');
  // Animate token position (0.8s cubic-bezier)
  // Update tile states
  // Scroll board if needed
  // After animation: triggerEncounter(index)
}

๐Ÿ”Š Audio System

Implementation: Web Audio API

No external files - all procedurally generated.

function playSound(type) {
  const ctx = new AudioContext();
  const osc = ctx.createOscillator();
  const gain = ctx.createGain();
  
  switch(type) {
    case 'tap':     // 800Hzโ†’600Hz, 100ms
    case 'move':    // 400Hzโ†’800Hz whoosh, 200ms  
    case 'success': // C-E-G arpeggio, 300ms
    case 'warning': // 200Hzโ†’150Hz descend, 200ms
    case 'coin':    // 1000Hz blip
    case 'victory': // Fanfare melody, 500ms
  }
}

Audio Init

Must initialize after user interaction:

document.getElementById('startBtn').addEventListener('click', () => {
  initAudio(); // Create AudioContext here
  startGame();
});

๐ŸŽฌ Cutscene System

Triggers

Event Cutscene
Game Start "Your journey begins..."
Readiness โ‰ฅ 50 "Halfway there!"
Tile 4 Complete "Pre-Approved!"
Risk โ‰ฅ 80 "Warning!"
Tile 9 (Boss) Boss intro
Game Complete Victory

Cutscene Structure

function showCutscene({ bg, icon, title, subtitle, duration }) {
  // 1. Pause input
  // 2. Fade in overlay
  // 3. Show background (optional parallax)
  // 4. Pop icon animation
  // 5. Typewriter title effect
  // 6. Hold duration
  // 7. Fade out
  // 8. Resume game
}

๐Ÿ“Š Data Collection

Intake Object

game.intake = {
  fundingType: 'cash' | 'mortgage',
  incomeType: 'w2' | 'self' | 'mixed',
  docs: {
    w2_2yrs: boolean,
    paystubs: boolean,
    bankStatements: boolean,
    taxReturns: boolean,
    pnl: boolean,
    bizBankStatements: boolean
  },
  creditBand: string,
  downPaymentBand: string,
  propertyType: string,
  neighborhoods: string[],
  hasKids: boolean,
  schoolsPriority: 'low' | 'medium' | 'high',
  subwayPriority: 'low' | 'medium' | 'high',
  subwayLines: string[],
  offerStrategy: string,
  inspectionChoice: string,
  underwritingChoice: string
}

๐Ÿ”ง Backend Integration

File Structure

Apps Script Project/
โ”œโ”€โ”€ Code.gs      # Server functions
โ””โ”€โ”€ Index.html   # Game (HTML + CSS + JS)

Code.gs Functions

function doGet() {
  return HtmlService.createHtmlOutputFromFile('Index')
    .setTitle('Wealth Path Quest');
}

function saveData(payload) {
  // Save to Google Sheet
  // payload = { profile, answers, intake }
}

function generatePDF(payload) {
  // Generate certificate PDF
  // Return { ok: true, url: driveUrl }
}

Frontend Calls

// Check environment
const inAppsScript = typeof google !== 'undefined' && google.script;

// Save
google.script.run
  .withSuccessHandler(r => {})
  .saveData(payload);

// PDF
google.script.run
  .withSuccessHandler(r => {
    if (r.ok) showDownloadLink(r.url);
  })
  .generatePDF(payload);

๐Ÿ–ผ๏ธ Asset Requirements

Sprites Needed

Player Avatars (64x64px) - 8 options

  • business_man, business_woman
  • casual_man, casual_woman
  • young_professional_m, young_professional_f
  • family_dad, family_mom

Board Tiles (48x48px) - 10 tiles

  • funding (bank), income_docs (papers), doc_inventory (clipboard)
  • pre_approval (checkmark), neighborhood (houses), property_type (house+magnifier)
  • offer (handshake), inspection (magnifier), underwriting (boss), closing (trophy)

Backgrounds (320x100px) - 3 parallax layers

  • city_skyline_far, city_skyline_mid, city_skyline_near

Cutscene BGs (320x180px) - 5 scenes

  • bank_interior, house_exterior, office, celebration, warning

UI Elements (9-slice)

  • button_gold, panel_dark, dialog_box, choice_card
  • stat_bar_frame, stat_bar_fills (4 colors)

๐ŸŽฏ Style Guide

Color Palette

--bg-dark: #0a0a12;
--bg-mid: #12121a;
--bg-light: #1a1a2e;
--gold: #d4af37;
--cyan: #00d4ff;
--green: #4ade80;
--red: #ef4444;
--orange: #f97316;
--purple: #a855f7;

Pixel Art Rules

  • Resolution: 32-64px sprites
  • Outline: 1-2px black
  • Colors per sprite: 8-12 max
  • Style: Pokemon Gameboy Color era
  • Background: Always transparent PNG

๐Ÿš€ Deployment

Game Deployment

  1. Upload WealthPathQuest_Saga_v8.html as index.html to your server
  2. Ensure video files are in /video/ directory
  3. Ensure avatar images are in /images/avatars/ directory

Google Apps Script Setup

  1. Go to script.google.com
  2. Create new project or open existing
  3. Replace code with contents of google_apps_script.js
  4. Update the Spreadsheet ID if needed (line 40, 108, etc.)
  5. Save the script (Ctrl+S)
  6. Deploy:
    • Click Deploy โ†’ Manage deployments
    • Click pencil icon to edit
    • Select New version
    • Click Deploy
  7. Copy the Web App URL to use in the game

Enabling Feedback Collection

The Feedback sheet is created automatically when:

  1. The Google Apps Script is updated with logFeedback function
  2. A new deployment version is created
  3. First feedback is submitted from the game

To manually create the Feedback sheet:

  1. Open your Google Apps Script
  2. Run the createDashboard function from the editor
  3. This will rebuild the Dashboard with Feedback formulas

FTP Deployment

# Upload to server
curl -T WealthPathQuest_Saga_v8.html ftp://ftp.burnsconsulting.us/wealthpathquest/index.html --user "username:password"

๐Ÿ“ File Structure

WealthPathGameFiles/
โ”œโ”€โ”€ WealthPathQuest_Saga_v8.html    # Main game file (v1.08)
โ”œโ”€โ”€ google_apps_script.js            # Google Apps Script backend
โ”œโ”€โ”€ README.md                        # This documentation
โ”œโ”€โ”€ scoreboard.html                  # Standalone scoreboard page
โ”œโ”€โ”€ test.html                        # Testing file
โ”‚
โ”œโ”€โ”€ downgrade/                       # Standalone minigames
โ”‚   โ”œโ”€โ”€ simple.html                  # Basic game version
โ”‚   โ”œโ”€โ”€ speed.html                   # Commission Dash standalone
โ”‚   โ””โ”€โ”€ underwriting.html            # Underwriting Boss standalone
โ”‚
โ”œโ”€โ”€ video/                           # Video backgrounds
โ”‚   โ”œโ”€โ”€ speed_round.mp4
โ”‚   โ”œโ”€โ”€ catch_the_deal.mp4
โ”‚   โ””โ”€โ”€ underwriting_boss.mp4
โ”‚
โ””โ”€โ”€ images/
    โ”œโ”€โ”€ avatars/                     # Player avatars
    โ”œโ”€โ”€ cutscene_BGs/                # Cutscene backgrounds
    โ””โ”€โ”€ city_background_layers/      # Parallax city layers

๐Ÿ”‘ Key URLs & Credentials

Resource URL/ID
Live Game https://wealthpathquest.com
Google Sheet 19oSd8J3GVoFTJiPGCusinST8yG8SY5D6HG1-his_Foc
GitHub Repo https://github.com/israelburns/WealthPathGame
Business Phone 347-709-2491

๐Ÿ“ LLM Prompt for Generating This Game

You are building a 2D side-scroller board game web app called "Wealth Path Quest".

TECH STACK:
- Single HTML file with inline CSS/JS
- Backend: Google Apps Script
- No external frameworks
- Audio: Web Audio API (procedural)

VISUAL STYLE:
- Pokemon Gameboy Color pixel art
- Dark theme (#0a0a12) with gold (#d4af37) accents
- 10-tile horizontal board with parallax background
- Player token moves along path

MECHANICS:
- 4 stats: Readiness, Risk, Timeline, Savings Power (0-100)
- Each tile = encounter with choices
- Choices modify stats with visual feedback
- Risk > 80 triggers delay event modal
- Cutscenes on milestones

DATA COLLECTION:
- Buyer intake: funding type, income type, docs checklist, 
  property type, neighborhoods, priorities
- Save to Google Sheets via Apps Script
- Generate PDF certificate at end

Implement the complete game with:
1. Start screen with "Tap to Start"
2. Avatar/name setup
3. 10-tile board with animations
4. Encounter system (choice, checklist, multi-select, tap)
5. Stat bars with animated feedback
6. Cutscenes with fade/typewriter effects
7. Summary screen with buyer snapshot
8. PDF download button
9. Play again functionality

Keep code organized with clear sections for:
CONFIG, STATE, AUDIO, UI, BOARD, ENCOUNTERS, CUTSCENES, BACKEND

๐ŸŽฎ Standalone Minigames

Located in /downgrade/ folder - standalone HTML versions of each minigame:

File Game Description
simple.html Basic Game Simplified version of the main game
speed.html Commission Dash Speed round as standalone arcade game
underwriting.html Underwriting Boss Word search puzzle standalone

Underwriting Boss Standalone Features

  • ๐Ÿ“‹ 10 real estate terms to find: DEED, TITLE, ESCROW, INCOME, LOAN, RATE, TAX, BANK, SIGN, CLOSE
  • โฑ๏ธ 90-second timer with warning colors
  • ๐Ÿ‘† Drag/swipe across letters (touch & mouse)
  • ๐ŸŽฌ Video background
  • ๐ŸŽต Background music after countdown
  • ๐ŸŽ‰ Happy/sad jingles based on performance
  • ๐Ÿ† Good (10/10) / OK (7+) / Bad (<7) ratings
  • ๐Ÿ’พ High score tracking (localStorage)
  • ๐Ÿ“ Lead capture form

๐Ÿ“œ Changelog

v1.08 (January 2026) - Current Release

  • Added minigame background music after countdown
  • Added happy/sad jingles based on minigame performance
  • Clickable phone icon to call business number
  • Enlarged broker avatar (90px โ†’ 130px)
  • Catch the Deal: Added broken house icon ๐Ÿš๏ธ
  • All minigames: Color-coded scores (green/yellow/red)
  • All minigames: Good/OK/Bad performance display with emojis
  • Feedback system with Google Sheets integration
  • Dashboard feedback summary section

v1.07

  • Video backgrounds for all minigames
  • Transparent UI elements over video
  • Speed Round: Flash/shake on wrong answers
  • Catch The Deal: Glowing lane dividers, house avatar

v1.06

  • Google Sheets scoreboard integration
  • PDF certificate generation
  • Session and choice tracking

v1.05

  • Three minigames: Speed Round, Catch The Deal, Underwriting Boss
  • Commission negotiation system
  • Property discount system

v1.0 - Initial Release

  • 10-tile board game
  • Avatar selection
  • Phone call dialogue system
  • Stat tracking system
  • Closing disclosure document

๐Ÿ”€ Branching Strategy

v1.08 is the stable base for all future development.

main (v1.08) โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ–บ
              โ”‚
              โ”œโ”€โ”€ feature/new-minigame
              โ”‚
              โ”œโ”€โ”€ feature/multiplayer
              โ”‚
              โ””โ”€โ”€ bugfix/xxx

To create a new feature branch:

git checkout main
git pull origin main
git checkout -b feature/your-feature-name

๐Ÿ“„ License

Proprietary - Burns Consulting Inc.

Israel Burns Licensed Real Estate Broker | NY #10301366295

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages