-
Notifications
You must be signed in to change notification settings - Fork 565
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Tutorial System: Retutorializing (#5030)
# About the pull request Reopening of #4442 Adds a tutorial system to the game, accessible from the lobby screen. The tutorial system is entirely isolated from the main game, allowing players to get a curated experience to be taught the mechanics of SS13 or specific roles within CM. The tutorial system is fully capable of supporting a theoretically infinite amount of players at once, each getting their own instance. See below video for an example of the in-dev "Marine - Basic" tutorial. https://www.youtube.com/watch?v=aWEtd6EAZWk # Explain why it's good for the game Teaching new players how to play the game has always been a tough bit for us, so why not add a full-on tutorial system to get people into the know? # To-Do: This list is alive and will change over time. If you are interested in coding a tutorial, know that it's very easy and that most of the heavy lifting's done for you! You can find a [tutorial creation guide here](https://hackmd.io/@mRAdleXgRfmKqh97O8ixSA/BJQsmO8kT), and you can additionally contact me on discord at any time with questions. Also, you can find an example tutorial [here](https://github.com/cmss13-devs/cmss13/pull/4442/files#diff-843b2f84360b9b932dfc960027992f2b5117667962bfa8da14f9a35f0179a926). Backend: - [x] TGUI - [x] Add finished tutorials to save files - [x] Communicate to players with little playtime - [x] Suppress combat logs and similar done in tutorials SS13: - [x] Basics - [x] Intents Marine: - [x] Basics - [x] Medical - [ ] Weaponry - [ ] Comtech - Basics - [ ] Medic - Basics - [ ] FTL - Basics - [ ] Smartgunner - Basics - [ ] Specialist - Demolitionist - [ ] Specialist - Scout - [ ] Specialist - Pyrotechnician - [ ] Specialist - Grenadier - [ ] Specialist - Sniper - [ ] Squad Leader - Basics Xenomorph: - [ ] Basics - [ ] Builder Caste - Basics # Changelog :cl: add: Added a tutorial system for various roles (and just general information), find it in the lobby screen. /:cl: --------- Co-authored-by: fira <[email protected]>
- Loading branch information
1 parent
2bc3c47
commit f377f35
Showing
97 changed files
with
2,308 additions
and
140 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
#define DEFAULT_MOB_STATUS_FLAGS CANKNOCKDOWN|CANPUSH|STATUS_FLAGS_DEBILITATE |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
#define TUTORIAL_ATOM_FROM_TRACKING(path, varname) var##path/##varname = tracking_atoms[##path] | ||
|
||
#define TUTORIAL_CATEGORY_BASE "Base" // Shouldn't be used outside of base types | ||
#define TUTORIAL_CATEGORY_SS13 "Space Station 13" | ||
#define TUTORIAL_CATEGORY_MARINE "Marine" | ||
#define TUTORIAL_CATEGORY_XENO "Xenomorph" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
/datum/component/tutorial_status | ||
dupe_mode = COMPONENT_DUPE_UNIQUE | ||
/// What the mob's current tutorial status is, displayed in the status panel | ||
var/tutorial_status = "" | ||
|
||
/datum/component/tutorial_status/Initialize() | ||
. = ..() | ||
if(!ismob(parent)) | ||
return COMPONENT_INCOMPATIBLE | ||
|
||
/datum/component/tutorial_status/RegisterWithParent() | ||
..() | ||
RegisterSignal(parent, COMSIG_MOB_TUTORIAL_UPDATE_OBJECTIVE, PROC_REF(update_objective)) | ||
RegisterSignal(parent, COMSIG_MOB_GET_STATUS_TAB_ITEMS, PROC_REF(get_status_tab_item)) | ||
|
||
/datum/component/tutorial_status/proc/update_objective(datum/source, objective_text) | ||
SIGNAL_HANDLER | ||
|
||
tutorial_status = objective_text | ||
|
||
/datum/component/tutorial_status/proc/get_status_tab_item(datum/source, list/status_tab_items) | ||
SIGNAL_HANDLER | ||
|
||
if(tutorial_status) | ||
status_tab_items += "Tutorial Objective: " + tutorial_status |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.