MantisBT - Doomseeker
View Issue Details
0003878Doomseeker[All Projects] Suggestionpublic2021-02-16 04:012021-08-10 05:46
AlexMax 
Pol M 
normalminorN/A
closedfixed 
1.3.1 
1.3.21.3.2 
0003878: Odamex 0.9 protocol changes
Odamex 0.9 is about to be released, and it does not contain any notable protocol changes. I can see the test servers from the existing Doomseeker release.

However, we do have a fair few more game modes that need to be checked for. The "official list" that we use both internally and in the launcher is as follows:

    else if (sv_gametype == 0 && g_lives > 0)
        name = "Survival";
    else if (sv_gametype == 0)
        name = "Cooperative";
    else if (sv_gametype == 1 && g_lives > 0)
        name = "Last Marine Standing";
    else if (sv_gametype == 1 && sv_maxplayers <= 2)
        name = "Duel";
    else if (sv_gametype == 1)
        name = "Deathmatch";
    else if (sv_gametype == 2 && g_lives > 0)
        name = "Team Last Marine Standing";
    else if (sv_gametype == 2)
        name = "Team Deathmatch";
    else if (sv_gametype == 3 && g_sides)
        name = "Attack & Defend CTF";
    else if (sv_gametype == 3 && g_lives > 0)
        name = "LMS Capture The Flag";
    else if (sv_gametype == 3)
        name = "Capture The Flag";

Obviously you can use whatever strings you find appropriate, but this is merely the conditions we check to determine which game mode name to render.

If you notice a "g_gametypename" cvar, please do not put it in the gametype column, as it is meant to be used by in-game interfaces that have much more room than a server browser.

Thanks.
No tags attached.
Issue History
2021-02-16 04:01AlexMaxNew Issue
2021-02-16 06:52WubTheCaptainStatusnew => acknowledged
2021-02-16 06:53WubTheCaptainSeveritymajor => minor
2021-02-16 06:55WubTheCaptainProduct Version => 1.3.1
2021-02-17 14:46AlexMaxNote Added: 0021597
2021-02-18 11:24WubTheCaptainNote Added: 0021598
2021-02-18 11:25WubTheCaptainNote Edited: 0021598bug_revision_view_page.php?bugnote_id=21598#r13283
2021-02-19 05:01AlexMaxNote Added: 0021599
2021-03-23 02:20AlexMaxNote Added: 0021610
2021-03-23 02:22AlexMaxNote Edited: 0021610bug_revision_view_page.php?bugnote_id=21610#r13287
2021-06-15 11:48Pol MAssigned To => Pol M
2021-06-15 11:48Pol MStatusacknowledged => confirmed
2021-06-27 13:03Pol MStatusconfirmed => assigned
2021-06-27 16:25Pol MNote Added: 0021614
2021-06-28 01:24AlexMaxNote Added: 0021615
2021-06-28 19:56Pol MStatusassigned => needs review
2021-06-28 19:59Pol MNote Added: 0021616
2021-06-28 19:59Pol MNote Edited: 0021616bug_revision_view_page.php?bugnote_id=21616#r13294
2021-06-28 23:17Blzut3Note Added: 0021617
2021-06-28 23:17Blzut3Statusneeds review => needs testing
2021-06-29 09:23ZalewaNote Added: 0021619
2021-07-01 12:23Pol MNote Added: 0021620
2021-08-07 16:43Blzut3Fixed in Version => 1.3.2
2021-08-07 16:43Blzut3Target Version => 1.3.2
2021-08-08 10:35ZalewaStatusneeds testing => resolved
2021-08-08 10:35ZalewaResolutionopen => fixed
2021-08-10 05:46WubTheCaptainStatusresolved => closed

Notes
(0021597)
AlexMax   
2021-02-17 14:46   
One other thing of note, I notice that that "Version" displayed by Doomseeker is kind of messed up. In protocol version 7, instead of broadcasting a revision number, we broadcast a revision string after the "time" and "protocol number". This revision string contains the complete version (including the number).

'https://github.com/odamex/odamex/blob/0.8.3/server/src/sv_sqp.cpp#L89 [^]'
(0021598)
WubTheCaptain   
2021-02-18 11:24   
(edited on: 2021-02-18 11:25)
0003878:0021597: Seems unrelated to the original post, so you may want to report a new issue.

(0021599)
AlexMax   
2021-02-19 05:01   
Noted. I opened a separate ticket for the query protocol bump.
(0021610)
AlexMax   
2021-03-23 02:20   
(edited on: 2021-03-23 02:22)
My apologies, but in the release shuffle there was a small additional thing that slipped my mind that I think is related to the above changes, as it also concerns handling of server vars and not an actual protocol bug.

We have retired "sv_website" in lieu of "sv_downloadsites". It's used by our internal WAD downloader, and it is similar to "sv_website" except that it is capable of being a list of multiple download sites, instead of just one. The list is separated by space characters (0x20) and in case Wadseeker cannot handle multiple added sources simply using the first URL in the list is fine.

(0021614)
Pol M   
2021-06-27 16:25   
Hey AlexMax, where is the code from?
I'd like to reference something for future changes :)
(0021615)
AlexMax   
2021-06-28 01:24   
This is what odalaunch uses:

'https://github.com/odamex/odamex/blob/stable/odalaunch/src/lst_servers.cpp#L439 [^]'

This is what Odamex itself uses (for ingame messages):

'https://github.com/odamex/odamex/blob/stable/common/g_gametype.cpp#L53 [^]'
(0021616)
Pol M   
2021-06-28 19:59   
Thank you AlexMax!
Changes made, after review we'll publish the new protocol, with all the bells and whistles a two-afternoon job lets me do! Again, thank you for letting us know.
'https://bitbucket.org/Doomseeker/doomseeker/pull-requests/5/new-odamex-protocol-wadseeker-change-to [^]'

(0021617)
Blzut3   
2021-06-28 23:17   
Changes look good to me, so merged. Zalewa will probably want to put out a testing build for this and the related Wadseeker change.
(0021619)
Zalewa   
2021-06-29 09:23   
Builds put on the beta update channel.

I think after this is tested we could do a proper release of 1.3.2?
(0021620)
Pol M   
2021-07-01 12:23   
Yep, it's the simplest option in my opinion.