1 of 18

CPSC 4160/6160: Milestone 1 Presentation�

Austin Hartley

CPSC 6160

2 of 18

Game description

Name title:

Exiled Legends

Genre:

Exiled Legends is a 2.5D isometric survival game

Exiled Legends is a survival game set in a zombie apocalypse where freedom fighters have been exiled to a zombie infested island with an active volcano for the entertainment of the elite over generations. A story was passed down that a survivor of the games will lead the liberation. Is it just an urban myth so those chosen to fight have a glimpse of hope or is exile truly a death sentence? You’re an archer for the freedom fighters and have been selected for the next game. Do you have what it takes to become a legend?

3 of 18

Game description

Game Objectives:

The game takes place in an arena where projectiles and enemies will spawn in, with the ability to kill the player on impact. The gameplay involves the player traversing the arena by dodging the projectiles and killing the enemies pursuing them via their chosen character. There are four levels where the enemies will become faster and spawn more frequently.

The characters will have abilities that will all act as skill shots to kill enemies. The characters will also have mobility abilities that will give powers to help dodge enemy projectiles. The goal is to live as long as possible as your score is based off seconds alive.

4 of 18

Game information

Skill rating: 13+ year-olds.

The required skills to enjoy this game include comfortability with character moving and aiming attacks with the mouse, as well as fast reflexes to react in real-time.

Audience: People above 13 years old and older due to assets and tone

5 of 18

Game references

Other games:

https://www.forbes.com/sites/technology/article/moba-games/

6 of 18

7 of 18

Entities – Player character

  1. Main character 1: Ranger
    1. Walk/Run, Attack, Die
    2. Archer
    3. The character will have its own class that takes in user input and uses an Animation class to control the frames rendered
    4. Right moues clicks will move the character. The ‘A’ key will make them attack and the ‘S’ key will make them stop moving. The ‘F’, ‘D’, keys will be used for other abilities

8 of 18

Entities – Player character

Character has 16 different angles with sprite sheets as well as shadow sprite sheets

9 of 18

Entities – Enemies

  1. Enemy
    1. Walk/Run, Attack, Die
    2. Bloodied Zombie
    3. They will be controlled by a EnemyManager class and will follow the same logic as the Character, except movement won't be based off user input.

10 of 18

Entities – Particles

  1. Particles
    1. Projectiles, Enemy Spells, VFX, mouse
    2. Controlled by ParticleEmitters and will use a Particle class. Only certain particles will be used in collision detections. The fire ball will have pixel-by-pixel animation to simulate fire.

11 of 18

Assets - Tiles

  1. Entities
    1. Gives visual clarity of the bounds of the arena
    2. Realistic looking grassy tiles that can be stacked to create walls and water tiles to keep the player inside the map.
    3. A tile map will be implemented to determine what type of tile will be positioned where

12 of 18

Game mechanics

  • Dodging: The first core component of gameplay for “Exile Legends" revolves around dodging, where players control their legend to dodge projectiles and enemies walking towards them with movement or abilities. The player can also not get too close to water, or they will fall in and die.

  • Attacking: Players can use the ‘A’ key to make their character attack in the direction of their mouse to kill the enemies. The character cannot move while attacking.

  • Abilities: Each character will have the same dodge abilities, but vary in attacking ones:
    • Flash: The ‘F’ key teleports the character a certain distance, allowing them to phase through objects with a cooldown of five seconds
    • Flee: The ‘D’ key increases characters movement speed for five seconds which has a cooldown for 5 seconds

13 of 18

Game mechanics

  • Time: The scored is based off seconds stayed alive and the difficulty should get harder as time goes on, i.e. more projectiles and enemies. There will be four levels that occur every 15 seconds that make the game harder.

  • Enemies: The enemies will follow the character and will become faster and spawn more frequently during each level.

  • Projectiles: The projectiles will not follow the character, and they will either be randomly emitted or based off the characters position at time of emission. They will also spawn more frequently during each level.

14 of 18

Player’s mechanics

The mechanics of Exiled Legends involve

  • Walking/Running
  • Attacking/Abilities
  • Flashing

15 of 18

Software architecture

16 of 18

Modules

  1. Animation
    1. The attack animation consists of drawing an arrow from its quiver, nocking it, and then pulling it back to fire.
    2. Since I want the player to be animation locked, it may require a fast frame rate for the animation, so the player isn’t locked for too long, but this may cause an unnatural animation.
    3. It might be necessary to have certain frames be faster and others slower.
    4. This could also be used for switching states, such as going from walking to standing still, so it doesn’t look so abrupt.
    5. Everything will also need to be rendered in the correct order for the isometric world. Sorting by y-axis may be efficient enough.
  2. Effects:
    • The effect animations should feel alive, and I don’t think adding particles over a static image will create the ideal animation.
    • Particle chorography will include acceleration operators, rotations, color blending/alpha fading, streaks/trails, shadows.

17 of 18

Modules

  1. Collision Detection
    1. The detection will be done using Pygame’s sprite group functions and masks for more precision.
  2. Physics
    • All movement and animations will be based on delta time to ensure smoothness as Pygame FPS lock is not very accurate.

18 of 18

Timeline

  1. Development Plan
    • 10/18: Create tile background, enemy animations, player animations, user input
    • 10/25: Create particle effects and projectiles
    • 10/31: Create basic player/enemy mechanics and collision detections
    • 11/8: Testing and smooth out gameplay feel
    • 11/15: Create menu/UI and sound effects/audio
    • 11/22: Add more advanced mechanics
    • 11/29: Polish background and add small details and new characters if time permits
    • 12/5: Finished Product
  2. Technical Notes
    • Priorities: Character, Animation, Particle Emitter, Particle
    • What module will be difficult to achieve?

-Character involves collision detection, animations, attacks and movement

-Particle involves creating artistic variables to create cool effects