Skip to content
Games by Hyper
Sign Up / Login
Games by Hyper

Generic

  • QuickStart
  • Support
  • Purchase Options
  • Roadmap
  • FAQ
  • Learning
  • For Professional Studios

Templates

  • Template Logic and flexibility

Shared Infrastructure

  • Gameplay Tags
  • Datamanagement
  • Folder Structure

Item Management

  • Inventory
  • Jigsaw Inventory
  • List Inventory
  • Respawn Actor Manager
  • Hotbar
  • Crafting
  • Item Allocator
  • Vendor
  • Icon Creator
  • Interactive Foliage
  • Inspection System

Interaction and Feedback

  • Interaction System
  • Outliner System

UI

  • Main Menu
  • HUD
  • Information Prompt

Locomotion

  • Animation Framework
  • Extended Movement Component
  • Leader Posing
  • Custom-Skeletal-Meshes

Combat

  • Attribute Manager
  • Team Affiliation
  • Equipment Manager
  • Ragdoll System
  • Ability System
  • Target Locking
  • Weapon Attachment System
  • Limb System
  • Combat-framework

Construction and Survival Mechanics

  • Building System
  • Mineable Rocks
  • Tree Cutting
  • Farming System
  • Fishing System
  • Swimming System

Game Management

  • Global Save System
  • Respawn System
  • Session Manager
  • Game Mode System
  • Spectate System
  • Player Manager
  • Team Manager
  • Score Manager
  • Guild Manager
  • Party Manager

Multiplayer

  • Online Multiplayer Framework
  • Replication Subsystem
  • Chat System
  • Console Command Manager

AI

  • Basic AI
  • NPC Behavior System
  • Perception System
  • Companion System

Exploration and Narrative

  • Dialogue System
  • Memory System
  • Quest Manager
  • Map System
  • Teleport System
  • Guide System
  • Event Manager
  • Visual Novel System
  • Dungeon Adventure Kit
  • Region Manager

Progression and Leveling

  • Level Manager
  • Unlock System
  • Reputation System

Security and Control Systems

  • Drone System
  • Lock System
  • Security System
  • Defense System
  • Defense System – Modern
  • Defense System – Primitive

Character and Player Systems

  • Character Creator
  • Class System
  • Mount System
  • First Person

Environmental Control and Immersion

  • Time and Day Night Cycle management
  • Weather System
  • Background Music System
  • Footstep System

Environment Building

  • Mesh to Actor Swap System
  • Auto Landscape
  • Cave
  • Deform
  • Ditch
  • Exclusion
  • Forest
  • Forest-Basic
  • Lake
  • Level Instances
  • Mesh
  • Path
  • Props
  • Spline
  • Village
View Categories
  • Home
  • Docs
  • Spectate System

Spectate System

7 min read

Spectate System #

Spectate System #

  • Overview
  • Core Concepts
  • Components
  • Spectate Restrictions
  • Alive Player Prioritization
  • Player Switching
  • Integration with Game Mode System
  • How-To: Enable and Configure Spectating
  • Examples and Use Cases
  • See Also

1. Overview #

The Spectate System allows players to view the game from other players’ perspectives. It supports team-based restrictions, alive player prioritization, and manual player switching via input controls.

Key Features: – Spectate other players from their point of view – Team-based restrictions: spectate only teammates (not enemy teams) – Override options: customize who is allowed to spectate and who can be spectated – Alive player prioritization: optionally exclude dead players from the spectate list – Player switching: cycle through spectatable players using left/right arrow keys – Game Mode integration: coupled with the Game Mode System for team and player state queries

Use Cases: – Team-based games where dead players spectate living teammates – Tournament observer modes with custom spectate permissions – Training or coaching scenarios where one player observes another – Post-match replays where players cycle through different perspectives


2. Core Concepts #

  • Spectator: The player who is viewing another player’s perspective (the one doing the spectating).
  • Spectate Target: The player being spectated (whose view is shown to the spectator).
  • Team-Based Spectating: The current implementation restricts spectators to only view teammates (players on the same team). Enemy team members are not visible in the spectate list.
  • Alive Player Prioritization: An option that filters out dead players from the spectate list, ensuring spectators only view living players.
  • Override Options: Configurable settings to customize spectate permissions (who can spectate, who can be spectated).
  • Player Switching: The ability to cycle through the list of spectatable players using input controls (left/right arrow keys).

3. Components #

Spectate System Component (AC_Spectate): – Manages the spectator’s current target and the list of spectatable players – Enforces team-based restrictions and alive player prioritization – Provides player switching functionality (cycle left/right through available targets) – Integrates with the Game Mode System to query team affiliation and player state (alive/dead)


4. Spectate Restrictions #

The Spectate System provides configurable restrictions to control who can spectate and who can be spectated.

4.1. Team-Based Spectating (Current Implementation) #

Behavior: – Spectators can only view players on their own team. – Enemy team members are excluded from the spectate list. – This restriction is enforced by querying the Game Mode System (or Team Manager) for team affiliation.

Use Case: Competitive team-based games where revealing enemy positions via spectating would be unfair (e.g., dead players spectating enemies and communicating their locations to living teammates).

4.2. Override Options #

The system supports overriding the default team-based restriction:

  • Who is allowed to spectate: You can specify which players or roles are permitted to enter spectate mode (e.g., only dead players, or specific observer roles).
  • Who can be spectated: You can customize the list of spectatable players (e.g., allow spectating all players regardless of team, or restrict to specific players).

Use Case: – Observer/coach roles that can spectate all players (both teams). – Custom game modes where spectating is unrestricted (e.g., free-for-all or non-competitive modes). – Replay systems where a spectator can view any player’s perspective.


5. Alive Player Prioritization #

Behavior: – When enabled, the Spectate System prioritizes alive players in the spectate list. – Dead players are still shown in the list (not excluded), but alive players appear first or are easier to access. – The system does not automatically switch targets when the current spectate target dies; switching requires manual input (left/right arrow).

Use Case: – Team-based shooters or battle royales where spectators (dead players) prefer to view living teammates but can still manually switch to dead players if needed. – Avoid forcing spectators to view inactive/dead player perspectives by default.

Configuration: This is an option that can be toggled (enabled/disabled).


6. Player Switching #

Controls: – Configurable input actions (commonly bound to left/right arrow keys or similar navigation controls). – Previous Player: Switch to the previous player in the spectate list. – Next Player: Switch to the next player in the spectate list.

Behavior: – The spectate list is not explicitly ordered; it is based on the player array or team list (depending on implementation context). – Switching cycles through the list in a loop (e.g., if you are spectating the last player in the list and press next, it wraps to the first player). – The spectator’s view immediately transitions to the new target’s perspective. – Switching is manual only; the system does not automatically switch targets when the current target dies or changes state.

Use Case: – Dead player wants to check on different teammates to see who is still alive or in a good position. – Observer wants to quickly scan through multiple players to find interesting gameplay moments.

Implementation Notes: – Ensure input bindings are configured for spectate switching actions in your project’s input settings.


7. How-To: Enable and Configure Spectating #

Step 1: Add the Spectate System Component #

  • Add the AC_Spectate component to the character.

Step 2: Configure Spectate Restrictions #

  • Set Team-Based Spectating (enabled by default in the current implementation).
  • Optionally configure Override Options to customize who can spectate and who can be spectated:
    • Example: Allow observer roles to spectate all players (both teams).
    • Example: Restrict spectating to a whitelist of specific players.

Step 3: Enable Alive Player Prioritization (Optional) #

  • Set the Alive Player Prioritization option to true (or enable the corresponding property).
  • The Spectate System will prioritize alive players in the spectate list (dead players remain accessible but are lower priority).

Step 4: Configure Input Bindings #

  • Ensure spectate switching input actions are bound in your project’s input settings (commonly mapped to left/right arrow keys or similar navigation controls).
  • Test switching between spectate targets in-game.

Step 5: Test #

  • Start a multiplayer session with multiple players on different teams.
  • Kill a player (so they enter spectate mode).
  • Verify the spectator can only see teammates (if team-based spectating is enabled).
  • Use the configured input controls to cycle through spectate targets.
  • Verify alive player prioritization (if enabled) prioritizes living players in the spectate order.

8. Examples and Use Cases #

Example 1: Team Deathmatch Spectating #

Scenario: A player dies in a team-based shooter and wants to spectate their living teammates.

Implementation: – Spectate System is configured with Team-Based Spectating enabled and Alive Player Prioritization enabled. – When the player dies, they automatically enter spectate mode (handled by Game Mode System or Player Manager). – The spectator sees a list of teammates with living players prioritized; they can cycle through them using the configured input controls. – Enemy team members are not visible in the spectate list.

Example 2: Observer/Coach Mode #

Scenario: A coach wants to spectate all players (both teams) to analyze gameplay.

Implementation: – Create a special “Coach” role or player type. – Use Override Options to allow the Coach to spectate all players regardless of team. – Disable Alive Player Prioritization so the Coach can spectate players in any order (alive or dead). – The Coach can cycle through all players in the match using the configured input controls.

Example 3: Battle Royale Spectating #

Scenario: In a battle royale game, eliminated players spectate the player who eliminated them, then can switch to other living players.

Implementation: – When a player is eliminated, set their initial spectate target to the player who eliminated them. – Enable Alive Player Prioritization so living players appear first in the spectate order. – Spectators can use the configured input controls to switch to other players. – Team-based spectating may be disabled (or configured for squad-based spectating if the game has squads).

Example 4: Free-For-All Spectating #

Scenario: In a free-for-all deathmatch, dead players can spectate any other player.

Implementation: – Disable Team-Based Spectating (or configure it to treat all players as one “team” or no team). – Configure Alive Player Prioritization as desired (enabled to prioritize living players, or disabled to show all players equally). – Spectators can cycle through all players using the configured input controls.


9. See Also #

  • Game Mode System: Provides team affiliation and player state (alive/dead) data to the Spectate System.
  • Team Manager: Manages team assignments and team-based logic.
  • Player Manager: Tracks player states and may fire events when players die/respawn.
  • HUD: May display spectate UI (e.g., “Now spectating: PlayerName” indicator).
What are your Feelings
Still stuck? How can we help?

How can we help?

Table of Contents
  • Spectate System
    • Spectate System
    • 1. Overview
    • 2. Core Concepts
    • 3. Components
    • 4. Spectate Restrictions
      • 4.1. Team-Based Spectating (Current Implementation)
      • 4.2. Override Options
    • 5. Alive Player Prioritization
    • 6. Player Switching
    • 7. How-To: Enable and Configure Spectating
      • Step 1: Add the Spectate System Component
      • Step 2: Configure Spectate Restrictions
      • Step 3: Enable Alive Player Prioritization (Optional)
      • Step 4: Configure Input Bindings
      • Step 5: Test
    • 8. Examples and Use Cases
      • Example 1: Team Deathmatch Spectating
      • Example 2: Observer/Coach Mode
      • Example 3: Battle Royale Spectating
      • Example 4: Free-For-All Spectating
    • 9. See Also

© 2026 Games by Hyper

X Reddit Patreon Discord Linkedin YouTube

Review Cart

No products in the cart.

  • Hyper Bundle Configurator
  • Shop
    • Game Templates
    • Courses
    • Loyalty Store
    • Survival Modules
    • RPG Modules
    • Environment Building
    • Browse All
  • My account
  • Become a Member
  • Cart
  • Get Help
    • FAQ
    • Upgrade your Game Template
    • Documentation
  • About Hyper
  • News & Updates