Gameplay - alexitsios/Calamity GitHub Wiki
Core Gameplay Loop
Gameplay Mechanics
- Run
- Walk
- Interaction-Inspect/Take
- Aim
- Shoot
- Equip/Unequip (Inventory)
- Use (Inventory)
Controls
Game Stats (section is draft)
Game stats are numerical values that represent various aspects of a game, such as the player's health, damage dealt by weapons, enemy health, and other gameplay-related factors.
Player Stats
- Health: The player's overall health determines how much damage they can take before dying. This stat can be represented by a health bar in the inventory menu.
- Ammo: The amount of ammunition the player has available for their weapons. This can be represented by a counter in the inventory menu.
- Speed: This stat affects how fast the player can move and react, and can make it easier for them to dodge attacks or escape dangerous situations.
- Inventory capacity: The maximum number of items the player can carry at one time.
- Critical hit chance: The chance that a player's attack will result in a critical hit, dealing extra damage.
Other stats that were considered but discarded were stamina, accuracy, strength (for melee use), Fear level, and stealth.
Enemy Stats
- Health: The amount of damage an enemy can take before being defeated.
- Damage: The amount of damage an enemy can deal to the player with their attacks.
- Speed: The speed at which an enemy can move or attack.
- Size: The size of an enemy can affect how easy it is to hit, as well as its ability to navigate certain environments.
Other stats that were considered but discarded were defense, poisoning, & weaknesses.
Environment stats
Environment stats like darkness, noise level, and temperature were discarded.
Weapon Stats
- Damage: The amount of damage a weapon can deal to enemies.
- Accuracy: How accurate a weapon is when fired.
- Fire rate: How quickly a weapon can be fired.
- Ammo capacity: How many shots a weapon can hold before needing to be reloaded.
- Reload speed: How quickly a weapon can be reloaded.
- Range: The effective range of a weapon.
- Special attributes: Any special attributes a weapon may have, such as the ability to stun or knock down enemies.
GUI & Menus
The graphical user interface is the visual interface that the player interacts with throughout the game. It might include a health bar or other indicators showing the player's stats, such as ammo count. It includes the inventory system for managing items the player collects, as well as a map to help navigate the game world. The menus are graphical user interfaces that allow the player to access various options and settings in the game
Main Menu
The Main Menu is the first menu the player encounters when starting the game and contains options for starting a new game, continuing a saved game, accessing the game settings, and exiting the game.
- Continue - Selecting this option starts the last saved checkpoint. If there's no saved game, this option doesn't appear at all.
- New Game - Selecting this option starts a new game. If there's a saved game already, the player gets a warning that existing progress will be lost.
- Settings - Selecting this option opens the Settings Menu.
- Exit - Selecting this option exits the game and takes the user to the desktop.
Game Menu
The Game Menu is the menu that appears during gameplay and contains options related to the ongoing game session, such as Resume Game, Settings, and Exit Game. It can be accessed by pressing the Esc key during the game.
- Resume Game - Selecting this option resumes the player back to the game.
- Settings - Selecting this option opens the Settings Menu.
- Exit - Selecting this option exits the player to the game, but a popup appears first, asking the player if they want to exit since all progress will be lost.
Note: when the player activates the game menu, the game pauses.
Settings Menu
Control Menu Option
- Current Controls - The player can see the current control scheme.
- Changing Controls - The Player can click each of the controls to config the buttons.
- Reset Button - Resets config to original control scheme.
Visual Menu Option
-
Resolution (16:9 only) 2560x1440 1920x1080 1366x768 1280x720
-
Display Mode - The player can change the display mode (Full-Screen, Borderless, Windowed) (default mode is the Full-Screen)
-
Brightness - The Player can move the slider from 100 to 0 (it affects the brightness of the game) (default 50)
-
Contrast - The Player can move the slider from 100 to 0 (it affects the contrast of the game) (default 50)
-
Gamma - The Player can move the slider from 100 to 0 (it affects the gamma value of the game) (default 50)
Audio Menu Option
- Master Volume - The Player can move the slider from 100 to 0 (it effects all sounds in the game) (default 100)
- SFX Volume - The Player can move the slider from 100 to 0 (it effects only SFX sounds in the game) (default 100)
- Music Volume - The Player can move the slider from 100 to 0 (it effects only musics in the game) (default 100)
- Dialogue Volume - The Player can move the slider from 100 to 0 (it effects only dialogues in the game) (default 100)
- Subtitles - The Player can open or close the subtitles (any narration will show up as a subtitle if it's on) (default off)
Inventory Menu
The player can activate the inventory menu by pressing the "I" Key (O for the controller). When the player activates the inventory menu, the game pauses.
- Avatar: A static image with Cassandra's name and her face/head.
- Health Bar & Status: This is represented both as a text description: Fine, Caution, and Danger and visually as a bar that displays the current level of health. The color of the health bar changes based on the health's status: 100-70 Fine - Green, 69-30 Caution - Yellow, 29-1 Critical - Red.
- Map: The map is displayed by default on the main panel when the player opens the inventory. If the player has not yet obtained a map for a particular area, the map will only show the rooms and areas that the player has explored so far. As the player continues to explore, the map will gradually expand to include new areas and reveal the layout of the environment. Once the player obtains a map for a particular area, the entire map will be displayed in the map section of the inventory. The player's position and direction are shown with a navigation marker on the map. There's a label with the name of the location somewhere on the map.
- Files: When the player activates the Files option, the main panel area changes from the map to the files. The files are presented in slots in the inventory menu, arranged in the order they were collected, with the most recently acquired files at the bottom of the list. The player can navigate through the slots to view the files they have collected. When the player navigates or hovers over a file, the name of the file is presented below (etc. Cassandra's memo).
- Inventory Item: The player can select one of the items by pressing the action key. If the item is a weapon or a usable item, a popup option appears with the button equip or use. If the item can't be used, no popup option appears. Items that can be equipped can also be unequipped by selecting the weapon by pressing the action key. When the popup option appears with the unequip button, they can select it again to unequip the weapon entirely.
Menu Navigation
The player has two ways of navigating the menus:
- The navigation buttons (WASD for the keyboard; D-pad for the controllers). Pressing the action button (E for the keyboard; X for the controller) will activate the option.
- The mouse. When the player hovers over an option and presses the left mouse button, the option is activated.
SFX
The following SFX are needed when the player navigates the menus & the inventory system:
- Navigation / Hover SFX: When hovering over the mouse or navigating with the WASD.
- Select & Combine SFX: When selecting menu options, inventory items, and when combining them.
- Cancelation SFX: when trying to combine or use something that's not applicable.
Scene & Level Transitions
Transitions refer to any kind of change in the game world, whether it's a change in camera angle or position, a loading screen, or a hidden transition between areas. All of these transitions help to create a sense of progression and spatial awareness in the game world while also contributing to the overall atmosphere and narrative of the game.
Possible considerations
Stair & hidden transitions might need to be applied; however, the current level design shows no need for stair & hidden transitions.
Although not entirely related to transitions, we should elaborate on what happens to the enemy positions.
Fixed Camera Angle Transition
When the player character moves out of one fixed camera angle area and into another, the camera switches to the new area.
Progression & Beats for Fixed Camera Angle Transition
- The Player character reaches the boundary of a fixed camera angle area.
- The new area is revealed immediately.
Fail State: Cannot Fail.
Back-End Support for Fixed Camera Angle Transition
The transition should be programmed to:
- detect when the player character is near the boundary (probably a grid detection system),
- transfer the player character to the correct location.
Door/Elevator Transitions
These transitions happen when the player character interacts with a door or an elevator.
Progression & Beats for Door/Elevator Transitions
The first two beats are exactly the same for all cases:
- The player character approaches a door or an elevator in the game world.
- The player interacts directly with the door by pressing the action/interaction button (RMB).
Case 1: If the door is unlocked:
- Success: A 1-2 second fade in & out effect takes place, the open & closing SFX is heard, and the player character is transferred to the next location.
Case 2: If the door is locked:
- The game checks if the player has the required key or item to unlock it.
- Success: If the player has the required item, the door unlocks. The sound of the door being unlocked is heard, and a 1-2 second fade in & out effect takes place, and the player character is transferred to the next location.
- Fail: The player can't transition to the next area and hears the SFX of a locked door.
Case 3: If the door is barricaded:
- Fail: The player can't transition to the next area and hears the SFX of a barricaded door.
SFX Support for Door/Elevator Transitions:
All of the following SFX are ~1 second long each.
- SFX of door opening
- SFX of door closing
- SFX of door being locked
- SFX of door being unlocked
- SFX of door being barricaded
Back-End Support for Door/Elevator Transitions
The transition event should be programmed to:
- detect when the player character is near a door (probably a grid system),
- check whether the door is locked or unlocked, and handle the unlocking event,
- remove access to the player's controller/keyboard until the transition is complete,
- transfer the player character to the correct location.
Items
- Weapons
- Ammunition for each weapon (this is also mentioned in the weapons section)
- Med-Kit (Heal 100)
- Bandage (Heal 30)
- Puzzle items
- Files
Save System
- The game has auto save system. The auto saves will be triggered by the checkpoints.
- The player comes to the checkpoint (it can be a new location or completing a new objective, which is predefined by writers.)
- The game automatically saves the progress. (There can be a logo, animation on the bottom right corner that indicates the game is saving.)
- If the player quits the game there will be a warning pop-up that is saying "unsaved progress will be lost".
- When the player comes back and clicks the continue button it will boot the last save automatically.
Note: For now the writers defining the checkpoints for the autosaves. But this has to be balanced by me later on.
Interactions With Items
- The player goes near the interactable item (the interactable item has to be a small shine effect on it.)
- When the player comes near the interactable item interaction button will appear on top of the item.
- If the interacted item is something that can be picked up,
- Pressing the button will remove the item from the game world,
- The removed item will create a notification in the bottom left of the game that indicated the item is picked up (Also SFX needed).
- The item can be reached on the inventory.
- If the inventory is full player can't pick it up. In the bottom left it can indicated that the inventory is full (or the player can talk to herself if we have similar actions through the game.)
- If the interacted item is something that has to be used (like levers, puzzles)
- If the interacted item is doesn't requires player extra input pressing the button will activate the trigger (such as using levers, or pressing buttons)
- If the interacted item needs extra input from the player (such as mini game puzzles, inventory usage) it opens the required panel.
2.1 If the use action requires the mini game puzzle, mini game screen will appear. The player can either complete the puzzle to close the panel or can leave the panel with pressing escape button or the close button on the panel.
2.2 If the use action requires item usage from the inventory. Pressing interact button will open the inventory panel (only the inventory panel not the game menu) and the player has to select and use the required item otherwise it will not make an interaction. Similar to the mini game panels, using the item will close panel automatically or the player can press esc button or the close button on the panel.
Weaponry
Combat
- Player has to equip weapons via inventory
- Combat Knife automatically activates (kills the enemy or stuns the boss) when the player reaches the critical health point.
- Holding the "RMB" button (R1 for the controller) changes Cass's state to attack and aims for the closest enemy (if there's no enemy just towards the direction that currently looking through) (pressing "F" (L1 for the controller) is changing the target if there's any other)
- While Cass is in an attack state pressing the "LMB" button (X for the controller) fires the equipped item
- The player has to reload the guns manually. To reload, player has to go the game menu, press the ammunition and choose to load option. Loading the ammunition will add the missing amount of ammo to the gun. If the ammunition already full it will not add anything.
Weapons
Combat Knife
Fictional Name: D. Marquez Combat Knife Jet-9
Real-life counterpart (for artist reference): GERBER MARK II FIXED BLADE KNIFE
Basic Idea: A killing knife, also known as a combat knife or fighting knife, is a specialized type of knife that is designed for use in close-quarters combat and self-defense. These knives are typically characterized by their sharp, double-edged blades, which are meant for penetration and cutting. They also have sturdy and durable construction, with a handle that is designed to provide a secure grip, even in wet or slippery conditions.
--- Ammunition
- No ammo
--- Damage
- Basic Damage 20
--- Behaviour
- Holding "RMB" ("R1") will change Cass's position to attack.
- Pressing "LMB" ("X") will swing the combat knife.
- Holding "LMB" ("X") will swing the combat knife continuously.
- If the player press "LMB" ("X") at the correct time rather than holding it. It will attack faster. (if the animation is 3 seconds while holding and pressing the button at the correct times (you can call it an animation cancel) it will reduce it to 2.5 sec (numbers are given just for the example))
Basic Pistol
Fictional Name: T-9 Aprodhite P-026
Real-life Counterpart (for artist reference): SIG Sauer P226 (Germany/Switzerland)
Basic notes: A pistol, also known as a handgun, is a type of firearm that is designed to be held and operated with one hand. It typically has a shorter barrel and a smaller overall size compared to other types of firearms such as rifles and shotguns. Pistols are commonly used for self-defense and as a secondary weapon in military and law enforcement operations.
--- Ammunition
- Holding 12/36
- Ammo Pack 12
--- Damage
- Basic Damage 34
--- Behaviour
- Holding "RMB" ("R1") will change Cass's position to attack.
- Pressing "LMB" ("X") will fire the pistol.
- Holding "LMB" ("X") will keep firing the pistol continuously.
- If the player press "LMB" ("X") at the correct time rather than holding it. It will attack faster. (if the animation is 3 seconds while holding and pressing the button at the correct times (you can call it an animation cancel) it will reduce it to 2.5 sec (numbers are given just for the example))
Shotgun
Fictional name: Aki-Aka Series Z - 780 (12 Gauge- Pump Action)
Real-life counterpart(for artist reference): Mossberg 590 shotgun 12 gauge (see the image below)
Basic Idea: A shotgun is a type of firearm that is designed to fire multiple small projectiles, known as pellets or shots, at once. The projectiles are housed in a shell, which is inserted into the chamber of the shotgun before being fired. The shot spreads out as it travels through the barrel of the shotgun, making it an effective weapon for close-range engagements.
--- Ammunition
- 8/24 (consume 2)
- Ammo Pack 8
--- Damage
- Basic Damage 60x2 (2 projectile)
--- Weakness
- Closer range compared to the other guns.
- Slower reload time compared to the other guns.
--- Behaviour
- Holding "RMB" ("R1") will change Cass's position to attack.
- Pressing "LMB" ("X") will fire the shotgun.
- Holding "LMB" ("X") will keep firing the shotgun continuously.
- If the player press "LMB" ("X") at the correct time rather than holding it. It will attack faster. (if the animation is 3 seconds while holding and pressing the button at the correct times (you can call it an animation cancel) it will reduce it to 2.5 sec (numbers are given just for the example))
Submachine Gun
Fictional Name: Dame Tusad MT sub-90
Real-life counterpart (for artist reference): MP40 submachine gun
Basic Idea: A submachine gun, often shortened to SMG, is a type of firearm that typically fires smaller caliber rounds at a high rate of fire. They are designed for close-range engagements, with a compact size and a high magazine capacity.
--- Ammunition
- 40/120
- Ammo Pack 40
--- Damage
- Basic Damage 5
--- Weakness
- Closer range compared to the basic pistol.
--- Strengths
- Fast reload time compared to the other guns.
--- Behaviour
- Holding "X" ("R1") will change Cass's position to attack.
- Pressing "C" ("X") will fire the submachine gun.
- Holding "C" ("X") will keep firing the submachine gun continuously.
Flamethrower
Fictional Name: U Sam 1591
Real-life counterpart (for artist reference): M2-2 flamethrower
Basic Idea: A flamethrower is a type of weapon that projects a stream of fire at a target. It typically consists of a pressurized tank that holds a flammable liquid, such as gasoline or napalm, and a nozzle that sprays the liquid out in the form of a flame. The flame can be ignited by an electric spark or a pilot light.
--- Ammunition
- 100/100 (consume 10 per second)
- Ammo Pack 1 Gas Tube (contains 100)
--- Damage
- Basic Damage 10 x 1.5per second
--- Weakness
- 2-second delay after pressing the fire button
--- Strengths
- Group Damage
- Burning status (deals damage -2/10second)
--- Behaviour
- Holding "RMB" ("R1") will change Cass's position to attack.
- Holding "LMB" ("X") will keep firing the flamethrower continuously.
- Flamethrower has an open bolt delay.
- Flamethrower creates a burning status.
Rocket Launcher
A rocket launcher is a type of weapon that fires a rocket-propelled projectile, typically in the form of a missile or grenade. It consists of a launcher tube, a trigger mechanism, and a sighting system. The projectile is inserted into the launcher and fired using a trigger, which initiates the rocket propulsion.
--- Ammunition
- 2/4
- Missile pack 1 (contains 2)
--- Damage
- Basic Damage 400
- Area Damage
--- Weakness
- Slowest reload time
--- Behaviour
- Holding "RMB" ("R1") will change Cass's position to attack.
- Pressing "LMB" ("X") will fire the rocket.
- Rocket launcher has area damage.
Enemies
(These behaviors will adjust regarding how many times we encounter the hunter and also the encounter locations)
The Hunter
(These behaviors are written before we have the encounters based on the story. So it may need changes after the outline)
Movement
- Walking: The Hunter is able to "walk". "Walk" animation often use for patroling (when he is not alarmed, triggered).
- Running: The Hunter is able to "run". "Run" animation often use for getting closer to Cass to attack.
Stab Blade
- The Hunter will run through Cass until he catches her and he will try to "stab the blade" to Cass. If the player is standing still The Hunter will keep "stabbing the blade". If the player runs away The Hunter will cast a "mask animation" and then he will start "acid projectile". (If The Hunter's health goes below %50 without the "stabbing blade" then he will skip the stab blade and will start "acid projectile".)
Acid Projectile
-
After the "stab blade" attempt, If Cass is far from The Hunter, he will send an "acid projectile" through the point where Cass stands (the projectile will not hit Cass but it will hit the ground). When it touches the ground the portion of the ground will turn into an acid (it will be a circle acid I'm not sure if it has to be modeled or not.)
-
To cast this "acid projectile", The Hunter has to stand still (based on the balancing and adjustments it may be a rapid cannon will consider this later on.)
The Thing
Movement
Bite
Claw
Swing, Whipping Tongue
The Parasites
Movement
The Infected
Movement
Claw
Charging Bull
Bite
The Mutant Dog
Movement
Jump&Bite
Puzzles
Fuse Box Puzzle - Morgue
The door to escape the morgue is blocked by large crates that were placed there to block the entrance to the infected. Cassandra needs to power the nearby portable crane to move the heavy crates. Cassandra needs to power the morgue by finding fuses and solving the Fuse Box puzzle, then getting the lever from one of the rooms unlocked by the power turning on.
Beats
- Cassandra discovers the door to escape is blocked by large crates
- Cassandra needs to power a nearby portable crane to move the crates. But there is no power in the morgue
- Cassandra discovers the fuses are missing and the fuse box wires and disconnected at the bottom. She needs to find three fuses and connect the wires inside the fuse box to power the morgue
- Cassandra finds a note near the fuse box that talks about the Roman Numerals to hint at the solution to the fuse box puzzle
- Cassandra all fuses and places them inside the fuse box
- Cassandra connects the hanging wires to the bottom of the box to make it look like a Roman Numeral
- Cassandra flips the switch inside the fuse box to check for power and the generator turns on
- Cassandra now goes back to the Portable Crane and moves the crates out of the way to escape the morgue