Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Related, a self destroying game I built some time ago: https://void4.github.io/ The yellow dot is the instruction pointer, the red dots represent the program memory. If you hit the ball just right you can introduce graphic glitches. Most times, the instruction pointer gets out of bounds however.


That's kinna like the story about the guys who coded a Tron lightcycle game on the Apple II. Failure to properly bounds-check the lightcycle position meant that the cycles could be driven off screen, corrupting main memory and the game code itself -- much like what happened in the move Tron.



One of the most brilliant applications of this concept is the Pokémon Yellow Total Control Hack: http://aurellem.org/vba-clojure/html/total-control.html

Similarly, arbitrary code execution in Super Mario World: https://www.youtube.com/watch?v=OPcV9uIY5i4

It's like transforming a chess game into Mikado just by playing it.


One thing I've often wanted to do, but didn't have the time to, was to take Turing Drawings: https://github.com/maximecb/Turing-Drawings ( faster asm.js variant here: https://github.com/darius/Turing-Drawings ), which runs a random Turing machine to generate abstract art and put the machine description in the image itself, so it could self-modify.


The links you gave are fascinating! Believe it or not, I have done something like that, too: http://imgur.com/gallery/sRUrI


To be fair, that seems to require turning off in the middle of a save. Not entirely by the rules of the game.


I was looking through the source and learned that Python's modulo operator is based on floor-division (rather than round-toward-0 division like in C). In case anyone cares how Python actually does in in C, for small ints its defined at https://github.com/python/cpython/blob/master/Objects/longob...


This is really cool and I'd love to play with it, but my eyesight isn't good enough to hit the ball more than once at a time. Is there anyway you could post an upscaled version?


Updated it. If it's still too small, just right click, inspect element and choose a custom width and height.


CTRL-[+] in your browser?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: