From a506561db4039fdb73cd130c89150c7e1b8b7c0f Mon Sep 17 00:00:00 2001 From: EldritchGriffin Date: Thu, 19 Sep 2024 00:43:46 +0100 Subject: [PATCH] CON-3139 chore(2.5d-adventure) running prettier --- subjects/gaming/2.5d-adventure/README.md | 31 +++++++++++++------ .../gaming/2.5d-adventure/audit/README.md | 26 ++++++++++++++++ 2 files changed, 47 insertions(+), 10 deletions(-) diff --git a/subjects/gaming/2.5d-adventure/README.md b/subjects/gaming/2.5d-adventure/README.md index 55b9ce9cf..d5c8d13b1 100644 --- a/subjects/gaming/2.5d-adventure/README.md +++ b/subjects/gaming/2.5d-adventure/README.md @@ -15,6 +15,7 @@ You've just embarked on your journey into game development, choosing `Unreal Eng ### Learning Objective At the end of this project you will have learned: + - Setting up a basic player character (input handling, movement, camera, etc.) - Basic scripting (`Blueprints` and/or `C++`). - Collision detection. @@ -28,32 +29,37 @@ At the end of this project you will have learned: #### General The use of `event dispatchers` is mandatory throughout the project, any code coupling will be disqualified. + > 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. + > 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. + #### Main Menu The main menu `widget` should: + - Be on a separate `level/map` from the `main game` map. - Contain two buttons: - - Start game button. - - Exit game button. + - Start game button. + - Exit game button. #### Player Character The player `character` should: + - Have a skeletal mesh. - Move only along two axes: left-right and up-down. - Have a basic locomotion system with the following animations: - - `Idle`. - - `Walking`. - - `Running`. - - `Jumping`. - - `Falling`. - - `Landing`. + - `Idle`. + - `Walking`. + - `Running`. + - `Jumping`. + - `Falling`. + - `Landing`. - Transition smoothly between a walking and running animations based on their speed.
@@ -64,6 +70,7 @@ The player `character` should: #### Collectible The collectible `Actor` should: + - Have a static mesh. - Rotate around an axis of your choice. - Have a box collider that acts like a trigger. @@ -76,6 +83,7 @@ The collectible `Actor` should: #### HUD The HUD `widget` should: + - Display a value related to the `collectible`. - Be updated each time a `collectible` is picked up.
@@ -85,6 +93,7 @@ The HUD `widget` should: #### Enemy The enemy `character` should: + - Have a skeletal mesh. - Have at least a walking cycle. - 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. And an end point that defines the player goal to finish the level. When the player reaches the end point: + - a menu with options to `restart` or `quit` the game should be displayed. #### 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. + > Tip: look at other games from a similar genre for inspiration. - +> @@ -124,7 +135,7 @@ Your level design shouldn't consist of just a long, empty run to the finish poin ### Submission - 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 diff --git a/subjects/gaming/2.5d-adventure/audit/README.md b/subjects/gaming/2.5d-adventure/audit/README.md index 583895d37..0d610eb68 100644 --- a/subjects/gaming/2.5d-adventure/audit/README.md +++ b/subjects/gaming/2.5d-adventure/audit/README.md @@ -9,55 +9,81 @@ #### Main Menu ###### 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 an Exit game button? #### Player Character ###### Does the player character have a skeletal mesh? + ###### 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 transition smoothly between walking and running animations based on their speed? #### Collectible ###### Does the collectible Actor have a static mesh? + ###### Does the collectible rotate around an axis? + ###### Does the collectible have a box collider that acts as a trigger? + ###### Is the collectible collected when the player enters its box trigger? + ###### Does the collectible play a sound when collected? #### HUD ###### 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 also updated when picking a `collectible` that spawned from killing an enemy? #### Enemy ###### Does the enemy character have a skeletal mesh? + ###### 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 kill the player on collision? + ###### 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 create an instance of a `Collectible` at the place of death? #### Game loop ###### Is there a spawn point where the player starts? + ###### Does the player respawn at the spawn point when dead? + ###### Is there an end point that defines the player’s goal to finish the level? + ###### When the player reaches the end point, is a menu displayed with options to restart or quit the game? #### Level design + ###### 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 provide a fun and challenging experience for the player? #### Bonus ###### +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? + ###### +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?