Delft Integraal
Total Page:16
File Type:pdf, Size:1020Kb
Delft Integraal Meer wetenschapsnieuws van de TU Delft Colofon DI-Archief Soldaten voor het virtuele slagveld . http://www.delftintegraal.tudelft.nl/info/index564f.html?hoofdstuk=Artikel&ArtID=2534 (1 van 10) [26-11-2009 14:28:45] Delft Integraal DOOR CHRISTIAN JONGENEEL Schermbeeld uit Quake III Arena, een zogenaamd first-person-shoot ’em up (FPS) spel, waarbij de Op de middelbare speler de wereld ziet vanuit het eerste persoons school stak Jan perspectief. Paul van Waveren al meer tijd in computerspelletjes dan in huiswerk. Toch liep het niet slecht met hem af, zelfs niet toen hij aan de universiteit bezig bleef om met wat vrienden computers aan elkaar te koppelen teneinde elkaar in een spelletje Doom Plattegrond uit Doom. In dit spel kan de speler op virtueel overhoop elk moment de plattegrond tevoorschijn halen om te knallen. zich te oriënteren. Hij kan overigens op de kaart Binnenkort alleen dat deel van de wereld zien dat hij al heeft verkend. studeert Van Waveren af op de kunstmatige intelligentie die hij voor het schietspelletje Quake III Arena ontwikkelde. Inmiddels werkt hij al bij de Amerikaanse spelletjesfabrikant id Software. http://www.delftintegraal.tudelft.nl/info/index564f.html?hoofdstuk=Artikel&ArtID=2534 (2 van 10) [26-11-2009 14:28:45] Delft Integraal Meestal heet Jan Paul van Waveren Jan Paul van Waveren, maar soms waart hij rond in duistere kelders, een onwaarschijnlijk groot wapen in zijn handen, schietend op alles wat beweegt. Dan heet hij Mr. Elusive. De laatste tijd heeft Mr. Elusive echter niet zoveel kills meer gemaakt. Dat komt niet alleen doordat hij als zesdejaars zijn studie Technische Informatica aan de TUD DELFT nu maar eens moet afmaken. Het komt ook doordat hij het aanbod van een baan door een Amerikaanse spelletjesfabrikant niet afwees. Nu programmeert hij de spellen die hij ooit speelde. Zoals iedere programmeur weet: spelletjes behoren tot de meest veeleisende software die er bestaat. Kantoorsoftware mag best wel eens een seconde haperen, bij spelletjes is dat uit den boze. In de eerste jaren van de middelbare school was Jan Paul gefascineerd door luchtkussenvaartuigen, ofwel hovercraft. Het eerste werkende exemplaar van de Engesle uitvinder Sir Christopher Cockrell (1911-1999) vloog in 1958. De vliegboten werden niet alleen voor militaire doeleinden ingezet, zo onderhielden de grote versies tot vorig jaar veerdiensten tussen Dover en Calais. Het was eigenlijk begonnen met een interesse in modellen van helicopters. Daarna ging Jan Paul radiografische bestuurbare autootjes bouwen. De autootjes hadden zo hun beperkingen, vond hij, en begon zicht toe te leggen op het ontwerpen van Hovercraft vaartuigen. Over een periode van twee jaar bouwde hij diverse modellen; eerst met elektromotoren, later met echte verbrandingsmotoren uit de modelbouw. Het waren gedegen studies en alles wees erop dat hij werktuigbouwkunde zou gaan studeren. Op gegeven moment kwam hij via een vriendje in aanraking met de PC (Intel 286), computerspelletjes en met programmeren. Het waren de spelletjes van zijn huidige werkgever id Software: Wolfenstein en Doom. Dit zijn zogenaamde first-person games . Je kijkt door de ogen van een commando, die met een bepaalde opdracht een doolhof wordt ingestuurd. Je taak is het doolhof te verkennen, geheime deuren op te sporen, verstopte schatten, wapens en andere voorwerpen op te sporen en iedereen die je tegenwerkt genadeloos af te maken. Die tegenstanders, meestal monsters genoemd, zijn niet echt intelligent: ze Meestal is een klein verschil in de textuur op de staan altijd op dezelfde plek te wachten en mikken niet erg nauwkeurig. muur een aanduiding van een geheime deur. Door op de wand te schieten, wordt de deur geopend. Natuurlijk kun je ook geraakt worden: een gezondheidsmetertje in beeld geeft aan of het niet weer eens tijd wordt een verbanddoos op te sporen. Doom was indertijd revolutionair. Niet alleen was de grafische kwaliteit beter dan alles daarvoor, fanatieke spelers konden zelf levels maken. http://www.delftintegraal.tudelft.nl/info/index564f.html?hoofdstuk=Artikel&ArtID=2534 (3 van 10) [26-11-2009 14:28:45] Delft Integraal Computerspelletjes van dit type bestaan namelijk uit verschillende onderdelen, bijvoorbeeld een onderdeel voor de grafische representatie van het doolhof en een ander voor de mogelijke bewegingen van de commando. Een level is een datastructuur die onder meer de vorm van het doolhof, de locatie van de schatten en de aantallen tegenstanders vastlegt. De makers van Doom besloten de specificatie van die datastructuur openbaar te maken. Daardoor kon iedereen zijn eigen doolhoven ontwerpen. Honderduizenden fanatieke spelers die de meegeleverde doolhoven uitgespeeld hadden, konden hun eigen exemplaren maken en die uitwisselen via internet. Zo werd Doom een spel dat je nooit helemaal ‘uit’ had. Skin ‘De laatste jaren van de middelbare school, heb ik voor Doom veel levels Voorbeeld van geheime kamers met schatten... gemaakt. Ik maakte er ongeveer één per week’, vertelt Van Waveren. ‘Eerst werden de levels via een Bullitin Board System (BBS) verspreid, later via het Internet. Toen kwam de opvolger, Quake 1. Die kon je veel beter via een lokaal netwerk of via het Internet met elkaar spelen dan Doom. Dat heb ik veel gedaan. Nu is de hele spelletjeswereld veel groter en commerciëler geworden, maar toen was het een relatief kleine Quake 1 gemeenschap. Ik zat bij een clan, een groepje spelers dat vaak samenspeelt. We hadden een eigen skin en zo.’ Skin, dat woord vraagt om toelichting. Een figuur in een computerspelletje bestaat uit een draadmodel. De vlakjes in dat model worden gevuld met een textuur, een patroon van kleuren. Al die vlakken samen, de skin, bepalen het uiterlijk van de figuur. In Quake 1 was het mogelijk zelf een skin te maken. Monsters met het hoofd van Microsoft-voorman Bill Gates werden al snel populair. ... en met wapens, ammunitie en verbanddozen uit ‘Regelmatig brachten we onze PC’s bij elkaar, dat waren inmiddels Pentium Wolfenstein. 133 machines’, gaat Van Waveren verder. ‘Alleen was je uren bezig om ze aan elkaar te koppelen. Dan konden we nog net een uurtje spelen voor het tijd werd om de zaak weer op te breken. Later, via het Internet, kon je meteen aan de slag. Dat had echter ook nadelen. Ten eerste krijg je een hoge telefoonrekening. Ten tweede kan een langzame verbinding met het Internet het spel moeilijk speelbaar maken. Daarnaast houd je het tegen ervaren spelers op Internet niet lang uit, als je niet goed geoefend hebt. Oefenen tegen de niet al te intelligente monsters die in Quake 1 ingebouwd zaten, had echter niet zoveel zin. Wat zou het toch mooi zijn als je kon oefenen tegen de computer, maar dan met slimmere tegenstanders, bedacht http://www.delftintegraal.tudelft.nl/info/index564f.html?hoofdstuk=Artikel&ArtID=2534 (4 van 10) [26-11-2009 14:28:45] Delft Integraal Van Waveren. Hij bleek niet de eerste. Op internet was een groot aantal bots te vinden. Bots (het woord is afgeleid van robots) zijn programmaatjes die intelligent gedrag vertonen. De programmaatjes die namens zoekmachines het internet afstruinen om informatie te catalogiseren heten ook bots. In computerspelletjes is een bot een programma dat zich gedraagt als een menselijke tegenstander, dat wil zeggen strategisch en tot op zekere hoogte onvoorspelbaar. Daardoor wordt het oefenen stukken realistischer. ‘Van de beschikbare artificiële spelers was er eentje duidelijk de beste’, aldus Van Waveren. ‘Toch gingen mij daaraan op den duur dingen opvallen. In de moeilijkste stand kon je er niet van winnen. De bot vertoonde weliswaar intelligent gedrag, maar hij schoot meteen raak op het moment dat hij tevoorschijn kwam. In een lagere stand schoot de bot minder nauwkeurig, maar deed ook meteen minder intelligente dingen.’ Diagram van de opbouw van Quake III Arena. Daarom wilde Van Waveren hem graag aanpassen, maar de broncode was niet beschikbaar. De broncode is de oorspronkelijke, voor mensen leesbare programmatekst voor die wordt omgezet in nullen en enen. ‘Toen ben ik begonnen om zelf kleine aanpassingen te maken aan het spel.’ ‘Een van de eerste aanpassingen was een zogeheten anti-camp modificatie. Sommige spelers blijven eindeloos op een gunstige plek hangen om anderen in de hinderlaag te lokken. Dat soort campers worden niet sportief gevonden. Mijn programmaatje gaf je een waarschuwing als je te lang op dezelfde plek bleef hangen. Ging je dan niet weg, dan teleporteerde hij je naar een andere plek. Of je kreeg een regenwolkje met bliksem boven je hoofd, dat je overal achtervolgde. Dat was niet goed voor de gezondheid.’ Omicron In 1997 had Van Waveren een bot af die een menselijke speler op een betrouwbare manier simuleerde. Omicron, zoals de bot heette, was in een mum van tijd populair. Binnen een paar uur na de release hadden 10.000 mensen hem van het internet geplukt! Na twee weken had hij bijna de top Beeld uit Quake I met Waypoints. Deze, voor menselijke spelers onzichtbare, aanwijzingen van populairste Quake-bots veroverd. Van Waverens programmeertalent viel worden door de bots gebruikt om de weg terug te op en hij kreeg een baan aangeboden door een Amerikaans softwarebedrijf. vinden. Die liet hij lopen – hij wilde eerst zijn studie afmaken. ‘Toen ik eraan begon, wist ik niet zoveel van kunstmatige intelligentie’, zegt hij. ‘Ik browste gewoon wat door de broncode van Quake, las er een beetje over en gebruikte mijn gezond verstand.’ Dat gezonde verstand bracht hem er toe gebruik te maken van waypoints, de digitale versie van Klein Duimjes kiezels. Een waypoint is een plek in het http://www.delftintegraal.tudelft.nl/info/index564f.html?hoofdstuk=Artikel&ArtID=2534 (5 van 10) [26-11-2009 14:28:45] Delft Integraal doolhof waarop de artificiële speler zich kan oriënteren. Zo verdwaalt hij niet tijdens zijn tocht door het doolhof. Het is slechts één van de dingen die de bot moet kunnen.