Nexus

1. General

1.1. Despre document

Scopul acestui document este de a prezenta poziția și intenția Clarus Victoria privind jocurile pe care dorim să le creăm și calea spre acest obiectiv.

Jocurile pe care studioul le va dezvolta în următorii ani sunt privite ca etape pe drumul către un proiect mai amplu și pe termen lung numit Nexus.

Acesta nu este un caiet de sarcini tehnic și nici o promisiune de termene concrete. Pe măsură ce proiectul evoluează, documentul va fi actualizat.

Documentul se adresează jucătorilor interesați de viziunea generală a proiectului Nexus și de direcția de lucru a Clarus Victoria, precum și dezvoltatorilor care doresc să înțeleagă mai bine principiile și mecanicile noului sistem.

1.2. Despre proiect

Nexus este un joc universal pe calculator, în care jucătorii pot crea și configura propriile jocuri, amestecând genuri, setări și mecanici, și pot face schimb de ele cu alții.

Spre deosebire de jocurile tradiționale, Nexus nu oferă un gen prestabilit sau un singur scenariu de parcurgere. Genurile de jocuri acționează aici ca seturi de reguli și scenarii pe care jucătorul le poate alege, combina și modifică pe parcurs.

Nexus nu este încă un Roblox sau Garry's Mod. În majoritatea platformelor similare, lumile sunt construite din scripturi și editoare. În Nexus, lumile sunt construite pe baza unui limbaj apropiat de cel uman. Cu ajutorul lui se formează sensuri, reguli și conținut. Această abordare oferă mai multă flexibilitate și libertate în alegerea a ce și cum să joci.

1.3. Structura documentului

Documentul este structurat în secțiuni numerotate pentru navigare ușoară și partajarea link-urilor.

Structura generală include următoarele secțiuni:

  • Secțiunea 1 - introductivă. Conține informații generale despre proiectul Nexus și despre acest document.
  • Secțiunea 2 - descrie un set de idei despre cum ar putea arăta proiectul Nexus după realizarea sa.
  • Secțiunea 3 - conține idei și abordări care permit realizarea tehnică a proiectului.
  • Secțiunea 4 - foaia de parcurs: secvența de pași necesari pentru crearea proiectului.
  • Secțiunea 5 - provocări: riscuri și limitări ale proiectului, precum și abordări pentru rezolvarea lor.

Toate secțiunile, cu excepția secțiunii 3, sunt destinate unui public larg.

Secțiunea 3 este orientată în mai mare măsură către specialiști și dezvoltatori de jocuri.

Documentul are o structură modulară și poate fi citit selectiv, fără a urma strict ordinea secțiunilor.

1.4. Despre autor

Autorul documentului este Mihail Vasiliev, fondator, game designer și dezvoltator al studioului Clarus Victoria.

Documentul reflectă viziunea autorului și va fi actualizat pe măsură ce proiectul evoluează.

2. Conceptul ideii

2. Conceptul ideii

2.1. Scopul secțiunii

Să arătăm cum ar putea arăta proiectul Nexus și care ar putea fi funcționalitatea sa după realizare. În secțiune se examinează ideea formării unui gen - jocuri universale pe calculator, unul dintre reprezentanții căruia ar trebui să fie Nexus.

O parte din ideile descrise pot părea greu de realizat, dar sunt considerate ca reper și direcție de dezvoltare. Secțiunea este dedicată exclusiv conceptului de mecanici de joc și imaginii generale a jocului. Chestiunile de elaborare a regulilor și realizare tehnică sunt tratate în secțiunea 3.

2.2. Începutul jocului

În meniul principal al jocului este prezentată o interfață care seamănă vag cu YouTube, dar în loc de videoclipuri sunt afișate scenarii de joc.

Baza ecranului o constituie blocurile de recomandări și secțiunea de istoric.

Sunt disponibile și funcții suplimentare: liste de scenarii marcate ca favorite și cele la care utilizatorul intenționează să revină mai târziu.

2.2.1. Crearea jocului prin recomandări

Dacă este prima lansare, jocul va propune trenduri în diferite categorii cu diverse scenarii populare.

Dacă nu este prima lansare, jocul va cunoaște deja interesele dvs. și va arăta în Recomandări scenarii pe care nu le-ați încercat încă, dar care ar trebui să vă placă.

De exemplu, dacă vă plac Roma Antică, spațiul cosmic și cursele, în recomandări pot apărea teme:

«Împăratul Traian», «Căderea Romei», «Germanii antici», «Colonizarea lui Marte», «Pista Monza», «Motoare reactive».

Puteți alege orice temă.

2.2.2. Încărcarea jocului

Puteți deschide secțiunea Istoric și continua unul dintre jocurile create anterior - aceasta este reprezentarea obișnuită de salvare și revenire la sesiunile de joc anterioare.

Salvările pot fi împărtășite cu alți jucători.

2.2.3. Configurarea scenariului

După alegerea ideii de bază a scenariului, puteți defini suplimentar caracterul viitoarei campanii.

Dacă doriți, se stabilesc condițiile de start: particularitățile lumii și ale personajului dvs., precum și trăsăturile cheie de la care începe povestea.

2.2.4. Generarea jocului

Pe baza scenariului ales se formează lumea de joc, corespunzătoare temei stabilite.

Chiar și cu aceleași recomandări, condițiile inițiale pot diferi, făcând ca fiecare început să se simtă unic.

Dacă doriți, puteți seta un «seed de joc» pentru a reproduce condiții de start similare la o nouă parcurgere.

2.3. Lumea

2.3.1. Reguli

Regulile universale ale lumii reprezintă un set general de legi care, în formă ideală, se potrivesc jocurilor de rol și strategiilor.

Prin intermediul lor pot fi descrise și alte genuri - acțiune, sport, curse, aventuri și subgenurile lor.

Nu este vorba despre mecanici concrete, ci despre principii care permit exprimarea logicii majorității lumilor de joc.

2.3.2. Genuri

În joc nu există genuri rigide care limitează mecanicile. În schimb, genurile există ca module care pot fi combinate și configurate, asemenea unui constructor.

Baza rămâne jocul de rol - ca cel mai natural și ușor de înțeles mod de interacțiune cu lumea pentru om.

Dacă doriți o experiență strategică și, de exemplu, să trăiți viața lui Cezar, conduceți legiunile ca om, aflându-vă în mijlocul evenimentelor și participând la bătălii la persoana întâi.

Dacă este nevoie să vedeți ce se întâmplă în ansamblu, puteți ieși din cadrul rolului uman, dotându-vă cu abilități speciale, și să observați câmpul de luptă de sus, obținând o perspectivă strategică.

În modul de rol, ordinele nu sunt executate instantaneu: trec printr-un lanț de curieri și ofițeri, pot fi întârziate, distorsionate sau chiar pierdute. Totuși, puteți ieși din cadrul rolului și să vă dați capacitatea de a transmite ordine direct, ca și telepatic, obținând executarea lor imediată și necondiționată - chiar dacă cer sacrificiu de sine. Un astfel de pas deplasează treptat experiența de joc de la percepția de rol la strategia clasică, unde comenzile sunt executate imediat și precis.

Dacă în jocurile de acțiune obișnuite factorul decisiv este reacția în fracțiuni de secundă, aici rezultatul acțiunilor este determinat de nivelul abilităților personajului. Pentru un erou deosebit de îndemânatic, timpul poate fi perceput încetinit.

În curse, reușita trecerii unui viraj la viteză mare se manifestă ca rezultat al combinației mai multor factori: abilitățile și starea șoferului, caracteristicile mașinii, calitatea suprafeței, aderența la drum, prezența rivalilor în apropiere și elementul de hazard.

2.3.3. Cunoștințele ca bază a jocului

Lumea jocului universal se bazează pe cunoștințe: fapte din trecut și prezent, reprezentări despre viitor, precum și ficțiune și fantezie. Aceste cunoștințe se reflectă sub formă entităților, proprietăților și relațiilor de joc cu care interacționați.

Biomurile, echipamentul, creaturile, fenomenele naturale, planetele și lumile întregi sunt percepute ca obiecte ale acestei cunoașteri. În formă de bază, o astfel de lume este apropiată de realitate: există flora și fauna, schimbarea anotimpurilor, epoci geologice și istorice, dezvoltare științifică și tehnică. Oamenii au abilități, puncte forte și slabe, istorie personală și motivație. Pot îmbolnăvi, răni și muri în absența ajutorului.

Scenariile fantasy, science fiction, alternative și post-apocaliptice se suprapun peste această bază, modificând anumite aspecte ale lumii fără a-i distruge coerența.

2.3.4. Evenimente

Evenimentele nu apar de la sine. Sunt consecința altor procese. Seceta duce la dispariția ierbii, lipsa ierbii - la moartea ierbivorelor, iar prădătorii înfometați, rămânând fără pradă, pot începe să atace oamenii. Lumea se dezvoltă ca un lanț de cauze și consecințe, unde fiecare schimbare declanșează noi procese.

Lumea nu așteaptă să interveniți și să vă faceți remarcat. Istoria lumii nu este prestabilită și nu se bazează pe scripturi. Se formează din alegerile dvs., acțiunile altor entități, legile lumii și hazard. Dacă scenariul are o bază istorică, evenimentele se repetă nu pentru că așa a fost «programat», ci pentru că aceleași cauze duc din nou la aceleași consecințe - precum criza Epocii Bronzului, apărută prin cascade de schimbări cauzate de climat.

2.3.5. Consecințele deciziilor jucătorului

Acțiunile jucătorului declanșează lanțuri de evenimente care rămân în lume. De exemplu, într-o situație critică, liderul unui grup poate decide să sacrifice un membru al echipei și să își păteze reputația, ceea ce va lăsa o urmă pe toată viața sa ulterioară.

Cu cât influența este mai puternică, cu atât consecințele sunt mai ample. Puteți schimba cursul unui râu și accelera timpul cu secole pentru a vedea cum se schimbă peisajul. Puteți săvârși o faptă eroică, să dispăreți timp de o mie de ani și să reveniți într-o nouă eră, unde numele dvs. a devenit un mit.

Lumea își ține propria istorie, păstrând evenimentele cheie, cauzele lor și rezultatele îndepărtate. Puteți studia sesiunile dvs. de joc anterioare după sute de ani - prin cărți, arheologie, și puteți observa cum deciziile luate cândva au modelat lumea actuală.

2.3.6. Motivație

Orice entitate - om, animal, organizație sau stat - acționează conform rolului și motivației sale. Tinde spre propriile scopuri independent de dvs. Visul, iubirea, agresiunea, lăcomia - stări care influențează comportamentul personajelor și le îndeamnă la acțiuni. De exemplu:

  • Absența îndelungată de lângă persoana iubită poate afecta grav starea personajului și îi poate schimba deciziile.
  • Faraonul poate ordona vizirului să construiască o piramidă, iar pentru vizir aceasta va deveni sarcină definitorie.
  • Cerbii caută hrană, se înmulțesc și evită prădătorii.
  • Un sindicat criminal se străduiește să își extindă influența și să cucerească noi teritorii.

2.3.7. Dramaturgie

Într-o lume complet simulată sunt posibile perioade lungi «de liniște». Dacă joci ca fermier, poți trăi zece ani fără războaie, catastrofe și schimbări mari.

Dacă scopul este să trăiești onest rolul cu toate zilele sale goale, lumea poate fi lăsată așa cum este.

Dar dacă vă plictisiți, dramaturgia poate fi intensificată. Aceasta schimbă senzația generală a celor ce se întâmplă: ritmul devine mai alert, evenimentele mai dense, iar echilibrul dintre momentele calme și cele tensionate se deplasează, fără a depăși logica lumii.

În acest mod, lumea începe să se comporte mai puțin previzibil: apar mici incidente, întâlniri neașteptate, răscruci rare ale destinului. Simularea nu se strică, dar viața personajului devine mai cinematografică - astfel încât un polițist obișnuit poate ajunge treptat într-o poveste cu urmăriri, investigații și răscruci dramatice.

Dacă doriți dinamica maximă, dramaturgia poate fi intensificată și mai mult - și atunci aproape după fiecare cotitură va apărea o nouă poveste, iar cele ce se întâmplă vor semăna cu un film de acțiune plin de acțiune.

2.3.8. Schimbarea regulilor jocului

Puteți oricând să ieșiți din rolul ales și să schimbați înseși regulile celor ce se întâmplă. Dacă, jucând ca un funcționar japonez de birou, decideți să deveniți supererou, aceasta nu va fi o acțiune obișnuită în lumea jocului, ci un pas care schimbă logica narațiunii.

Puteți modifica lumea și legile ei: să adăugați magie, să schimbați proprietățile obiectelor și creaturilor. Într-o astfel de lume, apa poate arde ca lemnul, iar porumbeii pot deveni inteligenți. După aceasta, lumea continuă să se dezvolte ținând cont de noile reguli, rămânând coerentă.

Puteți experimenta cu înseși bazele și să creați lumi care contrazic logica obișnuită: lumi ale paradoxurilor, oglinzilor, alte universuri cu propriile legi ale fizicii și structura realității.

Această abordare unifică jocul, simularea și editarea lumii, deschizând posibilități aproape nelimitate. Chiar și la modificarea legilor, lumea rămâne coerentă, deoarece principiile cauzalității continuă să acționeze în noile cadre.

Un instantaneu al lumii curente poate deveni baza unui joc nou. Un jucător, acționând în rolul de «zeu», poate crea o lume în care vor trăi alții. Aceasta seamănă cu un mod sau un editor de hărți, dar este integrat în însăși logica jocului universal.

2.4. Procesul de joc

2.4.1. Interpretarea rolului

Ați vrea să deveniți cea mai bogată persoană?

Să obțineți superputeri și să trăiți veșnic?

Să cuceriți spațiul cosmic?

Să ajungeți în trecut cu cunoștințele prezentului?

Puteți începe direct în rolul dorit sau să parcurgeți drumul de la zero, extinzând treptat posibilitățile și limitele personajului dvs.

Se permite interpretarea nu doar ca om, ci și ca eveniment, abstracție sau idee: incendiu, epidemie, organizație, religie, limbă.

Scenariul inițial stabilește doar punctul de plecare, iar dezvoltarea ulterioară este determinată complet de alegerile dvs.

2.4.2. Scopul jocului

Scopul jocului poate fi stabilit de scenariu, de dvs. sau de o combinație a ambelor, sau poate lipsi cu totul. Poate fi orice: de la o sarcină cotidiană la o realizare epocală - să obții slujba visurilor sau să inventezi «piatra filosofală».

Atingerea scopului nu încheie jocul: lumea continuă să trăiască, și puteți rămâne în ea atât cât doriți.

2.4.3. Schimbarea dinamică a rolului

În orice moment puteți schimba rolul și continua povestea din perspectiva unei alte entități din aceeași lume. O astfel de schimbare nu întrerupe cele ce se întâmplă și permite să vedeți evenimentele dintr-un alt punct de vedere.

De exemplu, puteți interpreta pe rând membrii aceleiași familii sau să vă încarnați în diferiți soldați pe câmpul de luptă. O astfel de experiență depășește cadrul interpretării obișnuite a unui singur rol, dacă jocul în sine nu este inițial construit în jurul ideii de migrare a sufletelor.

2.4.4. Acțiunile jucătorului

Acțiunile disponibile corespund situației curente și particularităților personajului dvs. Sunt formate de contextul celor ce se întâmplă și de cine sunteți în acest moment.

De exemplu, la un incendiu apar de obicei posibilități așteptate: să fugi, să stingi focul, să ajuți pe alții. Totuși, puteți acționa altfel și, de exemplu, să contribuiți la răspândirea focului.

Această diferență în acțiunile disponibile reflectă natura personajului - cine este și cum este înclinat să acționeze. Pentru un piroman, situația de incendiu va fi percepută diferit față de un om obișnuit.

2.4.5. Control automat și manual

În mod implicit, fiecare entitate din lume există autonom: acționează conform naturii sale, motivațiilor și scopurilor. Aceasta se aplică și personajului dvs., până când îl luați sub control.

Dacă alegeți rolul de lider și interacționați cu grupuri de creaturi, controlul nu este perceput ca un control direct, ci ca un sistem de rugăminți, ordine și așteptări.

Alte entități pot răspunde ordinului dvs. sau pot refuza să îl execute - în funcție de atitudinea lor față de dvs., resursele disponibile, frica, oboseala sau limitările fizice.

2.4.6. Observare

Puteți să nu jucați direct. Creați un personaj interesant, plasați-l într-o situație neobișnuită, setați nivelul dorit de dramaturgie (vezi punctul 2.3.7. Dramaturgie) și observați cum se dezvoltă evenimentele.

O astfel de experiență poate semăna cu vizionarea unui film, unde povestea se desfășoară de la sine.

Rezultatul observării poate fi împărtășit cu alți jucători, salvând și transmițând starea lumii. Poate că povestea cuiva va deveni un nou blockbuster.

Acest mod este potrivit nu doar pentru divertisment, ci și pentru modelare: puteți crea, de exemplu, o «civilizație a broaștelor țestoase» și să urmăriți cum parcurge drumul de la epoca de piatră la zboruri în spațiu.

2.5. Interacțiunea de joc

2.5.1. Camera și afișare

Cele ce se întâmplă în joc pot fi percepute în diferite moduri: la persoana întâi, la persoana a treia, cu vedere de sus sau chiar în formă de text. Modul de afișare se schimbă în funcție de context și rolul ales. De exemplu, pentru un om este natural să vadă lumea la persoana întâi, gândurile pot fi percepute ca text, iar la jocul ca țară sau planetă perspectiva se deplasează spre vederea strategică de sus.

Jocul universal nu este legat de un singur mod de reprezentare și poate arăta așa cum vă este mai convenabil în momentul dat.

Chiar și o persoană nevăzătoare va putea interacționa cu lumea, percepând obiectele și evenimentele prin sunet și descriere.

Volumul lumii percepute corespunde întotdeauna rolului curent. Dacă sunteți om, sunteți limitat de posibilitățile organelor de simț. Dacă vă dotați cu abilități speciale, percepția se extinde, permițându-vă să vedeți ceea ce este ascuns sau îndepărtat.

2.5.2. Grafică și sunet

Interfața, stilul vizual, animația, muzica și sunetul amplifică experiența de joc și ajută la simțirea rolului ales.

În lumea antichității și a gândirii magice, imaginea vizuală și sonoră subliniază dualitatea lumii oamenilor și zeilor, creând senzația unei dimensiuni suplimentare, unde fiecare acțiune este plină de sens sacru.

Într-un cadru post-apocaliptic, grafica și sunetul transmit fragilitatea supraviețuirii, sentimentul pierderii și rara speranță într-un nou început.

În lumea unui liliac, spațiul este perceput altfel: dimensiunea și forma sunt simțite prin sunet, nu prin vedere.

2.5.3. Harta

Lumea sau harta ei poate reprezenta orice suprafață - o planetă, o regiune, o navă sau chiar corpul uman, în funcție de rolul ales. De exemplu, când jucați ca o furnică, harta devine o poiană lângă un pârâu.

Percepția spațiului se schimbă odată cu scala: perspectiva poate fi apropiată sau îndepărtată, iar unghiul de vedere - deplasat.

La apropiere apar detaliile, la depărtare ele dispar, cedând locul structurilor și legăturilor mai mari.

2.5.4. Timp

Timpul curge cu diferite viteze în funcție de rolul ales și preferințe. În timpul luptei poate merge secundă cu secundă. În modul global, la modelarea proceselor geologice, o secundă de joc poate corespunde la milioane de ani.

Accelerarea este deosebit de potrivită când jucați ca creaturi cu o percepție diferită a timpului - plante sau forme de viață longevive.

Timpul poate fi oprit, accelerat, sărit sau întors înapoi. Dacă doriți, puteți juca în modul pe ture, fără a vă grăbi cu luarea deciziilor.

În anumite situații, timpul trece doar când controlați un anumit personaj și se oprește când vă gândiți la următorul pas.

2.5.5. Joc în rețea

Jucătorii în rețea pot juca simultan ca diferite personaje și entități în aceeași lume, după ce s-au înțeles în prealabil asupra regulilor de curgere a timpului. Unul poate fi Napoleon, dând ordine armatei, altul - un grenadier al lui Napoleon, atacând inamicii pe câmpul de luptă. Jucătorii se pot afla și în opoziție: unii - locuitori ai unui sat, alții - bandiți care terorizează așezarea, al treilea - vânători de bandiți.

2.6. Universalitate

2.6.1. Semnificație

Nexus este capabil să exprime și să reproducă logica majorității jocurilor existente la nivelul regulilor și interacțiunilor lor. Nu este vorba despre copierea literală a implementărilor concrete, ci despre reproducerea logicii lor de bază.

Aceasta este posibil deoarece orice joc este un set de reguli, iar regulile pot fi descrise prin afirmații semantice simple (triplete).

Exemple:

Dark Souls (în termeni de reguli):

  • Moarte -> cauzează -> pierdere_suflete
  • Foc_de_tabără -> este -> punct_de_reînviere
  • Inamic -> dificultate -> ridicată
  • Lovitură -> depinde_de -> rezistență

Civilization (în termeni de reguli):

  • Tură -> durată -> depinde_de_epocă
  • Oraș -> produce -> [unități, clădiri]
  • Victorie -> condiții -> [științifică, militară, culturală]

The Sims (în termeni de reguli):

  • Personaj -> nevoi -> [foame, somn, socializare]
  • Nevoie_scăzută -> cauzează -> dispoziție_proastă
  • Acțiune -> satisface -> nevoie

2.6.2. Mixuri de genuri

Deoarece regulile sunt organizate ca module, ele pot fi combinate. Aceasta permite asamblarea unor noi formate de joc din seturi de reguli deja cunoscute.

Exemple:

Dark Souls + Civilization:

  • Conduci regatul Lordran ca o civilizație.
  • Luptele și confruntările au loc după regulile Dark Souls (abilitate, timing, pericol).

The Sims + apocalipsa zombi:

  • Nevoile zilnice ale similor (mâncare, somn, socializare).
  • Peste acestea se adaugă regulile de supraviețuire (adăpost, arme, pericol).

Principiul universalității: dacă logica de joc poate fi exprimată în cuvinte, poate fi realizată în Nexus.

2.7. Exemplu

2.7.1. Situația în lume

Jucătorul este țăranul Ivan din satul Zarechie. Este înfometat, soția lui este însărcinată, vecinul Piotr și-a pierdut vaca. Se apropie ploaia.

2.7.2. Cum înțelege sistemul (tripletele)

În interiorul sistemului, această situație este descrisă printr-un set de afirmații simple:

  • Ivan -> este -> țăran
  • Ivan -> foame -> 30% (sau Ivan -> sațietate -> 30%)
  • Ivan -> se_află_în -> Zarechie
  • Maria -> relație -> soția_lui_Ivan
  • Maria -> însărcinată -> 8_luni
  • Vaca -> aparține -> Piotr
  • Vaca -> locație -> pădure
  • Vreme -> se_apropie -> ploaie

Fiecare afirmație este un atom de cunoaștere. Împreună formează starea curentă a lumii.

2.7.3. Cum vede jucătorul

Logica este separată de vizualizare și rămâne neschimbată.

În funcție de modul de afișare, aceleași triplete sunt prezentate diferit.

Mai detaliat despre Limbajul UX în secțiunea 3.9.

2.7.3.1. Mod text

«Tu ești Ivan, țăran. Stomacul ghiorăie de foame. Soția Maria va naște curând. Auzi strigătele vecinului - vaca lui a fugit. La orizont ceață de ploaie.»

2.7.3.2. Mod hartă hex cu iconițe

  • Celula satului cu obiecte: 🏠 (casă), 🏚️ (hambar), 💧 (pârâu)
  • Personaj: 👤 Ivan [🍞30% roșu]
  • Familie: 👩 Maria 🤰 ~30 zile
  • Eveniment: 🏠 lui Piotr 🔊, urme 🐾🐾 -> 🌲
  • Efect: 🌧️ se apropie

2.7.3.3. Mod 3D

Un sat complet, modelul lui Ivan se ține de burtă, Maria stă lângă casă, în depărtare se aud strigăte și se vede un gard rupt, nori întunecați la orizont.

2.7.4. Acțiunea jucătorului

Jucătorul formulează intenția: «Să îl ajut pe Piotr să găsească vaca»

Această acțiune se transformă în triplete:

  • Ivan -> intenție -> a_ajuta
  • A_ajuta -> pe_cine -> Piotr
  • A_ajuta -> sarcină -> a_găsi_vaca

Sistemul interpretează:

1. Ivan poate ajuta? -> Da (este sănătos fizic, se află în apropiere)

2. Necesită timp? -> Da (~1 oră)

3. Va afecta foamea? -> Da (se va intensifica)

4. Ce se va întâmpla? -> Căutare în pădure, probabilitate de a găsi vaca

2.7.5. Rezultat

După o oră de timp de joc:

  • Vaca -> locație -> găsită_la_pârâu
  • Ivan -> foame -> 20% (s-a intensificat)
  • Piotr -> atitudine_față_de_Ivan -> recunoștință +10
  • Piotr -> obligație -> a_ajuta_cu_acoperișul

Vizual:

  • Jucătorul vede animația întoarcerii cu vaca
  • 🍞 20% (și mai roșu)
  • Apare o notificare: «Piotr este recunoscător. A promis să ajute cu acoperișul.»

2.8. De la concept la realizare

Secțiunile 2.1-2.7 au descris imaginea dorită a Nexus din perspectiva jucătorului: ce vede, cum interacționează cu lumea, ce posibilități primește.

Principii cheie:

  • Orice situație de joc poate fi descrisă în cuvinte.
  • Cuvintele pot fi formalizate ca triplete (afirmații simple).
  • Tripletele pot fi interpretate (se pot face deducții).
  • Rezultatul poate fi vizualizat în orice mod.

3. Conceptul realizării

3. Conceptul realizării

3.1. Scopul secțiunii

Secțiunea este dedicată ideilor despre cum poate fi realizat tehnic proiectul Nexus și cum poate fi organizat din interior.

Aici sunt descrise nu soluții tehnice concrete, ci principii și direcții care fac posibilă existența unui astfel de joc. Se presupune că implementările concrete vor fi determinate în procesul de dezvoltare și precizate în practică.

În secțiune nu sunt examinate conceptele de joc ca idei în sine, atenția este concentrată exclusiv pe abordările realizării lor.

Secțiunea este orientată în primul rând către specialiști și dezvoltatori de jocuri pe calculator.

3.2. Abordarea flexibilă

Abordarea clasică a creării jocurilor pe calculator se construiește în jurul unor sisteme de joc rigide, proiectate dinainte, în care jucătorului i se permite să acționeze. Chiar și jocurile sandbox, care oferă un nivel ridicat de libertate, rămân în esență un set mare de sisteme separate. Aceasta creează senzația de diversitate a posibilităților, dar principiul de bază al arhitecturii rigid stabilite nu se schimbă. Adăugarea de noi sisteme în timp duce în primul rând la creșterea complexității dezvoltării și întreținerii, dar nu la extinderea calitativă a experienței de joc.

Pentru a obține o flexibilitate autentică, este nevoie de o reconsiderare a înseși bazei acestei abordări. Adăugarea de noi mecanici de joc nu trebuie să crească complexitatea arhitecturală a proiectului. În schimb, elementele de bază ale jocului trebuie organizate ca atomi - unități minime, universale și intercompatibile, din care poate fi construit tot restul.

O bună ilustrare a acestei abordări este Minecraft. În el este posibil să creezi construcții extrem de complexe - castele, orașe sau chiar stații spațiale, formate din milioane de elemente-cuburi. În același timp, creșterea numărului de obiecte nu duce la complicarea arhitecturii interne a jocului: sistemul este calculat inițial pentru scalare.

Într-un joc profund universal, un principiu similar poate fi aplicat întregii arhitecturi. Numărul de mecanici de joc poate fi oricât de mare, dar ele trebuie organizate astfel încât să coexiste armonios, să se combine și să formeze lumi de orice complexitate fără pierderea coerenței și gestionabilității sistemului.

3.3. Rețeaua semantică

Un mod posibil de a realiza abordarea flexibilă este reprezentarea datelor jocului sub formă de unități logice atomare - triplete.

Tripletul este o afirmație simplă de format «subiect - predicat - obiect». De exemplu:

  • Măr - este - comestibil
  • Măr - are valoare nutritivă - 5
  • Om - poate mânca - fructe
  • Iarbă - crește - la umiditate peste un anumit nivel
  • Cerb - este - erbivor
  • Sindicat - controlează - cartier al orașului

Prin triplete poate fi descris totul: obiecte, proprietățile și stările lor, relațiile dintre ele, acțiunile posibile, regulile de joc, tehnologiile sau magia.

Aceasta este o reprezentare a cunoștințelor, nelegată de o implementare concretă de joc. Nu este vorba doar despre un format de stocare a datelor, ci despre un mod de descriere a sensului lumii.

Pentru ca lumea să fie profundă și coerentă, se bazează pe un volum mare de date - de la principii generale ale structurii lumii la fapte individuale de joc.

Aceste date sunt umplute cu conținut concret: animale, tehnologii, obiecte, construcții, evenimente istorice și alte entități.

3.4. Interpretorul

Deasupra nivelului de date funcționează interpretorul. Se poate baza pe sisteme logice (de exemplu, Apache Jena) sau pe abordări bazate pe rețele neuronale.

Sarcina sa este să proceseze tripletele și să efectueze deducții logice. De exemplu:

  • Măr - este - fruct
  • Om - poate mânca - fructe
  • Deducție: omul poate mânca mere

Interpretorul obține această deducție comparând mai multe fapte. Lanțurile de deducție pot fi semnificativ mai lungi.

În joc, interpretorul este folosit pentru umplerea lumii și determinarea acțiunilor permise. Răspunde la întrebări de tipul:

  • Ce arbori pot crește în deșertul tropical al Arabiei.
  • Ce acțiuni pot efectua oamenii față de un câine în epoca de piatră timpurie și în Epoca Modernă.
  • Ce obiecte sunt accesibile percepției jucătorului în momentul curent.

Interpretorul descompune astfel de întrebări în interogări mai simple către date și le aduce la o reprezentare semantică unică, pe baza căreia se formează răspunsul.

Interpretorul lucrează cu interogări deja formalizate și nu interacționează direct cu limbajul natural.

3.5. ECS Semantic

Pentru ca lumea jocului universal să poată funcționa pe bază de semantică, logică și volume mari de fapte, are nevoie de o arhitectură capabilă să descrie obiectele și proprietățile lor cât mai flexibil, fără hardcode rigid.

Această sarcină o rezolvă, de exemplu, ECS semantic - o varietate a ECS clasic, adaptată pentru reprezentarea cunoștințelor și relațiilor dintre entități. În acest context, ECS este privit în primul rând ca model de date, nu ca ciclu de actualizare a sistemelor, și este utilizat ca punct de intrare practic, nu ca arhitectură finală.

La baza lumii se află entitățile: personaje, obiecte, animale, organizații, nave, plante. Ca și în ECS clasic, entitatea în sine nu conține logică și date, servește ca identificator la care se atașează componentele.

Diferența cheie constă în structura componentelor. În ECS tradițional, componenta reprezintă o structură cu un set de câmpuri. În ECS semantic, în loc de componente mari se folosesc componente-predicate: «Este», «Are», «Conține», «Poate», «Se referă la» și altele similare. Fiecare astfel de predicat exprimă o legătură sau o afirmație despre lume.

De exemplu, entitatea «Măr» poate avea componenta-predicat «Este», indicând către entitățile «Fruct» și «Comestibil». În același timp, «Comestibil» este tot o entitate, având propriile proprietăți: «Are - Valoare nutritivă», «Are - Gust». Fiecare componentă-valoare stochează exact o valoare, de exemplu: «Valoare nutritivă = 5», «Gust = dulce», «Greutate = 0.2».

Astfel se formează o rețea sau un arbore de proprietăți, unde fiecare verigă rămâne atomară. Orice obiect, proprietate sau relație din lume este descrisă printr-un fapt minim individual. Datorită acestui lucru, regulile și interacțiunile nu sunt încapsulate în cod, ci există sub formă de date.

Pentru asigurarea performanței se folosesc caching, indexuri și mecanisme de nivel de detaliu (LOD, vezi mai jos).

Aceasta face posibilă modelarea unei lumi formate din milioane de fapte, rămânând în același timp performantă, coerentă logic și gestionabilă prin reguli semantice.

3.6. Regulile de joc

Datele și logica de lucru cu ele nu constituie în sine un joc. Pentru ca gameplay-ul să apară, este necesar un strat suplimentar - regulile de joc. Ele nu sunt integrate în hardcode, ci acționează ca o extensie a regulilor de bază ale limbajului și pot fi conectate după necesitate. Asemenea jocurilor de cuvinte, rolul lor constă în stabilirea cadrului: ce este permis și ce nu, ce scopuri există, ce roluri sunt posibile și după ce principii se dezvoltă procesul de joc. Regulile de joc restrâng posibilitățile practic infinite ale limbajului la un spațiu limitat, în care apare gameplay-ul.

În industria jocurilor este obișnuit ca la fiecare joc nou regulile de joc să fie formate de la zero, de la nivelul de bază. În același timp, diferențele dintre jocuri sunt cel mai adesea neprincipiale: majoritatea jocurilor de rol și strategiilor sunt conceptual similare între ele, diferind prin detalii ale mecanicilor, grafică sau lore. Această abordare a devenit standardul de facto al gamedev-ului, iar monotonia experienței de joc este percepută ca normă. Diversitatea se obține în primul rând prin stilul vizual, atmosferă și narativ, și nu prin diferențe fundamentale în posibilități.

Regulile universale de joc presupun sistematizarea și unificarea mecanicilor verificate. Aceasta permite dezvoltatorilor să nu reasambleze baza de fiecare dată, ci să se concentreze pe aspecte mai complexe și de nivel înalt ale jocului. Regulile pot fi organizate sub formă de module și conectate pe măsura necesității pentru formarea unei experiențe de joc concrete.

Această abordare seamănă parțial cu structura motoarelor de joc. De exemplu, Unity Engine sau Unreal Engine eliberează dezvoltatorii de necesitatea implementării funcțiilor de nivel scăzut. Totuși, aici este vorba nu despre realizare tehnică, ci despre reguli universale de joc. Idei similare pot fi întâlnite în sistemele de masă precum GURPS, precum și în sandbox-uri complexe precum Minecraft, Dwarf Fortress sau RimWorld, unde o parte din reguli au deja un caracter universal.

În mod implicit, «regulile» reprezintă o structură goală care primește conținut doar la conectarea modulelor. Compoziția modulelor determină comportamentul lumii: cum se calculează damage-ul, ce înseamnă inițiativa, cum funcționează economia, cum interacționează entitățile, cum sunt procesate evenimentele și ce restricții se aplică. Această abordare permite asamblarea mecanicii lumii ca un constructor.

Modulele pot fi combinate liber și pot amesteca genurile. Dacă adaugi un modul de luptă la un modul de ture, piesele devin personaje cu sănătate și abilități. La adăugarea unui modul de platformer, entitățile obțin capacitatea de a sări, iar conectarea unui modul economic introduce producția de resurse. Configurația regulilor devine parte a jocului însuși: scenariile, setările și genurile sunt configurate la fel ca orice alte elemente ale lumii.

În ansamblu, modularitatea regulilor transformă logica de joc dintr-un set fix de restricții într-o arhitectură flexibilă. Aceasta permite aceluiași sistem să susțină RPG-uri, strategii, simulări, curse și alte genuri fără modificarea codului - prin combinația regulilor și datelor. Tocmai modularitatea face jocul universal cu adevărat universal.

3.7. Abstracții și LOD

3.7.1. Limitarea percepției și necesitatea abstracțiilor

Lumea jocului universal poate conține un număr enorm de procese: de la migrația animalelor și creșterea orașelor până la comportamentul microorganismelor sau dinamica sistemelor stelare. Recalcularea completă a întregului spațiu și a tuturor scărilor este imposibilă și nici nu este necesară - jucătorul percepe întotdeauna lumea subiectiv și într-un volum limitat. De aceea, în sistem se utilizează un strat de abstracții, permițând lumii să rămână scalabilă fără pierderea logicii.

Abstracțiile sunt aplicate acolo unde detalierea ridicată nu influențează rezultatul de joc. În microcosmos, la nivelul biosferei planetare sau al sistemului stelar se utilizează entități și reguli diferite, corespunzătoare scării celor ce se întâmplă. De aceea, sistemul nu modelează comportamentul fiecărei entități individuale, ci ține cont imediat de rezultatul general al proceselor.

3.7.2. Scalarea timpului și spațiului

La derularea timpului, jocul nu recalculează fiecare moment ratat. În schimb, sistemul analizează starea curentă a lumii, aplică legăturile cauză-efect la o scară mărită și interpolează rezultatele probabile: cum se va schimba populația, ce tendințe se vor intensifica, ce evenimente vor avea loc cu cea mai mare probabilitate. Aceasta permite deplasarea înainte cu decenii sau mii de ani, păstrând coerența lumii.

Scalarea spațiului nu schimbă structura lumii, ci determină nivelul entităților și proceselor cu care lucrează simularea. La scară mare sunt luate în considerare entitățile și procesele agregate - clima, migrațiile, structurile politice. La trecerea la scară locală, lumea se dezvăluie până la entități individuale și proprietățile lor. În toate cazurile se păstrează logica unică a legăturilor cauză-efect.

Abstracțiile permit încadrarea în joc a unei lumi de orice scară: un sat, o planetă, un ecosistem sau o galaxie. Detaliile apar doar atunci când devin semnificative pentru jucător sau pentru logica evenimentelor. Tot restul este descris în formă simplificată, dar cu păstrarea legăturilor cauză-efect.

Jucătorul poate aprofunda structura lumii, studiind entitățile și navigând prin proprietățile lor, similar navigării printr-un sistem de referințe. Limitarea este dată doar de datele și regulile disponibile ale lumii.

3.7.3. Materializarea lumii

Lumea se formează pe măsura explorării sale. Până când jucătorul nu a vizitat o locație, aceasta există sub formă de date și reguli, fără obiecte concrete. Obiectele se materializează doar în momentul interacțiunii jucătorului cu lumea. Aceasta seamănă cu încărcarea chunkurilor în Minecraft: lumea nu este calculată integral, dar subiectiv este percepută ca deja existentă.

Evenimentele sunt generate ca și cum lumea ar exista complet în toată complexitatea sa, chiar și dincolo de observația jucătorului.

După finalizarea interacțiunii cu o locație sau entități, starea acesteia este salvată ca o nouă cunoaștere despre lume și nu mai participă la calculele active. Această abordare permite scalarea lumii în lățime și adâncime - de la microcosmos la galaxii - fără stocarea și recalcularea detaliilor inutile.

Pentru intervale mari de timp se utilizează tendințe statistice. De exemplu, se știe că asteroizii de dimensiunea unui kilometru se ciocnesc cu Pământul aproximativ o dată la un milion de ani. Există modele care estimează probabilitatea dispariției unei civilizații tehnologice în orizontul miilor de ani. Aceste estimări nu stabilesc un rezultat exact, ci determină un interval de scenarii posibile. De aceea, la deplasarea jucătorului înainte cu o mie de ani, sistemul alege una dintre variantele plauzibile ale viitorului - ruinele civilizației, dezvoltare durabilă sau un alt scenariu coerent.

3.7.4. Joc în rețea

În modul de rețea se utilizează același principiu de materializare pe măsura interacțiunii. Serverul nu stochează lumea sub formă unei hărți complet calculate și fixate. În schimb, operează cu date, reguli și fapte deja manifestate - ceea ce a fost descoperit sau modificat de jucători.

Când unul sau mai mulți jucători interacționează cu aceeași zonă, serverul formează pentru aceasta o stare materializată comună, concordată între toți participanții. Această stare există exact în gradul de detaliere în care este efectiv observată și utilizată.

În afara zonei de interacțiune, lumea nu este recalculată constant. Rămâne sub formă unei stări potențiale, descrisă prin reguli, tendințe statistice și fapte acumulate. Aceasta permite susținerea unei lumi unice, mari și continue cu un număr mare de jucători, sincronizând doar ceea ce este efectiv observat și are importanță pentru procesul de joc.

3.8. Agenți și simularea lumii

Orice entitate din lume - om, animal, organizație sau stat - este privită ca un agent cu propriile scopuri, motivație și stări. Agentul:

  • Percepe lumea în limitele cunoștințelor sale.
  • Evaluează variantele de acțiune disponibile.
  • Ia decizii bazându-se pe scopurile sale și regulile lumii.
  • Declanșează evenimente care modifică starea lumii.

Lumea în ansamblu funcționează ca o simulare multistratificată:

  • Natura se schimbă sub influența climatului și resurselor disponibile.
  • Ecosistemele reacționează la schimbările mediului.
  • Oamenii și societățile răspund schimbărilor naturii, tehnologiilor și politicii.
  • Jucătorul intră în acest proces ca una dintre entitățile lumii.

Istoria lumii nu este prestabilită și nu este scrisă manual. Apare ca rezultat al interacțiunii multitudinii de agenți, acționând conform legilor comune și al legăturilor cauză-efect.

De exemplu, seceta duce la diminuarea ierbii, lipsa ierbii - la foamea ierbivorelor, foamea - la migrație, iar migrația - la ciocniri cu prădătorii sau oamenii. Astfel de lanțuri se formează pe baza faptelor și regulilor, determinând ce decurge în mod natural din condițiile curente.

3.9. Limbajul UX

Limbajul de interacțiune cu jocul este construit după o logică apropiată de cea a limbajului uman. Prin acest limbaj, jucătorul și jocul comunică efectiv unul cu celălalt. Limbajul are un set de reguli, în care pot fi formate construcții semantice de aproape orice complexitate.

Fiecare stare a interfeței sau a hărții poate fi privită ca o întrebare: «Ce văd acum?», iar setul de acțiuni disponibile - ca întrebarea «Ce pot face în situația curentă?». Jocul, analizând starea lumii, poziția avatarului jucătorului și obiectul presupus al interacțiunii, formează răspunsul sub formă unei noi stări a lumii și a unei noi afișări a interfeței.

În cea mai simplă formă, limbajul este desemnarea lucrurilor percepute în lume: «copac», «mamă», «soare».

La nivelul următor, limbajul permite descrierea proprietăților și stărilor lor: «om rău», «multe stele», «leu puternic», «300 de spartani».

În joc, astfel de concepte pot fi reprezentate literal - sub formă de entități concrete - sau convențional, prin pictograme.

Fiecărui cuvânt sau concept îi corespunde o iconiță.

Proprietățile obiectelor sunt exprimate prin procedee vizuale:

  • «Rău», «prost», «negativ» - fundal roșu al iconiței.
  • «Mult», «300», «milioane», «infinit» - mini-pictograma a mulțimii cu valoare numerică concretă sau abstractă.
  • «Puternic», «periculos», «potent», «nivelul 3» - mini-pictogramă separată a nivelului cu indicarea valorii.
  • Culoarea ramei poate arăta apartenența entității la un alt jucător sau facțiune.

La iconița principală pot fi adăugate pictograme suplimentare, animații, strălucire și alte elemente vizuale care transmit proprietăți frecvent utilizate sau coloratura emoțională.

Pentru caracteristici mai complexe sau rare se folosesc iconițe auxiliare lângă entitatea principală sau încorporate în interiorul ei cu o scară redusă.

Iconițele pot fi animate, adăugând un strat suplimentar de informație. De exemplu, la sănătate critic scăzută, inima de pe iconiță poate bate neregulat și slab, indicând o stare periculoasă.

Limbajul reflectă și limitarea cunoașterii personajului. Dacă avatarul întâlnește un reprezentant al altei culturi și nu îi înțelege limba, iconițele se pot distorsiona sau transforma în simboluri ilizibile. Dacă este cunoscută doar o parte din informație, elementele corespunzătoare sunt ascunse: jucătorul poate cunoaște tipul inamicilor, dar nu numărul lor.

Aceleași entități pot arăta diferit pentru culturi diferite. Egiptenii antici vor vedea hieroglife, iar creaturile robotice - simboluri tehnologice, digitale.

Când jucătorul efectuează o acțiune, interacționează cu obiectele lumii. În simularea directă aceasta poate fi o acțiune fizică la persoana întâi, iar în modurile abstracte - alegerea unor iconițe convenționale.

Acțiunea în sine se formează din construcția lingvistică de bază.

La baza sa, limbajul de joc se bazează pe triplete semantice: subiect - acțiune - obiect.

Exemple:

  • «Eu - vreau - măr»
  • «Noi - declarăm război - vouă»
  • «Noi - atacăm - tribul Penei Albe»

În interfață, aceasta arată ca selecția subiectului (avatarul jucătorului sau o altă entitate), evidențierea obiectului și indicarea acțiunii.

Construcția poate fi complicată adăugând modificatori: timp, adjective, condiții.

De exemplu: «Sclav (subiect) - a construi (predicat) - piramidă (obiect) - repede (complement al predicatului)».

Modificatorul «repede» înseamnă aplicarea unor reguli speciale: munca se execută mai rapid, dar crește riscul de accidente sau scade calitatea rezultatului.

Dacă acțiunea este îndreptată nu către avatarul însuși, ci către un alt subiect, este interpretată ca rugăminte sau ordin.

4. Foaia de parcurs

4. Foaia de parcurs

4.1. Viziune strategică

Această secțiune descrie planul de realizare a proiectului Nexus.

Abordarea cu dezvoltarea unui singur proiect și accesul timpuriu ulterior nu este potrivită în acest caz.

Mai adecvată este dezvoltarea etapizată a unei serii de proiecte, fiecare introducând și verificând idei și direcții individuale, apropiindu-se de viziunea finală a Nexus.

Fiecare proiect-etapă va lucra cu feedback și critică, permițând evaluarea corespondenței proiectului cu conceptul inițial și a corectitudinii direcției alese.

Cu timpul, astfel de proiecte vor deveni mai complexe și mai calitative, iar unul dintre ele poate crește în final într-un proiect Nexus deplin, descris în secțiunea 2.

Dezvoltarea Nexus se împarte într-o serie de etape-proiecte.

Pentru etapele mai apropiate de momentul actual, scopurile și sarcinile sunt formulate mai clar și concret. Etapele mai îndepărtate sunt descrise la nivelul direcțiilor și ideilor generale, fără elaborare detaliată.

Ordinea etapelor nu este fix stabilită. Foaia de parcurs stabilește direcția generală de dezvoltare a proiectului, nu un plan detaliat.

Pe măsura dezvoltării, etapele și sarcinile pot fi precizate și completate.

4.2. Etape

4.2.1. Etapa 0. Formarea înțelegerii jocului universal (realizată)

Activitatea studioului Clarus Victoria din 2013, lansarea a șase proiecte, precum și ani de cercetări, experimente și creare de prototipuri au permis formarea unei înțelegeri de bază a ceea ce poate fi un joc universal și ce principii stau la baza sa. Rezultatul acestei etape a fost formarea acestui document.

4.2.2. Etapa 1. ECS și unificarea entităților (realizată)

  • Arhitectura ECS a fost verificată pe baza proiectului Next Run. Entitățile sunt reprezentate ca containere goale cu un set de componente, ceea ce permite formarea flexibilă a obiectelor lumii: obiecte, creaturi, biomuri, evenimente și efecte.
  • Au fost verificate o serie de idei legate de mecanicile universale de joc, inclusiv unificarea RPG și strategiei fără separare rigidă.
  • Pentru prima dată pentru studio a fost implementată și testată harta hexagonală, care a permis crearea rapidă și combinarea diferitelor tipuri de lumi de joc.
  • Pentru prima dată pentru studio a fost adăugat suportul pentru modificări prin Steam Workshop.

Mai detaliat despre această etapă - în articolul: https://clarusvictoria.com/blog/almost-ten-years-of-search

4.2.3. Etapa 2. Gameplay-ul lumii reale (în dezvoltare)

Proiectul Next Run a permis verificarea multor idei universale de joc, dar este limitat la o setare fantasy cu legi convenționale ale lumii. La a doua etapă se presupune trecerea la modelarea lumii reale cu legile sale naturale și sociale.

Scopul etapei este de a pune baza realistă a gameplay-ului, bazată pe logica lumii reale, pe legile sale naturale și sociale.

Particularități de realizat:

  • Evoluția societăților: de la omul primitiv, aflat pe aceeași treaptă cu animalele și trăind după aceleași reguli de supraviețuire, până la apariția primelor civilizații.
  • Biomuri și ecosisteme ale celulelor: foame, migrații și competiție pentru resurse. Plantele, animalele și particularitățile terenului influențează direct supraviețuirea oamenilor.
  • Situații și evenimente de joc care apar ca rezultat al regulilor de joc, nu al scripturilor prestabilite. De exemplu, lipsa resurselor poate duce la conflicte între grupuri de oameni și atacuri ale prădătorilor.
  • Automatizarea acțiunilor unităților sau controlul manual - la alegerea jucătorului, inclusiv managementul grupurilor prin reguli generale de comportament. Posibilitatea atât de joc activ, cât și de observare.
  • Posibilitatea de a juca atât cu personaje individuale, cât și cu grupuri.
  • Mai mulți jucători pe aceeași hartă, concurând între ei.
  • Revenirea arborelui tehnologic, cunoscut din jocurile anterioare ale Clarus Victoria.
  • Lumea de joc configurabilă: dimensiunea hărții, epoca, clima și particularitățile regiunilor.
  • Primele versiuni ale modelului de agenți.
  • Setarea posibilă a lumii: epoca de piatră și epoca bronzului.

4.2.4. Etapa 3. Arhitectura semantică (în planuri)

Unul dintre pașii cheie pentru reducerea riscurilor proiectului Nexus este trecerea la baza semantică a arhitecturii jocului (vezi secțiunile 3.3-3.5).

În această etapă, toate sistemele sunt introduse la nivel de bază, cu funcționalitate minimă:

  • Triplete semantice ca mod de descriere a entităților din lumea de joc.
  • Interpretorul.
  • Trecerea de la ECS clasic la ECS semantic.
  • Regulile de bază ale funcționării noii arhitecturi.
  • Setarea posibilă a lumii: una dintre civilizațiile timpurii.

Din perspectiva mecanicilor de gameplay, în această etapă nu se presupune introducerea unor noi complexități. Sarcina principală este transferul soluțiilor și mecanicilor deja verificate pe noua bază arhitecturală.

4.2.5. Etapa 4. Modelul de agenți (în planuri)

În această etapă se presupune realizarea sistemelor critice, considerate prea riscante pentru implementare în etapa 2. Este vorba despre elaborarea profundă a subiecților din modelul de agenți. Etapa 2 pregătește terenul, dar în etapa 4 agenții sunt realizați pe deplin.

Arhitectura jocului începe să susțină procese mai complexe ale lumii reale, ceea ce permite modelarea societăților de nivel mai ridicat de complexitate comparativ cu etapa 2.

Particularități de realizat:

  • Model deplin de agenți pentru comportament: entitățile primesc scopuri, stări și motivații.
  • Sistem de rugăminți și ordine către subiecți, unde executarea nu este garantată și depinde de starea curentă și context.
  • Creșterea bogăției lumii, complexificarea sistemelor și logicii obiectelor.
  • Inventare individuale la subiecți, lanțuri logistice și sistem de transport.
  • Externalizarea unei părți din logica de joc din hardcode în Lua pentru posibilitatea creării de moduri complexe de către jucători.
  • Setarea posibilă a lumii: lumea antică.

4.2.6. Etapa 5. Abstracții și LOD (în planuri)

Arhitectura semantică și complexificarea lumilor de joc ridică cerințele pentru resursele de calcul ale dispozitivelor jucătorilor. În această etapă se presupune implementarea regulilor abstracte de joc, permițând excluderea din simularea activă a entităților aflate în afara zonei de acțiune a jucătorilor (vezi punctul 3.7).

Aceasta ar trebui să permită complexificarea semnificativă a lumilor de joc fără creșterea proporțională a încărcării, precum și lansarea unor astfel de jocuri pe dispozitive slabe și mobile.

Ordinea realizării etapei poate fi ajustată în procesul de dezvoltare.

4.2.7. Etapele 6+. Funcțiile cheie ale motorului Nexus (în planuri)

Etapele 1-5 formează funcționalitatea de bază a Nexus. Începând cu etapele 6+, dezvoltarea proiectului se deplasează spre extinderea posibilităților motorului, adăugarea funcțiilor scalabile, detaliilor și conținutului, descrise în secțiunile 2 și 3.

În aceste etape se presupune dezvoltarea și implementarea următoarelor direcții:

  • Scalarea timpului și spațiului, niveluri de detaliere și abstracție.
  • Joc în rețea.
  • Generarea scenariilor și configurațiilor de joc.
  • Suport pentru diverse moduri de vizualizare: de la vederea la persoana întâi la scară globală.
  • Interfețe adaptive și sunet pentru diferite stiluri de joc și niveluri de imersiune.
  • Funcții suplimentare, descrise în secțiunile 2 și 3.

4.2.8. Nexus 1.0 (în planuri)

Momentul lansării Nexus 1.0 este determinat de atingerea realizării de bază a ideilor și funcțiilor cheie, descrise în secțiunile 2 și 3.

5. Provocări

5.1. Complexitate computațională ridicată

Provocare: Arhitectura semantică cu un număr mare de triplete poate fi prea grea pentru funcționarea în timp real și să nu se scaleze pe hardware-ul disponibil.

Răspuns: Aceasta se rezolvă cu ajutorul regulilor de abstracții și LOD. Sunt calculate doar entitățile cu care jucătorul interacționează într-o măsură sau alta. Mai detaliat vezi punctul 3.7.

Reprezentarea semantică a lumii nu înseamnă că toate interogările de joc sunt procesate prin deducție logică, pentru operațiunile frecvent utilizate se aplică structuri directe de date și rezultate cache-uite.

5.2. Focus de joc difuz

Provocare: Universalitatea Nexus poate duce la absența unui focus clar de joc și a senzației de scop, când jucătorul însuși trebuie să inventeze în ce anume joacă. Se poate totul, dar nu este clar de ce.

Răspuns: Nexus nu necesită un scop rigid stabilit. Direcția este formată fie de scenariu, fie de logica lumii și rolul jucătorului în ea. Universalitatea nu înseamnă absența structurii - lumea însăși limitează scara. Jucătorul primește exact volumul de control și informație care corespunde rolului său. De exemplu, dacă jucătorul acționează în rolul de conducător, nu trebuie să administreze o mie de sate direct - pentru aceasta există asistenți și miniștri.

5.3. Riscul de nefinalizare a proiectului

Provocare: Din cauza scalei și complexității Nexus există probabilitatea ca proiectul să se afle mult timp în dezvoltare și să nu ajungă la o stare clar finalizată. Din exterior, aceasta poate fi percepută ca un proiect de nivel AAA, necesitând resurse financiare semnificative și o echipă mare.

Răspuns: Nexus se dezvoltă ca un produs unic prin etape consecutive cu lansări regulate și rezultate concrete, fiecare apropiind proiectul de versiunea 1.0. Dezvoltarea nu se desfășoară în formatul unui «prototip de lungă durată», ci reprezintă o mișcare progresivă cu versiuni intermediare finalizate și rezultate verificabile. Criteriile de succes și feedback-ul de la jucători permit menținerea proiectului în direcția stabilită.

5.4. Complexitatea depanării și controlului logicii

Provocare: Arhitectura semantică și interpretorul pot duce la o complexitate ridicată de depanare a lanțurilor logice și deducțiilor, ceea ce complică dezvoltarea, echilibrarea și controlul comportamentului lumii.

Răspuns: Complexitatea depanării logicii semantice este privită ca o parte inerentă a arhitecturii, nu ca un efect secundar. În Nexus, controlul lanțurilor cauză-efect, al surselor deducțiilor și stărilor este încorporat ca cerință de bază a sistemului, deoarece fără explicabilitate și observabilitate un astfel de model al lumii nu este gestionabil.

5.5. Riscul absenței focusului timpuriu

Provocare: Amploarea conceptului Nexus în etapele timpurii poate îngreuna formarea unui MVP clar, verificarea interesului la un public concret și înțelegerea pentru cine exact este creat proiectul, ceea ce ridică riscul de investire a resurselor în arhitectură înainte de confirmarea valorii de joc.

Răspuns: Clarus Victoria are o nișă formată și un public cu care studioul lucrează de peste zece ani. În loc de un MVP abstract separat, se utilizează proiecte independente cu un gameplay clar și familiar jucătorilor. Cu fiecare proiect nou, acest gameplay se extinde și se complexifică treptat, apropiindu-se ca direcție de Nexus 1.0. Criteriul de succes îl constituie reacțiile jucătorilor și corespondența rezultatelor cu direcția declarată de dezvoltare.

Ultima actualizare a documentului: 18.01.2026

Nexus - viziunea proiectului | Clarus Victoria