Skip to content

chrisatom1998/AddictiveGame

Repository files navigation

Home Sweet Puzzle - Match-3 Renovation Game

A comprehensive match-3 puzzle game with home renovation mechanics, featuring progressive storylines, currency systems, and monetization strategies.

๐ŸŽฎ Game Overview

Home Sweet Puzzle combines addictive match-3 puzzle gameplay with satisfying home renovation mechanics. Players complete puzzle levels to earn currency, which they spend on furniture and decorations to transform rundown spaces into beautiful homes.

Core Features

  • Match-3 Puzzle Engine: Swap tiles, create matches, and use power-ups
  • Home Renovation System: Purchase and place furniture in multiple rooms
  • Progressive Storyline: Character-driven narrative that unlocks with progress
  • Currency Economy: Coins and stars with balanced earning/spending mechanics
  • Monetization Integration: In-app purchases, ads, and season pass system

๐Ÿ–ผ๏ธ Gameplay Screenshots

Experience the visual richness and engaging gameplay mechanics of Home Sweet Puzzle through our comprehensive screenshot gallery.

๐Ÿงฉ Match-3 Puzzle Gameplay

Get a feel for the core puzzle mechanics that drive the game experience.

Match-3 Gameplay Board Colorful match-3 puzzle board with various tile types and objectives

Power-ups in Action Special power-ups creating explosive chain reactions

Combo Effects Satisfying cascade effects from strategic tile matches

๐Ÿ  Home Renovation Interface

See how puzzle success translates into beautiful home transformations.

Room Before Renovation A room waiting to be transformed with your design choices

Furniture Selection Browse and select from hundreds of furniture items across different categories

Room After Renovation The same room completely transformed into a beautiful living space

๐Ÿ’ฌ Character Dialog System

Discover the rich storyline that unfolds as you progress through the game.

Character Introduction Meet Maya, your renovation mentor, who guides you through your first projects

Story Progression Engaging narrative that provides context and motivation for each renovation project

Dialog Choices Make meaningful choices that affect your relationships and story outcomes

๐Ÿ›’ Shop & Monetization Features

Explore the various ways to enhance your gameplay experience.

Currency Display Track your coins, stars, and lives with the intuitive currency interface

Power-up Shop Purchase helpful boosters and power-ups to tackle challenging levels

Season Pass Unlock exclusive content and rewards with the premium season pass

Note: Screenshots show placeholder content. Actual gameplay may vary as features are continuously updated and improved.

๐Ÿš€ Getting Started

Prerequisites

  • Modern web browser (Chrome, Firefox, Safari, Edge)
  • Local web server (for development)

Installation

  1. Clone or download the project files
  2. Open index.html in a web browser, or
  3. Serve the files using a local web server:
# Using Python 3
python -m http.server 8000

# Using Node.js (http-server)
npx http-server

# Using PHP
php -S localhost:8000
  1. Navigate to http://localhost:8000 in your browser

๐ŸŽฏ Gameplay Loop

  1. Play Puzzle Levels: Complete match-3 challenges with limited moves
  2. Earn Currency: Receive coins and stars based on performance
  3. Buy Furniture: Purchase items from different categories (Essential, Decorative, Premium)
  4. Decorate Rooms: Place furniture to increase room completion stars
  5. Unlock Content: Progress through story and unlock new rooms/features

๐Ÿ—๏ธ Project Structure

/
โ”œโ”€โ”€ index.html                 # Main game entry point
โ”œโ”€โ”€ css/                       # Stylesheets
โ”‚   โ”œโ”€โ”€ main.css              # Core UI styles
โ”‚   โ”œโ”€โ”€ puzzle.css            # Match-3 game styles
โ”‚   โ””โ”€โ”€ renovation.css        # Renovation interface styles
โ”œโ”€โ”€ js/                       # JavaScript modules
โ”‚   โ”œโ”€โ”€ core/                 # Core game systems
โ”‚   โ”‚   โ”œโ”€โ”€ Game.js           # Main game controller
โ”‚   โ”‚   โ”œโ”€โ”€ StateManager.js   # Game state management
โ”‚   โ”‚   โ””โ”€โ”€ SaveSystem.js     # Save/load functionality
โ”‚   โ”œโ”€โ”€ puzzle/               # Match-3 game logic
โ”‚   โ”‚   โ”œโ”€โ”€ PuzzleEngine.js   # Core puzzle mechanics
โ”‚   โ”‚   โ”œโ”€โ”€ Board.js          # Game board management
โ”‚   โ”‚   โ”œโ”€โ”€ Tile.js           # Individual tile logic
โ”‚   โ”‚   โ””โ”€โ”€ PowerUps.js       # Special abilities
โ”‚   โ”œโ”€โ”€ renovation/           # Home renovation system
โ”‚   โ”‚   โ”œโ”€โ”€ RenovationManager.js # Renovation controller
โ”‚   โ”‚   โ”œโ”€โ”€ Room.js           # Room management
โ”‚   โ”‚   โ”œโ”€โ”€ Furniture.js      # Furniture items
โ”‚   โ”‚   โ””โ”€โ”€ Inventory.js      # Player inventory
โ”‚   โ”œโ”€โ”€ economy/              # Currency and monetization
โ”‚   โ”‚   โ”œโ”€โ”€ Currency.js       # Currency management
โ”‚   โ”‚   โ”œโ”€โ”€ Shop.js           # In-app purchases
โ”‚   โ”‚   โ””โ”€โ”€ Rewards.js        # Achievements and bonuses
โ”‚   โ”œโ”€โ”€ story/                # Narrative system
โ”‚   โ”‚   โ”œโ”€โ”€ StoryManager.js   # Story progression
โ”‚   โ”‚   โ””โ”€โ”€ DialogSystem.js   # Character interactions
โ”‚   โ””โ”€โ”€ ui/                   # User interface
โ”‚       โ”œโ”€โ”€ UIManager.js      # UI controller
โ”‚       โ”œโ”€โ”€ MenuSystem.js     # Navigation
โ”‚       โ””โ”€โ”€ Notifications.js  # Feedback system
โ””โ”€โ”€ assets/                   # Game assets (placeholder)
    โ”œโ”€โ”€ images/               # Graphics and sprites
    โ”œโ”€โ”€ sounds/               # Audio files
    โ””โ”€โ”€ data/                 # Game data files

๐ŸŽจ Game Systems

Match-3 Puzzle Engine

  • Board Management: 8x8 grid with customizable tile types
  • Match Detection: Horizontal and vertical matches of 3+ tiles
  • Cascade Mechanics: Tiles fall and refill automatically
  • Power-ups: Hammer, Bomb, Shuffle, and special tiles
  • Objectives: Collect specific tile types or clear obstacles

Renovation System

  • Multiple Rooms: Kitchen, Living Room, Bedroom, and more
  • Furniture Categories: Essential, Decorative, and Premium items
  • Placement System: Drag-and-drop with collision detection
  • Star Rating: 1-3 stars based on room completion
  • Theme Compatibility: Furniture themes affect bonuses

Currency Economy

  • Coins: Primary currency for furniture and boosters
  • Stars: Premium currency for exclusive items
  • Lives: Energy system for playing levels
  • Daily Bonuses: Login rewards and consecutive day bonuses

Monetization Features

  • In-App Purchases: Currency packs, boosters, premium furniture
  • Rewarded Ads: Free currency, extra moves, bonus lives
  • Season Pass: Monthly subscription with exclusive content
  • Limited Events: Special offers and themed content

๐Ÿ”ง Development

Key Classes

  • Game: Main controller managing all systems
  • PuzzleEngine: Core match-3 game logic
  • RenovationManager: Handles furniture and room management
  • Currency: Manages all in-game currencies and transactions
  • StoryManager: Controls narrative progression and character dialogs

Adding New Content

New Furniture Items

// Add to Inventory.js furniture database
'new_item_id': {
    name: 'Item Name',
    type: 'furniture_type',
    category: 'essential|decorative|premium',
    price: 500,
    currency: 'coins|stars',
    size: { width: 80, height: 60 },
    theme: 'modern|traditional|luxury'
}

New Puzzle Levels

// Add to PuzzleEngine.js level configuration
levelNumber: {
    moves: 25,
    objectives: { red: 10, blue: 8 },
    boardSize: { width: 8, height: 8 },
    tileTypes: ['red', 'blue', 'green', 'yellow'],
    obstacles: []
}

New Story Content

// Add to StoryManager.js story content
'story_id': {
    title: 'Story Title',
    character: 'character_id',
    dialogs: [/* dialog objects */],
    rewards: { coins: 100, stars: 1 },
    unlockRequirement: { type: 'level', value: 5 }
}

๐ŸŽฎ Controls

Puzzle Game

  • Mouse/Touch: Click and drag to swap tiles
  • Power-ups: Click power-up buttons, then click target
  • Pause: Click pause button or press 'P'

Renovation Mode

  • Furniture Selection: Click furniture cards to select
  • Placement: Click in room to place selected furniture
  • Categories: Switch between Essential, Decorative, Premium tabs

General Navigation

  • Back Buttons: Return to previous screen
  • Escape Key: Close modals and dialogs
  • Keyboard Shortcuts: 'S' to save, 'R' to refresh room

๐Ÿ”ฎ Future Enhancements

Planned Features

  • Multiplayer: Compete with friends in puzzle challenges
  • Guilds: Join teams for collaborative events
  • AR Mode: View renovated rooms in augmented reality
  • Custom Rooms: Create and share room designs
  • Seasonal Events: Holiday-themed content and rewards

Technical Improvements

  • WebGL Renderer: Enhanced graphics and animations
  • Audio System: Background music and sound effects
  • Analytics Integration: Player behavior tracking
  • Cloud Save: Cross-device progress synchronization
  • Localization: Multi-language support

๐Ÿ“ฑ Mobile Optimization

The game is designed to be mobile-friendly with:

  • Responsive Design: Adapts to different screen sizes
  • Touch Controls: Optimized for touch input
  • Performance: Efficient rendering for mobile devices
  • Offline Play: Core gameplay works without internet

๐Ÿ› ๏ธ Customization

Themes and Styling

  • Modify CSS files to change visual appearance
  • Update color schemes in CSS custom properties
  • Replace placeholder graphics with custom artwork

Game Balance

  • Adjust currency earning rates in Currency.js
  • Modify furniture prices in Inventory.js
  • Tune puzzle difficulty in PuzzleEngine.js

Monetization Settings

  • Configure IAP prices in Shop.js
  • Adjust ad reward amounts in Currency.js
  • Customize season pass benefits in Shop.js

๐Ÿ“„ License

This project is provided as an educational example. Feel free to use and modify for learning purposes.

๐Ÿค Contributing

This is a demonstration project, but suggestions and improvements are welcome! Consider:

  • Code optimization and best practices
  • Additional game features and mechanics
  • UI/UX improvements
  • Mobile performance enhancements

๐Ÿ“ž Support

For questions about the code structure or implementation details, please refer to the inline documentation within each JavaScript file.

๐ŸŽฎ Live Demo

Ready to experience Home Sweet Puzzle? Here's how to get started:

๐Ÿ–ผ๏ธ Preview the Game

Before diving in, check out our Gameplay Screenshots section above to see:

  • Match-3 puzzles with colorful tiles and power-ups
  • Renovation interface showing before/after transformations
  • Character interactions that drive the engaging storyline
  • Shop features for boosters and premium content

๐Ÿš€ Try It Yourself

  1. Launch the game: Open index.html in your web browser
  2. Learn the basics: Start with the tutorial level to master the mechanics
  3. Earn currency: Complete puzzle levels to collect coins and stars
  4. Transform rooms: Use your earnings in renovation mode to decorate spaces
  5. Enhance gameplay: Visit the shop for helpful power-ups and premium content

The screenshots above show exactly what you'll experience during each step of this journey!

๐Ÿณ Docker Development Environment

Experience seamless development with our containerized environment that serves the game's static assets via HTTP.

๐Ÿš€ Quick Start with Docker

  1. Build and run the game server:

    docker-compose up --build
  2. Access the game:

  3. Stop the containers:

    docker-compose down

๐Ÿ› ๏ธ Docker Commands

# Build the Docker image
docker build -t addictive-game .

# Run production container
docker-compose up game-server

# Run development environment with live file watching
docker-compose --profile dev up game-dev

# View running containers
docker-compose ps

# View container logs
docker-compose logs game-server

# Remove containers and networks
docker-compose down --remove-orphans

๐Ÿ“‹ Docker Environment Features

  • ๐Ÿ”’ Security: Non-root user, minimal attack surface
  • ๐Ÿ“ฆ Optimized: Multi-stage build with .dockerignore
  • ๐Ÿ”„ Caching: Efficient layer caching for faster builds
  • ๐Ÿฉบ Health Checks: Built-in container health monitoring
  • ๐ŸŒ CORS: Cross-origin resource sharing enabled
  • ๐Ÿ”ง Development: Optional dev mode with volume mounting

๐Ÿ“ What Gets Served

The Docker container serves all static game assets from app/src/main/assets/:

  • index.html - Main game entry point
  • css/ - Stylesheets for game interface
  • js/ - Complete JavaScript game engine

Perfect for Android development environments, testing, and deployment!

๐Ÿ† Game Statistics

  • 24 JavaScript files with over 9,000 lines of code
  • Complete match-3 engine with advanced mechanics
  • Full renovation system with multiple room types
  • Comprehensive monetization framework
  • Mobile-optimized responsive design
  • Production-ready architecture

Home Sweet Puzzle - Transform houses into homes, one match at a time! ๐Ÿ โœจ

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •