regular-dev / biplanes-revival

An old cellphone arcade recreated for PC
https://regular-dev.org/biplanes-revival
GNU General Public License v3.0
26 stars 3 forks source link

Local multiplayer #2

Open lufte opened 1 month ago

lufte commented 1 month ago

First of all thank you for reviving this beautiful little part of my youth. Impressive work, it looks and feels exactly like the old one.

I was wondering if it would be possible to implement a multiplayer mode where two players, in the same computer, just share the keyboard and battle against each other. I have a few friends who played this but I don't see them going through the hassle of setting up a network match. If I just showed up with my laptop we could all play against each other on it.

Casqade commented 1 month ago

Thank you kindly for your warm words, it's always a pleasure to see this project means something not only to me & my friends, but to players all over the world :)

Regarding your question, I actually considered local multiplayer when I was implementing AI, but ultimately scrapped the idea for a number of reasons:

Still, I abstracted the code well enough to support local mp without much hassle, so the difficulty comes with actually testing it for bugs, as I'm quite meticulous about QA. Unfortunately, right now I'm rather busy until November, so I can't promise the update any earlier.

As a temporary alternative, if you're going to play with your friends in the same physical location, I think Direct Connect multiplayer would be your best shot as long as all computers/laptops are connected to the same network/Wi-Fi. If you know how to find an IP address of a host, you won't have any problems setting up a match between your friends. On second thought, Windows Defender & Firewall as well as other security stuff might present some interference...

lufte commented 1 month ago
  • While hotseat/local multiplayer was prevalent in PC gaming ~20 years ago, nowadays it's hard to imagine a demand for this feature. Nevertheless, you've just proved me wrong ;)

Also keep in mind that the people coming to play this game are not going to be particularly young. Many of us are still attached to the old costumes ;)

  • From technical standpoint, there's a notion of Key rollover, which basically means the ability of a keyboard to detect multiple simultaneous keypresses. The problem is, the majority of keyboards (especially non-mechanical and laptop ones) aren't suited for arcade/racing games, e.g. my own laptop keyboard doesn't detect Space when I'm holding down both Up and Left arrows, making it impossible to shoot while maneuvering. Add a second player and you're almost guaranteed to encounter key ghosting & jamming, unless you plug in a second keyboard. You can experiment for yourself: key-test.com. Most players don't know about this hardware limitation and will likely blame the game for "not working" :(

This I totally understand, and it would be a shame for people to think it's a problem with the game. It could be hidden behind a build flag, and only people that know what they're doing could access it, but this sounds even less fair: preventing players from accessing features because of potential whiners.

I could totally set up a mini LAN party to play this, but I just don't see it happening. BT Biplanes was always a very casual game to me and my "gang". I remember playing it between Call of Duty matches when we went to our local "Internet Café" and we headed outside for a bit of fresh air, or when we got together to play cards during those long summer nights... oh, those were the times!

But I digress :). Thanks for the quick reply and bringing this game back. If you end up implementing this eventually and need help with QA ping me and I'll be glad to help.