Skip to content
Verse Scripting

Verse Scripting voor beginners: je eerste UEFN Device

2026-03-059 min lezen

Wat is Verse?

Verse is de programmeertaal van Epic Games, speciaal ontworpen voor UEFN. Als je Python hebt gebruikt, zal Verse vertrouwd aanvoelen — het gebruikt op inspringing gebaseerde syntax en leest bijna als Engels. Maar het leent ook ideeën van functionele programmeertalen zoals Haskell, waardoor het krachtig is voor gamelogica.

Elk aangepast gedrag in UEFN dat verder gaat dan basis Creative devices vereist Verse. Scoresystemen, aangepaste UI, loadout-managers, rondebeheer, ranked progressie — allemaal Verse.

Je eerste Verse Device opzetten

Maak in UEFN een nieuw Verse device aan:

  1. Open je project in UEFN
  2. Ga naar het Verse menu → Create New Verse File
  3. Kies Creative Device als template
  4. Noem het my_first_device

UEFN genereert een boilerplate-bestand dat er zo uitziet:

using { /Fortnite.com/Devices }
using { /Verse.org/Simulation }
using { /UnrealEngine.com/Temporary/Diagnostics }

my_first_device := class(creative_device):

 OnBegin<override>()<suspends>:void=
 Print("Hello, Fortnite!")

Laten we dit ontleden.

De basis begrijpen

`using` statements — Deze importeren API's. /Fortnite.com/Devices geeft je toegang tot Creative devices. /Verse.org/Simulation biedt kern simulatiefuncties. /UnrealEngine.com/Temporary/Diagnostics geeft je Print() voor debugging.

Klassedefinitiemy_first_device := class(creative_device) maakt een nieuwe device-klasse aan die overerft van creative_device. Dit is jouw aangepaste device dat je in de wereld plaatst.

OnBegin — Deze functie wordt uitgevoerd wanneer het spel start. De <override> tag betekent dat je de OnBegin van de bovenliggende klasse vervangt. De <suspends> tag betekent dat deze functie asynchrone operaties kan gebruiken (zoals Sleep()).

Een Kill Counter bouwen

Laten we iets nuttigs bouwen — een device dat kills bijhoudt en weergeeft. Eerst moet je verwijzen naar een UI device in je level:

using { /Fortnite.com/Devices }
using { /Fortnite.com/Characters }
using { /Verse.org/Simulation }

kill_counter := class(creative_device):

 @editable
 EndGameDevice : end_game_device = end_game_device{}

 var KillCounts : [agent]int = map{}

 OnBegin<override>()<suspends>:void=
 # Subscribe to elimination events
 GetPlayspace().PlayerAddedEvent().Subscribe(OnPlayerAdded)

 OnPlayerAdded(Player : player):void=
 if (FortCharacter := Player.GetFortCharacter[]):
 FortCharacter.EliminatedEvent().Subscribe(OnEliminated)

 OnEliminated(Result : elimination_result):void=
 if (Eliminator := Result.EliminatingCharacter):
 if (Player := player[Eliminator.GetAgent[]]):
 if (set KillCounts[Player] += 1) {}

Belangrijke Verse concepten

Feilbare expressies — Verse gebruikt if voor operaties die kunnen falen. Player.GetFortCharacter[] kan niets teruggeven als de speler geen personage heeft. De [] haakjes duiden een feilbare aanroep aan, en het inpakken in if vangt het faalscenario elegant op.

Mutabiliteit — Variabelen gedeclareerd met var kunnen worden gewijzigd. Zonder var zijn waarden standaard onveranderlijk. Dit voorkomt onbedoelde toestandsmutaties.

Events en subscriptions — Verse gebruikt een event-driven patroon. Je abonneert je op events (PlayerAddedEvent, EliminatedEvent) en geeft callback-functies mee. Zo reageer je op gameplay zonder polling.

Maps en arrays[agent]int is een map-type (dictionary) dat agents aan gehele getallen koppelt. map{} maakt een lege aan.

Veelgebruikte patronen

Hier zijn patronen die je in bijna elk Verse device zult gebruiken:

Timer/vertraging:

Sleep(5.0) # Wacht 5 seconden

Loop:

loop:
 DoSomething()
 Sleep(1.0)

Speler-iteratie:

Players := GetPlayspace().GetPlayers()
for (Player : Players):
 # Doe iets met elke speler

Volgende stappen

Deze gids behandelt de absolute basis. Om dieper te gaan:

  • Lees Epic's officiële Verse documentatie
  • Bestudeer open-source Verse projecten op GitHub
  • Oefen door bestaande Creative devices na te bouwen in Verse
  • Sluit je aan bij de UEFN Discord community voor hulp

Het bouwen van aangepaste Verse devices is wat professionele UEFN developers onderscheidt van hobbyisten. Als je complexe aangepaste mechanismen nodig hebt voor je map, ons team is gespecialiseerd in Verse scripting — van aangepaste scoresystemen tot complete game mode frameworks.

Bekijk ons portfolio om Verse in actie te zien in 10 gepubliceerde maps met meer dan 4,8 miljard gespeelde minuten.

K

Kaio

UEFN-mapontwikkelaar bij Kaio Corporation

Professionele Fortnite UEFN-mapontwikkelaar. 4,8B+ minuten gespeeld. Meer informatie

Een aangepaste map nodig?

Neem contact op