SlideShare uma empresa Scribd logo
1 de 146
Baixar para ler offline
proiectarea jocurilor electronice



          Dr. Sabin Buraga
        www.purl.org/net/busaco
“A game is a particular way of looking
      at something, anything.”


             Clark C. Abt
Cum definim un joc?
jocuri

activități sau concursuri guvernate de reguli
jocuri

activități sau concursuri guvernate de reguli


                 ludologie
definiție




   A game is an activity among two or more
independent decision-makers seeking to achieve
    their objectives in some limiting context


                 Clark C. Abt
definiție




  A game is a form of art in which participants,
   termed players, make decisions in order to
    manage resources through game tokens
             in the pursuit of a goal

                  Greg Costikyan
definiție




   A game is a system in which players engage
     in an artificial conflict, defined by rules,
      that results in a quantifiable outcome


            Katie Salen & Eric Zimmerman
clasificare

       număr  de jucători  – solitare ori în  grup  (echipă)

 scop – câştig  (gambling), dobândire de skill-uri,…strategie

    obiectiv – punctaj/scor maxim, primul clasat,  top  10,…

 tematică  – racing,  lingvistice,  deducţție,  sportive,  acţțiune  etc.

      mijloc/echipament – tablă,  teren, mediu virtual etc.

categorie de  jucători  – copii,  adulţți, persoane cu nevoi speciale
Jocuri electronice

se  bazează  pe  un  mijloc  electronic  (arcade machine,
    dispozitiv miniaturizat, sistem conectat la TV,
     computer, telefon evoluat,…)  pentru  a facilita
       desfășurarea unuia sau mai multor jocuri
    cu  oponenţți  umani  și/sau contra calculatorului
Scheme de clasificare
          K. Salen & E. Zimmerman, 2004

                      reguli (rules)

proiectare formală  focalizată  asupra  structurii  logice  
         (matematice) a unei clase de jocuri
Scheme de clasificare
       K. Salen & E. Zimmerman, 2004

             maniera de jucat (play)

     desemnează  mijloacele de interacţțiune,
vizând modul de reprezentare, caracterul social &
  experienţța utilizatorului (UX) în cadrul jocului
Scheme de clasificare
  K. Salen & E. Zimmerman, 2004

           cultura (culture)

      vizează  mediul socio-cultural
în care jocurile sunt proiectate & jucate
Puncte de vedere: jocurile ca…

          sisteme emergente
   sisteme bazate pe incertitudine
sisteme  bazate  pe  teoria  informaţției
        sisteme de informare
         sisteme cibernetice
  modele în cadrul teoriei jocurilor
          sisteme de conflict
Stiluri/genuri de jocuri
               (Rollings & Morris, 2004)

Acţțiune          lots of frantic button pushing
Aventură          the story matters
Strategie         nontrivial choices
Simulare          optimization exercises
Puzzle            hard analytic thinking
Amuzament         software you just have fun with
Educaţțional      learning by doing
Eludarea regulilor (rule-breaking)

                                trișatul
relaţții  diferite  dintre  jucător  și  sistemul formal al jocului
Eludarea regulilor (rule-breaking)

                                trișatul
relaţții  diferite  dintre  jucător  și  sistemul formal al jocului

                  tipuri  de  jucători:
           standard player, dedicated player,
   unsportsmanlike player, cheater, spoil-sport player
Eludarea regulilor (rule-breaking)

                  la nivel digital:

cheat codes, game guides & walkthroughs, workarounds,
    hacks, degenerate strategy (exploit), easter eggs
Experiența  utilizatorului  cu  jocul
         (game experience)

               percepţție  vizuală

scanarea elementelor de interes din cadrul jocului
              +  focalizarea  atenţției
Experiența  utilizatorului  cu  jocul
       (game experience)

                 reacţție  motorie

acţțiunile  fizice  pe  care  le  realizează  jucătorul
vezi Bryan Bergeron, Developing Serious Games,
            Cengage Learning, 2006
Experiența  utilizatorului  cu  jocul
          (game experience)

                      concentrare

                     factori cognitivi
intrarea  în  și  menţținerea  stării  de  flux  – game flow
Experiența  utilizatorului  cu  jocul
             (game experience)

       șabloane  perceptuale  privind  învăţțarea

familiarizarea & aprofundarea structurii interne a jocului:
      scopuri,  structură  narativă,  strategii  de  urmat,…
Game experience
 game               player
creates             makes
output             internal
                   decision


          player
          takes
          action
Experiența  utilizatorului  cu  jocul
      (game experience)

orice joc prezintă o  “mecanică”  de  bază
            (core mechanic)

activitatea  ludică  esenţțială  pe  care  jucătorii
  o  realizează  periodic  în  cadrul  unui  joc
Tipuri  de  plăcere  ludică  (game pleasure)
             Marc LeBlanc, 2000

sensation             game as sense-pleasure
fantasy               game as make-believe
narrative             game as drama
challenge             game as obstacle course
fellowship            game as social framework
discovery             game as uncharted territory
expression            game as self-discovery
submission            game as masochism
Cum  se  specifică  regulile  unui  joc?
Maniera de jucat (game play)

specifică  alegerile,  provocările  sau  consecinţțele  
      pe  care  jucătorii  le  experimentează  
      în cadrul mediului virtual al jocului
Maniera de jucat (game play)

specifică  alegerile,  provocările  sau  consecinţțele  
      pe  care  jucătorii  le  experimentează  
      în cadrul mediului virtual al jocului

dependenţță  de  “povestea”  jocului  (story-telling)
Maniera de jucat (game play)

         implică  definirea de reguli
documentate într-un  manual  de  instrucţțiuni  sau  
     prezentate direct în cadrul jocului
Maniera de jucat (game play)

         implică  definirea de reguli
documentate într-un  manual  de  instrucţțiuni  sau  
     prezentate direct în cadrul jocului

           pot fi oferite adiţțional:  tutoriale,
 ghiduri de strategii (strategy guides), indicii (tips),…
Gameplay
Maniera de jucat (game play)

pentru a  se  formula  reguli,  trebuie  să  se  înţțeleagă  
   în primul rând condiţțiile  (termenii) jocului

             de victorie (victory conditions)
                          și/sau
              de pierdere (loss conditions)
6  condiţții  de  victorie  oferite de Civilizations IV
Moduri de interactivitate

elementul/elementele interactiv(e) depind(e)
   de  acţțiunile  jucătorului  sau  jucătorilor
Moduri de interactivitate

                        jucător  ↔	
  joc

                     aspecte de interes:
reprezentare  spaţțială  a  mediului,  atmosferă,  conţținut  etc.
Moduri de interactivitate

                      jucător  ↔	
  jucător

      dezvoltatorii  pot  crea  o  interactivitate  potenţțială,  
dar  nu  pot  prezice  cum  vor  interacţționa  concret  utilizatorii
Moduri de interactivitate

               jucător  ↔	
  jucător

vizează  realizarea  interacţțiunii  dintre  jucători:  
    comunicare  &  cooperare,  competiţție,…
Moduri de interactivitate

                     jucător  ↔	
  jucător

             tipuri  de  competiţții  între  jucători:

1-la-1 – jocuri  de  luptă  sau  de  tip  tabletop (e.g., Go, șah)
Gameplay
Moduri de interactivitate

              jucător  ↔	
  jucător

      tipuri  de  competiţții  între  jucători:

unilaterală  (mai  mulţți  jucători  contra  unuia)
                Scotland Yard
Moduri de interactivitate

                       jucător  ↔	
  jucător

               tipuri  de  competiţții  între  jucători:

multilaterală  (>2  jucători  contra  celorlalţți  sau  a  NPC-urilor)
                      Monopoly, EverQuest
Gameplay
Moduri de interactivitate

                     jucător  ↔	
  jucător

             tipuri  de  competiţții  între  jucători:  

echipă  (grupuri  în  număr  egal)  – jocuri  sportive  în  echipă
Moduri de interactivitate

                  jucător  ↔	
  dezvoltator

desemnează  interacţțiunea  dintre  utilizatori  &  dezvoltatori

 exemplu: forumurile oficiale pentru World of Warcraft
Moduri de interactivitate

                    jucător  ↔	
  platformă

            specifică  interacţțiunea  dintre  jucător  
              și  platforma  software/hardware

  capacităţți  multimedia, dispozitive I/O (e.g., Wiimote,
iPhone),  stocare,  timp  de  viaţță  a  bateriei, acces  la  reţțea,…
Moduri de interactivitate

definirea  conflictului  se  bazează  pe  teoria jocurilor

    aplicată  pentru  jocuri  cu  minim  2  oponenţți

Noam Nisan et al. (Editors), Algorithmic Game Theory,
         Cambridge University Press, 2007
Care  sunt  provocările?
Tipuri  de  provocări  (challenges)

  depind, deseori, de genul jocului
Tipuri  de  provocări  (challenges)

                 explicite

 intenţționat  introduse în joc, intense

     e.g.,  săritura  peste  un  obstacol
Tipuri  de  provocări  (challenges)

               implicite

 caracteristici emergente ale jocului

  exemplu: stabilirea strategiei de atac
Tipuri  de  provocări  (challenges)

pot  depinde  și  de  disponibilitatea  informaţțiilor
Tipuri  de  provocări  (challenges)

                  informaţții  complete
starea jocului  e  complet  cunoscută  de  toţți  jucătorii  
   pe întreg parcursul partideiprovocări  logice

          exemple: board games – Go, Reversi,…
Gameplay
Tipuri  de  provocări  (challenges)

              informaţții  incomplete
jucătorul  posedă  informaţții  parţțiale  pentru  a  lua  
   deciziirealizarea de deducţții  (inference)

    exemple: Mastermind, jocuri  cu  cărţți – Poker
Tipuri  de  provocări  (challenges)

              informaţții  incomplete
    uzual, reprezentate grafic via fog of war

exemplificări: Civilizations, Heroes of Might and Magic
Tipuri  de  provocări  (challenges)

            informaţții  incomplete
 determină  utilizatorul  să  interacţționeze  și
să  participe tot mai intens în cadrul jocului

 poate crea un element de mister al scenariului
Gameplay
Tipuri  de  provocări  (challenges)

referitoare la cunoștinţțe (knowledge)
Tipuri  de  provocări  (challenges)

     referitoare la cunoștinţțe (knowledge)

                cunoștinţțe  intrinseci

desemnează  cunoștinţțele  dobândite  în  cadrul  jocului
Tipuri  de  provocări  (challenges)

        referitoare la cunoștinţțe (knowledge)

                   cunoștinţțe  intrinseci

exemple:  mutări  combinate,  incantaţții,  hărţți  de  labirint,  
           personalităţți  ale  personajelor  etc.
Tipuri  de  provocări  (challenges)

referitoare la cunoștinţțe (knowledge)

         cunoștinţțe  extrinseci

   consideră  cunoștinţțele  din  exterior,
        aplicate în cadrul jocului
Tipuri  de  provocări  (challenges)

       referitoare la cunoștinţțe (knowledge)

                  cunoștinţțe  extrinseci

exemple:  fapte  de  “bun  simţț”  (e.g.,  “lemnul  plutește”),  
    cunoștinţțe  folosite  în  jocuri  de  tip  trivia etc.
Tipuri  de  provocări  (challenges)

    recunoaștere  &  potrivire  de  forme

comune în jocurile de tip puzzle sau de acţțiune

    pot fi rezolvate via automatic thinking
Gameplay
Tipuri  de  provocări  (challenges)

abilităţți  de  orientare  în  spaţțiu  (spatial awareness)

experienţța  jocului  depinde  de  abilităţțile  jucătorului  
de  a  înţțelege  relaţțiile  spaţțiale  stabilite  între  entităţți
Tipuri  de  provocări  (challenges)

abilităţți  de  orientare  în  spaţțiu  (spatial awareness)

           exemple:  simulările  de  curse  auto
Tipuri  de  provocări  (challenges)

           micro-management de resurse

 vizează  gestiunea (via opţțiuni  multiple) acţțiunilor
ori proprietăţților  asociate unor resurse & personaje
Tipuri  de  provocări  (challenges)

          micro-management de resurse

                         exemple:
             jocuri cu strategie în timp-real
(real-time strategy – RTS), first-person shooters (FPS)
Tipuri  de  provocări  (challenges)

             timp  de  reacţție – reaction time

timpul  de  răspuns  este  esenţțial  în  jocurile  de  acţțiune
Scopuri ale jocului (game goals)

          conform provocărilor,
 pot exista unul sau mai multe scopuri:

advancement, race, puzzle-solving, exploration,
 conflict, capture, chase, organization, escape,
     taboo, construction, solution, outwit
“A game is balanced if players perceive
  that it is consistent, fair, and fun.”  

           Jeannie Novak, 2008
Echilibrul jocului (balance)

provocările  trebuie  să  fie  consistente

 jucătorii  vor  avea  de  înfruntat  gradual  
        provocări  tot  mai  dificile
 niveluri de dificultate (game levels)
Echilibrul jocului (balance)

                     niveluri de dificultate

     jocul poate oferi diverse grade de dificultate sau
niveluri  ce  pot  fi  ajustate  conform  abilităţților  utilizatorului
Gameplay
Echilibrul jocului (balance)

maniera  de  jucat  trebuie  să  fie  echitabilă

    jucătorii  nu  vor  fi  penalizaţți  din  start
           pentru “greșelile”  făcute
Echilibrul jocului (balance)

             eliminarea deciziilor banale

    jucătorii  vor  trebui  să  ia  doar  decizii  importante
chiar și  în  cazul  jocurilor  ce  implică  micro-management
Economiile jocului

reprezintă  sistemele  ce  permit  manipularea
  – fizică  sau  conceptuală  – a resurselor
Economiile jocului

                    tipuri de resurse:
  financiare  (bani,  metale  preţțioase,  edificii  etc.),  
 strategice  (trupe,  instalaţții,  terenuri),  personaje,  
capacităţți  (skills),  informaţționale  (coduri,  hărţți,…)
Economiile jocului

  în jocurile de tip persistent-state world (PSW),
economiile  pot  fi  influenţțate  de  acţțiunile  jucătorilor:  
   colectare, negociere, transformare de resurse
Economiile jocului

  în jocurile de tip persistent-state world (PSW),
economiile  pot  fi  influenţțate  de  acţțiunile  jucătorilor:  
   colectare, negociere, transformare de resurse

                 existenţța  monedei  virtuale
              exemple: EverQuest, Second Life
EVE
Cum  proiectăm  personajele  
 dintr-un joc electronic?
“Puterea”  naraţțiunii este  influenţțată  
și de identitatea personajelor (game characters)
player characters

personaje ce  pot  fi  “jucate”  de  utilizator


  non-player characters (NPCs)

  personaje independente de jucător,
         create prin software
Un  jucător  poate  controla  doar unul
                                    avatar
sau mai multe personaje de tip player characters
       (e.g.,  armată,  echipă  sportivă  etc.)
Tipuri de personaje prezente în jocuri
        (Jeannie Novak, 2008)

                animal
               fantastic
                istoric
                preluat
                 mitic
• protagonistul e focalizat asupra
intrapersonal     propriilor scopuri

                • protagonistul dezvoltă
interpersonal     o  relaţție  1-la-1 cu alt personaj

                • protagonistul  interacţționează  
    team          la nivel de grup

                • interacţțiuni  la  nivel  de  reţțea  
community         socială,  organizată  coerent

                • evoluţție  spirituală  superioară
 humanity         (self-actualization)
Jocurile  prezintă  jucătorului  puncte de vedere
       (POV – points-of-view) specifice
Jocurile  prezintă  jucătorului  puncte de vedere
       (POV – points-of-view) specifice

                  first-person POV
 jucătorul  observă  acţțiunea  prin  “ochii”  avatarului
Jocurile  prezintă  jucătorului  puncte de vedere
       (POV – points-of-view) specifice

                first-person POV
adoptat de jocuri de tip FPS (first-person shooter),
             RPG (role-playing game)
Game characters




     Half-Life
Jocurile  prezintă  jucătorului  puncte de vedere
        (POV – points-of-view) specifice

                  third-person POV
utilizatorul poate vedea avatarul pe parcursul acţțiunii

 jucătorul  se  identifică  mai  greu  cu  personajul  jucat
Jocurile  prezintă  jucătorului  puncte de vedere
       (POV – points-of-view) specifice

               third-person POV
      caracterul  cinematic  e  mai  pronunţțat
Tabula Rasa

Game characters
Cum  proiectăm
nivelurile jocului?
Se  bazează  pe  activitatea  unui  proiectant
(level designer) ce utilizează  instrumente  specifice:

          editoare de niveluri (level editors)
 Aurora Toolset, Unreal Editor, Valve Hammer Editor,…

         software de editare grafică (2D/3D)
   3D Studio MAX, Blender, Bryce, GIMP, Maya etc.
exemplificare:  fiecare  scenă  din  Heart of Darkness
             reprezintă  un  “caz  special”
Structura
            scop,  flux,  durată,  disponibilitate,  
           relaţționare  cu  alte  niveluri,  evoluţție


               Timpul de  desfășurare
 autentic, limitat, variabil, stabilit de utilizator, alterat


                           Locația
     perspectivă  &  cameră,  terenuri  &  materiale,  
luminozitate, efecte, dimensiune,  mărginire,  realism,  stil
Structura

   facilitează  structurarea  jocului  în  subdiviziuni,  
organizând  evoluţția  și  îmbunătăţțind  maniera  de  jucat
Structura

                           scopul

fiecare  nivel  trebuie  să  prezinte  un  set  de  obiective  
            ce  trebuie  înţțelese  de  jucător(i)

 uzual,  se  oferă  în  prealabil  un  tutorial  interactiv
          sau un preambul de tip cut-scene
Structura

                               fluxul

trebuie  asigurat  faptul  că  jucătorul  nu  poate  părăsi  nivelul  
             până  nu-și  îndeplinește  obiectivele

        soluţție:  existenţța  unor  obstacole  de  netrecut
Structura

                             fluxul

     utilizatorul  trebuie  împiedicat  să  reviziteze  o  arie,  
din  moment  ce  obiectivele  corespunzătoare  au  fost  atinse

         soluţție:  blocarea  căilor  de  întoarcere,  
     semnalizându-i  jucătorului  progresul  înregistrat
Structura

                      durata

                     regulă:  
utilizatorul  trebuie  să  termine  minim  1  nivel  
           într-o sesiune a jocului
Structura

                             durata

                          valori tipice:
                15 minute – jocuri pentru copii
2 ore – jocuri  cu  concentrare  intensă  (utilizatori  împătimiţți)
            45 minute – jocuri rulate pe console
Structura

                       disponibilitatea

numărul  nivelurilor  depinde  de  specificul  (scopul)  jocului

           1 nivel la un moment dat: jocuri FPS
număr  mic  de  niveluri  simultane: RPG (role-playing game)
Structura

                  relaţționarea  cu  alte  niveluri

    de  obicei,  un  nivel  reprezintă  o  scenă  sau  un  episod  
                   dintr-o  naraţțiune  mai  largă

tipuri  de  relaţționări  uzuale:  dificultate  &  structură  narativă
Level Design
Structura

                relaţționarea  cu  alte  niveluri

                cazul jocurilor de strategie:
  o serie de niveluri – numite  “misiuni”  – pot fi grupate
într-o  “campanie”  (campaign)  ce reprezintă  scopul  jocului

            pot  fi  implementate  “campanii”  multiple
Timpul  de  desfășurare

        categorii:
       turn-based
      time-limited
        real-time
Timpul  de  desfășurare

timpul jocului (game time)  nu  trebuie  să  fie  similar
                    cu cel real
Locația

  desemnează  mediul  fizic  redat  în  cadrul  jocului:  
 perspectiva,  mărimea,  limitele,  structurile,  terenul,  
obiectele, stilul (e.g.,  cromatică,  textură,  look & feel)
Locația

               perspectiva & camera

         dependenţță  de  point-of-view (POV)

tipuri: omniprezenţță,  aeriană  (top-down),  izometrică,  
    defilare  laterală  (side-scrolling, flat/side-view)
Level Design




perspectiva aeriană: SimCity (prima versiune pe Mac)
perspectiva izometrică: The Sims
defilarea laterală (parallax scrolling): Prince of Persia
Ce presupune dezvoltarea unui
        joc electronic?
Abordări  (Mateas & Whitehead, 2007)

focalizate pe aspecte tehnologice (informatică, matematică)

                       interdisciplinare

 focalizate pe factori artistici (design artistic, arte vizuale)
Introducere




conform John P. Flynt, Omar Salem, Software Engineering
         for Game Developers, Thomson, 2005
Componente (subsisteme) primare
               (Rollings & Morris, 2004)

                       User interface
                Bidirectional event handler
     Data engine (graphics, level, miscellaneous data)
     Dynamics system (collisions and general physics)
           Logic engine (the heart of the game)
                      Graphics engine
                       Sound engine
                Hardware abstraction layers
(interfaces with graphics, sound, and controller hardware)
Subsisteme secundare

    Game configuration system
          Menuing system
Online instructions and help system
           Music system
Necesitatea  testării
problemă




     Testarea  insuficientă  sau  precară
              Gregory Trefay, 2010

 portarea (adaptarea)  unui  joc  pe  altă  platformă


  de exemplu, de pe desktop pe un dispozitiv iPhone
problemă




           fenomenul hand obstruction
studiu de caz




  Crearea unui joc simplu de tip MMORPG

   ilustrează  învăţțarea  conceptelor  de  baze  de  date  
     via  principiile  dezvoltării  de  jocuri  electronice

         după  o prezentare de Greg Wadley & Jason Sobell,
               The University of Melbourne, Australia
                   în cadrul Academic Days 2007
studiu de caz




Un MMORPG  este  un  sistem  software  informaţțional

      starea  jocului  se  stochează  central  (pe  un  server)
                      datele sunt persistente
                  accesul la date este concurent
  utilizatorii  posedă  identităţți,  trebuind  să  fie  autentificaţți
interacţțiunea  se  realizează  la  client  via  o  interfaţță-utilizator
studiu de caz




      Mediul  (lumea)  jocului  poate  fi  modelat(ă)
               printr-o matrice de locaţții,
         fiecare având diverse caracteristici


        jucătorii  – umani  sau  generaţți  de  calculator  –
             se pot deplasa în cadrul caroiajului,
               putând concura  unul  cu  celălalt
studiu de caz




                                                           99   100




  Y, 1 to 10
                11   12   13    14   15     16   17   18   19   20
                 1    2    3     4    5     6    7     8   9    10


                               X, 1 to 10
studiu de caz


                 folosind o imagine de fundal,
                poate fi stabilit designul vizual
studiu de caz




    Locaţția  curentă  a  jucătorului  va  trebui  redată  diferit

     Etichetele  specifică  “sănătatea” & punctajul curent

Via  diverse  mijloace  de  interacţțiune,  vor  fi  afișate  obiectele  
     aflate  în  posesia  fiecărui  jucător  +  mesajele  jocului

      Se  oferă  și  posibilitatea  de  a  observa/interacţționa
                           cu  alţți  jucători
studiu de caz


                    Studiu de caz




  proiectare și implementare minimală a interfeţței jocului
            (aplicaţția-client la nivel de desktop)
studiu de caz


                    Studiu de caz




                modelarea datelor via tabele
studiu de caz




 Partea  de  procesare  e  implementată  de  proceduri  stocate

                  facilitează  accesul  la  date
      (concurenţța  este  rezolvată  pe  baza  tranzacţțiilor)

   descriu  comportamentul  fiecărui  control  de  interfaţță  

    pot fi apelate periodic via un timer existent la client
studiu de caz


Fiecare  acţțiune  a  unui  jucător  afectează  vizualizarea  datelor
                     de  către  ceilalţți  utilizatori

             Starea jocului poate fi specificată
 via modele simple de date: jucători,  obiecte,  evenimente,…

          Recurgând la un sistem de baze de date,
      se poate simplifica problema accesului concurent

                  Separarea  clară  a  prezentării
                de procesare & stocare a datelor
De unde aflu mai multe?
resurse

              J. Flynt & O. Salem, Software Engineering
                 for Game Developers, Thomson, 2005
                  C. Harteveld, Triadic Game Design.
          Balancing Reality, Meaning and Play, Springer, 2011
      J. Novak, Game Development Essentials (2nd Edition),
                        Thomson, 2008
     A. Rollings & D. Morris, Game Architecture and Design:
                 A New Edition, New Riders, 2004
    R. Rouse, Game Design Theory and Practice (2nd Edition),
                  Wordware Publishing, 2005
      K. Salen & E. Zimmerman, Rules of Play: Game Design
                 Fundamentals, MIT Press, 2004
resurse

                             Gamasutra
                     http://www.gamasutra.com/
                         Game Development
                      http://www.gamedev.net/
                       Good Experience Games
                  http://goodexperience.com/games/
                 Digital Games Research Association
                         http://www.digra.org/
                       AI Game Development
                       http://aigamedev.com/
                   HTML5-based Game Development
          https://sites.google.com/site/html5gamejam/engines
https://gaming.mozillalabs.com/games/
www.yoyogames.com/gamemaker/html5
mult  succes  la….

proiectarea jocurilor
     electronice

       Dr. Sabin Buraga
    www.purl.org/net/busaco

Mais conteúdo relacionado

Mais de Sabin Buraga

Mais de Sabin Buraga (20)

Web 2020 01/12: World Wide Web – aspecte arhitecturale
Web 2020 01/12: World Wide Web – aspecte arhitecturaleWeb 2020 01/12: World Wide Web – aspecte arhitecturale
Web 2020 01/12: World Wide Web – aspecte arhitecturale
 
Web 2020 02/12: Programare Web – HTTP. Cookie-uri. Sesiuni Web
Web 2020 02/12: Programare Web – HTTP. Cookie-uri. Sesiuni WebWeb 2020 02/12: Programare Web – HTTP. Cookie-uri. Sesiuni Web
Web 2020 02/12: Programare Web – HTTP. Cookie-uri. Sesiuni Web
 
Web 2020 03/12: Programare Web – Arhitectura aplicaţiilor Web. Inginerie Web
Web 2020 03/12: Programare Web – Arhitectura aplicaţiilor Web. Inginerie WebWeb 2020 03/12: Programare Web – Arhitectura aplicaţiilor Web. Inginerie Web
Web 2020 03/12: Programare Web – Arhitectura aplicaţiilor Web. Inginerie Web
 
Web 2020 04/12: Programare Web – Dezvoltarea aplicaţiilor Web în PHP
Web 2020 04/12: Programare Web – Dezvoltarea aplicaţiilor Web în PHP Web 2020 04/12: Programare Web – Dezvoltarea aplicaţiilor Web în PHP
Web 2020 04/12: Programare Web – Dezvoltarea aplicaţiilor Web în PHP
 
Web 2020 05/12: Modelarea datelor. Familia XML. Extragerea datelor cu XPath. ...
Web 2020 05/12: Modelarea datelor. Familia XML. Extragerea datelor cu XPath. ...Web 2020 05/12: Modelarea datelor. Familia XML. Extragerea datelor cu XPath. ...
Web 2020 05/12: Modelarea datelor. Familia XML. Extragerea datelor cu XPath. ...
 
Web 2020 06/12: Procesarea datelor XML & HTML. Document Object Model
Web 2020 06/12: Procesarea datelor XML & HTML. Document Object ModelWeb 2020 06/12: Procesarea datelor XML & HTML. Document Object Model
Web 2020 06/12: Procesarea datelor XML & HTML. Document Object Model
 
Web 2020 07/12: Procesarea datelor XML & HTML – Simple API for XML. Procesări...
Web 2020 07/12: Procesarea datelor XML & HTML – Simple API for XML. Procesări...Web 2020 07/12: Procesarea datelor XML & HTML – Simple API for XML. Procesări...
Web 2020 07/12: Procesarea datelor XML & HTML – Simple API for XML. Procesări...
 
Web 2020 08/12: Servicii Web. De la arhitecturi orientate spre servicii la SO...
Web 2020 08/12: Servicii Web. De la arhitecturi orientate spre servicii la SO...Web 2020 08/12: Servicii Web. De la arhitecturi orientate spre servicii la SO...
Web 2020 08/12: Servicii Web. De la arhitecturi orientate spre servicii la SO...
 
Web 2020 09/12: Servicii Web. Paradigma REST
Web 2020 09/12: Servicii Web. Paradigma RESTWeb 2020 09/12: Servicii Web. Paradigma REST
Web 2020 09/12: Servicii Web. Paradigma REST
 
Web 2020 10/12: Servicii Web. Micro-servicii. Serverless. Specificarea API-ur...
Web 2020 10/12: Servicii Web. Micro-servicii. Serverless. Specificarea API-ur...Web 2020 10/12: Servicii Web. Micro-servicii. Serverless. Specificarea API-ur...
Web 2020 10/12: Servicii Web. Micro-servicii. Serverless. Specificarea API-ur...
 
Web 2020 11/12: Interacţiune Web asincronă. Aplicaţii Web de tip mash-up. JAM...
Web 2020 11/12: Interacţiune Web asincronă. Aplicaţii Web de tip mash-up. JAM...Web 2020 11/12: Interacţiune Web asincronă. Aplicaţii Web de tip mash-up. JAM...
Web 2020 11/12: Interacţiune Web asincronă. Aplicaţii Web de tip mash-up. JAM...
 
Web 2020 12/12: Securitatea aplicaţiilor Web. Aspecte esenţiale
Web 2020 12/12: Securitatea aplicaţiilor Web. Aspecte esenţialeWeb 2020 12/12: Securitatea aplicaţiilor Web. Aspecte esenţiale
Web 2020 12/12: Securitatea aplicaţiilor Web. Aspecte esenţiale
 
STAW 01/12: Arhitectura aplicaţiilor Web
STAW 01/12: Arhitectura aplicaţiilor WebSTAW 01/12: Arhitectura aplicaţiilor Web
STAW 01/12: Arhitectura aplicaţiilor Web
 
STAW 02/12: Programare Web: Limbajul JavaScript. Aspecte esenţiale
STAW 02/12: Programare Web: Limbajul JavaScript. Aspecte esenţialeSTAW 02/12: Programare Web: Limbajul JavaScript. Aspecte esenţiale
STAW 02/12: Programare Web: Limbajul JavaScript. Aspecte esenţiale
 
STAW 03/12: Programare Web: Limbajul JavaScript. Aspecte moderne: ES6 et al.
STAW 03/12: Programare Web: Limbajul JavaScript. Aspecte moderne: ES6 et al.STAW 03/12: Programare Web: Limbajul JavaScript. Aspecte moderne: ES6 et al.
STAW 03/12: Programare Web: Limbajul JavaScript. Aspecte moderne: ES6 et al.
 
STAW 04/12: Programare Web: Node.js
STAW 04/12: Programare Web: Node.jsSTAW 04/12: Programare Web: Node.js
STAW 04/12: Programare Web: Node.js
 
STAW 05/12: Arhitectura navigatorului Web
STAW 05/12: Arhitectura navigatorului WebSTAW 05/12: Arhitectura navigatorului Web
STAW 05/12: Arhitectura navigatorului Web
 
STAW 06/12: JavaScript în navigatorul Web. De la DOM la Ajax şi mash-up-uri
STAW 06/12: JavaScript în navigatorul Web. De la DOM la Ajax şi mash-up-uriSTAW 06/12: JavaScript în navigatorul Web. De la DOM la Ajax şi mash-up-uri
STAW 06/12: JavaScript în navigatorul Web. De la DOM la Ajax şi mash-up-uri
 
STAW 07/12: Ingineria dezvoltării aplicaţiilor JavaScript
STAW 07/12: Ingineria dezvoltării aplicaţiilor JavaScriptSTAW 07/12: Ingineria dezvoltării aplicaţiilor JavaScript
STAW 07/12: Ingineria dezvoltării aplicaţiilor JavaScript
 
STAW 08/12: Programare Web. Suita de tehnologii HTML5
STAW 08/12: Programare Web. Suita de tehnologii HTML5STAW 08/12: Programare Web. Suita de tehnologii HTML5
STAW 08/12: Programare Web. Suita de tehnologii HTML5
 

Proiectarea jocurilor electronice

  • 1. proiectarea jocurilor electronice Dr. Sabin Buraga www.purl.org/net/busaco
  • 2. “A game is a particular way of looking at something, anything.” Clark C. Abt
  • 5. jocuri activități sau concursuri guvernate de reguli ludologie
  • 6. definiție A game is an activity among two or more independent decision-makers seeking to achieve their objectives in some limiting context Clark C. Abt
  • 7. definiție A game is a form of art in which participants, termed players, make decisions in order to manage resources through game tokens in the pursuit of a goal Greg Costikyan
  • 8. definiție A game is a system in which players engage in an artificial conflict, defined by rules, that results in a quantifiable outcome Katie Salen & Eric Zimmerman
  • 9. clasificare număr  de jucători  – solitare ori în  grup  (echipă) scop – câştig  (gambling), dobândire de skill-uri,…strategie obiectiv – punctaj/scor maxim, primul clasat,  top  10,… tematică  – racing,  lingvistice,  deducţție,  sportive,  acţțiune  etc. mijloc/echipament – tablă,  teren, mediu virtual etc. categorie de  jucători  – copii,  adulţți, persoane cu nevoi speciale
  • 10. Jocuri electronice se  bazează  pe  un  mijloc  electronic  (arcade machine, dispozitiv miniaturizat, sistem conectat la TV, computer, telefon evoluat,…)  pentru  a facilita desfășurarea unuia sau mai multor jocuri cu  oponenţți  umani  și/sau contra calculatorului
  • 11.
  • 12. Scheme de clasificare K. Salen & E. Zimmerman, 2004 reguli (rules) proiectare formală  focalizată  asupra  structurii  logice   (matematice) a unei clase de jocuri
  • 13. Scheme de clasificare K. Salen & E. Zimmerman, 2004 maniera de jucat (play) desemnează  mijloacele de interacţțiune, vizând modul de reprezentare, caracterul social & experienţța utilizatorului (UX) în cadrul jocului
  • 14. Scheme de clasificare K. Salen & E. Zimmerman, 2004 cultura (culture) vizează  mediul socio-cultural în care jocurile sunt proiectate & jucate
  • 15.
  • 16. Puncte de vedere: jocurile ca… sisteme emergente sisteme bazate pe incertitudine sisteme  bazate  pe  teoria  informaţției sisteme de informare sisteme cibernetice modele în cadrul teoriei jocurilor sisteme de conflict
  • 17. Stiluri/genuri de jocuri (Rollings & Morris, 2004) Acţțiune lots of frantic button pushing Aventură the story matters Strategie nontrivial choices Simulare optimization exercises Puzzle hard analytic thinking Amuzament software you just have fun with Educaţțional learning by doing
  • 18. Eludarea regulilor (rule-breaking) trișatul relaţții  diferite  dintre  jucător  și  sistemul formal al jocului
  • 19. Eludarea regulilor (rule-breaking) trișatul relaţții  diferite  dintre  jucător  și  sistemul formal al jocului tipuri  de  jucători: standard player, dedicated player, unsportsmanlike player, cheater, spoil-sport player
  • 20. Eludarea regulilor (rule-breaking) la nivel digital: cheat codes, game guides & walkthroughs, workarounds, hacks, degenerate strategy (exploit), easter eggs
  • 21. Experiența  utilizatorului  cu  jocul (game experience) percepţție  vizuală scanarea elementelor de interes din cadrul jocului +  focalizarea  atenţției
  • 22.
  • 23. Experiența  utilizatorului  cu  jocul (game experience) reacţție  motorie acţțiunile  fizice  pe  care  le  realizează  jucătorul
  • 24. vezi Bryan Bergeron, Developing Serious Games, Cengage Learning, 2006
  • 25. Experiența  utilizatorului  cu  jocul (game experience) concentrare factori cognitivi intrarea  în  și  menţținerea  stării  de  flux  – game flow
  • 26.
  • 27. Experiența  utilizatorului  cu  jocul (game experience) șabloane  perceptuale  privind  învăţțarea familiarizarea & aprofundarea structurii interne a jocului: scopuri,  structură  narativă,  strategii  de  urmat,…
  • 28. Game experience game player creates makes output internal decision player takes action
  • 29. Experiența  utilizatorului  cu  jocul (game experience) orice joc prezintă o  “mecanică”  de  bază (core mechanic) activitatea  ludică  esenţțială  pe  care  jucătorii o  realizează  periodic  în  cadrul  unui  joc
  • 30. Tipuri  de  plăcere  ludică  (game pleasure) Marc LeBlanc, 2000 sensation game as sense-pleasure fantasy game as make-believe narrative game as drama challenge game as obstacle course fellowship game as social framework discovery game as uncharted territory expression game as self-discovery submission game as masochism
  • 31. Cum  se  specifică  regulile  unui  joc?
  • 32. Maniera de jucat (game play) specifică  alegerile,  provocările  sau  consecinţțele   pe  care  jucătorii  le  experimentează   în cadrul mediului virtual al jocului
  • 33. Maniera de jucat (game play) specifică  alegerile,  provocările  sau  consecinţțele   pe  care  jucătorii  le  experimentează   în cadrul mediului virtual al jocului dependenţță  de  “povestea”  jocului  (story-telling)
  • 34. Maniera de jucat (game play) implică  definirea de reguli documentate într-un  manual  de  instrucţțiuni  sau   prezentate direct în cadrul jocului
  • 35. Maniera de jucat (game play) implică  definirea de reguli documentate într-un  manual  de  instrucţțiuni  sau   prezentate direct în cadrul jocului pot fi oferite adiţțional:  tutoriale, ghiduri de strategii (strategy guides), indicii (tips),…
  • 37. Maniera de jucat (game play) pentru a  se  formula  reguli,  trebuie  să  se  înţțeleagă   în primul rând condiţțiile  (termenii) jocului de victorie (victory conditions) și/sau de pierdere (loss conditions)
  • 38. 6  condiţții  de  victorie  oferite de Civilizations IV
  • 39. Moduri de interactivitate elementul/elementele interactiv(e) depind(e) de  acţțiunile  jucătorului  sau  jucătorilor
  • 40. Moduri de interactivitate jucător  ↔  joc aspecte de interes: reprezentare  spaţțială  a  mediului,  atmosferă,  conţținut  etc.
  • 41.
  • 42. Moduri de interactivitate jucător  ↔  jucător dezvoltatorii  pot  crea  o  interactivitate  potenţțială,   dar  nu  pot  prezice  cum  vor  interacţționa  concret  utilizatorii
  • 43. Moduri de interactivitate jucător  ↔  jucător vizează  realizarea  interacţțiunii  dintre  jucători:   comunicare  &  cooperare,  competiţție,…
  • 44. Moduri de interactivitate jucător  ↔  jucător tipuri  de  competiţții  între  jucători: 1-la-1 – jocuri  de  luptă  sau  de  tip  tabletop (e.g., Go, șah)
  • 46. Moduri de interactivitate jucător  ↔  jucător tipuri  de  competiţții  între  jucători: unilaterală  (mai  mulţți  jucători  contra  unuia) Scotland Yard
  • 47. Moduri de interactivitate jucător  ↔  jucător tipuri  de  competiţții  între  jucători: multilaterală  (>2  jucători  contra  celorlalţți  sau  a  NPC-urilor) Monopoly, EverQuest
  • 49. Moduri de interactivitate jucător  ↔  jucător tipuri  de  competiţții  între  jucători:   echipă  (grupuri  în  număr  egal)  – jocuri  sportive  în  echipă
  • 50. Moduri de interactivitate jucător  ↔  dezvoltator desemnează  interacţțiunea  dintre  utilizatori  &  dezvoltatori exemplu: forumurile oficiale pentru World of Warcraft
  • 51. Moduri de interactivitate jucător  ↔  platformă specifică  interacţțiunea  dintre  jucător   și  platforma  software/hardware capacităţți  multimedia, dispozitive I/O (e.g., Wiimote, iPhone),  stocare,  timp  de  viaţță  a  bateriei, acces  la  reţțea,…
  • 52. Moduri de interactivitate definirea  conflictului  se  bazează  pe  teoria jocurilor aplicată  pentru  jocuri  cu  minim  2  oponenţți Noam Nisan et al. (Editors), Algorithmic Game Theory, Cambridge University Press, 2007
  • 54. Tipuri  de  provocări  (challenges) depind, deseori, de genul jocului
  • 55. Tipuri  de  provocări  (challenges) explicite intenţționat  introduse în joc, intense e.g.,  săritura  peste  un  obstacol
  • 56. Tipuri  de  provocări  (challenges) implicite caracteristici emergente ale jocului exemplu: stabilirea strategiei de atac
  • 57. Tipuri  de  provocări  (challenges) pot  depinde  și  de  disponibilitatea  informaţțiilor
  • 58. Tipuri  de  provocări  (challenges) informaţții  complete starea jocului  e  complet  cunoscută  de  toţți  jucătorii   pe întreg parcursul partideiprovocări  logice exemple: board games – Go, Reversi,…
  • 60. Tipuri  de  provocări  (challenges) informaţții  incomplete jucătorul  posedă  informaţții  parţțiale  pentru  a  lua   deciziirealizarea de deducţții  (inference) exemple: Mastermind, jocuri  cu  cărţți – Poker
  • 61. Tipuri  de  provocări  (challenges) informaţții  incomplete uzual, reprezentate grafic via fog of war exemplificări: Civilizations, Heroes of Might and Magic
  • 62. Tipuri  de  provocări  (challenges) informaţții  incomplete determină  utilizatorul  să  interacţționeze  și să  participe tot mai intens în cadrul jocului poate crea un element de mister al scenariului
  • 64. Tipuri  de  provocări  (challenges) referitoare la cunoștinţțe (knowledge)
  • 65. Tipuri  de  provocări  (challenges) referitoare la cunoștinţțe (knowledge) cunoștinţțe  intrinseci desemnează  cunoștinţțele  dobândite  în  cadrul  jocului
  • 66. Tipuri  de  provocări  (challenges) referitoare la cunoștinţțe (knowledge) cunoștinţțe  intrinseci exemple:  mutări  combinate,  incantaţții,  hărţți  de  labirint,   personalităţți  ale  personajelor  etc.
  • 67. Tipuri  de  provocări  (challenges) referitoare la cunoștinţțe (knowledge) cunoștinţțe  extrinseci consideră  cunoștinţțele  din  exterior, aplicate în cadrul jocului
  • 68. Tipuri  de  provocări  (challenges) referitoare la cunoștinţțe (knowledge) cunoștinţțe  extrinseci exemple:  fapte  de  “bun  simţț”  (e.g.,  “lemnul  plutește”),   cunoștinţțe  folosite  în  jocuri  de  tip  trivia etc.
  • 69. Tipuri  de  provocări  (challenges) recunoaștere  &  potrivire  de  forme comune în jocurile de tip puzzle sau de acţțiune pot fi rezolvate via automatic thinking
  • 71. Tipuri  de  provocări  (challenges) abilităţți  de  orientare  în  spaţțiu  (spatial awareness) experienţța  jocului  depinde  de  abilităţțile  jucătorului   de  a  înţțelege  relaţțiile  spaţțiale  stabilite  între  entităţți
  • 72. Tipuri  de  provocări  (challenges) abilităţți  de  orientare  în  spaţțiu  (spatial awareness) exemple:  simulările  de  curse  auto
  • 73. Tipuri  de  provocări  (challenges) micro-management de resurse vizează  gestiunea (via opţțiuni  multiple) acţțiunilor ori proprietăţților  asociate unor resurse & personaje
  • 74. Tipuri  de  provocări  (challenges) micro-management de resurse exemple: jocuri cu strategie în timp-real (real-time strategy – RTS), first-person shooters (FPS)
  • 75. Tipuri  de  provocări  (challenges) timp  de  reacţție – reaction time timpul  de  răspuns  este  esenţțial  în  jocurile  de  acţțiune
  • 76. Scopuri ale jocului (game goals) conform provocărilor, pot exista unul sau mai multe scopuri: advancement, race, puzzle-solving, exploration, conflict, capture, chase, organization, escape, taboo, construction, solution, outwit
  • 77. “A game is balanced if players perceive that it is consistent, fair, and fun.”   Jeannie Novak, 2008
  • 78. Echilibrul jocului (balance) provocările  trebuie  să  fie  consistente jucătorii  vor  avea  de  înfruntat  gradual   provocări  tot  mai  dificile niveluri de dificultate (game levels)
  • 79. Echilibrul jocului (balance) niveluri de dificultate jocul poate oferi diverse grade de dificultate sau niveluri  ce  pot  fi  ajustate  conform  abilităţților  utilizatorului
  • 81. Echilibrul jocului (balance) maniera  de  jucat  trebuie  să  fie  echitabilă jucătorii  nu  vor  fi  penalizaţți  din  start pentru “greșelile”  făcute
  • 82. Echilibrul jocului (balance) eliminarea deciziilor banale jucătorii  vor  trebui  să  ia  doar  decizii  importante chiar și  în  cazul  jocurilor  ce  implică  micro-management
  • 83. Economiile jocului reprezintă  sistemele  ce  permit  manipularea – fizică  sau  conceptuală  – a resurselor
  • 84. Economiile jocului tipuri de resurse: financiare  (bani,  metale  preţțioase,  edificii  etc.),   strategice  (trupe,  instalaţții,  terenuri),  personaje,   capacităţți  (skills),  informaţționale  (coduri,  hărţți,…)
  • 85. Economiile jocului în jocurile de tip persistent-state world (PSW), economiile  pot  fi  influenţțate  de  acţțiunile  jucătorilor:   colectare, negociere, transformare de resurse
  • 86. Economiile jocului în jocurile de tip persistent-state world (PSW), economiile  pot  fi  influenţțate  de  acţțiunile  jucătorilor:   colectare, negociere, transformare de resurse existenţța  monedei  virtuale exemple: EverQuest, Second Life
  • 87. EVE
  • 88. Cum  proiectăm  personajele   dintr-un joc electronic?
  • 89. “Puterea”  naraţțiunii este  influenţțată   și de identitatea personajelor (game characters)
  • 90. player characters personaje ce  pot  fi  “jucate”  de  utilizator non-player characters (NPCs) personaje independente de jucător, create prin software
  • 91. Un  jucător  poate  controla  doar unul avatar sau mai multe personaje de tip player characters (e.g.,  armată,  echipă  sportivă  etc.)
  • 92. Tipuri de personaje prezente în jocuri (Jeannie Novak, 2008) animal fantastic istoric preluat mitic
  • 93.
  • 94. • protagonistul e focalizat asupra intrapersonal propriilor scopuri • protagonistul dezvoltă interpersonal o  relaţție  1-la-1 cu alt personaj • protagonistul  interacţționează   team la nivel de grup • interacţțiuni  la  nivel  de  reţțea   community socială,  organizată  coerent • evoluţție  spirituală  superioară humanity (self-actualization)
  • 95. Jocurile  prezintă  jucătorului  puncte de vedere (POV – points-of-view) specifice
  • 96. Jocurile  prezintă  jucătorului  puncte de vedere (POV – points-of-view) specifice first-person POV jucătorul  observă  acţțiunea  prin  “ochii”  avatarului
  • 97. Jocurile  prezintă  jucătorului  puncte de vedere (POV – points-of-view) specifice first-person POV adoptat de jocuri de tip FPS (first-person shooter), RPG (role-playing game)
  • 98. Game characters Half-Life
  • 99. Jocurile  prezintă  jucătorului  puncte de vedere (POV – points-of-view) specifice third-person POV utilizatorul poate vedea avatarul pe parcursul acţțiunii jucătorul  se  identifică  mai  greu  cu  personajul  jucat
  • 100. Jocurile  prezintă  jucătorului  puncte de vedere (POV – points-of-view) specifice third-person POV caracterul  cinematic  e  mai  pronunţțat
  • 103. Se  bazează  pe  activitatea  unui  proiectant (level designer) ce utilizează  instrumente  specifice: editoare de niveluri (level editors) Aurora Toolset, Unreal Editor, Valve Hammer Editor,… software de editare grafică (2D/3D) 3D Studio MAX, Blender, Bryce, GIMP, Maya etc.
  • 104. exemplificare:  fiecare  scenă  din  Heart of Darkness reprezintă  un  “caz  special”
  • 105. Structura scop,  flux,  durată,  disponibilitate,   relaţționare  cu  alte  niveluri,  evoluţție Timpul de  desfășurare autentic, limitat, variabil, stabilit de utilizator, alterat Locația perspectivă  &  cameră,  terenuri  &  materiale,   luminozitate, efecte, dimensiune,  mărginire,  realism,  stil
  • 106. Structura facilitează  structurarea  jocului  în  subdiviziuni,   organizând  evoluţția  și  îmbunătăţțind  maniera  de  jucat
  • 107. Structura scopul fiecare  nivel  trebuie  să  prezinte  un  set  de  obiective   ce  trebuie  înţțelese  de  jucător(i) uzual,  se  oferă  în  prealabil  un  tutorial  interactiv sau un preambul de tip cut-scene
  • 108. Structura fluxul trebuie  asigurat  faptul  că  jucătorul  nu  poate  părăsi  nivelul   până  nu-și  îndeplinește  obiectivele soluţție:  existenţța  unor  obstacole  de  netrecut
  • 109. Structura fluxul utilizatorul  trebuie  împiedicat  să  reviziteze  o  arie,   din  moment  ce  obiectivele  corespunzătoare  au  fost  atinse soluţție:  blocarea  căilor  de  întoarcere,   semnalizându-i  jucătorului  progresul  înregistrat
  • 110. Structura durata regulă:   utilizatorul  trebuie  să  termine  minim  1  nivel   într-o sesiune a jocului
  • 111. Structura durata valori tipice: 15 minute – jocuri pentru copii 2 ore – jocuri  cu  concentrare  intensă  (utilizatori  împătimiţți) 45 minute – jocuri rulate pe console
  • 112. Structura disponibilitatea numărul  nivelurilor  depinde  de  specificul  (scopul)  jocului 1 nivel la un moment dat: jocuri FPS număr  mic  de  niveluri  simultane: RPG (role-playing game)
  • 113. Structura relaţționarea  cu  alte  niveluri de  obicei,  un  nivel  reprezintă  o  scenă  sau  un  episod   dintr-o  naraţțiune  mai  largă tipuri  de  relaţționări  uzuale:  dificultate  &  structură  narativă
  • 115. Structura relaţționarea  cu  alte  niveluri cazul jocurilor de strategie: o serie de niveluri – numite  “misiuni”  – pot fi grupate într-o  “campanie”  (campaign)  ce reprezintă  scopul  jocului pot  fi  implementate  “campanii”  multiple
  • 116. Timpul  de  desfășurare categorii: turn-based time-limited real-time
  • 117. Timpul  de  desfășurare timpul jocului (game time)  nu  trebuie  să  fie  similar cu cel real
  • 118. Locația desemnează  mediul  fizic  redat  în  cadrul  jocului:   perspectiva,  mărimea,  limitele,  structurile,  terenul,   obiectele, stilul (e.g.,  cromatică,  textură,  look & feel)
  • 119. Locația perspectiva & camera dependenţță  de  point-of-view (POV) tipuri: omniprezenţță,  aeriană  (top-down),  izometrică,   defilare  laterală  (side-scrolling, flat/side-view)
  • 120. Level Design perspectiva aeriană: SimCity (prima versiune pe Mac)
  • 122. defilarea laterală (parallax scrolling): Prince of Persia
  • 123. Ce presupune dezvoltarea unui joc electronic?
  • 124. Abordări  (Mateas & Whitehead, 2007) focalizate pe aspecte tehnologice (informatică, matematică) interdisciplinare focalizate pe factori artistici (design artistic, arte vizuale)
  • 125. Introducere conform John P. Flynt, Omar Salem, Software Engineering for Game Developers, Thomson, 2005
  • 126. Componente (subsisteme) primare (Rollings & Morris, 2004) User interface Bidirectional event handler Data engine (graphics, level, miscellaneous data) Dynamics system (collisions and general physics) Logic engine (the heart of the game) Graphics engine Sound engine Hardware abstraction layers (interfaces with graphics, sound, and controller hardware)
  • 127. Subsisteme secundare Game configuration system Menuing system Online instructions and help system Music system
  • 129. problemă Testarea  insuficientă  sau  precară Gregory Trefay, 2010 portarea (adaptarea)  unui  joc  pe  altă  platformă de exemplu, de pe desktop pe un dispozitiv iPhone
  • 130. problemă fenomenul hand obstruction
  • 131. studiu de caz Crearea unui joc simplu de tip MMORPG ilustrează  învăţțarea  conceptelor  de  baze  de  date   via  principiile  dezvoltării  de  jocuri  electronice după  o prezentare de Greg Wadley & Jason Sobell, The University of Melbourne, Australia în cadrul Academic Days 2007
  • 132. studiu de caz Un MMORPG  este  un  sistem  software  informaţțional starea  jocului  se  stochează  central  (pe  un  server) datele sunt persistente accesul la date este concurent utilizatorii  posedă  identităţți,  trebuind  să  fie  autentificaţți interacţțiunea  se  realizează  la  client  via  o  interfaţță-utilizator
  • 133. studiu de caz Mediul  (lumea)  jocului  poate  fi  modelat(ă) printr-o matrice de locaţții, fiecare având diverse caracteristici jucătorii  – umani  sau  generaţți  de  calculator  – se pot deplasa în cadrul caroiajului, putând concura  unul  cu  celălalt
  • 134. studiu de caz 99 100 Y, 1 to 10 11 12 13 14 15 16 17 18 19 20 1 2 3 4 5 6 7 8 9 10 X, 1 to 10
  • 135. studiu de caz folosind o imagine de fundal, poate fi stabilit designul vizual
  • 136. studiu de caz Locaţția  curentă  a  jucătorului  va  trebui  redată  diferit Etichetele  specifică  “sănătatea” & punctajul curent Via  diverse  mijloace  de  interacţțiune,  vor  fi  afișate  obiectele   aflate  în  posesia  fiecărui  jucător  +  mesajele  jocului Se  oferă  și  posibilitatea  de  a  observa/interacţționa cu  alţți  jucători
  • 137. studiu de caz Studiu de caz proiectare și implementare minimală a interfeţței jocului (aplicaţția-client la nivel de desktop)
  • 138. studiu de caz Studiu de caz modelarea datelor via tabele
  • 139. studiu de caz Partea  de  procesare  e  implementată  de  proceduri  stocate facilitează  accesul  la  date (concurenţța  este  rezolvată  pe  baza  tranzacţțiilor) descriu  comportamentul  fiecărui  control  de  interfaţță   pot fi apelate periodic via un timer existent la client
  • 140. studiu de caz Fiecare  acţțiune  a  unui  jucător  afectează  vizualizarea  datelor de  către  ceilalţți  utilizatori Starea jocului poate fi specificată via modele simple de date: jucători,  obiecte,  evenimente,… Recurgând la un sistem de baze de date, se poate simplifica problema accesului concurent Separarea  clară  a  prezentării de procesare & stocare a datelor
  • 141. De unde aflu mai multe?
  • 142. resurse J. Flynt & O. Salem, Software Engineering for Game Developers, Thomson, 2005 C. Harteveld, Triadic Game Design. Balancing Reality, Meaning and Play, Springer, 2011 J. Novak, Game Development Essentials (2nd Edition), Thomson, 2008 A. Rollings & D. Morris, Game Architecture and Design: A New Edition, New Riders, 2004 R. Rouse, Game Design Theory and Practice (2nd Edition), Wordware Publishing, 2005 K. Salen & E. Zimmerman, Rules of Play: Game Design Fundamentals, MIT Press, 2004
  • 143. resurse Gamasutra http://www.gamasutra.com/ Game Development http://www.gamedev.net/ Good Experience Games http://goodexperience.com/games/ Digital Games Research Association http://www.digra.org/ AI Game Development http://aigamedev.com/ HTML5-based Game Development https://sites.google.com/site/html5gamejam/engines
  • 146. mult  succes  la…. proiectarea jocurilor electronice Dr. Sabin Buraga www.purl.org/net/busaco