VerseIsland
Feed Learn Leaderboard Guides Reference Explore Search Docs Verse Library
Sign in
Feed Learn 📖 Codex Leaderboard Guides Reference Explore Search Docs Verse Library
Verse Library › Spawning
Browse Verse Library

Library

Devices 634
  • Devices166
  • Triggers & Logic117
  • UI & HUD41
  • Audio39
  • Items & Inventory29
  • Events28
  • Scoring & Objectives24
  • Spawning19
  • Classes & Interfaces18
  • Game Modes16
  • Props & Meshes13
  • Variables & Mutability12
  • Modules & Structure11
  • Player Management11
  • Round Flow9
  • Tutorials7
  • Animation6
  • Functions6
  • Getting Started6
  • Teams & Classes6
  • Concurrency5
  • Debugging5
  • NPCs & AI5
  • VFX & Particles5
  • Cameras4
  • Arrays & Maps3
  • Control Flow3
  • Structs & Enums3
  • Syntax & Types3
  • Cinematics2
  • Persistence2
  • Scene Graph2
  • Building1
  • Other1
  • Physics1
  • Publishing & Islands1
  • Reference1
  • Templates1
  • Vehicles1
  • Weapons1
Verse Language 257
  • Control Flow35
  • Functions27
  • Arrays & Maps25
  • Classes & Interfaces22
  • Variables & Mutability22
  • Concurrency21
  • Syntax & Types18
  • Modules & Structure12
  • Debugging8
  • Devices8
  • Events7
  • Player Management6
  • Structs & Enums6
  • Triggers & Logic6
  • Failure & Options4
  • Game Modes4
  • UI & HUD4
  • Getting Started3
  • Round Flow3
  • Scene Graph3
  • Spawning3
  • Reference2
  • Templates2
  • VFX & Particles2
  • Animation1
  • Best Practices1
  • Cameras1
  • Props & Meshes1
Materials/VFX 154
  • Triggers & Logic27
  • UI & HUD17
  • Devices16
  • VFX & Particles16
  • Game Modes8
  • Props & Meshes8
  • Scoring & Objectives8
  • Items & Inventory7
  • Arrays & Maps5
  • Events4
  • Animation3
  • Cinematics3
  • Classes & Interfaces3
  • Control Flow3
  • Modules & Structure3
  • Round Flow3
  • Spawning3
  • Concurrency2
  • Functions2
  • Reference2
  • Scene Graph2
  • Syntax & Types2
  • Variables & Mutability2
  • Getting Started1
  • Persistence1
  • Player Management1
  • Structs & Enums1
  • Tutorials1
General 153
  • Devices22
  • Events20
  • Triggers & Logic20
  • Classes & Interfaces10
  • Variables & Mutability8
  • Round Flow6
  • Scoring & Objectives6
  • UI & HUD6
  • Functions5
  • Player Management5
  • Game Modes4
  • Getting Started4
  • Props & Meshes4
  • Control Flow3
  • Syntax & Types3
  • VFX & Particles3
  • Arrays & Maps2
  • Best Practices2
  • NPCs & AI2
  • Other2
  • Physics2
  • Scene Graph2
  • Spawning2
  • Structs & Enums2
  • Tutorials2
  • Building1
  • Cameras1
  • Cinematics1
  • Failure & Options1
  • Items & Inventory1
  • Teams & Classes1
Player 133
  • Player Management22
  • Teams & Classes18
  • Classes & Interfaces12
  • Devices11
  • Triggers & Logic9
  • Events8
  • Persistence7
  • Arrays & Maps6
  • Game Modes5
  • Round Flow4
  • Functions3
  • Getting Started3
  • Items & Inventory3
  • Modules & Structure3
  • Concurrency2
  • Control Flow2
  • Debugging2
  • Props & Meshes2
  • Scoring & Objectives2
  • Spawning2
  • Structs & Enums2
  • Physics1
  • Reference1
  • UI & HUD1
  • Variables & Mutability1
  • Weapons1
Building & Props 131
  • Variables & Mutability15
  • Props & Meshes13
  • Triggers & Logic13
  • Classes & Interfaces10
  • Devices10
  • UI & HUD10
  • Events7
  • Teams & Classes7
  • Functions6
  • Animation5
  • Building5
  • VFX & Particles5
  • Structs & Enums4
  • Control Flow3
  • Game Modes3
  • Items & Inventory3
  • Round Flow3
  • Scene Graph3
  • Concurrency2
  • Reference2
  • Arrays & Maps1
  • Modules & Structure1
NPCs & AI 76
  • NPCs & AI34
  • Spawning7
  • Animation6
  • Variables & Mutability5
  • Classes & Interfaces3
  • Debugging3
  • Game Modes3
  • UI & HUD3
  • Audio2
  • Concurrency2
  • Props & Meshes2
  • Devices1
  • Functions1
  • Getting Started1
  • Reference1
  • Triggers & Logic1
  • VFX & Particles1
Spawning 73
  • Spawning31
  • Concurrency6
  • Events6
  • Vehicles5
  • Player Management4
  • Props & Meshes4
  • Items & Inventory3
  • Teams & Classes3
  • Devices2
  • Functions2
  • Round Flow2
  • Scene Graph2
  • Control Flow1
  • Scoring & Objectives1
  • Triggers & Logic1
Cinematics 71
  • Cameras17
  • Cinematics15
  • Devices11
  • Audio5
  • Animation4
  • Triggers & Logic4
  • Functions2
  • Game Modes2
  • Templates2
  • UI & HUD2
  • Classes & Interfaces1
  • Concurrency1
  • Control Flow1
  • Debugging1
  • Items & Inventory1
  • Modules & Structure1
  • Scene Graph1
UI 57
  • UI & HUD34
  • Devices5
  • Scoring & Objectives4
  • Classes & Interfaces3
  • Round Flow2
  • Scene Graph2
  • Arrays & Maps1
  • Functions1
  • Getting Started1
  • Reference1
  • Structs & Enums1
  • Triggers & Logic1
  • Variables & Mutability1
Scene Graph 40
  • Scene Graph9
  • Items & Inventory8
  • Classes & Interfaces3
  • Events3
  • Props & Meshes3
  • Reference2
  • Arrays & Maps1
  • Building1
  • Control Flow1
  • Debugging1
  • Functions1
  • Modules & Structure1
  • Player Management1
  • Structs & Enums1
  • Syntax & Types1
  • Triggers & Logic1
  • UI & HUD1
  • VFX & Particles1
Vehicles 38
  • Spawning12
  • Devices7
  • Vehicles7
  • Props & Meshes4
  • Game Modes2
  • Failure & Options1
  • Items & Inventory1
  • Reference1
  • Teams & Classes1
  • Tutorials1
  • VFX & Particles1
Tutorials 37
  • Game Modes6
  • Triggers & Logic5
  • Classes & Interfaces4
  • Events4
  • Props & Meshes3
  • Building2
  • Devices2
  • Items & Inventory2
  • Scoring & Objectives2
  • Animation1
  • Arrays & Maps1
  • Cameras1
  • Concurrency1
  • Physics1
  • Player Management1
  • Structs & Enums1
Weapons 30
  • Devices6
  • Game Modes6
  • Weapons4
  • Items & Inventory3
  • Scoring & Objectives3
  • Spawning2
  • Teams & Classes2
  • Best Practices1
  • Classes & Interfaces1
  • Functions1
  • Triggers & Logic1
Items 28
  • Items & Inventory23
  • Devices2
  • Triggers & Logic2
  • Spawning1
Assets 20
  • Modules & Structure6
  • Arrays & Maps3
  • Functions3
  • Scene Graph2
  • Best Practices1
  • Devices1
  • Events1
  • Failure & Options1
  • Physics1
  • Variables & Mutability1
Animation 19
  • Animation9
  • Variables & Mutability4
  • Devices1
  • Props & Meshes1
  • Reference1
  • Scene Graph1
  • Syntax & Types1
  • Tutorials1
Release Notes 17
  • Classes & Interfaces5
  • Modules & Structure3
  • Concurrency2
  • Control Flow2
  • Variables & Mutability2
  • Debugging1
  • Devices1
  • Items & Inventory1
Input & Controls 16
  • Functions3
  • Control Flow2
  • Syntax & Types2
  • UI & HUD2
  • Animation1
  • Arrays & Maps1
  • Cinematics1
  • Debugging1
  • Devices1
  • Events1
  • Reference1
Publishing 8
  • Control Flow5
  • Arrays & Maps1
  • Devices1
  • Syntax & Types1
Audio 7
  • Audio5
  • UI & HUD2
Landscape 7
  • Other4
  • VFX & Particles2
  • Scene Graph1
Persistence 6
  • Structs & Enums2
  • Items & Inventory1
  • Persistence1
  • Publishing & Islands1
  • Variables & Mutability1
Physics 5
  • Syntax & Types3
  • Classes & Interfaces1
  • Devices1
Creator Economy 3
  • Modules & Structure1
  • Other1
  • Publishing & Islands1
Discovery 3
  • Devices1
  • NPCs & AI1
  • Structs & Enums1
Editor & Project 3
  • Other1
  • Props & Meshes1
  • Tutorials1

Subscribable Utils

Module — 3 files
These files compile together (same module folder).
file_1.verse
# Registers `Callback` to `Subscribable` with `Context` passed as an additional argument.
(Subscribable:subscribable(payload) where payload:type).SubscribeWith<public>(
    Callback:tuple(payload, context) -> void,
    Context:context where context:type
)<transacts>:cancelable =
    Wrapper := wrapper_sub(payload, context):
        Callback := Callback,
        Context := Context
    return Subscribable.Subscribe(Wrapper.InvokeCallback)

# Registers `Callback` to parameterless `Subscribable` with `Context` passed as the only argument.
(Subscribable:subscribable(tuple())).SubscribeEmptyWith<public>(
    Callback:context -> void,
    Context:context where context:type
)<transacts>:cancelable =
    Wrapper := wrapper_sub_empty(context):
        Callback := Callback,
        Context := Context
    return Subscribable.Subscribe(Wrapper.InvokeCallback)

# Registers a suspending `Callback` to `Subscribable`. Each signal spawns a new task.
(Subscribable:subscribable(payload) where payload:type).SubscribeSuspends<public>(
    Callback:type{_(:payload)<suspends>:void}
)<transacts>:cancelable =
    Wrapper:wrapper_sub_suspends_basic(payload) = wrapper_sub_suspends_basic(payload):
        Callback := Callback
    return Subscribable.Subscribe(Wrapper.InvokeCallback)

# Registers a suspending `Callback` to `Subscribable` with `Context` passed as an additional argument. Each signal spawns a new task.
(Subscribable:subscribable(payload) where payload:type).SubscribeSuspendsWith<public>(
    Callback:type{_(:tuple(payload, context))<suspends>:void},
    Context:context where context:type
)<transacts>:cancelable =
    Wrapper:wrapper_sub_suspends(payload, context) = wrapper_sub_suspends(payload, context):
        Callback := Callback,
        Context := Context
    return Subscribable.Subscribe(Wrapper.InvokeCallback)

# Registers a suspending `Callback` to parameterless `Subscribable` with `Context` passed as the only argument. Each signal spawns a new task.
(Subscribable:subscribable(tuple())).SubscribeEmptySuspendsWith<public>(
    Callback:type{_(:context)<suspends>:void},
    Context:context where context:type
)<transacts>:cancelable =
    Wrapper := wrapper_sub_empty_suspends(context):
        Callback := Callback
        Context := Context
    return Subscribable.Subscribe(Wrapper.InvokeCallback)

# ─────────────────────────────────────────────────────────────
# Wrappers

wrapper_sub<internal>(payload:type, context:type) := class:
    Callback:tuple(payload, context) -> void
    Context:context
    InvokeCallback(Payload:payload):void = Callback(Payload, Context)

wrapper_sub_empty<internal>(context:type) := class:
    Callback:context -> void
    Context:context
    InvokeCallback():void = Callback(Context)

wrapper_sub_suspends_basic<internal>(payload:type) := class:
    Callback:type{_(:payload)<suspends>:void}
    InvokeCallback(Payload:payload):void = spawn{Callback(Payload)}

wrapper_sub_suspends<internal>(payload:type, context:type) := class:
    Callback:type{_(:tuple(payload, context))<suspends>:void}
    Context:context
    InvokeCallback(Payload:payload):void = spawn{Callback(Payload, Context)}

wrapper_sub_empty_suspends<internal>(context:type) := class:
    Callback:type{_(:context)<suspends>:void}
    Context:context
    InvokeCallback():void = spawn{Callback(Context)}
file_2.verse
subscribes<public> := interface:

    var Subscriptions<private>:[]cancelable = array{}

    AddSubscription<final><public>(InSubscription:cancelable):void =
        set Subscriptions += array{InSubscription}

    AddSubscriptions<final><public>(InSubscriptions:[]cancelable):void =
        set Subscriptions += InSubscriptions

    CancelSubscriptions<final><public>():void =
        for (Subscription : Subscriptions):
            Subscription.Cancel()
        set Subscriptions = array{}
player_manager_component.verse
player_manager_component := class<final_super>(component, subscribes):

    OnSimulate<override>()<suspends>:void =
        if (Playspace := Entity.GetPlayspaceForEntity[]):
            for (Player : Playspace.GetPlayers()):
                spawn. OnPlayerAdded(Player)
                    
            AddSubscriptions of array:
                Playspace.PlayerAddedEvent().SubscribeSuspends(OnPlayerAdded)
                Playspace.PlayerRemovedEvent().Subscribe(OnPlayerRemoved)
    
    OnEndSimulation<override>():void =
        CancelSubscriptions()
    
    OnPlayerAdded(Player:player)<suspends>:void =
        Sleep(Inf)

    OnPlayerRemoved(Player:player):void =
        {}

# ─────────────────────────────────────────────────────────────

npc_manager_component := class<final_super>(component, subscribes):

    @editable
    NPCSpawners:[]npc_spawner_device = array{}

    OnSimulate<override>()<suspends>:void =
        AddSubscriptions of:
            for (Index -> Spawner : NPCSpawners):
                SpawnerTags := Spawner.GetTags()
                
                # 1 additional argument
                # Spawner.SpawnedEvent.SubscribeWith(OnNPCSpawned1, Index)

                # 2 additional arguments
                # Use a tuple to pass multiple arguments as context.
                Spawner.SpawnedEvent.SubscribeWith(OnNPCSpawned2, (Index, SpawnerTags))
    
    OnEndSimulation<override>():void =
        CancelSubscriptions()
    
    OnNPCSpawned1(SpawnedNPC:agent, SpawnerIndex:int):void =
        {}

    # You can destructure tuple parameters directly in the callback parameter list.
    OnNPCSpawned2(SpawnedNPC:agent, (SpawnerIndex:int, SpawnerTags:tag_view)):void =
        {}
Sign in to download module

Copy-paste each file above is always free.

Comments

    Sign in to vote, comment, or suggest an edit. Sign in
    📄
    Source
    @int
    Epic Games Community
    @int

    Created by a member of the Epic Games community. Rights remain with the original author, under Epic's community content terms. Terms ↗

    View original Sources & licensing
    Request removal
    Last updated Jun 23, 2026
    Verse module (3 files)
    Build failed · 9 errors

    Download the full module (zip) from the code panel above.

    Keep exploring
    More in Verse Language · 57 of 106
    Prev
    fortnite linear float curve
    Next
    fortnite matrices
    Related topics
    • Fortnite Subscribable Event Verse Language
    • subscribable%28t%29 Verse Language
    • Subscribable 1 Verse Language
    • Subscribable 1 Verse Language
    • subscribe Verse Language

    Related

    Open in graph →

    Related topics

    • Fortnite Subscribable Event
    • subscribable%28t%29
    • Subscribable 1
    • Subscribable 1
    • subscribe
    VerseIsland · an archipelago of Verse & UEFN knowledge
    🗺️ Island atlas Learn Guides History About & Press Sources & Licensing Status

    Not affiliated with Epic Games. Fortnite, UEFN, Unreal Engine, and Verse are trademarks of Epic Games, Inc. Content is attributed to its source — see Sources & Licensing.

    🦜

    Scout · your island guide

    The Isle of Verse