Visualizzazione post con etichetta Dinosauro. Mostra tutti i post
Visualizzazione post con etichetta Dinosauro. Mostra tutti i post

mercoledì 30 settembre 2020

Google Chome Easter Egg: Gioco del Dinosauro e relativi hack

Chi utilizza Google Chrome come browser sa bene che include una sorpresa (Easter Egg) che viene visualizzata quando non è disponibile una connessione ad Internet. In questi casi il browser visualizza un messaggio di errore accompagnato da un'icona ad 8 bit di un T-Rex. Premendo la barra spaziatrice si avvia un platform game a scorrimento continuo con protagonista il nostro dinosauro. Per accedere al gioco senza doversi disconnettere dalla rete basta digitare il seguente URL nella barra degli indirizzi:
chrome://dino
Il trucco funziona sia sulla versione desktop che su quella mobile del browser di Google.
Google Chrome, Easter Egg
FIG 1 - Google Chrome, Easter Egg


Hack del gioco del dinosauro
Vi piace vincere facile? Allora vediamo come barare al gioco del T-Rex.

Una volta avviato il gioco del dinosauro, cliccare, con il tasto destro del mouse, all'interno della finestra del browser e selezionare Ispeziona (o premere la combinazione di tasti CTRL+SHIFT+I).
Google Chrome, Ispeziona pagina web
FIG 2 - Google Chrome, Ispeziona pagina web

Selezionare Console.
Google Chrome, Console
FIG 3 - Google Chrome, Console


A questo punto non resta che digitare una delle seguenti istruzioni a seconda di ciò che vogliamo fare con il nostro dinosauro. Una volta digitata l'istruzione premere invio (nel caso a schermo fosse presente la scritta GAME OVER cliccare sull'apposito tasto per riavviare il gioco). Facendo un refresh della pagina la modifica che abbiamo effettuato verrà persa.

Per rendere invincibile il nostro dinosauro digitare
Runner.prototype.gameOver = function() { }
Google Chrome, Istruzione digitata in Console
FIG 4 - Google Chrome, Istruzione digitata in Console

Per ridurre la forza di gravità, saltare più in alto e rimanere in aria più a lungo digitare
Runner.instance_.tRex.config.GRAVITY = 0.1

Per aumentare la velocità (gli ostacoli vengono eliminati quasi completamente)
Runner.instance_.setSpeed(1000)

Per aumentare l'altezza del salto
Runner.instance_.tRex.setJumpVelocity(100)

Per bloccare lo scorrimento dello sfondo (corsa sul posto)
Runner.instance_.playingIntro = true

Per sbloccare lo scorrimento dello sfondo
Runner.instance_.playingIntro = false

Per impostare il punteggio da cui partire (ad es. 90000) digitare
Runner.instance_.distanceRan = 90000 / Runner.instance_.distanceMeter.config.COEFFICIENT



E' possibile utilizzare anche più istruzioni. Supponiamo di voler rendere il nostro dinosauro invincibile e voler, ad un certo punto del gioco, rimuovere l'invincibilità senza fare refresh della pagina e perdere il record. Le istruzioni da digitare sono le seguenti (dopo ciascuna istruzione è necessario premere invio):

var original = Runner.prototype.gameOver
Runner.prototype.gameOver = function() { }

La prima istruzione salva, all'interno della variabile original, l'impostazione originale che ci servirà in seguito per ripristinarla. Le seconda istruzione è quella che ci rende invincibili. Quando vogliamo rimuovere l'invincibilità basterà digitare la seguente istruzione seguita da invio
Runner.prototype.gameOver = original