Slutrapport Super Mario klon Tomas Wallin tw222bv WP11 2012-06-03 1
Abstrakt Denna rapport handlar om mitt arbete i krusen Individuellt Mjukvaruprojekt. I denna rapport tänkte jag gå igenom hur projektet gick, samt de positiva och de negativa under projektets gång. De sa att man skulle göra något som man tyckte är roligt, så det man arbeta med vart lättare för en, och det vart det. Så därför valde jag att testa på spelprogrammering, det blev en klon av spelet Super Mario. Spelet skapades i XNA med programmeringspråket C#. I stort sett så har hela projektet gått ganska bra, men har haft motgångar nästan hela tiden, men det gjorde inte mig något då det var så roligt att programmera. Det var nog för att man fick resultat ganska snabbt när man gjorde någon liten ändring. 2
Innehållsförteckning Inledning - sida 4 Positiva erfarenheter - sida 4 Negativa erfarenheter - sida 4 Sammanfattning - sida 5 3
Inledning/Bakgrund När jag skulle börja arbeta med mitt projekt, så hade jag väldigt mycket problem att bestämma i vilket språk jag skulle vilja programmera i. För jag hade väldiga problem med C#-kursen vi hade innan och jag kände att jag inte riktigt hängde med där, även JavaScript så hade jag problem med det också, och jag ville göra det i något utav dom två så jag kanske lär mig lite mer av det programmeringspråket. Men tillslut så vart det C# med XNA och jag visste precis vilket spel jag ville göra, det blev en Super Mario kopia då en släkting till mig har gjort det tidigare och tänkte om det skulle gå åt skogen så kanske han rycker in och hjälper till. I början av projektet så funderade jag mycket över utseendet, om det ska vara likt nån känd bana och vilken Super Mario det ska vara, om det ska vara Super Mario Bros 3 eller från något annat Super Mario spel. Men det vart inte riktigt som jag hade tänkt mig. Positiva erfarenheter Jag visste redan till en början att det skulle bli en utmaning då jag har haft problem med programmeringspråket tidigare och att jag aldrig har hållt på med spelprogrammering. Men man hittade guider snabbt på internet som gjorde att man fick resultat snabbt och gjorde så det gick snabbt till en början att få dit en gubbe som man kunde styra med rörliga animationer. Sen provade man även på att skriva lite kod själv och lösa problem/buggar och det gick även ovanligt bra oftast. Projektet har gett mig många nya kunskaper inom programmering och förstår lite mer hur det fungerar då jag nästan inte hade någon aning tidigare om hur det funka. Jag känner även att i början av projektet så var jag inte så duktig på att planera och jag kände att det inte vart så bra resultat då heller så jag skärpte till mig, vilket gjorde att för en gångs skull så vart jag klar med saker i tid. Resultatet vart till och med bättre än vad jag hoppades på då jag trodde att allt skulle gå åt skogen. Negativa erfarenheter Eftersom jag inte hade tidigare erfarenhet av spelprogrammering så tyckte jag att det var svårt i början med planering och så då jag inte riktigt visste hur jag skulle gå till väga. Jag hade även problem med att få en bra struktur på hela spelet med olika klasser och så då min erfarenhet inte var den bästa. Det känns även som att alla mina lösningar är nödlösningar, som att jag har dragit massa silvertejp överallt bara för att få det att funka vilket inte är så bra heller. Sen hade jag väldiga problem med att hitta en bra lösning på collision, så man kunde krocka med olika föremål, det tog upp till fyra veckor att lösa, och det är fortfarande inte en bra lösning men det får duga då det funkar. Eftersom jag inte hade sån bra struktur på det hela så planerade jag in att se på en del föreläsningar igen med Mats i kursen C# som vi hade tidigare för att få minnet tillbaka på det hela, vilket jag inte hann med pga collision problemet så vart jag även sjuk i lite mer än en vecka, det orsaka så jag låg still i sängen väldigt länge och inte kunde arbeta. Jag har ändå lärt mig väldigt mycket när jag tittade på tutorials på internet på olika forums och på youtube men felet på de allra flesta tutorialsen var att de programmera inte på rätt sätt, utan la in allt i Game1 klassen klassen som man startar med i XNA vilket var fel. Det jag kunde ha gjort var att planera lite bättre och lägga mer energi då jag tyckte att det var så lätt i början med att implementera figurer och objekt, sedan kom collision och förstörde allt. 4
Sammanfattning Jag känner mig mestadels nöjd med mitt val av projekt då jag var väldigt intresserad av det sen länge, även att det var roligt att jobba med då det mesta gick åt pipan, även resultatet är jag mycket nöjd över, kanske inte över själva kodningen men att det funkar. Detta var mitt första spelprogrammeringsprojekt, så det känns som att man har lärt sig mycket samt blivit mer fast vid programmering. Att lära sig XNA har varit underhållande och lärorikt, absolut nånting som jag skulle vilja fortsätta med och söka någon kurs eller likande angående XNA, även jobba med om det är möjligt att hitta nån som vill ha en, efter utbildning kanske. I nuläget har jag inga planer på att fortsätta på detta projekt,hade tänkt att skorta detta och börja om på nytt på ett annat spel. Då ska jag försöka göra det mer grundligt och rätt programmerat, göra det lite mer eget också istället för en kopia av något. Detta projekt har innebärt många nya moment för mig och det har varit roligt, lärorikt, men man har även blivit ganska frustrerad då collision aldrig funka som man ville. Utan detta så hade jag nog gett upp hoppet om programmering då jag har tyckt att det har varit svårt innan, men nu ser man ljuset i tunneln och ger en kraft att fortsätta att lära sig mer om programmering. Även söka vidare på kurser som man kanske aldrig har tänkt på så man lär sig om det man tycker är roligt riktigt. 5