Getting Man 2 Speedruns Running Smoothly on Mobile

I picked up a decent mid-range phone about two years ago and decided I wanted to try running Mega Man 2 on it. The idea was simple — beat the game fast and log the times. It sounds straightforward until you actually sit down and try to do it, because mobile emulation is a minefield of hidden delays, input lag, and emulator settings that silently ruin any attempt at a legit run. Most people will tell you to grab MEmu or BlueStacks and start clicking. That's wrong for speedrunning. You want something lightweight with minimal overhead. I ended up going with a custom build of Nostalgia (or its Android equivalent) paired with a precise Famicom/NES core that supports frame advance and savestate manipulation. A regular NES emulator will introduce enough input latency to throw off your splits, so the core choice matters way more than the emulator shell. Here's what my actual setup looked like:

Emulator: Nostalgia (Android) using the FCEUmm core APE: Frame-accurate mode forced on, sound disabled (the game doesn't use it meaningfully in any MR/Any% route anyway) Touch controls: Custom overlay with the D-pad in the lower-left and fire/shield in the lower-right. The on-screen buttons need to be sized so your thumbs never cover the entire screen — you need visibility of the pause menu while playing. Input polling: Set to 60Hz, not 30Hz. This cuts roughly 8ms of input delay per press, which sounds small but adds up across boss phases. I tried running it on my first phone, a Pixel 3a, and the Nostalgia app had a persistent frame skip issue in Wily's Castle. I'd hit a wall where the game would render one frame behind my input, making Megastrike and Flame Tails timing-based shots feel off by a frame. The workaround was switching the core from FCEUmm to Nestopia EE within the same emulator, then manually setting the frame timing to 59.94fps instead of letting the emulator auto-detect it. That fixed the desync entirely.

Where People Actually Get Stuck

The biggest mistake I see on the forums is treating mobile speedrunning like console speedrunning. It isn't. You don't have the same input consistency. Touch screens register ghost inputs when your palm brushes the screen during fast directional sequences, and most phone screens sample at inconsistent intervals. What feels like a 1-frame action on a console becomes a 2 to 3 frame window on mobile. Another thing nobody warns you about: savestate management. You might think a savestate before each boss is fine. It's not. Loading a savestate can cause a single-frame glitch state in the NES emulation where gravity or collision detection hasn't been recalculated properly. I lost an entire 12-minute run because I loaded a savestate right before Shotzo, jumped, and the hitbox was one pixel off on frame one. I was reloading for ten minutes before I realized what was happening. Now I only use savestates between segments, never mid-segment, and I always let the game run for at least two full frames after loading before doing anything.

Get the Full Details

Frowning Man Free Stock Photo - Public Domain Pictures
Frowning Man Free Stock Photo - Public Domain Pictures

The Route You Should Actually Run

Any% MR is the standard competitive route for Man 2. The game is short — about 20 minutes on a clean execution. On mobile, expect 2 to 3 minutes longer because of input inconsistency. The route itself is well documented by the SNES classic, but there are nuances on the original NES version that mobile runners often miss. For example, the Cut Man gate trick where you jump off the bottom of the left screen and slide through a one-pixel gap under the door. On console, this is reliable. On mobile, the touch D-pad has slightly different dead zones depending on the emulator you're using. I had to remap my virtual D-pad dead zone from the default 15% down to 5% to make it work consistently. Without that change, the jump register failed about 1 in every 4 attempts. Also worth noting: some emulators will auto-skip the title screen credits if you press start quickly enough. Don't rely on this. It's not consistent across versions and will get your run disallowed on leaderboards that require a verified no-skip playthrough.

Downsides That Can't Be Fixed

Mobile speedrunning has real limitations. The primary one is input precision. Even with custom overlays and optimized cores, you're working with a capacitive touch surface that has no physical resistance. Your thumb drifts. You fat-finger the pause button mid-sequence. It happens. It's not a skill issue. It's hardware. The second limitation is thermal throttling. After about 20 minutes of continuous play, most phones drop clock speeds to protect the battery. This causes micro-stutters in the emulator that can affect frame-perfect input. If you're serious about logging times, play in a cool room or remove the case so heat dissipates. For those looking to get into this properly, the community that tracks these runs is scattered. There's no single unified leaderboard for mobile-managed speedruns of Man 2, which means validating your own times honestly falls on you. Use RR-style split tracking with screenshots every 30 seconds as proof. It's tedious but it's the only thing that keeps the leaderboards honest.