1 of 15

CPSC 4160/6160: Milestone 1 Presentation�(Final Project Version)�

Nicholas Jordan

CPSC 4160

2 of 15

Game description

Game title:

Covert Wizard

Genre:

Stealth/Action

The player defeats monsters using magic attacks to save soldiers

3 of 15

Game description

Game Objectives:

The Wizard uses magic to defeat monsters that are harassing soldiers. However, the soldiers are scared of wizards, so you must help them without being seen.

4 of 15

Game description

Game Objectives:

The game uses a top-down perspective

The player must use magic attacks to defeat monsters and save soldiers, preferably without being spotted

The player can avoid detection by hiding behind objects or by using special techniques like an invisibility spell

5 of 15

Game information

Skill rating: 10+ year-olds.

Moderate skill may be required to fully enjoy this game.

Players need to be able to defeat monsters, and have the patience to play carefully and stealthily

Audience: Anyone ~10 years old and older

6 of 15

Game references

7 of 15

8 of 15

Entities – Player character

The Wizard

-The player controls this character to move and attack enemies

-Move with WASD

-Aim with mouse

-Use attack spells with left click

-Use utility spells with right click

-This entity will mostly be manipulated with pygame’s sprite and rect functionality, to track position and collisions

Sprites by Penzilla on Itch.io

9 of 15

Entities - Soldiers

Soldiers

-Will attack the player

-Saving the soldiers from monsters is the main objective of the game

-Will be manipulated with pygame’s sprite and rect functions

Sprites by Pixel Frog on Itch.io

10 of 15

Entities – Monsters

Monsters

-Will attack the player

-Mechanically very similar to soldiers, the main difference being the player must defeat them instead of saving them

Sprites by Pixel Frog on Itch.io

11 of 15

Game mechanics

  • Move and Aim: The player can move The Wizard with WASD and aim attacks with the mouse

  • Stealth: The player must attempt to avoid detection by both monsters and soldiers, both of which may attack The Wizard if they spot them

  • Spells: The player has access to spells for both attacking enemies and other uses
    • Fire: Typical projectile that travels a good distance in a straight line
    • Invisibility: Turns the player invisible to aid in stealth, but can only be used for a limited time

12 of 15

Player’s mechanics

The Wizard’s mechanics

  • Moving
  • Aiming
  • Attacking with Spells
  • Utility Spells
  • Stealth

13 of 15

Modules

The necessary modules include:

-Player Character

-NPCs (Soldiers and Monsters can likely share code/be children of one class)

-Projectiles

-Area/level data or collision

The character movement will be pretty standard “move X pixels per frame while key is held” without fancy acceleration

Allowing the player to aim/shoot in all directions may be more challenging

The most challenging mechanics to implement will likely be monsters and soldiers interacting with each other, detecting the player, and chasing the player

14 of 15

Software architecture

The player will be controlled by

Using pygame events to interpret

WASD and mouse inputs

Collisions between entities will be

handled with pygame functions such as

pygame.sprite.spritecollide()

Collisions between an entity and

environmental collision will be handled

either with similar functions or using a

mask for the environmental obstacles

15 of 15

Timeline

For Milestone 2 I would like to have the basics of moving and firing projectiles as well

as having the projectiles interact with enemies, but NPC behaviors will likely not

be finished for milestone 2 and the environments may be very simple.

Tentative timeline:

10/24 – Character can move with correct animations and fire projectiles in at least some directions

10/31 – Projectile can be fired correctly in all directions, enemies exist and can be hit by projectiles