Enemy NPC's - UQcsse3200/2024-studio-2 GitHub Wiki
The enemy NPC feature will introduce dynamic and challenging opponents and diverse animal types that increase in stat difficulty as the player progresses through levels. Enemies will spawn and then initiate battles when within a certain radius, and each animal type will have unique abilities and potentially super effective moves. Defeated enemies will drop items, and players will face a new set of enemies in each element al kingdom, ensuring a fresh and exciting experience.
Each entity has unique characteristics like whether they attack or shock player by throwing items, drop items that can prove fruitful later etc. Their details can be found below:
In the land area, players will encounter various enemies, each with unique characteristics and abilities. These enemies include:
NPC | Image | Documentation Link |
---|---|---|
Chicken | Chicken Documentation | |
Monkey | Monkey Documentation | |
Bear | Bear Documentation |
In the water area, enemies have adapted to the aquatic environment, offering unique challenges:
NPC | Image | Documentation Link |
---|---|---|
Frog | Frog Documentation | |
Eel | Eel Documentation | |
BigSawFish | BigSawFish Documentation | |
Octopus | Octopus Documentation |
Sky enemies take advantage of aerial mobility, offering unique tactics to challenge players:
NPC | Image | Documentation Link |
---|---|---|
Bee | Bee Documentation | |
Pigeon | Pigeon Documentation | |
Macaw | Macaw Documentation |
For specifics about how to develop and use Enemy NPCs in game see Enemy NPCs Programming Guide
The testing plan for the game project will focus on a combination of unit tests, integration tests, and visual testing. The primary goal is to ensure that key features, such as cutscenes, enemy interactions, and animations, function correctly without introducing new bugs. Visual testing will confirm that the cutscenes and animations display properly, while regression tests will ensure that changes made during refactoring do not break existing functionality. Additionally, playtesting will be used to verify that gameplay behaves as expected in various scenarios.