lilium-voyager icon indicating copy to clipboard operation
lilium-voyager copied to clipboard

Protocol handler

Open stefansundin opened this issue 3 years ago • 2 comments

Hello again :)

This PR is basically https://github.com/ioquake/ioq3/pull/540 with an extra commit that adds compatibility for the protocol format in use over at https://efservers.com/.

Perhaps when the built-in protocol handler support has been included in a release, and when it has spread far enough, then https://efservers.com/ can eventually adopt the "new" protocol format that I picked for the ioq3 PR. Anyway, that's a decision for the far future.

With this change it should hopefully be easier to keep and retain new players since there's less setup required to make use browser-based server browsers.

Please let me know if you have any questions.

stefansundin avatar Feb 15 '22 06:02 stefansundin

The consensus in the discord discussion seems to be that compatibility with the existing links on https://efservers.com/ does not need to be maintained. So there doesn't seem to be a need to have a customized version of this feature.

I'll leave it up to you whether or not you want this feature pulled individually or wait for it to be merged upstream. So don't hesitate to close this PR. I'm happy you found time to look at the upstream PR and found some things that could be improved.

I just have one lilium-voyager specific question @zturtleman. Would you opt to make the protocol handler stvef: or ef1: or something different? Locutus (who runs https://efservers.com/) had that question in Discord. I think it would be good to decide that now so that whenever he decides to update his links to the new format, it can be the last and only breaking change that needs to happen. Then it doesn't matter if built-in support comes in one year or five years, the links will still work.

Thanks!

stefansundin avatar Feb 17 '22 02:02 stefansundin

Sounds good. I'll wait for it to be merged in ioq3. That's my preference / pretty much required for all general changes. Also all functional changes in Lilium Voyager compared to ioquake3 are suppose to be wrapped in #ifdef ELITEFORCE (because, I'm just continuing what ioEF did).

I'd prefer a longer URI scheme (like "stvef:" opposed to "ef1:") to reduce the likelihood of conflicts with other software. For similarity with Star Trek: Elite Force 2 (ST:EF2), it might be nice to use "stef1:" and "stef2:". (stef1 also appears in the official master server address, master.stef1.ravensoft.com.) I personally enjoy the abbreviation "stvef" more than "stef1" for whatever that's worth.

Lilium Voyager can use whatever protocol scheme the broader community decides on. Just tell me what it is after it's decided.

zturtleman avatar Feb 17 '22 20:02 zturtleman

Protocol handler support has been merged from ioquake3 in 5296bd85d5151a0f7eb86600011e9bca2542bdb9 and URL protocol scheme set to "stvef:" (used by https://efservers.com/) in e4d97d9699d105e7ad0f16e46e57f60ba06d6566. Thanks.

zturtleman avatar Jun 11 '23 16:06 zturtleman