Skip to content
This repository was archived by the owner on Dec 23, 2025. It is now read-only.
This repository was archived by the owner on Dec 23, 2025. It is now read-only.

4 Evolve the Swarm: Design Enemies with Smarter, Deadlier AI #66

@SauravGitte

Description

@SauravGitte

🧠 Add New Complex Enemy Types with Modified Behaviors

🎯 Overview

We're looking to expand our enemy roster by creating derived enemy classes with more complex behaviors. These new enemies should inherit from existing base enemy classes while implementing unique attack patterns and abilities. (Pink Rectangle around Player is Just to show collision boundary.)

Image

📁 Current Structure

  • Base Classes in enemy.py:
    • Basic: Enemy, EvilWizard, FlyingEye, Goblin, Mushroom, Skeleton
    • Example derived classes:
      • DashingGoblin (lines 445-495): Regular enemy with dash attack
      • BigFlyingEye (lines 263-443): Mini-boss example (for reference only)

📋 Requirements

🔧 Technical Guidelines

  1. Create new enemy classes by inheriting from existing basic enemy classes
  2. Focus on creating regular enemies rather than mini-bosses
  3. Implement unique behavior patterns by overriding base class methods
  4. Consider game balance parameters in your design

🎨 Available Resources

Special Effects and Projectiles Location:

Sprites/Sprites_Effect/Bullets/
  • Available Assets: : Animated GIFs , Images (e.g., 12.png) , Special effect spritesheets (requires parsing)

⚠️ Important: Always use forward slashes (/) in paths, not backslashes


🧪 Testing Implementation

  1. Add imports in main.py (line 5):

    from enemy import FlyingEye, Goblin, ..., NewEnemyClass
  2. Include in wave data ( in main.py ) (lines 38-70):

    waves = [
        {
            'enemies': [(NewEnemyClass, count, spawn_delay)],
            'message': "Wave X: Your Message Here"
        }
    ]

3.How to Run project:
Open Root folder(Swarmshot folder) with V S code. Then, From the left Explorer panel , open the 'main.py' and run it .


⚖️ Game Balance Parameters

  • Balanced for player health (100) and weapon damage (30 per bullet)
  • Creative use of sprite effects
  • Unique behavior patterns (Ex.Skeleton Using Shields , Mushrooms blasting after Death,etc )
  • Clean, efficient code
  • Good performance

💡 Tip: Check DashingGoblin class (lines 445-495) for implementation example

Metadata

Metadata

Assignees

No one assigned

    Labels

    SkilledenhancementNew feature or requesteveryoneFor competitive issues, best PRs are only merged, no need to assign yourselfopen-for-allAny one can work on it without getting assigned, every PR can merge

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions