Difficulty: ❄ ❄ ❄ ❄ ❄
Wombley has recruited many elves to his side for the great snowball fight we are about to wage. Please help us defeat him by hitting him with more snowballs than he does to us.
Silver trophy
singlePlayer=true
Remembering the Snowball Fight challenge from Holiday Hack 2023, I quickly found the singlePlayer = false parameter in the url and changed it to singlePlayer = true. That allowed to play solo against Wombley.
The lame solution
I forgot tha game open…and somehow when I noticed I already had the silver trophy… I guess my fellow snowballers did manage to beat Wombley :)
The actual solution
Trying to alter parameters in different parts of phaser-snowball-game.js I wasn’t able to immediately tweak anything relevant aside from setting this.throwRateOfFire = 1; so to shoot faster. I then started analyzing the websocket messages being exchanged and I eventually noticed the message related to throwing a snowball:
1 | { |
That blastRadius triggered my curiosity so I went ahed and ovverode it in phaser-snowball-game.js adding some 0s value using developer tools:
This trick basically destroyed the scenery, allowing to easily shoot Wombley while remaining in a safe zone and even behind the enemy lines:
Gold trophy
While trying to figure out how to achieve the gold trophy, someone dropped a MOASB on my game…and then I knew what I was after 😊
Looking for references to “moasb” I could find a function to send the message using ws:
1 | this.moasb = () => { this.ws.sendMessage({ type: 'moasb' }) } |
At that point I thought “why should I shoot snowball if I can shoot MOASB?” and I modified the phaser-snowball-game.js again:
Dropping a MOASB was a very interesting thing to do:
What is a MOASB anyway?
I actually didn’t ask myself but I was pleasantly surprised when I spoke to Dusty Giftwrap again and he told me the meaning of MOASB: it’s the ‘mother-of-all-snow-bombs’.