Cutie Systems: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
Line 65: | Line 65: | ||
* Play/Pause | * Play/Pause | ||
== Menus == | == Menus == | ||
= Player Systems = | = Player Systems = | ||
Line 84: | Line 80: | ||
== Gameplay Camera == | == Gameplay Camera == | ||
== Camera Handoff == | == Camera Handoff == | ||
= UI System = | |||
= Event System = | = Event System = | ||
Line 91: | Line 89: | ||
== Speech System == | == Speech System == | ||
= Sound System = | = Sound System = | ||
== Background Music == | |||
== Sound == | |||
= Localisation System = | = Localisation System = | ||
== Langage Scriptable Object == | == Langage Scriptable Object == |
Revision as of 22:35, 1 June 2023
Game System
Game Manager
The game manager has 3 part:
- Game Manager gameObject: that is launched at startup.
- Game Manager ScriptableObject Singleton: that is instantiated by the gameObject
- Game Manager ScriptableObject
Game Task Subsystem
- lists of game tasks
- Game tasks are scriptable objects that can be synchronous or async
For example: at the start of the game, the only initiated process is the Game Manager. It then starts a list of game tasks: * Start the first scene * Load other subsystems * Initialise the saving mechanisms * etc. until the game menu waits for player input.
Game Events Subsystem
Same as gametasks but player driven
- Game Event : Scriptable object defining what the event is. One SO for each Game Event
- Game Event Listener : Are things that react to a trigger.
- Game Event Trigger : Are things that trigger an event.
Collectible
Collectibles are a sub-class of Events. They are :
- Consumed on collision
- They have an associated sprite (mostly for the UI, but may be for other use cases)
- They have a temporary cache system for the ones who can be lost when the player gets hurt
- Have two events:
- OnCollect
- OnLoss
- Can be respawned on loss (for PowerUps for example)
Save System
- Affects:
- Player Preferences
- Player State
- All Levels States
- Functions:
- Load
- Save
https://youtu.be/_hAzWgQupms https://youtu.be/aUi9aijvpgs
Save
Local save
- Save Redundancy (date, and backups / 5 slots backups)
- Fallback system
- Autosave based on checkpoints (background thread)
- Separate
- Player Preference (in playerprefs)
- Game Data (as a Json + Hash)
Player Preferences
- Langage (Localisation)
- Controls (Key configuration, joystick/keyboard...)
- Accessibility (Colour blindness, Sticky rolls, Sticky Breaks...)
- Volume Control (music, sound effects, menu)
Game State
Game-wide management of:
- Character States
- All Levels States
- Play/Pause
Menus
Player Systems
Player State
Player Control
Level System
Level State
The level state is a accumulation of
- The Collectible state
- The GameEvents State
Items System
Camera System
Gameplay Camera
Camera Handoff
UI System
Event System
Deals with game events as Scriptable Objects