Taloussanomat

Uskomaton suoritus: Hakkerit veivät tuoreen hittipelin 25-vuotiaaseen konsoliin

13.1.2016 21:05 Pelkällä peliohjaimella klassikkopelin muistiin kenttäeditorin pystyttävä legobotti ei ehkä ole hyödyllinen, mutta sitäkin viileämpi homma.

Nintendo julkaisi viimesyksynä Super Mario Maker pelin Wii U -pelikonsolilleen. Peli päästi ensimmäistä kertaa tekemään omia Mario-kenttiä ja jakamaan niitä muulle maailmalle.

Nyt pelejä pelaavan, legoista kootun TASBot-robotin luonut hakkeriyhteisö on koodannut lennossa pelin ydintoiminnallisuuden 25 vuotta vanhalle Super Nintendo Entertainment System (SNES) -pelikonsolille julkaistuun klassiseen Super Mario Worldiin. TASBotin saavutus esiteltiin tämänvuotisessa Awesome Games Done Quick -tapahtumassa ja siitä kertoi Ars Technica.

TASBot on pieni legorobotti, joka osaa käyttää SNESin peliohjainta. Koko pelin hakkerointi tapahtui peliohjaimen napinpainalluksia tarkalla ajoituksella syöttäen. Mitään muokkauksia ei tehty pelikonsoliin tai sen ohjaimeen tätä varten.

Jotta TASBot voisi muuttaa peliä lennossa, sen pitää voida suorittaa haluamaansa ohjelmakoodia yhtä aikaa pelin ollessa käynnissä.

Super Mario Worldin haltuunotto onnistuu myyrävihollisiin liittyvän tempun avulla: Oikea-aikaisella tauottamisella juuri, kun myyrä on osunut pelaajaan, saadaan pelin muistissa aikaan tarvittava virhe, joka mahdollistaa sen, että peli tulkitsee TASBotin seuraavat ohjainpainallukset binäärikoodina.

Kun laite ja siinä pyörivä peli on näin saatu ohjelmoitavaksi, TASBot kirjoittaa pelin muokkaamiseen tarvitut jipot laitteen vapaana olevaan muistiin. Super Mario World käyttää SNESin resurssit tehokkaasti, joten temppu piti mahduttaa erittäin pieneen tilaan.

Käyttämällä juuri tiettyä Super Mario All-Stars -kokoelman versiota Super Mario Worldista hakkerit saivat käyttöönsä peräti kahdeksan kilotavua vapaata muistia, jota normaalisti käytetään pelitilanteen tallennukseen. Tänne TASBot kirjoittaa tarvitsemansa muutokset ohjelmaan.

Jotta tasohyppelyyn saatiin lisättyä tasohyppelyeditori, piti montaa pelin normaalia toiminnallisuutta muuttaa lennossa. Normaalisti Mario kuolee vihollisiin osuessaan, joten editoria varten pelihahmo piti kikkailla pois ruudulta näkyviltä, että kentän muokkaaminen ei jatkuvasti katkeaisi vihollisiin.

Myös pause-nappulan toiminnallisuus piti kaapata ja koodata uusiksi niin, että se palauttaa muokattavan kentän alkutilaansa. Samaan tapaan piti estää kentän läpäisystä tai Marion kuolemasta aiheutuva pelin pääkartalle siirtyminen.

Toisaalta hakkerit pyrkivät myös käyttämään mahdollisimman suurta osaa pelin omasta toiminnallisuudesta. Esimerkiksi pelin fysiikkamallinnus, ruudun vieritys ja kentän erilaisten elementtien piirtämistä ruudulle käytettiin sellaisenaan myös editorissa.

Muistin vähyyden lisäksi hakkerit joutuivat temppuilemaan niukan suoritintehon kanssa. Jos uusi koodi veisi liikaa aikaa suorittimelta ja aiheuttaisi peliin viivettä, se pilaisi samalla TASBotin sekunnin murto-osien tarkkuudella tapahtuvien napinpainallusten ja itse ohjelmakoodin välisen synkronoinnin.

Koko homma esiteltiin livenä lavalla yleisön edessä ohjelmakoodilla, joka viimeisteltiin vasta minuutteja ennen lavalle astumista. Katso alta video huikeasta taidonnäytteestä.

Jutun kirjoitti: Digitoday

Teksti on lisensoitu Creative Commons Nimeä-Ei muutoksia-Epäkaupallinen -lisenssillä.

Kommentit (6)

Sivut: 1
EdellinenSeuraava

Anonyymi
Bullshit, sanon minä. Uskoiko joku tuon?
Anonyymi: Aprillia 13.1.2016 22:38

Anonyymi
Eipä tuo ihan Wii U:n Super Mario Makeria vastaa, mutta todella upea suoritus joka tapauksessa! On mukava nähdä että maailmasta löytyy vielä edes harvoja osaajia, jotka kykenevät tekemään näinkin laajoja asioita vain 8 kilon muistilla!

Pääosinhan ohjelmointipuolella kärsitään todella pahasta taantumasta; prosessoritehot ja muistit lisääntyvät, mutta ohjelmat toimivat aina vaan hitaammin, koska käytetään Javan ja .netin tyyppisiä roskakieliä, jota ei voi enää edes kutsua oikeaksi ohjelmoinniksi.
Anonyymi: Arvostan 13.1.2016 23:42

Anonyymi
Täh, en tajunnut sanaakaan. Suomea kiitos
Anonyymi: whatta 14.1.2016 0:31

Anonyymi
Ei ole legoista tehty, vaan alkuperäistä nintendo-krääsää jonka taival jäi lyhyeksi. R.O.B. on sen vehkeen nimi.

Voisi artikkelin kirjoittanut journalisti edes tehdä kuvahaun googlessa tms.
Anonyymi: Samperi 14.1.2016 6:36

Anonyymi
Google translate uutinen?

Ainakin hyvin pökkelöä suomenkieltä, olisiko mahdollista saada linkki alkuperäiseen uutiseen niin sen voisi jopa lukeakin?
Anonyymi: GoogleTranslate 14.1.2016 12:02

Rekisteröitynyt käyttäjä
olisiko mahdollista saada linkki alkuperäiseen uutiseen niin sen voisi jopa lukeakin?
arstechnica.com/gaming/2016/01/how-a-game-playing-robot-coded-super-mario-maker-onto-an-snes-live-on-stage

Hyvä juttu tämä minusta oli, toivon lisää tällaisia DT:hen. Toki suomen kielä voi aina paremmaksi hioa, mutta luulen ymmärtäneeni tästä tarpeeksi.
Rekisteröitynyt käyttäjä: Katastrofolos 15.1.2016 10:43
Sivut: 1
EdellinenSeuraava
Ohjeet: Pysy aiheessa ja kirjoita napakasti. Muista, että haastateltavilla, kanssakeskustelijoilla ja toimittajilla on oikeus omaan, eriävään mielipiteeseen. Ole kohtelias, äläkä tarkoituksella provosoi tai hauku muita keskustelijoita. Taloussanomat varaa oikeuden poistaa asiattomat viestit.
Lue koko keskusteluetiketti
Varaa oma nimimerkkisi Taloussanomien uutiskommentointiin rekisteröitymällä käyttäjäksi tai kirjaudu sisään.

Rekisteröityminen ja nimimerkin varaus eivät ole pakollisia.

Nimimerkissä saa käyttää ainoastaan kirjaimia ja numeroita. Sen minimimitta on viisi merkkiä ja maksimi kaksikymmentä merkkiä.
Olet kirjautunut sisään, muttet ole vielä valinnut omaa, muille käyttäjille näkyvää nimimerkkiäsi. Varaa nimimerkki omaksesi kirjoittamalla se nimimerkki-kenttään.

Varauksen jälkeen muut eivät voi käyttää nimimerkkiäsi ja se näkyy automaattisesti kaikissa kirjoittamissasi viesteissä.

Huomioithan, ettei nimimerkkiä ei voi muuttaa jälkikäteen.

Nimimerkissä saa käyttää ainoastaan kirjaimia ja numeroita. Sen minimimitta on viisi merkkiä ja maksimi kaksikymmentä merkkiä.

Uusimmat uutiset

Digiyesterday


2013

Kolme vuotta sitten

America’s Cup ratkeaa tänään: Ellison pinnasi Oracle Worldistä

25.09.2013 Ohjelmistotalo Oraclen pääjohtaja Larry Ellison pinnasi San Franciscossa meneillään olevan Oracle Open Worldin päätilaisuudesta tiistaina. Hänellä oli siihen hyvä syy.

.