-
Notifications
You must be signed in to change notification settings - Fork 164
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
CP3108: Game Component #1058
Merged
jetkan-yk
merged 45 commits into
source-academy:sa_2021
from
Source-Academy-Game:sa_2021
May 20, 2020
Merged
CP3108: Game Component #1058
jetkan-yk
merged 45 commits into
source-academy:sa_2021
from
Source-Academy-Game:sa_2021
May 20, 2020
Conversation
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
Final internal PR has been merged. Ready to begin the review process. Note that the last few commits include work from the Staff Dashboard team. We will deconflict with them as necessary. |
- Move ASSETS_HOST to within constants.js - Add a backend directory to facilitate future communication with the backend - Add ability to toggle asset hosts
Includes implementation to manage active stories
Dev users will first attempt to pull from the test bucket. If it fails, then try the live bucket. Student users will always pull from the live bucket.
Tried pixijs/pixijs#4769 after encountering TypeError: Cannot set property 'fillStyle' of null It solved the problem with the game-dev component.
Saving and loading of quest and collectibles will come through the user data or from overriding data.
- Made new actiontypes to update game state in the backend and in session. - Updated tests to accomodate for game state.
…e state and changes in save manager.
Use Ground Control's assessment overview instead of master.xml file. Less things to keep track of this way.
- Fixed bug with regards to missing stories, testers now use default story if they have not overriden the game. - Potential bug fixed With no missions available, will return leaving a black screen, instead of crashing. - Fixed bug that stops the game from compiling when the last mission has closed, will now only show last opened mission. - Added minor documentation
Most features are up and working. |
jetkan-yk
approved these changes
May 20, 2020
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Maintain game component #857
Our team focused on two main items:
Staff authoring experience
Teaching staff (profs and possibly avengers) are responsible for writing and publishing the story scripts that narrate the game. However, without a proper sandbox for testing bleeding edge stories, story authoring is extremely slow, especially during the semester when students are already going through the story in the live production environment.
We have extended the existing game system to enable the loading of stories from alternative locations for non-student users. We have also made use of the existing Materials component so that staff may easily save and load freshly edited story scripts. This allows staff to write and test stories which are saved to Materials, without affecting the stories currently experienced by students in the production environment.
Staff will also be able to test the story under various conditions. They will be able to customize the testing scenario, such as varying the user's game state data and simulating the current date to control which stories are unlocked.
Student game experience
Game state data for users (e.g. collectibles, quest progress) was previously stored locally. Should the user clear their browsing data or switch devices, this data is lost, causing the user to lose their progress and creating a discontinuity in the game experience.
We have extended the backend (cadet) to accommodate the storage of the user's game state data, and also tweaked the frontend to load and save data from the backend instead of local storage. The persistent storage of game data will provide a more cohesive game experience for students.
For further documentation, please see: https://github.com/source-academy/cadet-frontend/wiki/Game