Skip to content

🎮 Comprehensive tower defense game featuring Stick of War campaign mode and Bokemon vs Stick survival mode. Built with Python and Pygame, showcasing complete user management, progression mechanics, and cross-platform deployment. Built by a first-year programming student, testament to their capabilities.

Notifications You must be signed in to change notification settings

EwenCheung/Dual-Defence-v3-latest

Repository files navigation

🛡️ Dual-Defence

A Journey Through Code and Combat

About This Project

Dual-Defence (also known as Stick Defend) represents our first major coding adventure - a tower defense game born from curiosity, countless debugging sessions, and the excitement of bringing our ideas to life. Built with Python and Pygame, this project showcases what passionate first-year programming students can create when they put their minds to it.

What started as a simple learning exercise evolved into a comprehensive gaming experience featuring two distinct game modes, complete user management, and an engaging progression system. Every line of code tells the story of our growth as developers.

Contributors & Development History

This project has evolved through multiple iterations, each representing our growth as developers:

🌟 Current Version (Legacy-v3 - Main Branch)

Lead Developer: Ewen Cheung (@EwenCheung)

  • Complete game overhaul and optimization
  • Enhanced user experience and performance improvements
  • Modern codebase architecture
  • Fix Bug from Legacy-v2

📚 Previous Versions

Legacy-v1 & Legacy-v2 Branches

  • Ewen Cheung (@EwenCheung) - Lead Developer, core game mechanics, feature development, and overall architecture and game features
  • DAKHINESWARAN (@DAKHINESWARAN) - Timing systems, spell mechanics, art design, and game features
  • mo12k (@mo12k) - Ninja mechanics in Bokemon vs Stick, art design, store system, and game features

This game represents our collective journey as first-year programming students, learning to code while building something we're genuinely proud of.

Game Features

🎮 Two Game Modes

1. Stick of War (Main Campaign)

  • Objective: Defend your castle while attacking the enemy castle
  • Levels: 10 progressive levels with increasing difficulty
  • Troops: Deploy various stick figure warriors including:
    • Warrior: Balanced melee fighter
    • Archer: Long-range attacker
    • Sparta: Heavy armored unit
    • Wizard: Magical ranged attacker
    • Giant: Powerful tank unit
  • Spells: Use special abilities:
    • Rage: Increases troop damage and speed
    • Healing: Restores troop health
    • Freeze: Slows down enemy troops
  • Resources: Manage gold and diamonds for troop deployment and spells
  • Star Rating: Earn 1-3 stars based on completion time
  • Progression: Unlock new levels by completing previous ones

2. Bokemon vs Stick (Survival Mode)

  • Objective: Survive waves of ninja attacks using Pokemon-style defenders
  • Pokemon Defenders:
    • Machine: Generates poke balls (resources) and has 300 health
    • Pikachu: Long-range attacker (25 damage, 180 health)
    • Squirtle: Balanced defender (18 damage, 200 health)
  • Enemy Ninjas:
    • Naruto: 20 damage, 120 health
    • Sasuke: 15 damage, 110 health
    • Kakashi: High-speed ninja (25 damage, 110 health)
  • Wave System: Difficulty increases every minute with faster spawning
  • Resource Management: Use poke balls to deploy Pokemon defenders

🏪 Store & Upgrade System

  • Troop Upgrades: Enhance health, damage, and special abilities
  • Castle Improvements: Upgrade health and mining speed
  • Spell Enhancements: Improve spell effectiveness and unlock new abilities
  • Equipment System: Equip and manage your arsenal

👤 User Management

  • Account System: Sign up, sign in, or play as guest
  • Progress Saving: All progress automatically saved to database
  • User Profiles: Track individual player statistics and unlocks

💰 Economy System

  • Currency: Earn money and diamonds through gameplay
  • Rewards: Get bonuses based on performance and star ratings
  • Pricing: Dynamic pricing for upgrades and purchases

Gameplay Mechanics

Stick of War Mechanics

  • Real-time Strategy: Deploy troops strategically while managing resources
  • Castle Health: Protect your castle while destroying the enemy's
  • Time-based Scoring: Faster completion earns better rewards
  • Progressive Difficulty: Each level introduces new challenges

Bokemon vs Stick Mechanics

  • Tower Defense: Place Pokemon defenders to stop ninja waves
  • Resource Generation: Machine Pokemon generate poke balls over time
  • Wave Progression: Enemies get faster and more numerous each wave
  • Survival Focus: No win condition - survive as long as possible

Controls

  • Mouse: Point and click for all interactions
  • Drag & Drop: Deploy units by dragging cards to battlefield
  • Hotkeys: 'H' for help menu in Bokemon vs Stick mode

Technical Features

  • Built with Love: Developed using Python and Pygame during our first year of programming
  • Database Integration: Persistent data storage keeps your progress safe
  • Immersive Audio: Background music and sound effects enhance the gaming experience
  • Smooth Graphics: Custom sprite animations and visual effects at 60 FPS
  • Cross-Platform: Runs on desktop and web browsers

Getting Started

🎮 Play Online

Experience the game instantly: Play on GitHub Pages

💻 Run from Source

Want to explore the code? Here's how to get started:

git clone https://github.com/EwenCheung/Dual-Defence.git
cd Dual-Defence
python main.py

Make sure you have Python and Pygame installed on your system.

Game Progression

  1. Start: Create account or play as guest
  2. Choose Mode: Select between Stick of War or Bokemon vs Stick
  3. Play Levels: Progress through increasingly difficult challenges
  4. Earn Rewards: Collect money and diamonds for upgrades
  5. Upgrade: Improve troops, spells, and castle in the store
  6. Repeat: Continue advancing through all 10 levels

Tips for Success

  • Resource Management: Balance spending between troops and upgrades
  • Strategic Deployment: Different troops excel in different situations
  • Timing: Use spells at crucial moments for maximum impact
  • Upgrades: Invest in castle and troop improvements early
  • Star Collection: Aim for 3-star ratings for maximum rewards

Enjoy defending your realm in this epic stick figure battle!

About

🎮 Comprehensive tower defense game featuring Stick of War campaign mode and Bokemon vs Stick survival mode. Built with Python and Pygame, showcasing complete user management, progression mechanics, and cross-platform deployment. Built by a first-year programming student, testament to their capabilities.

Topics

Resources

Stars

Watchers

Forks

Contributors 3

  •  
  •  
  •