Lunei:Game Play

From GoofishGameStudios
Jump to: navigation, search

Game Play

All keys must be rebind able via UI.

  • Camera
    • 3rd person orbit camera.
    • Snaps to rear on directional input, or weapon wield.
    • User can change camera distance from player using default:Z
    • No cut scenes, no force camera movement/handling as it breaks immersion.

Movement

  • Default:WSAD, characters rotate towards input vector while weapons holstered.
    • Strafe on weapon wield.
  • Jump=Default:Space
    • Jump contains 3 animations, start, fall and land.
    • Used for combat and weapons holstered

Targeting

  • No target locking
  • Crosshair

Combat

  • Default: Left mouse attack, right mouse block/attack if shield equipped
  • Hotkeys for powers will immediately use/fire that power
  • Active Power seep through weapon.. discuss and explore
  • Evade=default:middle mouse
    • Evade moves towards current/last direction vector.
    • Evade is a jump maneuver, no rolling around animations.
  • Crouch=Default:Left CTL
    • Crouch animations required for holstered and holding all weapons types.
      • First explore blend spaces with layered blend per bone to reuse crouch animations while weapon wielding.
  • Damage calculated on hitbox for projectile, melee
  • Damage calculated with falloff for area damage.

Quests

  • Objective markers must be an optional setting in the game.
  • No minimap.
  • No Enemy wall hacks, enemies are not visible through walls at any time.
  • No cover mechanic, cover is taken by crouching behind something
  • Quests may consist of multiple objectives.
  • Multiple quests may be active at any time.

Input

Input is constantly being checked by the player character only, and level designers and programmers may assume, and use the bIsUsingGamePad custom property ion the Lunei4_21Character class. This was achieved by implementing the 'AnyKey' in the character blueprint, and then setting the FKey Action on the character property: LastKey, using the character short timer function.

Pausing

  • The game will NOT USE Unreal Engine Pause mechanic, because it actually stops animation updates and various other useful things too
  • Use LuneiGameState->PauseGame, and LuneiGameState->IsGamePaused
    • There is a global blueprint function available for this already, and it is available from C++/BP in 3rd person character.
    • Actors will stop acting when pause is set.
    • Music will dim/fade/stop
    • Animation and physics will still tick, but gameplay logic, and control will no longer be passed along.
    • UI will still function
    • DO NOT USE TICKABLE WHEN PAUSED!!! It has unexpected behavior/results. Use the LuneiGameStatePaused


Input Mappings

Default Key bindings, and their actions.

Action Description Keybd/Mouse Gamepad/Axis
Forward/Right Move the character forward/right WSAD left thumb
Lookat Lookat camera about Pitch/Yaw mouse movement right thumb
PrimaryFire The primary engagement/interaction Left mouse button left trigger
SecondaryFire Alternative engagement/interaction Right mouse button right trigger
Jump Physics affect about Z velocity Space bottom face button
Evade Evasivce manouvre Middle mouse right shoulder
Confirm UI/Menu/World Interactions and confirmations Enter left face button
Back UI/Menu/World Interactions Escape or CTL+W right face button