Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- TASing – Living life frame by frame
- Vad är en Tool Assisted Speedrun? Precis som det låter: En speedrun gjord med assisterande hjälpmedel. Först och främst begreppet ”Speedrun”. En speedrun är en genomspelning av ett spel där målet är att klara det så snabbt som möjligt. Det finns även andra slags speedruns som en så kallad ”Mc Donald’s speedrun”, där det istället går ut på att åka till Mc Donald’s, göra en beställning, åka hem och sedan äta upp det så snabbt man kan. Men det är en annan historia.
- I alla fall: En speedrun, att klara ett spel så snabbt som möjligt. Detta fick sin stora början i och med att Doom släpptes i slutet av 1993. Spelet hade en timer på varje bana där man kan se hur snabbt man har klarat den. Dessutom fanns det inlagda funktioner som att man kunde spela in demo-fil på sin genomspelning. Denna film kunde man sedan skicka till andra och låta dem kolla hur snabbt man klarade en bana. Det motiverade andra att förbättra sina tider för att slå sina motståndare. Så småningom startades Compet-n, hösten 1994, den första hemsidan för speedrunning, där alla bästa tider på Doom samlades.
- Så småningom kom det modifikationer till spelet. Tilläggsprogram som lät spelaren använda sig av hjälpmedel så som att spela in i slowmotion och spela tillbaka för att rätta till misstag som gjordes under inspelning. Detta kom sedan att kallas för en Tool Assisted Speedrun, vilket det har kallats sedan 1999.
- Det var däremot inte Doom som var skyldig till att speedruns blev känt på internet, i varje fall inte de Tool Assisted Speedruns. I slutet av 2003 började en film cirkulera på internet, med inledningstexten ”super mario bros 3 time attack video” där Super Mario Bros. 3 klarades på 11 minuter. En bedrift som för många var helt otänkbar och omänsklig. Folk började, mig själv inräknad, spekulera om att han använde fusk av något slag. Och på sätt och vis så gjorde han det. Det var en Tool Assisted Speedrun, vilket för det många var den första speedrunnen de såg, i alla fall i de tidigare åren. Jag själv såg den, förmodligen någon gång under hösten 2004. Tillsammans med min gode vän Jakob under en rast i skolan. Jag blev då väldigt nyfiken på speedruns och ville gärna se mer. Kollade runt på internet och fann Speeddemosarchive, eller SDA. Där man sedan 2004 har kunnat skicka in sina speedrunrekrod för att visas upp för resten av världen. För närvarande har sidan speedruns på ca 650 olika spel till blandade konsoler. De är alla inspelade med en vanlig konsol och väldigt imponerande att kolla på. Så är man sugen så rekommenderar jag att man kollar in deras hemsida. Jag skickade själv in en speedrun dit hösten 2006. Den skulle jag däremot inte rekommendera att kolla på... Främst på grund av att jag själv inte är nöjd med den.
- I alla fall. Det var som sagt många fler än jag som reagerade på speedrunnen på Super Mario Bros. 3. En av dessa var Joel ”Bisqwit” Yliluoma som ville veta mer om hur filmen gjordes. Han fann då att den spelades in med hjälp av NES-emulatorn Famtasia. Strax därefter skapade han sin egen hemsida, kallad NESvideos, där han själv började göra filmer på samma sätt som Morimoto. Så småningom var det fler personer som fann sidan, blev intresserade i att göra egna filmer och sidan expanderades. Sidan döptes senare om till TASvideos.org, vilket den nu har gjort de senaste åren. Den har idag över 850 st publicerade filmer på olika spel. Och allt eftersom fler emulatorer görs, däribland GameCube och Wii emulatorn Dolphin, utökas möjligheterna för vilka spel man kan göra Time attacks på.
- Nu har jag gått igenom en massa historia så vi kanske ska gå till den lite mer intressanta delen av det hela. Hur görs en TAS? En av anledningarna till att dem görs är att många vill veta hur snabbt ett spel egentligen kan klaras när allting är helt perfekt, vart går egentligen gränsen? För att komma dit räcker det inte med att köra det på en vanlig konsol i den hastighet som spelet är gjort för. Eftersom inga mänskliga reflexer är så perfekta för den precision som krävs. Det är där emulatorerna kommer in. Med hjälp av dem kan man spela spelet i den lägsta möjliga hastighet, något vi kallar för frame advance. Helt enkelt att man avancerar en frame i taget när man spelar in sin speedrun. Spelen är i regel 60 frames per sekund. Och för var och en av dessa frames, så väljer man vilken knapptryckning man ska göra. På det viset kan man välja exakt när ens karaktär ska hoppa, hur tidigt man kan göra ett val i en meny och så vidare.
- Istället för att stå och prata om hur man gör så är det nog smidigare att jag visar det istället. Och som ni kanske har anat från affischen, de som har sett den, så tänker jag i huvudsak använda mig av Super Mario Bros. 3. Av tre anledningar. Det var den första välkända TASen, spelet är känt och populärt samt att jag själv har gjort en TAS på spelet så jag har lite vetskap om spelet.
- Att sega ner spelet är givetvis inte det enda hjälpmedlet man har. En av de mer huvudsakliga är save states. Med hjälp av save states så kan man spara spelet precis där man är för att sedan ladda det när man känner för det.
- *Visa lite och berätta om det*
- Nu har vi egentligen det vi behöver för att kunna göra en acceptabel TAS. Fortfarande är det många som inte använder sig av några andra funktioner än dessa. Men om man vill ha perfektion så räcker oftast inte det här. Ibland annat kan det vara bra att veta exakt hur snabbt ens karaktär rör sig, vilken position man har, hur mycket liv bossen har kvar osv. Då får vi använda oss av RAM-adresser. Nu har jag ingen aning om hur det fungerar när man programmerar spel, så jag säger förmodligen något som inte stämmer helt ut, så jag ursäktar mig för det.
- RAM-adresser i alla fall. För att allting ska fungera bra i ett spel så behövs det adresser som talar om hur allting ska vara och bete sig. En adress kan tala om var karaktären är medan en annan säger hur snabbt du rör dig. Dessa kan man, oftast, hitta väldigt smidigt i emulatorn där funktionen finns inbyggd.
- *Visa hur och förklara*
- Nu när vi har en adress för farten och en för x-positionen, så blir det lättare att jämföra, testa och veta exakt hur snabbt något är. Testar vi nu att röra oss framåt med några få frames, märker vi att hastigheten ökar för Mario, men han har inte synligt förflyttat sig framåt. Skärmen kan bara visa vilken pixel karaktären står på, eftersom det inte finns något mindre än en pixel. Däremot kan spelet känna igen det. Dessa kallar vi för subpixlar. Antalet subpixlar per pixel varierar från spel till spel, beroende på om det är ett enbytesvärde eller två byte. I Super Mario Bros. 3s fall är det 1 byte, 256 subpixlar/pixel. Hastighetsadressen i många spel motsvarar hur många subpixlar karaktären rör sig varje frame. I det här spelet motsvarar däremot hastigheten 1 att man rör sig 16 subpixlar varje frame. Med hjälp av både X-positionsadressen samt x-subpixeladressen får vi ett mer exakt värde på var man befinner sig på skärmen. Jakob har tjatat på mig hela tiden att jag måste prata om subpixlarna, så jag hoppas att han är nöjd i alla fall. Själv så tycker jag inte om dem, för det innebär att det finns ännu mer att behöva optimera när man TASar. Och även om man har optimerat allt perfekt med subpixlarna, så är det inte säkert att man sparar någon tid i slutändan i alla fall. Det finns gånger som jag har kämpat med något i ett flertal timmar, för att bara spara några subpixlar, sen visade det sig att allting var gjort i onödan. Då har man i alla fall fått veta att det inte var värt det, men ja.
- När man jobbar med en TAS kommer man förmodligen att stöta på något moment som är turbaserat. Fiender som rör sig, bossar som gör fel attack eller vad det nu kan vara. Många av dessa moment är möjliga att ändra på. I Super Mario Bros. 3 till exempel. I de flesta världar finns en Hammer Bros på kartskärmen som rör sig efter varje klarad bana och inte förrän han har gått klart kan jag komma till nästa bana. Alltså måste jag få honom att gå så kort väg som möjligt på kartan. För närvarande står han... Han kan då välja att gå ett steg till vänster eller att gå höger mot slottet. Men eftersom han inte kan stå stilla vid slottet måste han gå tillbaka till där han kom ifrån, vilket då hade tagit honom två steg som hade blivit långsammare.
- I just SMB3 fungerar det väldigt simpelt att manipulera honom. Vilken väg han går beror på vilken frame som man klarar banan på. Ibland kan man då behöva vänta några frames att klara banan för att få det resultatet man vill ha. Detta är dock en väldigt simpel typ av manipulation. I vissa spel kan man komma in i ett rum där ett flertal fiender behöver dödas för att kunna komma vidare till nästa rum. Fiender som kan spawnas på olika ställen i rummet, göra olika attacker och röra sig annorlunda. Det är vid sådana tillfällen som manipulationen kan bli ett problem.
- *öppnar upp Zelda Oracle of Seasons*
- När man gör en TAS, och även en vanlig speedrun för den saken, så måste man ha en planering för det hela. Man måste planera vilken väg man ska ta igenom spelet, om man samla pengar för att köpa något, om ens ammunition räcker och så vidare. I vanliga plattformsspel, så som SMB3, behövs vanligen ingen större planering. Vilket däremot är en väldigt viktig del i spel som Pokémon. Det finns en TAS som arbetas på just nu där målet är att fånga alla 151 första Pokémon. Då flera Pokémon kan dyka upp på olika ställen så måste man testa och gå igenom alla ställen och få fram var det är snabbast att fånga en viss Pokémon. Man planerar även vilka Pokémon som man kommer att använda, vilka tränare man måste slåss emot, vilken level man kommer ha och vilka attacker. Allt för att kunna veta vilket resultat som kommer att bli det bästa. Trots hur noga ens planering är så kan det vara så att man hittar förbättringar allt eftersom man jobbar med sin TAS, vilket ibland kan resultera i att man behöver göra om stora mängder färdigt material. Resultatet kanske hade blivit 10 frames snabbare, då kan det kännas ovärt att göra om veckors, kanske månaders arbete för att spara en så, för många, obetydlig summa. Om den som gör TASen inte anser att det är värt det sätter man det bara som en möjlig förbättring inför en eventuell förbättring av TASen. Men det finns alltid galningar som gör om allting oavsett hur lång tid det kommer att ta
- Det finns däremot en metod för att fixa fel man gjort i sin TAS. Det enda som egentligen sparas i emulatorfilmen när man spelar in, är vilka knapptryckningar man gör. För att kolla på en TAS måste man därför öppna upp emulatorn med exakt samma rom-fil som den spelades in på. Och därefter läggs bara knapptryckningarna till i spelet. Om man då har möjlighet att öppna upp filen så kan man smidigt modifiera sin TAS. Alla spel har dock inte den möjligheten. När man gör en modifikation så kommer man förmodligen att ändra ett flertal av RAM-adressen. Däribland den som styr manipulationen. Om det skulle vara fallet är det förmodligen kört, om man har otur.
- Nu har jag förmodligen glömt något viktigt moment att prata om, men det kanske jag får någon fråga om sen så det tar vi då.
- Folks reaktioner på Tool Assisted Speedruns är varierade. En del uppskattar det för vad det är, vissa jämför ofta med vanliga speedruns och tycker att TAS är rent fuskande. Vad gäller ”fuskbiten” håller jag däremot inte med. Att fuska är att skriva in koder, modifiera spelet eller att säga att det är en riktig speedrun när det i själva verket är en TAS. Som jag nämnde innan så är det enda som sparas i en emulatorfil är vilka knapptryckningar som görs. Man kan däremot använda ett fusk när man spelar in filmen, men för att filmen ska spelas upp korrekt i emulatorn måste den som kollar på den använda samma fusk. Alla rom-filer är inte heller tillåtna, utan man måste använda de officiella versionerna. Så det går heller inte att använda en hackad version av spelet, för det hade märkts även det. Jag tror nog främst att mångas reagerar så för att de inte vet vad det kollar på för något. Många känner helt enkelt inte till vad en TAS är och hur dem görs.
- Om man nu själv är intresserad av att göra en TAS, vad ska man börja med då? Första steget är förmodligen att kolla in hemsidan, TASvideos.org. Där finns det en del information samt att man kan kolla på alla de filmer som finns där. Sen är det egentligen bara att börja leka runt med ett spel för att öva sig. Emulatorer som används finns länkade på hemsidan. Man måste vara medveten om att om man vill göra en optimerad TAS så krävs det en mängd tålamod och tid. Man måste försöka tänka outside the box och testa nya idéer och strategier. Försök testa det som verkar helt ovettigt för det kan komma till att vara en bättre lösning på ett problem.
- Givetvis kan man bara göra det för skojs skull utan att visa upp det för någon annan det är trots allt så de flesta börjar.
- Personligen tycker jag det är en kul sak att sysselsätta mig med. Och det finns ingen högre lycka än att ha kämpat länge med ett parti i spelet för att spara en enda frame i slutändan. Sen är slutresultat ofta kul att kolla på. Har man jobbat med ett projekt i några månader och äntligen blir klar så är man väldigt nöjd över det man har åstadkommit.
- Jag tänkte nu avsluta genom att visa en liten introduktionsfilm för TASes. Jag funderade först på om jag skulle använt den som inledning, men jag tyckte att den passade bättre som avslutning. Efter filmen får de som vill gärna ställa frågor av olika slag. Jag hoppas i alla fall har någon fundering på något jag inte har nämnt om, eftersom det finns en hel del mer att prata om.
- Jag tackar i alla fall för att jag fick komma hit och hoppas att det fanns något intressant att lyssna på. Och lycka till till de som eventuellt vill testa på det här. Tack.
Advertisement
Add Comment
Please, Sign In to add comment