**TASBot** on työkaluavusteisia speedruneja toistava, vuonna 2014 tehty robotti. Sen kehitti dwangoAC:n johtama tiimi. Robotti ottaa syötteenä videopeliohjainten näppäinpainalluksia ja lähettää ne signaaleina pelikonsolin, kuten Nintendo Entertainment Systemin tai Super Nintendo Entertainment Systemin, ohjainliitäntöihin.

TASBot tunnetaan siitä, että se on esiintynyt suosituissa nopeuspelaamistapahtumissa kuten Games Done Quick.

Historia
--------

Idea TASBotista tuli noin vuonna 2009, kun työkaluavusteisille speedruneille omistettu verkkosivusto *TASVideos* loi laitteen, joka pystyi lähettämään ennalta määrättyjä syötejonoja NES-konsoliin suoraan sen ohjainliitäntöjen kautta. Muutaman seuraavan vuoden aikana useampi eri ihminen kehitti samankaltaisia laitteita ja tekniikoita pelatakseen automaattisesti konsolipelejä suoraan laitteistojensa kautta. Allan Cecil, joka tunnetaan käyttäjänimellään dwangoAC, ensimmäisenä kehitti TASBotin näiden aiempien laitteiden konseptien, oppaiden ja kehittäjien avulla. Robottia kehittää ja ylläpitää tällä hetkellä tiimi.

TASBotin ensimmäinen versio, alkuperäiseltä nimeltään ROBBerry Pi, debytoi Awesome Games Done Quickissa (AGDQ) vuonna 2014, jossa se pelasi *Gradius*ta, *Mario Kart 64*:ää ja *Super Mario World*iä.

TASBot sisältää "uudelleentoistotaulun", joka ottaa syötteenä ennalta määrätyn näppäinpainallusluettelon Linux-koneelta ja käyttää sitä lähettääkseen signaalit suoraan pelikonsolin ohjainliitäntöihin. Näppäinpainallussyötelista kirjoitetaan ja tallennetaan manuaalisesti, ja se testataan emulaattorilla. Ohjaimen näppäinpainallukset pitää ajoittaa äärimmäisen tarkasti, jotkut livesuoritukset ovat epäonnistuneet ristikkäisten johtimien aiheuttamien pienten sähkömagneettisten häiriöiden seurauksena.

Nopeuspelaamiset
----------------

Debyytissään AGDQ:ssa vuonna 2014 TASBot pelasi *Super Mario Worldiä*. Hyödyntämällä mielivaltaisen koodin suorittamisohjelmointivirhettä suoritus salli pelaajien pelata *Pongia* ja matopeliä pelin sisällä. AGDQ:ssa 2015 TASBot käytti samaa haavoittuvuutta koodatakseen kopion *Super Mario Bros.* -pelistä *Super Mario Worldiin*, kirjoittaen pelin SNESiin ja sitten pelaamalla sitä. Se pelasi myös *Pokémon Rediä*, jonka aikana Twitchin keskusteluja syötettiin peliin reaaliajassa. Vuoden 2016 tapahtumassa TASBot "suoritti" *Super Mario Bros. 3*:n alle sekunnissa syöttämällä lähes 8 000 näppäinpainallusta sekunnissa. Samassa tapahtumassa se koodasi myös *Super Mario Maker*in kenttäeditorin SNESiin reaaliajassa sen suorittaessa peliä, mikä oli parannus edellisiin tapahtumiin, joissa peli pysäytettiin ja korvattiin toisella.

AGDQ:ssa 2017 demonstroituaan samankaltaisia pelisuorituksia aiemmilta vuosilta, TASBot näytti pelaavan *Super Mario 64*:ää ja *Portalia* sekä soittavan SNESillä Skype-puhelun. Tämä saavutettiin striimaamalla videota ja ääntä konsoliin, kun se ensin oli saatu haltuun *The Legend of Zelda: A Link to the Past* -pelin kautta. Kaistanleveys riitti 128×112-kokoisen videon näyttämiseen 10 hertsin kuvataajuudella. SGDQ:ssa vuonna 2018 TASBot pelasi *Celesteä*.

AGDQ:ssa 2019 TASBot-tiimi esitteli MASHBotin, uuden robotin, joka fyysisesti painelee ohjaimen näppäimiä sen sijaan, että se lähettäisi signaaleja ohjainliitäntään. Se oli alun perin suunniteltu toimimaan Game Boy Advance SP:n kanssa, mutta se debytoikin pelaamalla Nintendo DS -peliä *Super Scribblenauts* kosketusnäytön kautta. Vuonna 2020 tiimi laittoi TASBotin pelaamaan Nintendo Switchillä. Tässä tapauksessa lähdekoodia ei kuitenkaan julkaista, jotta vältetään lailliset ongelmat Nintendon kanssa.

Lähteet
-------

1. 1 2  Cecil, Allan. "Meet TASBot, a Linux-Powered Robot Playing Video Games for Charity", *Linux Journal*, 14.11.2018.
2. 1 2 3  Orland, Kyle. "Pokémon plays Twitch: How a robot got IRC running on an unmodified SNES", *Ars Technica*, 5.1.2015.
3. ↑  Farokhmanesh, Megan. "Bizarre Super Mario World hack turns the game into Pong, Snake", *Polygon*, 14.1.2014.
4. ↑  Kollar, Philip. "Watch a robot tear apart and rebuild *Super Mario World* and Pokémon", *Polygon*, 5.1.2015.
5. ↑  Orland, Kyle. "How to beat *Super Mario Bros. 3* in less than a second", *Ars Technica*, 12.7.2016.
6. ↑  Orland, Kyle. "How a game-playing robot coded 'Super Mario Maker' onto an SNES—live on stage", *Ars Technica*, 11.1.2016.
7. ↑  Orland, Kyle. "How a robot got Super Mario 64 and Portal 'running' on an SNES", *Ars Technica*, 15.1.2017.
8. ↑  Rad, Chloi. "SGDQ's Most Mindblowing Speedrun Wasn't Humanly Possible", *IGN*, 10.7.2018.
9. ↑  Orland, Kyle. "Meet MASHBot, the touchscreen-tapping, Nintendo DS-playing robot", *Ars Technica*, 15.1.2019.
10. ↑  Orland, Kyle. "Inside TASBot’s semi-secret, probably legal effort to control the Nintendo Switch", *Ars Technica*, 11.1.2020.

Aiheesta muualla
----------------

* Virallinen verkkosivu