Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Team 4] General Mobs #4

Closed
4 of 6 tasks
meganroxburgh opened this issue Aug 11, 2023 · 1 comment
Closed
4 of 6 tasks

[Team 4] General Mobs #4

meganroxburgh opened this issue Aug 11, 2023 · 1 comment

Comments

@meganroxburgh
Copy link
Contributor

meganroxburgh commented Aug 11, 2023

Description

The general mobs are a crucial part of the gameplay, as players are required to defeat waves of mob attacks on each level in order to progress and eventually win the game. Different types of mobs will be created, to reflect the theme of the current map/level. On starting a level, the mobs will not be visible yet, but as time progresses, waves of mobs will begin to move across the map starting from the right side, and moving towards the left side in a straight line towards the player's towers and defences. They will follow a set path on a grid, implemented by the map feature. When they encounter a tower/defence, they will be able to move around it to continue moving forward (i.e. move into a different path of the grid). Mobs will take damage from projectiles being sent from towers/defences, as well as the ability to shoot their own projectiles and damage the towers. When a mob's health bar becomes 0, this mob is considered killed and will de-spawn from the current map. The user's objective is to kill all of the mobs before the mobs destroy all of their towers and reach their base.

SubFeature/Component

Each mob type has a set of attributes that define its characteristics and how it interacts with other entities and the map during gameplay. These are:

  1. The speed at which the mob moves forward
  2. The projectile the mob shoots and amount of damage given to towers/defences by that projectile in the particular map (base projectiles to be created by Team 1, we will choose the graphics associated with each mob and their projectile)
  3. The amount of damage taken by the mob by a particular projectile (amount that their health bar decreases by)

Examples (optional)

  • Projectiles: When within a certain distance (number of grid spaces) of a tower, mobs will begin shooting projectiles at that tower in order to give it damage. If the tower receives enough damage, then the tower will be de-spawned.
  • Movement: Mobs will spawn on the right-hand side of the map and follow one of the paths, moving at their defined speed, towards the towers. If there is a tower blocking their current path, they can move to one of the paths on either side of them to get around it and continue moving forward. Whether they move to the left or the right would be randomised each time.

Dependencies

The general mobs are dependent on the projectiles (#8), towers (#5) and map features. Mobs interact with towers (and vice-versa) through the use of projectiles, and the map creates the grid in which the mobs traverse through. Mobs will follow pre-defined paths on the grid, and when they encounter a tower, they can move to a different lane of the grid (either side of them).

Milestones

List of sub-features you intend to have done and in Master by the end of the sprint.

  • Mob can move across the screen by itself at a constant speed (Aug. 20)
  • Mob base class creation (Aug. 24)
  • Mob ShootTask created to allow projectiles to be shot (Aug. 25)
  • Design of the sprite for the first mob (Aug. 28)

Completion Deadline: Wednesday Aug. 30

Extras (optional)

  • Mobs have sound effects
  • Design of the sprite for more general mobs

Documentation

Members

@Jonoym
Copy link
Collaborator

Jonoym commented Aug 13, 2023

This feature ticket looks great! Just a reminder for everyone to make some task tickets to split up the work for the coming sprint.

This was referenced Aug 14, 2023
@Hasakev Hasakev mentioned this issue Aug 14, 2023
8 tasks
@bojyyy bojyyy mentioned this issue Aug 14, 2023
6 tasks
@Octagunn Octagunn mentioned this issue Aug 19, 2023
7 tasks
@meganroxburgh meganroxburgh moved this from Todo to In Progress in 2023 Studio 3 Project Aug 23, 2023
@meganroxburgh meganroxburgh moved this from In Progress to Ready in 2023 Studio 3 Project Aug 29, 2023
@meganroxburgh meganroxburgh moved this from Ready to Done in 2023 Studio 3 Project Aug 29, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Development

No branches or pull requests

5 participants