CON-3139 chore(2.5d-adventure) running prettier

This commit is contained in:
EldritchGriffin 2024-09-19 00:43:46 +01:00
parent 49f57f076e
commit a506561db4
2 changed files with 47 additions and 10 deletions

View File

@ -15,6 +15,7 @@ You've just embarked on your journey into game development, choosing `Unreal Eng
### Learning Objective ### Learning Objective
At the end of this project you will have learned: At the end of this project you will have learned:
- Setting up a basic player character (input handling, movement, camera, etc.) - Setting up a basic player character (input handling, movement, camera, etc.)
- Basic scripting (`Blueprints` and/or `C++`). - Basic scripting (`Blueprints` and/or `C++`).
- Collision detection. - Collision detection.
@ -28,32 +29,37 @@ At the end of this project you will have learned:
#### General #### General
The use of `event dispatchers` is mandatory throughout the project, any code coupling will be disqualified. The use of `event dispatchers` is mandatory throughout the project, any code coupling will be disqualified.
> Tip: look for the observer pattern. > Tip: look for the observer pattern.
Your game should follow a coherent `theme` of your choice, whether it's a dark fantasy, sci-fi, or something entirely different. Let your imagination guide you. Your game should follow a coherent `theme` of your choice, whether it's a dark fantasy, sci-fi, or something entirely different. Let your imagination guide you.
> Note: the resources section will list some places where you can browse assets. > Note: the resources section will list some places where you can browse assets.
> Tip: For maximum learning, it is recommended to start this project with a blank Unreal project and implement everything from scratch. > Tip: For maximum learning, it is recommended to start this project with a blank Unreal project and implement everything from scratch.
#### Main Menu #### Main Menu
The main menu `widget` should: The main menu `widget` should:
- Be on a separate `level/map` from the `main game` map. - Be on a separate `level/map` from the `main game` map.
- Contain two buttons: - Contain two buttons:
- Start game button. - Start game button.
- Exit game button. - Exit game button.
#### Player Character #### Player Character
The player `character` should: The player `character` should:
- Have a skeletal mesh. - Have a skeletal mesh.
- Move only along two axes: left-right and up-down. - Move only along two axes: left-right and up-down.
- Have a basic locomotion system with the following animations: - Have a basic locomotion system with the following animations:
- `Idle`. - `Idle`.
- `Walking`. - `Walking`.
- `Running`. - `Running`.
- `Jumping`. - `Jumping`.
- `Falling`. - `Falling`.
- `Landing`. - `Landing`.
- Transition smoothly between a walking and running animations based on their speed. - Transition smoothly between a walking and running animations based on their speed.
<center> <center>
<img src="./resources/locomotion.gif?raw=true" style = "width: 500px !important; height: 350px !important;"/> <img src="./resources/locomotion.gif?raw=true" style = "width: 500px !important; height: 350px !important;"/>
@ -64,6 +70,7 @@ The player `character` should:
#### Collectible #### Collectible
The collectible `Actor` should: The collectible `Actor` should:
- Have a static mesh. - Have a static mesh.
- Rotate around an axis of your choice. - Rotate around an axis of your choice.
- Have a box collider that acts like a trigger. - Have a box collider that acts like a trigger.
@ -76,6 +83,7 @@ The collectible `Actor` should:
#### HUD #### HUD
The HUD `widget` should: The HUD `widget` should:
- Display a value related to the `collectible`. - Display a value related to the `collectible`.
- Be updated each time a `collectible` is picked up. - Be updated each time a `collectible` is picked up.
<center> <center>
@ -85,6 +93,7 @@ The HUD `widget` should:
#### Enemy #### Enemy
The enemy `character` should: The enemy `character` should:
- Have a skeletal mesh. - Have a skeletal mesh.
- Have at least a walking cycle. - Have at least a walking cycle.
- Have a simple AI that patrols between two set points. - Have a simple AI that patrols between two set points.
@ -104,13 +113,15 @@ The enemy `character` should:
The game loop consists of a spawn point where the player `starts` and `respawns` when dead. The game loop consists of a spawn point where the player `starts` and `respawns` when dead.
And an end point that defines the player goal to finish the level. And an end point that defines the player goal to finish the level.
When the player reaches the end point: When the player reaches the end point:
- a menu with options to `restart` or `quit` the game should be displayed. - a menu with options to `restart` or `quit` the game should be displayed.
#### Level design #### Level design
Your level design shouldn't consist of just a long, empty run to the finish point. However, since creating a level is a creative process, you have the freedom to design it as you see fit. For example, you can include moving platforms or skill-based platforming elements. The choice is yours to provide the player with a fun and challenging experience. Your level design shouldn't consist of just a long, empty run to the finish point. However, since creating a level is a creative process, you have the freedom to design it as you see fit. For example, you can include moving platforms or skill-based platforming elements. The choice is yours to provide the player with a fun and challenging experience.
> Tip: look at other games from a similar genre for inspiration. > Tip: look at other games from a similar genre for inspiration.
<img src="./resources/platformer.jpg?raw=true" style="width: 600px; height: 350px;" /> > <img src="./resources/platformer.jpg?raw=true" style="width: 600px; height: 350px;" />
<!-- Expected results video link to be added later when available --> <!-- Expected results video link to be added later when available -->
@ -124,7 +135,7 @@ Your level design shouldn't consist of just a long, empty run to the finish poin
### Submission ### Submission
- In your repository there should be a zip file of a build of your game for your target platform. - In your repository there should be a zip file of a build of your game for your target platform.
> If it is not possible to upload files to Gitea due to their size, use GitHub instead and have a look at [Git LSF](https://docs.github.com/en/repositories/working-with-files/managing-large-files/about-large-files-on-github) > If it is not possible to upload files to Gitea due to their size, use GitHub instead and have a look at [Git LSF](https://docs.github.com/en/repositories/working-with-files/managing-large-files/about-large-files-on-github)
### Resources ### Resources

View File

@ -9,55 +9,81 @@
#### Main Menu #### Main Menu
###### Is the main menu widget on a separate level/map from the main game map? ###### Is the main menu widget on a separate level/map from the main game map?
###### Does the main menu contain a Start game button? ###### Does the main menu contain a Start game button?
###### Does the main menu contain an Exit game button? ###### Does the main menu contain an Exit game button?
#### Player Character #### Player Character
###### Does the player character have a skeletal mesh? ###### Does the player character have a skeletal mesh?
###### Can the player character move only along two axes: left-right and up-down? ###### Can the player character move only along two axes: left-right and up-down?
###### Does the player character have a basic locomotion system with all the required animations? ###### Does the player character have a basic locomotion system with all the required animations?
###### Does the player character transition smoothly between walking and running animations based on their speed? ###### Does the player character transition smoothly between walking and running animations based on their speed?
#### Collectible #### Collectible
###### Does the collectible Actor have a static mesh? ###### Does the collectible Actor have a static mesh?
###### Does the collectible rotate around an axis? ###### Does the collectible rotate around an axis?
###### Does the collectible have a box collider that acts as a trigger? ###### Does the collectible have a box collider that acts as a trigger?
###### Is the collectible collected when the player enters its box trigger? ###### Is the collectible collected when the player enters its box trigger?
###### Does the collectible play a sound when collected? ###### Does the collectible play a sound when collected?
#### HUD #### HUD
###### Does the HUD widget display a value related to the `collectible`? ###### Does the HUD widget display a value related to the `collectible`?
###### Is the HUD updated each time a `collectible` is picked up? ###### Is the HUD updated each time a `collectible` is picked up?
###### Is the HUD also updated when picking a `collectible` that spawned from killing an enemy? ###### Is the HUD also updated when picking a `collectible` that spawned from killing an enemy?
#### Enemy #### Enemy
###### Does the enemy character have a skeletal mesh? ###### Does the enemy character have a skeletal mesh?
###### Does the enemy character have at least a walking cycle? ###### Does the enemy character have at least a walking cycle?
###### Does the enemy character have a simple AI that patrols between two set points? ###### Does the enemy character have a simple AI that patrols between two set points?
###### Does the enemy character kill the player on collision? ###### Does the enemy character kill the player on collision?
###### Is the enemy character killed if the player lands on top of it? ###### Is the enemy character killed if the player lands on top of it?
###### Does the enemy character play a sound when killed? ###### Does the enemy character play a sound when killed?
###### Does the enemy character create an instance of a `Collectible` at the place of death? ###### Does the enemy character create an instance of a `Collectible` at the place of death?
#### Game loop #### Game loop
###### Is there a spawn point where the player starts? ###### Is there a spawn point where the player starts?
###### Does the player respawn at the spawn point when dead? ###### Does the player respawn at the spawn point when dead?
###### Is there an end point that defines the players goal to finish the level? ###### Is there an end point that defines the players goal to finish the level?
###### When the player reaches the end point, is a menu displayed with options to restart or quit the game? ###### When the player reaches the end point, is a menu displayed with options to restart or quit the game?
#### Level design #### Level design
###### Does the level design avoid being just a long, empty run to the finish point? ###### Does the level design avoid being just a long, empty run to the finish point?
###### Does the level include elements like moving platforms or skill-based platforming challenges? ###### Does the level include elements like moving platforms or skill-based platforming challenges?
###### Does the level provide a fun and challenging experience for the player? ###### Does the level provide a fun and challenging experience for the player?
#### Bonus #### Bonus
###### +Has a health system been added to both the player character and the enemy character using Components? ###### +Has a health system been added to both the player character and the enemy character using Components?
###### +Has a simple crouch been added to the player character's locomotion system? ###### +Has a simple crouch been added to the player character's locomotion system?
###### +Have additional mechanics been implemented to fit the overall game design? ###### +Have additional mechanics been implemented to fit the overall game design?
###### +Has a simple Game Design Document been created that describes the mechanics and outlines the plan for implementing them? ###### +Has a simple Game Design Document been created that describes the mechanics and outlines the plan for implementing them?