Comment by modeless

12 hours ago

I wish there was an instant play button for some of the multiplayer games, the server browser interface is kind of obtuse. I did the Quake 3 port that they used as the base for their Q3A, and I have my own site that lets you instantly drop into a demo match vs. bots: https://thelongestyard.link/q3a-demo/. It's not just the original running in an emulator either, I made it a real web port with features you'd expect in a modern web game that the original didn't have. Things like mobile touchscreen and gamepad controls, ultrawide monitor support, and peer-to-peer internet multiplayer over WebRTC.

I also have an instant-run port of Cave Story: https://thelongestyard.link/cave-story/. For that one I added cloud save game sync too. Porting classic games to the web is a fun hobby!

Coming up with touchscreen control schemes for these old games is probably the most interesting part. I really like the controls I came up with for both games. For Quake I determined that you really need automatic shooting for touch controls to feel good, but a naive implementation of an automatic trigger makes the railgun into a win button, so I did something a little more complex that I think is fun to use and not unfair. Cave Story was also challenging; at first I wasn't sure I could make a touch control scheme that would be good enough to beat the game, but with the final scheme I was able to play all the way through (at least to the first ending) purely on touch controls. And you can use the cloud save sync to transfer your save game to a PC for the hard parts if you need to.

Semi-related, since SDL added support for DOS a few weeks ago I've worked with Claude to port Cave Story to DOS [1].

On a Pentium 75 it can get 30fps and with decoupling the frame timer it plays at the same speed as the original. The port offloads the Organya synth soundtrack to MIDI to improve performance, and also sounds amazing.

Still working on a few bug fixes, performance tweaks, and Waveblaster support, but it's playable.

1. https://codeberg.org/ecliptik/doskutsu