How to Use MarsCode and DeepSeek in VS Code to Create a Pygame Hello World App

Developing Pygame applications from scratch can be time-consuming, especially for beginners. However, with MarsCode AI and DeepSeek V3 in VS Code, you can automatically generate, modify, and optimize Pygame programs with just a few prompts.

In this tutorial, you will learn how to:
– Use MarsCode to generate a Pygame program.
– Customize colors, add interactive buttons, and enhance visual effects.
– Utilize AI to streamline development and improve productivity.

1. Installation and Setup

1️⃣ Open VS Code and install the MarsCode AI extension.
2️⃣ Launch MarsCode: Click the MarsCode icon on the sidebar.
3️⃣ Select the AI model: Choose DeepSeek V3 for faster response times.
4️⃣ You are now ready to generate and modify Pygame scripts with AI.

2. Generating a Pygame Script

1️⃣ In the MarsCode input box, enter the prompt:
“`
Generate a Pygame hello world program.
“`

2️⃣ Click Send, and DeepSeek V3 will generate the following code:

import pygame
import sys

pygame.init()

screen = pygame.display.set_mode((800, 600))
pygame.display.set_caption('Hello World with Pygame')

font = pygame.font.Font(None, 74)
text = font.render('Hello World', True, (255, 255, 255))

running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False

screen.fill((0, 0, 0))
screen.blit(text, (300, 250))
pygame.display.flip()

pygame.quit()
sys.exit()

✅ Run the Script:
– Right-click the Python file and select Run in Terminal.
– You will see a black window with white “Hello World” text.

3. Modifying the Program with AI

1️⃣ Enter the following prompt:
“`
Change the background color to blue, text to green, and add a red button that moves and blinks the text.
“`
2️⃣ Click Send.
3️⃣ MarsCode generates the updated code. Click Apply and run it.

4. Further Optimization

You can refine the program by:
– Adding rounded buttons.
– Improving the text animation speed.
– Enhancing visual appeal with better transitions.

✅ Example Prompt
“`
Make the button rounded, center the text, and add a 1-second delay between each animation step.
“`

Final Python source code:

import pygame
import sys

# Initialize Pygame
pygame.init()

# Set window size
screen_width = 800
screen_height = 600
screen = pygame.display.set_mode((screen_width, screen_height))

# Set window title
pygame.display.set_caption("Pygame Hello World")

# Set font and text
font = pygame.font.Font(None, 74)
text = font.render("Hello World!", True, (0, 255, 0))  # Change text color to green

# Button-related variables
button_color = (255, 0, 0)
button_rect = pygame.Rect(screen_width/2 - 50, screen_height/2 + 100, 100, 50)
button_font = pygame.font.SysFont('simhei', 36)  # Smaller font
button_text = button_font.render("Click", True, (255, 255, 255))

# Text animation variables
text_x = screen_width/2 - text.get_width()/2
text_direction = 1
animation_stage = 0  # 0: No animation, 1: Move left and right, 2: Blink
move_count = 0
blink_count = 0
last_time = 0  # For timing

# Main loop
while True:
    # Handle events
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            pygame.quit()
            sys.exit()
        elif event.type == pygame.MOUSEBUTTONDOWN:
            if button_rect.collidepoint(event.pos):
                animation_stage = 1
                move_count = 0
                blink_count = 0
                last_time = pygame.time.get_ticks()

    # Clear screen (change background color to blue)
    screen.fill((0, 0, 255))
    
    # Text animation
    current_time = pygame.time.get_ticks()
    if animation_stage == 1:  # Move left and right stage
        if current_time - last_time >= 1000:  # Pause for 1 second
            text_x += 5 * text_direction
            if text_x <= screen_width/2 - text.get_width()/2 - 50 or text_x >= screen_width/2 - text.get_width()/2 + 50:
                text_direction *= -1
                move_count += 1
                last_time = current_time
                if move_count >= 6:  # Move left and right 3 times
                    text_x = screen_width/2 - text.get_width()/2  # Return to the starting position
                    animation_stage = 2
                    last_time = pygame.time.get_ticks()
    elif animation_stage == 2:  # Blink stage
        if current_time - last_time >= 1000:  # Pause for 1 second
            blink_count += 1
            last_time = current_time
            if blink_count >= 3:  # Blink 3 times
                animation_stage = 0
    
    # Draw text (add blinking effect)
    if animation_stage != 2 or blink_count != 1:  # Hide text during the second blink
        screen.blit(text, (text_x, screen_height/2 - text.get_height()/2))
    
    # Draw rounded button
    pygame.draw.rect(screen, button_color, button_rect, border_radius=10)
    # Center button text
    text_width, text_height = button_text.get_size()
    screen.blit(button_text, (button_rect.x + (button_rect.width - text_width)/2, 
                             button_rect.y + (button_rect.height - text_height)/2))
    
    # Update display
    pygame.display.flip()

5. Conclusion

Using MarsCode AI and DeepSeek V3 in VS Code empowers you to:
– Quickly generate and modify Pygame scripts.
– Efficiently implement interactive UI elements.
– Speed up development with AI-powered code generation.

Try integrating MarsCode into your Python projects to enhance productivity and streamline your workflow! 🚀

6. Demo Video

You can watch the following demo video by select the subtitle to your preferred subtitle language.

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top