guide2Guide: I vores guides forsøger vi at give dig information som kan gøre din hverdag som spiludvikler lettere, sjovere eller mere afslappende. Hvis du synes der er et emne vi bør skrive om så tøv ikke med at kontakte os.

I denne blogpost vil vi forsøge at give dig nogle værktøjer der er uundværlige for at lette de problemer man kan støde på i løbet af en spilproduktion.
Desuden vil det også gøre din hverdag som spiludvikler nemmere, uanset om det er på hobby-plan eller et professionelt plan.

Møder

Det kan godt føles irriterende når man egentlig bare gerne vil hen til ens egen computer for at arbejde på ens egne ting, men det er en nødvendighed. Om man vælger at afholde daglige eller ugentlige møder er op til smag og behag – men uanset hvad så kan disse møder hjælpe med til at sørge for at alle ved hvad de forskellige personer laver den pågældende dag eller uge, og samtidig også øge følelsen af ansvar og betydning for hver enkelt person på holdet.

Versionsstyring (CVS, SVN, GIT)

Når man arbejder mange sammen om samme projekt er det vigtigt at alle altid har adgang til den nyeste udgave; det er her versionsstyring kommer ind i billedet.
Med versionskontrol kan du sørge for at alle hele tiden har adgang til de nyeste filer.
En anden rigtig god grund til at vælge versionsstyring er at hver gang man laver ændringer bliver den ‘gamle’ udgave gemt på serveren – så hvis en ændring i en fil har ødelagt hele systemet kan man altid gå tilbage til en tidligere revision af programmet.

Desuden gør versionsstyring også det nærmest umuligt komplet at ødelægge et projekt som man arbejder på, da hver person har en lokal kopi af hele projektet liggende – og at man altid kan gå tilbage i et projekts tidligere stadie.

De mest udbredte versionsstyrings-løsninger tæller Tortoise SVN, Dropbox og SugarSync for bare at nævne et par stykker. Man kan selve sætte sin egen server op, eller benytte sig af online tjenester, bl.a.:

gCodeGoogle Code tilbyder gratis hosting af projekter med 1GB fri plads til selve projektet, og der er en meget let guide til at komme igang.

sForgeSourceForge er en anden mulighed, hvor man også kan få hostet sin SVN, dog skal projekter her være Open Source-relateret.

Prioriteringer

I langt de fleste spilprojekter er det vigtigt at man hele tiden er opmærksom på om den opgave man går igang med er den rigtige i forhold til hvilken fase spilproduktionen er i. Et eksempel kan være en grafiker der går igang med at lave en GUI (Graphical User Interface) før der er lavet noget grafik til spillet overhovedet.nwn
Med andre ord er det vigtigt at have styr på sine prioriteter.
Det er her Need-Want-Nice2Have tavlen kommer ind i billedet.
Denne tavle kan løbende fyldes op med idéer, efterhånden som de kommer i spilprojektet, men den største del af arbejdet bliver gjort når spil-idéen er konkretiseret, og man ved hvilke ting der er skal prioriteres.
Når tavlen udfyldes er det en god idé at alle i holdet er tilstede så man vurderer de forskellige emner både efter hvor vigtige de er for alle på holdet.
Det er også vigtigt at man husker at tage tiden med i sine punkter – “er det realistisk at vi kan nå den her opgave inden deadlinen” – ellers er ‘Needs’ listen den eneste søjle der bliver fyldt op.
Needs
Her hører kun de absolut vigtigste ting til, f.eks. ‘gameplay’, ‘physics’ og lignende ting – altså kun de ting der er absolut nødvendige for at spillet fungerer.
Wants
De ting man vælger at placere her er som regel ting der er vigtige for spillet, men ikke absolut nødvendige for at spillet fungerer – f.eks ‘animation’, ‘rag dolls’ og lignende.
Nice2Have
I denne søjle havner de ting som ikke tilføjer værdi til gameplay, f.eks. ‘high score’, ‘animeret gui’ osv.
Man kan med fordel lave sin NWN-tavle imellem hver deadline, for at sikre at man hver gang tager tid og nuværende udvikling med i sine overvejelser.

Farvekodet ToDo tavle

todo-boardNår man arbejder på et spilprojekt opstår der løbende mange forskellige opgaver, opgaver der hver især falder indenfor forskellige kategorier. Især i mindre produktioner med små hold er en ToDo tavle en nødvendighed for at kunne bevare overblikket. Men med lidt ændringer til den traditionelle ToDo liste, kan den blive endnu mere brugbar, især i forhold til spilproduktioner.
Farvekoder
Der er opgaver der falder indenfor forskellige kategorier (2D, 3D, programmering osv.) – disse opgaver kan med fordel opdeles i farvekoder, så man til hver en tid kan se hvem der klarer sig godt (eller knapt så godt) med hensyn til opgaver.
Med Post-It notes, som kan købes i flere forskellige farver, kan man nemt og hurtigt klistre det op på væggen for at få en nem og let-overskuelig tavle.

Bedre kategorisering (aka Kanban-systemer)
I mere traditionelle ToDo lister plejer man at fjerne den opgave der er færdig, men istedet kan det anbefales at lave ialt tre søjler: ToDo, Under Udvikling, og Done.
Med denne lille ændring kan man lynhurtigt se hvem der laver hvad, hvornår og hvorfor. Og med ‘Done’ søjlen kan hele holdet se at spillet konstant udvikler sig, og bliver bedre og bedre – noget der er vigtigt for moralen.

Projekt-styring

Til de lidt større projekter (10+ mennesker), eller projekter hvor holdet er spredt ud over landet, kan det være nødvendigt at tage projekt-styrings software i brug.
Wikipedia har også en liste over forskellige projekt-styrings løsninger som er værd at tage et kig på, da der findes langt flere løsninger end vi kan liste her.
Wiki
Med dit projekts helt egen personlige Wikipedia (se her hvordan du sætter det op) kan alle i holdet nemt og hurtigt redigere sider og dele meget information med hinanden. Hvis man starter med at have regler for struktur og sørger for at alt informationen er tilgængelig og forbundet med hinanden kan det at have sin egen wiki være et uvurderligt værktøj
Basecamp
Basecamp er et web-baseret projekt-styrings værktøj. Selv om den billigste pakke koster 125,- om måneden, slipper man for at skulle tænke over ting som server, og det indeholder også et kunde-system, så selv når ens projekt er færdigt kan man blive ved med at det samme system.
Redmine
Redmine er ét af mange open-source, gratis alternativer til kommercielle projekter såsom Basecamp. Redmine har mange funktioner, bl.a. kan det integreres med versionskontrol (#versionskontrol), man kan lave tids-tabeller med komplet overblik over de forskellige opgaver. Desuden har det også integreret wiki, noget som især er brugbart i spillets tidlige faser for nemt at dele data.
Skype
Med Skype kan du mødes med dine spil-kollegaer og snakke om hvordan det går. Faste ugentlige eller daglige møder via Skype kan være med til at opretholde motivationen og følelsen af ansvar hos hver enkelt på holdet.

Whiteboards

Whiteboards går aldrig af mode, ihvertfald ikke hvis du spørger os. Det kan bruges til at hænge concept-art op på, men kan også bruges til hurtigt at skitsere nye idéer, pseudokode, eller generel information (eller sjove jokes).

Hvis du synes der er et værktøj som vi manglede at nævne, eller har erfaringer med de værktøjer vi har nævnt, så fortæl os om det via kommentarfeltet.