How I built my own Twitch-Plays-Pokémon
summary
A Twitch‑Plays‑Pokémon clone gets built in Ruby: initial prototype uses Visual Boy Advance controlled via simulated keystrokes through Sinatra and JRuby's Java Robot, but focus, desktop dependency and 20s video latency force a rewrite. A custom headless emulator in Ruby is implemented, exposing an API for button presses and streaming frames over websockets; the first visible frame appears after roughly 50,000 CPU instructions. Prototype works and enables lower‑latency streaming, RAM snapshots and programmatic control.
AI-written summary · about
chapters (10)
- 0:00Inspiration and motivation
- 1:34Prototyping with Ruby
- 4:40The case for a headless emulator
- 6:52How emulators work
- 10:02Advantages of custom emulation
- 12:40Conference driven development
- 15:12Technical hurdles and philosophy
- 18:01Testing and initial rendering
- 22:19Dealing with project overlap
- 24:53Lessons learned and conclusion
related talks
01h 42mSoup to Nuts: Build a video game using Ruby!
33mMake a Massively Multiplayer Ruby Game with Dragon Ruby
06mLightning Talk: What makes a good lightning talk
35mHigh performance Mario Kart on Ruby
45mAttention Rubyists: you can write video games
35mWriting a Gameboy emulator in Ruby
25mRuby Game Development with Jemini
40mRUBY: WRITE ONCE, RUN ANYWHERE
