Skip to content
Verse Scripting

Verse Scripting pentru incepatori: primul tau UEFN Device

2026-03-059 min lectura

Ce este Verse?

Verse este limbajul de programare al Epic Games, proiectat special pentru UEFN. Daca ai folosit Python, Verse ti se va parea familiar — foloseste sintaxa bazata pe indentare si se citeste aproape ca limba engleza. Dar imprumuta si idei din limbaje de programare functionala precum Haskell, ceea ce il face puternic pentru logica de joc.

Orice comportament personalizat in UEFN care depaseste dispozitivele Creative de baza necesita Verse. Sisteme de scor, UI personalizat, managere de loadout, gestionarea rundelor, progresie ranked — toate in Verse.

Configurarea primului tau Verse Device

In UEFN, creeaza un nou Verse device:

  1. Deschide proiectul tau in UEFN
  2. Mergi la meniul VerseCreate New Verse File
  3. Alege Creative Device ca template
  4. Numeste-l my_first_device

UEFN genereaza un fisier boilerplate care arata asa:

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!")

Hai sa analizam acest cod.

Intelegerea bazelor

Instructiuni `using` — Acestea importa API-uri. /Fortnite.com/Devices iti da acces la dispozitivele Creative. /Verse.org/Simulation ofera functii de simulare de baza. /UnrealEngine.com/Temporary/Diagnostics iti da Print() pentru depanare.

Definitia claseimy_first_device := class(creative_device) creeaza o noua clasa de device care mosteneste din creative_device. Acesta este device-ul tau personalizat pe care il plasezi in lume.

OnBegin — Aceasta functie ruleaza cand incepe jocul. Tag-ul <override> inseamna ca inlocuiesti OnBegin-ul clasei parinte. Tag-ul <suspends> inseamna ca aceasta functie poate folosi operatiuni asincrone (precum Sleep()).

Construirea unui Kill Counter

Hai sa construim ceva util — un device care urmareste kills si le afiseaza. Mai intai, trebuie sa faci referinta la un device UI din nivelul tau:

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) {}

Concepte cheie Verse

Expresii care pot esua — Verse foloseste if pentru operatiuni care pot esua. Player.GetFortCharacter[] ar putea sa nu returneze nimic daca jucatorul nu are un caracter. Parantezele [] indica un apel care poate esua, iar incapsularea in if gestioneaza cazul de esec elegant.

Mutabilitatea — Variabilele declarate cu var pot fi modificate. Fara var, valorile sunt imuabile implicit. Aceasta previne mutatiile accidentale de stare.

Evenimente si abonamente — Verse foloseste un model bazat pe evenimente. Te abonezi la evenimente (PlayerAddedEvent, EliminatedEvent) si furnizezi functii callback. Asa reactionezi la gameplay fara polling.

Mapuri si array-uri[agent]int este un tip de map (dictionar) care mapeaza agenti la numere intregi. map{} creeaza unul gol.

Tipare comune

Iata tipare pe care le vei folosi in aproape orice Verse device:

Timer/intarziere:

Sleep(5.0) # Asteapta 5 secunde

Bucla:

loop:
 DoSomething()
 Sleep(1.0)

Iterarea jucatorilor:

Players := GetPlayspace().GetPlayers()
for (Player : Players):
 # Fa ceva cu fiecare jucator

Pasii urmatori

Acest ghid acopera bazele absolute. Pentru a merge mai adanc:

  • Citeste documentatia oficiala Verse a Epic
  • Studiaza proiecte Verse open-source pe GitHub
  • Exerseaza reconstruind dispozitive Creative existente in Verse
  • Alatura-te comunitatii UEFN Discord pentru ajutor

Construirea de Verse devices personalizate este ceea ce separa dezvoltatorii UEFN profesionisti de pasionati. Daca ai nevoie de mecanici personalizate complexe pentru harta ta, echipa noastra este specializata in Verse scripting — de la sisteme de scor personalizate la framework-uri complete de moduri de joc.

Verifica portofoliul nostru pentru a vedea Verse in actiune pe 10 harti publicate cu peste 4,8 miliarde de minute jucate.

K

Kaio

Dezvoltator de Harti UEFN la Kaio Corporation

Dezvoltator profesionist de harti Fortnite UEFN. Peste 4,8 miliarde de minute jucate pe 10 harti. Afla mai mult

Ai nevoie de o harta personalizata?

Contacteaza-ne