Sunday, 1 October 2023

New best story on Hacker News: Show HN: RISC-V assembly tabletop board game (hack your opponent)

Show HN: RISC-V assembly tabletop board game (hack your opponent)
377 by throwaway71271 | 46 comments on Hacker News.
I made this game to teach my daughter how buffer overflows work. I want her to look at programs as things she can change, and make them do whatever she wants. Building your exploit in memory and jumping to it feels so cool. I hope this game teaches kids and programmers (who seem to have forgotten what computers actually are) that its quite fun to mess with programs. We used to have that excitement few years ago, just break into softice and change a branch into a nop and ignore the serial number check, or go to a different game level because this one is too annoying. While working on the game I kept thinking what we have lost from 6502 to Apple Silicon, and the transition from 'personal computers' to 'you are completely not responsible for most the code running on your device', it made me a bit sad and happy in the same time, RISCV seems like a breath of fresh air, and many hackers will build many new things, new protocols, new networks, new programs. As PI4 cost increases, the esp32 cost is decreasing, we have transparent displays for 20$, good computers for 5$, cheap lora, and etc. Everything is more accessible than ever. I played with a friend who saw completely different exploits than me, and I learned a lot just from few games, and because of the complexity of the game its often you enter into a position that you get surprised by your own actions :) So if you manage to find at least one friend who is not completely stunned by the assembler, I think you will have some good time. A huge inspiration comes from phrack 49's 'Smashing The Stack For Fun And Profit' which has demystified the stack for me: https://ift.tt/SYy5NjI TLDR: computers are fun, and you can make them do things. PS: In order to play with my friends I also built esp32 helper[1] that keeps track of the game state, and when I built it and wrote the code and everything I realized I could've just media queried the web version of the game.. but anyway, its way cooler to have a board game contraption. [1]: https://ift.tt/Ya5SgOz