Dokutsu Linux Port: My Hands-On Review

I grew up with Cave Story. So when I saw a Dokutsu port that runs great on Linux, I had to try it. I ran it on my Ubuntu laptop and on my Steam Deck. And you know what? It felt like coming home, just with cleaner pixels and fewer headaches.
I ended up compiling my notes into a hands-on review of the Dokutsu Linux port for readers who want even more detail.
If you’re always on the lookout for more Linux-friendly gaming ports, you’ll find a continually updated roster on Desktop Linux Reviews that can guide your next install.
And if you’re hunting for inspiration beyond Cave Story, my roundup of great Linux games I actually play should fill your backlog nicely.

Setup: easy… mostly

On Ubuntu 22.04, I installed the engine with one command:

  • sudo apt install nxengine-evo

Need the source or bleeding-edge fixes? The project lives on GitHub, and you can pull or fork the latest code straight from the official nxengine-evo repository.

Then I copied the Cave Story game files (the “data” folder from the freeware release) into my home folder:

  • ~/.local/share/nxengine-evo/data

If you’re missing the freeware assets, they’re still hosted at the long-running community site doukutsu.rs, so grabbing a fresh copy is painless.

Still shopping around for the right distro to run it on? My real-world comparison of Fedora vs Ubuntu vs Linux Mint breaks down the pros and cons for gamers.

That was the only “gotcha.” The engine doesn’t ship with the original game files. Once I dropped the data in, it launched on the first try. Clean start. No weird warnings.

On the Steam Deck, I pulled the same port from the Discover store. It picked up my Deck controls right away. I did have to point it to the game data the first time. After that, it remembered.

First run: smooth and fast

The menu popped up at 60 fps. Full screen worked. Windowed worked too. No stutter on my ThinkPad T480 with Intel graphics. I tested a silly thing: I spammed the Polar Star shots across the Mimiga Village. Frames held solid. No dips. I also ran it through the Egg Corridor with six bats chasing me. Still smooth.

Controls: keyboard or pad? both

Default keys were the classic set: arrows to move, Z to jump, X to shoot, A/S to swap weapons. I changed Jump to Space and Shoot to K. Old habits. The remap screen was simple and didn’t fight me.

Gamepad support felt good. My Xbox One pad worked over USB and Bluetooth. I bumped the stick deadzone up a notch to stop a tiny drift during careful jumps. After that, Curly’s House felt like a breeze. On the Steam Deck, the A/B buttons were flipped for confirm/cancel at first. I swapped them in the input menu. Done.

Looks: pixels stay crisp

I kept it 4:3 with integer scaling. At 3x and 4x, the edges stayed sharp. No fuzzy blur. If you like filters, there’s a soft one, but I turned it off. Cave Story’s charm is those chunky pixels. VSync killed tearing on my 75 Hz monitor. It felt steady, like the game was built that way.

Sound: tiny hiccup, quick fix

I heard a small pop when I alt-tabbed back in with headphones. It happened twice. Switching to full screen first, then tabbing, stopped it. I also lowered the in-game volume to 80% and let PulseAudio handle the rest. After that, no more pops. The organ in Grasstown still hit me right in the chest.

Real moments that sold me

  • Misery fight: I mistimed a jump and fell onto a spike bed. The input didn’t lag at all. My second try, I threaded two shots and slipped past her attack. It felt tight.
  • Sand Zone skip: I tested my usual dash-jump over the top ledge. The timing held. Same as the old Windows build.
  • Sue’s text speed: It matched the freeware speed, letter by letter. I watched for drift. None.

Mods and tweaks

I added a small widescreen test build from a community fork, just to see it. It worked, but some rooms felt too wide. I went back to 4:3. I also tried a fan mod (Curly Story) by dropping the mod files into the game folder. The engine picked it up on the next run. I liked that it didn’t need a long setup.

Save files and folders

My saves landed under:

  • ~/.local/share/nxengine-evo

I moved saves between my laptop and Deck just by copying that folder. It synced fine. No corrupt files. I love when things are boring like that.

Bugs I hit (and how I dodged them)

  • Tiny window on Deck after sleep: it woke in a small box. I toggled full screen off and on. Fixed.
  • Controller double input: once, both keyboard and pad sent inputs at the same time in the menu. I unplugged the pad, launched, then plugged it back in on the title screen. It never came back.

Need a breather between speed-running Cave Story and recompiling kernels? Retro-gaming Linux users who also want a welcoming LGBTQ+ community can hop into gaychat.io where you’ll find friendly chat rooms to swap port tips, share screenshots, and line up co-op sessions with like-minded players.

Feeling wired after an all-night coding spree and looking for real-world downtime instead of another dungeon run? If you find yourself in South Florida, the local nightlife directory at Backpage Miami Lakes can connect you with vetted companions and events so you can level-up your evening without sifting through unreliable listings.

Who should use this

  • You run Linux and want Cave Story without Wine.
  • You care about sharp scaling and steady timing.
  • You use a Steam Deck and want quick pick-up play.

If you need fancy shaders, you won’t find many here. But if you want the game to feel right, this port nails it.

Quick tips

  • Keep 4:3 with integer scale for clean pixels.
  • Turn on VSync if you see tearing.
  • Map Jump and Shoot to buttons you use a lot. Your thumbs will thank you.
  • Copy the original “data” folder into the engine’s data path before launch.

Final thoughts

This Dokutsu Linux port doesn’t try to be flashy. It just runs well. It keeps the feel of the original, with nicer scaling and smooth input. I came for nostalgia. I stayed because it played better than my old Windows setup. Small drama, big heart. That’s the game—and this port lets it shine.