I denne opplæringen vil jeg forklare hvordan jeg utformer nivåer for videospill, basert på min erfaring som designer for Ratchet & Clank, Resistance og Skylanders franchise. Jeg kommer ikke til å dykke dypt inn i individuelle konsepter, men gir en oversikt over prosessen på høyt nivå som jeg bruker når jeg designer et nivå.
Jeg går deg gjennom et eksempellivå jeg lager fra begynnelsen, slik at du kan se typiske resultater fra hver fase av prosessen.
I begynnelsen av et design er det vanskeligste å finne ut hva som skal være på et nivå. Som designer kan du bestemme mye, men du får ikke alltid å bestemme alt, spesielt hvis du jobber i et stort lag.
På et stort lag kommer de fleste av dine begrensninger fra andre mennesker. Det vil være forretningsmessige begrensninger, franchisebegrensninger, publikumsbegrensninger, juridiske begrensninger, motorbegrensninger og så videre. Mesteparten av tiden kommer disse begrensningene langt fra kjeden.
Tettere til deg vil være begrensningene som brukes av visjonen til den kreative regissøren, kunstdirektør, og alle andre involverte å ta beslutninger på det nivået.
Hvis du jobber alene som en indie, er du den som skal ta disse avgjørelsene, så du må fortsatt forstå dine begrensninger veldig bra..
Det er noen generelle begrensninger jeg prøver å huske på når jeg designer et nivå; Jeg finner at disse gjelder for de fleste spillene jeg noensinne har jobbet med. Jeg har gitt eksempel på svar på spørsmålene om disse begrensningene nedenfor for å vise detaljnivået du trenger for å komme i gang, og jeg vil bruke disse eksemplene for å bygge et eksempelnivådesign i denne opplæringen.
Dette er et kort nivå, omtrent 30 minutter langt.
Vår imaginære spillmotor har kule innendørs lyseffekter, så jeg vil ha mange kule innendørsrom.
Denne artikkelen ble skrevet i løpet av flere måneder, men nivået på designelementet tok omtrent to eller tre dager å fullføre.
Merk: Jeg forventer at denne prosessen tar omtrent 5 uker for et fullstort nivå på et ekte spill.
For et spill som ikke er laget som et opplæringseksempel, kommer disse kravene vanligvis fra forleggeren, investorene, markedsavdelingen og så videre.
Plattformen du lager spillet for pålegger begrensninger. Et spill for en telefon kan ikke bruke så mye prosessorkraft som for eksempel et spill for PS4 eller PC. Et virtuelt virkelighetsspill stiller begrensninger på kamerabevegelser for å unngå å forårsake bevegelsessykdom. Mobilspill har lengdebegrensninger fordi folk spiller i korte utbrudd. Kjenn dine begrensninger.
For dette eksempels skyld, la oss si at spillet er målrettet mot siste genkonsoller (PlayStation 3, Xbox 360) og PC.
Dette er det tredje nivået av spillet, og som sådan vil utfordringene ikke bli for vanskelig.
Dette spillet er et sci-fi-spill, ganske voldelig. Det vil sannsynligvis få en M (eller 18+) vurdering. Vi satser dette på hardcore spillere over 18 år.
Hvis du befinner deg i den heldige situasjonen som noen betaler deg for å designe et nivå, husk at de vil ha dette nivået / spillet av en grunn. Hvis ting du lager ikke tilfredsstiller den grunnen, vil de ikke (og burde ikke) betale deg, eller utviklingsstudiet du jobber for, for det. Tilfredsstillende klienter er den beste måten å sørge for at de ansetter deg eller ditt studio igjen, så sørg for å stille spørsmål om hva den grunnen er.
Disse kritiske spørsmålene varierer fra prosjekt til prosjekt, men uansett om jeg designer et nivå for meg selv eller for andre, finner jeg at det er fire spørsmål som nesten alltid er det viktigste å spørre først:
La oss se på hver av disse, i sin tur:
Målet med eksempelnivået er å redde en VIP som er fanget i et militært anlegg, og deretter forlate området i et helikopter.
For dette eksemplets skyld:
Hvert område du designer må ta hensyn til ting som spillerens bevegelseshastighet, størrelsen på spilleren, størrelsen på monstrene, hopper høyder og så videre.
Hver av disse informerer hvor stor korridorene og mellomromene dine må være, og hvilke høyder og lengder som er tilgjengelige for å kunne brukes som hopp.
Tidlig i utviklingen av et spill, utvikles et kort dokument som bestemmer hva som foregår på hvert nivå i svært vage termer. (Se denne D.I.C.E. 2002-talen av Mark Cerny for mer informasjon om makro-design.)
Et makro dokument spesifiserer hvilke gåter og fiender som går i hvert nivå, hvor mange bruksområder hver er forventet per nivå, hvilke belønninger du får, og ting av den typen. Dette stiller ytterligere begrensninger på designet.
For vårt eksempels skyld, her er våre makrobegrensninger:
Først: Dette er et enkelt førstepersons kampspill. Ingen puslespill, og enkel kamp med fire fiendtlige typer:
For det andre: Når spilleren har reddet VIP, må det være en snarvei tilbake til begynnelsen av nivået, så spilleren trenger ikke å krysse over hele greia.
Tredje: VIP er plassert i det endelige kamprommet. Hun blir holdt fange av elitsoldater.
Når jeg er klar over mine begrensninger, starter jeg brainstorming. For eksempel:
Når jeg designer et nivå, liker jeg å tenke i form av forskjellige "områder" innenfor nivået. Det gjør det lettere å bryte arbeidet mitt i håndterbare biter. "Områder" er en løs term for noen del av nivået, av hvilken som helst vilkårlig størrelse, form eller plassering. Det eneste virkelige kriteriet for om noe er et område eller ikke, er at det må hjelpe deg å jobbe raskere for å tenke på det på den måten. Hvis du tenker på den måten, blir det vanskeligere, ikke bekymre deg for det.
For vårt eksempel vil jeg at spillere skal lære om nye fiender i isolasjon og deretter kombinere fiender sammen i løpet av nivået, slik at alt blir mer komplekst. Dette er god intensitetsramping.
For å gjøre det bra, vil jeg vanligvis ha minst syv områder å jobbe med. (Det er langt utenfor omfanget av denne artikkelen å forklare hvorfor, men du kan lese mer om "Regelen av syv" her for å se noen av de pacingfordelene det gir). Når jeg trenger et sluttområde for noe, som et rom for en cutscene hvor du redder VIP, legger jeg vanligvis til et ekstra område. For dette eksempelet betyr det 8 områder.
For hvert område tildeler jeg så noen grunnleggende ideer eller krav, slik at jeg har en kort liste som forteller meg strukturen på mitt nivå.
For eksempelnivået er dette det jeg kom opp med for områder:
Før jeg legger en mengde tid og krefter på å lage en endelig design, bygge noe i motoren, eller til og med begynne å tenke på individuelle områder, vil jeg alltid ha en følelse av det overordnede nivået og hvordan det flyter. Dette hindrer meg i å gjøre feil og måtte omarbeide designene mine så mye.
For å visualisere hele nivået og hvordan områdene er forbundet, lager jeg en Boble Diagram.
Et boblediagram er a veldig Enkelt kart over hele nivået, med sirkler som indikerer områder i nivå og piler som indikerer strømmen og forbindelsene mellom områdene.
I brainstorming fra del 2 kom vi opp med alle brikkene på vårt nivå. Ideen om et boblediagram er å hjelpe deg med å visualisere hvor alle disse brikkene vil være i forhold til hverandre. Det hjelper deg også å tenke på stiene gjennom ditt nivå, og hvilken slags sti struktur passer best for dine mål.
Dette er det boblediagrammet jeg har laget for vårt lineære eksempelnivå, med to typer piler for å vise om tilkoblingen er toveis eller enveis:
Nesten hver designer jeg vet gjør disse litt annerledes, og det er greit! De eneste kravene er at du må være konsekvent og at sluttproduktet må være lesbart. En del av poenget med å lage boblediagrammer er at de kan brukes til å formidle ideene dine til andre, så hold det i bakhodet når du lager dem.
Merk: Se artikkelen min om Visninger og Vistas for informasjon om hvordan du konfigurerer sett og bestemmer visninger. Dette er et godt stadium i prosessen for å bestemme hvor de går.
Når jeg har Bubble Diagramet ferdig, vet vi hva som går inn på dette nivået, og vi vet hvordan hvert område er koblet til hverandre.
Det neste trinnet er å kjøre ned listen og lage en grov design for hver boble. Jeg gjør det nesten alltid på papir eller i Illustrator, fordi det er slik jeg lærte, men jeg vet en rekke flotte designere som gjør denne typen ting i motoren for å få en bedre følelse av plassen. Uansett hva som gjør at du jobber raskest er best her.
Nedenfor ser du et eksempel på hvilken av boblene (spesifikt Boble 3: Stramme korridorer) ser ut etter at jeg har designet den ut på papir (øverst ned):
Spilleren starter på toppen av dette området og går videre til bunnen. Dette området bruker rettvinkler for å introdusere fiender som en overraskelse for spilleren
Jeg vil bryte dette ned:
Legg merke til hvordan dette området er utformet isolert fra de andre, og skala vurderes, men ikke utkalt. Legg merke til hvordan avstandene og høydene fremdeles ikke er godt definert.
I dette grove scenen er det veldig nyttig å kunne endre ting raskt, så jeg fullfører ikke disse detaljene før jeg er klar til å fullføre designen. Jeg prøver å holde skalaen forholdsvis konsistent mellom alle områdene, da dette vil gjøre jobben min lettere i neste trinn når vi kobler sammen områdene sammen.
Ikke bli hengt opp på nøyaktighet eller små detaljer. Ting om dette designet vil forandres hele tiden fra nå til spillet går (selv etter at vi "ferdigstiller" designet). Ingenting blir satt i stein
Etter å ha tatt hver boble og utformet dem i grovt, på papir, knytter jeg dem sammen (omtrent). For lesbarhet har jeg gjort det her i Adobe Illustrator, men det kan også gjøres på papir.
Legg merke til hvordan områdene er lagt ut til slutt, så jeg vet hvordan de skal koble sammen, men jeg har ikke fullført noe enda.
Prøv å rampe intensiteten opp, område etter område. Sørg for at du kombinerer dine fiendtlige typer godt, og at økt vanskelighet, kompleksitet og intensitet i fiendens møter eller puslespill øker i løpet av nivået.
Pass på at du legger til mange hvileplasser mellom kamper eller utfordringer til lavere intensitet fra tid til annen. Hvis du holder intensiteten til 10 hele tiden, blir 10 den nye 5.
Slutproduktet (som det fremgår av bildet ovenfor) er det jeg kaller a grovt kart.
Dette trinnet er når jeg fullfører hvordan alle områdene kobler til hverandre i fysisk plass. Alle overgangene er fullført, og jeg har fullført høydene og avstandene til alt.
Ulike designere gjør dette trinnet på forskjellige måter. Mange designere liker å dykke rett inn i motoren og bygge dette ut, noe som er flott. Min preferanse er vanligvis å fullføre 2D-kartet, siden jeg pleier å være litt tregere enn de fleste når jeg konstruerer nivåer i motoren, og dette gir meg fart. Den beste måten vil være det som gjør at du jobber raskere og gjør sluttproduktet ditt bedre.
Det endelige nivå kartet. (Full størrelse PDF-versjon tilgjengelig her.)Merknader:
Se PDF-filen som er vedlagt denne veiledningen hvis du vil zoome inn og se detaljer om det endelige kartet. Du kan også se hvordan den er organisert (forskjellige deler i forskjellige lag) for å få en ide om hvordan jeg konstruerer disse.
De oransje boksene er utløsere. Fiender i et rom vil ikke angripe spillere før spillerne krysser utløseren.
Hver boks på nettet er 2x2 spill enheter. Ved å gjøre dette kartet øverst på et rutenett som dette, og ved å markere høyder med tall (for eksempel +70 i kartet ovenfor), kan jeg gi indikasjoner i alle tre dimensjoner om hvor ting skal gå.
Husk at alt vi har gjort så langt er bare et design. I det øyeblikk du får det inn i motoren og begynner å spille med det, finner du massevis av ting du vil forbedre - men å ha et solid fundament før du går inn i verktøyene har hjulpet meg mye gjennom årene.
Det er mitt håp at denne beskrivelsen av metoden min har vært nyttig for deg. De fleste vil ikke jobbe akkurat på denne måten, og det er bra - bare velg de delene som gjør deg raskere, eller som gjør det resulterende arbeidet ditt mer sammenhengende, og bruk dem.
Jeg starter prosessen ved å forstå alle de begrensninger og begrensninger som omgir nivået. Å ha et solid håndtak på mine krav hindrer behovet for re-arbeid for å fikse mangelen senere.
Deretter brainstormer jeg ideer og møter en grov struktur for hvordan nivået vil være: hvor mange områder jeg trenger, og hva vil egentlig være i dem. Dette blir vanligvis en enkel nummerert liste, spesielt for lineære nivåer som den vi har jobbet med i denne artikkelen.
Deretter lager jeg et boblediagram slik at jeg kan forstå hvordan alle mine områder passer sammen. Det gir meg grunnlag for å forstå grunnflowet på mitt nye nivå med et blikk.
Etter det lager jeg et tøft kart. Jeg pleier å designe hvert område separat, på papir, og deretter finne ut hvordan man kan strikke dem sammen. Når jeg har fått dem der jeg vil ha dem, kan jeg se om noen endringer må gjøres til noe jeg har designet for å imøtekomme områdene som passer sammen.
Når jeg har et tøft kart, begynner jeg enten å jobbe i motoren eller fullføre kartet. Når jeg jobber med mine egne prosjekter, går jeg i motoren. Når jeg jobber for andre, lager jeg vanligvis et kart. Et kart er et veldig effektivt kommunikasjonsverktøy, og hvis du holder den relativt oppdatert, kan det være nyttig for folk å se på under møter.