1001 Freelance Projects
Latest Projects from
Freelance Marketplaces
View Project
View this project in detail
(Note: you will be redirected to external marketplace)
Project title:
A 2D Shooter game
Posted by:
External project from PeoplePerHour
Started:
28-Nov-2024 04:45 GMT
Description:
Project: "Space Invader Clone" – A Simple 2D Shooter Game in Python

Overview:
The project is a basic 2D space shooter game inspired by the classic Space Invaders. Using Python and the Pygame library, the game will allow players to control a spaceship at the bottom of the screen, shooting at alien invaders falling from the top. The goal is to eliminate all the aliens while avoiding their projectiles. The game will feature simple mechanics, including shooting, moving left and right, and dodging enemy attacks.

Key Features:
Player Movement:

The player controls a spaceship at the bottom of the screen that can move left and right using the keyboard (e.g., arrow keys or 'A' and 'D').
Shooting Mechanism:

The player can shoot bullets upwards to destroy enemies by pressing a key (e.g., spacebar). The bullets travel vertically until they hit an alien or move off the screen.
Enemy Movement:

Aliens move horizontally across the screen. When they reach the edge, they drop down and reverse direction, gradually getting closer to the player's spaceship.
Collisions:

The game detects collisions between player bullets and aliens as well as between alien bullets and the player's spaceship.
Game Over and Scoring:

The game ends when the player’s spaceship is hit by an alien's projectile or if the aliens reach the bottom of the screen.
The player earns points by destroying aliens, and the score is displayed at the top of the screen.
Levels of Difficulty:




# Initialize Pygame
pygame.init()

# Game window setup
screen_width = 800
screen_height = 600
screen = pygame.display.set_mode((screen_width, screen_height))
pygame.display.set_caption("Space Invader Clone")

# Colors
WHITE = (255, 255, 255)
GREEN = (0, 255, 0)
RED = (255, 0, 0)

# Game clock
clock = pygame.time.Clock()

# Game Objects
class Player(pygame.sprite.Sprite):
def __init__(self):
super().__init__()
self.image = pygame.Surface((50, 50))
self.image.fill(GREEN)
self.rect = self.image.get_rect()
self.rect.center = (screen_width // 2, screen_height - 50)
self.speed = 5

def update(self):
keys = pygame.key.get_pressed()
if keys[pygame.K_LEFT]:
self.rect.x -= self.speed
if keys[pygame.K_RIGHT]:
self.rect.x += self.speed
if self.rect.left screen_width or self.rect.left < 0:
self.rect.y += 20
self.rect.x *= -1

class Bullet(pygame.sprite.Sprite):
def __init__(self, x, y, direction):
super().__init__()
self.image = pygame.Surface((5, 10))
self.image.fill(WHITE)
self.rect = self.image.get_rect()
self.rect.center = (x, y)
self.direction = direction

def update(self):
if self.direction == "up":
self.rect.y -= 10
elif self.direction == "down":
self.rect.y += 10
if self.rect.bottom screen_height:
self.kill()

# Initialize game objects
player = Player()
all_sprites = pygame.sprite.Group()
all_sprites.add(player)

aliens = pygame.sprite.Group()
for i in range(5):
for j in range(5):
alien = Alien(100 + i*60, 50 + j*50)
aliens.add(alien)
all_sprites.add(alien)

# Main Game Loop
running = True
while running:
clock.tick(60) # 60 FPS
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False

# Update game objects
all_sprites.update()

# Check for bullet-alien collisions
for bullet in all_sprites:
if isinstance(bullet, Bullet):
if pygame.sprite.spritecollide(bullet, aliens, True):
bullet.kill() # Destroy bullet and alien
score += 10

# Draw everything
screen.fill((0, 0, 0))
all_sprites.draw(screen)
pygame.display.flip()

pygame.quit()
Project ID:
3410149
Project category:
Project budget:
View this project in detail
(Note: you will be redirected to external marketplace)
Last Projects / Browse Projects
  Project Started
Virtual assistance for testing in Burkina Faso, Cameroon, Ghana and Guinea
Category: Data Entry, Data Scraping, Excel, Mobile App Testing, Software Testing, Test Automation, Testing / QA, Virtual Assistant
Budget: $250 - $750 USD
06 Feb 2026 11:04 GMT
Framer & SEO Content Assistance
Category: Content Development, Content Writing, Copywriting, Figma, Framer, Internet Marketing, SEO, Web Design
Budget: $2 - $8 USD
06 Feb 2026 11:04 GMT
E-commerce Website for Branded Watches
Category: ECommerce, Graphic Design, Magento, Shopify, Web Development, Web Design, WooCommerce
Budget: ₹1500 - ₹12500 INR
06 Feb 2026 11:04 GMT
Upgrade Existing Excel VBA Automation
Category: Automation, Data Analysis, Data Processing, Excel, Excel VBA, Visual Basic, Visual Basic For Apps
Budget: ₹2000 - ₹7000 INR
06 Feb 2026 11:04 GMT
USA Package Handling and Photo Service
Category: Customer Service, Delivery, Inventory Management, Logistics, Photography, Product Photography, Shipping, Supply Chain
Budget: $2 - $8 USD
06 Feb 2026 11:03 GMT
Engineer for High-Demand Online Booking Optimization
Category: API Development, Automation, Continuous Integration, DevOps, JavaScript, Reverse Engineering, Software Engineering, System Analysis, Web Development, Web Scraping
Budget: ₹75000 - ₹150000 INR
06 Feb 2026 11:03 GMT
Car Parts Customizer Development with 3d rendering ( wordpress plugin need)
Category: JavaScript, JQuery, MySQL, PHP, Plugin, Web Design, Web Development, WooCommerce, WordPress, WordPress Plugin
Budget: ₹600 - ₹20000 INR
06 Feb 2026 11:02 GMT
Industrial Color Revamp for Existing Logo
Category: Adobe Illustrator, Photoshop, Branding, Graphic Design, Illustration, Logo Design, Vector Design
Budget: $30 - $250 USD
06 Feb 2026 11:02 GMT
Need to connect payment gateway with magento website
Category: API Development, HTML, JavaScript, Magento 2, MySQL, PHP
Budget: ₹600 - ₹1500 INR
06 Feb 2026 11:01 GMT
Automated weekly Index Options Tracking -upstox api & Alert System Live to whatsapp number when condition satisified
Category: API, Automation, Data Analysis, Data Processing, Data Visualization, Excel, Python
Budget: ₹1500 - ₹12500 INR
06 Feb 2026 11:00 GMT
Modern Corporate Website Design
Category: Adobe Dreamweaver, Adobe InDesign, Figma, Graphic Design, HTML, UI / User Interface, User Interface / IA, UX / User Experience, Web Design
Budget: ₹1500 - ₹12500 INR
06 Feb 2026 10:59 GMT
Site Verification in Breukelen, Utrecht, Netherlands
Category: Business Analysis, Inspections, Local Job, Photography, Travel Ready
Budget: $30 - $50 USD
06 Feb 2026 10:59 GMT
Instagram Reels Editor Required -- 2
Category: A / V Editing, After Effects, Animation, Audio Services, Instagram, Sound Design, Video Ads, Video Editing, Video Production
Budget: 50 INR/reel Project: 50 Reels (approx
06 Feb 2026 10:58 GMT
2BHK Interior Design – 3D Rendering (Modular Kitchen, Wardrobe, Bed, TV Unit)
Category: 3D Architecture, 3D Graphic Design, 3D Modelling, 3D Rendering, 3D Visualization, Interior Design
Budget: ₹1500 - ₹12500 INR
06 Feb 2026 10:58 GMT
Temu & Amazon Listing Upload
Category: Amazon, Compliance, Data Entry, Data Management, EBay, ECommerce, Excel, Keyword Research, Product Descriptions, SEO
Budget: €8 - €30 EUR
06 Feb 2026 10:57 GMT
Browse All Projects
Projects by Skills ...
android
ajax
asp
aspnet
cms
cpp
csharp
css
delphi
design
drupal
excel
facebook
flash
html
java
javascript
joomla
iphone
mysql
photoshop
php
python
ruby
seo
sql
sysadm
translate
typing
twitter
vbnet
xml
wordpress
writing
New!
Проекты на русском
(Projects in Russian)

Copyright © 2005-2025
1001 Freelance Projects