MantisBT - Doomseeker
View Issue Details
0002540Doomseeker[All Projects] Suggestionpublic2015-12-05 09:392018-09-29 14:34
Unknown 
Zalewa 
normalfeaturealways
closedfixed 
MicrosoftWindowsXP/Vista/7
1.0 
1.11.1 
0002540: Add Support for SRB2 .
It would be cool to finally get a Server browser able to browse servers and download wads for SRB2 .
Website :'https://www.srb2.org [^]'
Master Server IP : 208.94.247.58:28900
Servers list :'https://mb.srb2.org/masterserver.php [^]'
Command line parameters :'https://wiki.srb2.org/wiki/Command_line_parameters [^]'
No tags attached.
related to 0003510closed WubTheCaptain Remove SRB2 engine plugin distribution 
Issue History
2015-12-05 09:39UnknownNew Issue
2016-01-15 17:21ZalewaAssigned To => Zalewa
2016-01-15 17:21ZalewaStatusnew => assigned
2016-01-16 20:10ZalewaNote Added: 0014097
2016-01-16 20:12ZalewaNote Edited: 0014097bug_revision_view_page.php?bugnote_id=14097#r8436
2016-01-16 20:42ZalewaNote Added: 0014098
2016-01-16 20:44ZalewaNote Edited: 0014098bug_revision_view_page.php?bugnote_id=14098#r8438
2016-01-17 17:28ZalewaNote Added: 0014108
2016-01-17 17:28ZalewaStatusassigned => needs testing
2016-01-17 19:17UnknownNote Added: 0014111
2016-01-17 19:20UnknownNote Added: 0014112
2016-01-17 19:41ZalewaNote Added: 0014113
2016-01-17 20:16UnknownNote Added: 0014114
2016-01-17 20:17UnknownNote Edited: 0014114bug_revision_view_page.php?bugnote_id=14114#r8444
2016-01-17 20:18UnknownNote Edited: 0014114bug_revision_view_page.php?bugnote_id=14114#r8445
2016-01-17 20:59ZalewaNote Added: 0014120
2016-01-17 21:09UnknownNote Added: 0014121
2016-01-17 21:43ZalewaNote Added: 0014122
2016-01-17 21:44ZalewaNote Edited: 0014122bug_revision_view_page.php?bugnote_id=14122#r8451
2016-01-17 22:12UnknownNote Added: 0014123
2016-01-17 22:14UnknownNote Edited: 0014123bug_revision_view_page.php?bugnote_id=14123#r8453
2016-01-17 22:18UnknownNote Edited: 0014123bug_revision_view_page.php?bugnote_id=14123#r8454
2016-01-17 22:19UnknownNote Edited: 0014123bug_revision_view_page.php?bugnote_id=14123#r8455
2016-01-17 22:22UnknownNote Edited: 0014123bug_revision_view_page.php?bugnote_id=14123#r8456
2016-01-17 22:57ZalewaNote Added: 0014124
2016-01-17 23:20UnknownNote Added: 0014125
2016-01-18 06:42UnknownNote Added: 0014127
2016-01-18 06:50UnknownNote Edited: 0014127bug_revision_view_page.php?bugnote_id=14127#r8458
2016-01-18 06:51UnknownNote Edited: 0014127bug_revision_view_page.php?bugnote_id=14127#r8459
2016-01-18 09:16UnknownNote Edited: 0014127bug_revision_view_page.php?bugnote_id=14127#r8460
2016-01-18 10:12UnknownNote Edited: 0014127bug_revision_view_page.php?bugnote_id=14127#r8461
2016-01-18 11:19UnknownNote Edited: 0014127bug_revision_view_page.php?bugnote_id=14127#r8462
2016-01-18 12:05UnknownNote Edited: 0014127bug_revision_view_page.php?bugnote_id=14127#r8463
2016-01-19 20:34ZalewaNote Added: 0014134
2016-01-19 20:34ZalewaStatusneeds testing => feedback
2016-01-19 20:35ZalewaNote Edited: 0014134bug_revision_view_page.php?bugnote_id=14134#r8465
2016-01-19 20:35ZalewaNote Edited: 0014134bug_revision_view_page.php?bugnote_id=14134#r8466
2016-01-20 07:14UnknownNote Added: 0014135
2016-01-20 07:14UnknownStatusfeedback => assigned
2016-01-20 07:18UnknownNote Edited: 0014135bug_revision_view_page.php?bugnote_id=14135#r8468
2016-01-20 07:20UnknownNote Edited: 0014135bug_revision_view_page.php?bugnote_id=14135#r8469
2016-01-20 07:24UnknownNote Edited: 0014135bug_revision_view_page.php?bugnote_id=14135#r8470
2016-01-20 07:25UnknownNote Edited: 0014135bug_revision_view_page.php?bugnote_id=14135#r8471
2016-01-20 07:30UnknownNote Edited: 0014135bug_revision_view_page.php?bugnote_id=14135#r8472
2016-01-20 07:32UnknownNote Edited: 0014135bug_revision_view_page.php?bugnote_id=14135#r8473
2016-01-20 07:35UnknownNote Edited: 0014135bug_revision_view_page.php?bugnote_id=14135#r8474
2016-01-20 07:36UnknownNote Edited: 0014135bug_revision_view_page.php?bugnote_id=14135#r8475
2016-01-20 07:50UnknownNote Edited: 0014135bug_revision_view_page.php?bugnote_id=14135#r8476
2016-01-20 07:52UnknownNote Edited: 0014135bug_revision_view_page.php?bugnote_id=14135#r8477
2016-01-20 21:48ZalewaNote Added: 0014141
2016-01-20 21:48ZalewaStatusassigned => needs review
2016-01-21 06:35UnknownNote Added: 0014142
2016-01-21 06:39UnknownNote Edited: 0014142bug_revision_view_page.php?bugnote_id=14142#r8489
2016-01-21 06:40UnknownNote Edited: 0014142bug_revision_view_page.php?bugnote_id=14142#r8490
2016-01-21 17:14ZalewaNote Added: 0014147
2016-01-21 21:20UnknownNote Added: 0014148
2016-01-22 19:38ZalewaNote Added: 0014158
2016-01-22 19:38ZalewaStatusneeds review => needs testing
2016-01-22 21:54UnknownNote Added: 0014159
2016-01-22 21:56UnknownNote Edited: 0014159bug_revision_view_page.php?bugnote_id=14159#r8510
2016-01-22 22:19ZalewaNote Added: 0014160
2016-01-22 22:20ZalewaStatusneeds testing => acknowledged
2016-01-22 22:20ZalewaStatusacknowledged => assigned
2016-01-22 22:27UnknownNote Added: 0014161
2016-01-23 10:15ZalewaNote Added: 0014162
2016-01-23 10:15ZalewaStatusassigned => needs testing
2016-01-23 19:13UnknownNote Added: 0014163
2016-01-23 19:53ZalewaNote Added: 0014165
2016-01-23 19:53ZalewaStatusneeds testing => resolved
2016-01-23 19:53ZalewaFixed in Version => 1.1
2016-01-23 19:53ZalewaResolutionopen => fixed
2016-01-25 09:26UnknownNote Added: 0014198
2016-01-25 09:26UnknownStatusresolved => feedback
2016-01-25 09:26UnknownResolutionfixed => reopened
2016-01-25 09:29UnknownNote Edited: 0014198bug_revision_view_page.php?bugnote_id=14198#r8545
2016-01-25 10:29UnknownNote Edited: 0014198bug_revision_view_page.php?bugnote_id=14198#r8546
2016-01-25 10:30UnknownNote Edited: 0014198bug_revision_view_page.php?bugnote_id=14198#r8547
2016-01-25 10:37UnknownNote Edited: 0014198bug_revision_view_page.php?bugnote_id=14198#r8548
2016-01-25 10:39UnknownNote Edited: 0014198bug_revision_view_page.php?bugnote_id=14198#r8549
2016-01-25 10:42UnknownNote Edited: 0014198bug_revision_view_page.php?bugnote_id=14198#r8550
2016-01-25 10:44UnknownNote Edited: 0014198bug_revision_view_page.php?bugnote_id=14198#r8551
2016-01-25 10:47UnknownNote Edited: 0014198bug_revision_view_page.php?bugnote_id=14198#r8552
2016-01-25 10:50UnknownNote Edited: 0014198bug_revision_view_page.php?bugnote_id=14198#r8553
2016-01-25 10:51UnknownNote Edited: 0014198bug_revision_view_page.php?bugnote_id=14198#r8554
2016-01-25 10:54UnknownNote Edited: 0014198bug_revision_view_page.php?bugnote_id=14198#r8555
2016-01-25 10:58UnknownNote Edited: 0014198bug_revision_view_page.php?bugnote_id=14198#r8556
2016-01-25 11:00UnknownNote Edited: 0014198bug_revision_view_page.php?bugnote_id=14198#r8557
2016-01-25 11:39UnknownNote Edited: 0014198bug_revision_view_page.php?bugnote_id=14198#r8558
2016-01-25 12:35UnknownNote Edited: 0014198bug_revision_view_page.php?bugnote_id=14198#r8559
2016-01-25 13:35UnknownNote Edited: 0014198bug_revision_view_page.php?bugnote_id=14198#r8560
2016-01-25 13:36UnknownNote Edited: 0014198bug_revision_view_page.php?bugnote_id=14198#r8561
2016-01-25 13:43UnknownNote Edited: 0014198bug_revision_view_page.php?bugnote_id=14198#r8562
2016-01-26 09:42UnknownNote Edited: 0014198bug_revision_view_page.php?bugnote_id=14198#r8574
2016-01-26 09:45UnknownNote Edited: 0014198bug_revision_view_page.php?bugnote_id=14198#r8575
2016-01-26 09:46UnknownNote Edited: 0014198bug_revision_view_page.php?bugnote_id=14198#r8576
2016-01-26 09:47UnknownNote Edited: 0014198bug_revision_view_page.php?bugnote_id=14198#r8577
2016-01-26 09:48UnknownNote Edited: 0014198bug_revision_view_page.php?bugnote_id=14198#r8578
2016-03-31 21:53ZalewaNote Added: 0014631
2016-03-31 21:53ZalewaStatusfeedback => needs testing
2016-04-03 15:44UnknownNote Added: 0014658
2016-04-03 16:19ZalewaStatusneeds testing => assigned
2016-04-03 17:15frozenLakeNote Added: 0014665
2016-04-03 17:29frozenLakeNote Edited: 0014665bug_revision_view_page.php?bugnote_id=14665#r8885
2016-04-03 17:31frozenLakeNote Edited: 0014665bug_revision_view_page.php?bugnote_id=14665#r8886
2016-04-03 17:32frozenLakeNote Edited: 0014665bug_revision_view_page.php?bugnote_id=14665#r8887
2016-04-03 18:51UnknownNote Added: 0014669
2016-04-03 18:52UnknownNote Edited: 0014669bug_revision_view_page.php?rev_id=8889
2016-05-29 19:09frozenLakeNote Added: 0014998
2016-05-29 19:11frozenLakeNote Edited: 0014998bug_revision_view_page.php?bugnote_id=14998#r9045
2016-07-28 10:31UnknownNote Added: 0015412
2016-07-28 10:32UnknownNote Edited: 0015412bug_revision_view_page.php?bugnote_id=15412#r9373
2016-10-19 18:30UnknownNote Deleted: 0014669
2017-05-27 03:18SteelTitaniumNote Added: 0017765
2017-05-27 06:08ZalewaNote Added: 0017766
2017-05-28 01:30SteelTitaniumNote Added: 0017769
2017-05-28 14:50ZalewaNote Added: 0017774
2017-05-28 18:00SteelTitaniumNote Added: 0017778
2017-05-28 18:01SteelTitaniumNote Edited: 0017778bug_revision_view_page.php?bugnote_id=17778#r10664
2017-05-28 18:19ZalewaNote Added: 0017779
2017-05-28 19:22SteelTitaniumNote Added: 0017781
2017-05-28 19:43ZalewaNote Added: 0017783
2017-05-28 22:10SteelTitaniumNote Added: 0017785
2017-09-27 18:29ZalewaAssigned ToZalewa =>
2017-09-27 18:29ZalewaAssigned To => Zalewa
2017-09-27 18:29ZalewaStatusassigned => new
2017-09-27 18:29ZalewaAssigned ToZalewa =>
2017-10-30 03:51WubTheCaptainNote Added: 0018675
2017-11-02 14:20ZalewaNote Added: 0018727
2017-11-02 14:20ZalewaNote Edited: 0018727bug_revision_view_page.php?bugnote_id=18727#r11253
2017-11-02 15:07WubTheCaptainStatusnew => confirmed
2017-11-02 15:11WubTheCaptainNote Added: 0018730
2017-11-02 15:11WubTheCaptainNote Edited: 0018730bug_revision_view_page.php?bugnote_id=18730#r11255
2018-03-04 06:01SteelTitaniumNote Added: 0019123
2018-03-04 19:42ZalewaNote Added: 0019138
2018-03-05 18:00SteelTitaniumNote Added: 0019141
2018-03-05 18:43ZalewaNote Added: 0019142
2018-03-05 21:52SteelTitaniumNote Added: 0019143
2018-03-05 23:16ZalewaNote Added: 0019144
2018-03-05 23:16ZalewaNote Edited: 0019144bug_revision_view_page.php?bugnote_id=19144#r11484
2018-03-06 20:02SteelTitaniumNote Added: 0019145
2018-09-22 23:08WubTheCaptainRelationship addedrelated to 0003510
2018-09-23 07:35ZalewaNote Added: 0019685
2018-09-23 07:35ZalewaStatusconfirmed => resolved
2018-09-23 07:35ZalewaResolutionreopened => fixed
2018-09-23 07:35ZalewaAssigned To => Zalewa
2018-09-29 14:23WubTheCaptainStatusresolved => closed
2018-09-29 14:34WubTheCaptainTarget Version => 1.1

Notes
(0014097)
Zalewa   
2016-01-16 20:10   
(edited on: 2016-01-16 20:12)
Added initial support for master server:
'https://bitbucket.org/Doomseeker/doomseeker/commits/04c345f2ccd215ff95a2acae08a10d05674e0dac [^]'

TODO:

- Obtaining game details from servers (WADs, player list, game mode).
- Joining the servers.
- Creating new games.

I need some more info regarding this.

1. What is the protocol that would allow me to talk to the server? How can I query the server for detailed game info? Is this sufficient: https://wiki.srb2.org/wiki/ASKINFO?

2. Does it use UDP protocol or TCP?

3. I try to send following bytes as challenge packet to the server but all I get are timeout errors.

01 23 61 20 00 00 0c 00 d2 be ef ba be

Both UDP and TCP were attempted. Some servers disconnect me outright when I try to use TCP with "errno 111: Connection refused" error.

Here's the script I use to figure out the protocol:
'http://hastebin.com/isiraxocef.py [^]' (game server query code begins at line 98 with class AskInfo)

(0014098)
Zalewa   
2016-01-16 20:42   
(edited on: 2016-01-16 20:44)
Got my answers from Inuyasha.

1. Bare ASKINFO is enough. Sending 5 zeros instead of actual payload is okay.

2. UDP.

3. Servers expect little-endian data in packets. This is in opposite to master server which expects big-endian.

(0014108)
Zalewa   
2016-01-17 17:28   
By these commits combined, the work is done:

# Master server support.
# Game server listing support.
# Hosting dedicated servers and joining running games support.

You will need this build to test the plugin. Auto update will not download it.
'http://devbuilds.drdteam.org/doomseeker/doomseeker%201.1~beta-160117-1720.zip [^]'

Once you have this installed go to "Options -> Configure -> Auto Updates" and switch update channel to beta or Doomseeker will try to revert to version 1.0.
(0014111)
Unknown   
2016-01-17 19:17   
Tested it, but it looks like i found a little issue, If a server is started using a different game version , the doomseeker won't display full details about it :
'http://i63.tinypic.com/f5d2rt.png [^]'
(0014112)
Unknown   
2016-01-17 19:20   
Oh, also sometimes results may get duplicated, you may see a server more than once in the list sometimes .
(0014113)
Zalewa   
2016-01-17 19:41   
What do you mean by a "different" version? Is this an older version of the game? If so then why would you want to use it over the newest one?

Not sure what caused the duplication though. The master server must have reported the server twice.
(0014114)
Unknown   
2016-01-17 20:16   
(edited on: 2016-01-17 20:18)
By different version i mean some other usermade versions that require the Original game as base, like SRB2 Riders which uses a separate exe , those are supported by the Master server but not displayed in a correct way through Doomseeker.

(0014120)
Zalewa   
2016-01-17 20:59   
Well... if the protocol is different then it won't display properly.

Where can I find documentation for this modified version? Source code? Download? Perhaps there's a way to detect that the packet comes from a different server and branch the code basing on this.
(0014121)
Unknown   
2016-01-17 21:09   
The only version that has been updated to work for latest SRB2 Build is so far this one, the link for the modification is there too :'https://mb.srb2.org/showthread.php?t=40982 [^]' , Source code doesn't exist publicly as far as i know because it's after all a fan made modification .
Version number must be displayed on the bottom left of screen when you run it with default game, or in Master server page if a server is started using it .
(0014122)
Zalewa   
2016-01-17 21:43   
(edited on: 2016-01-17 21:44)
I contacted Duon the Adventurer regarding SRB2 Riders only to learn that the screenshot you presented is from SRB2 Kart:

Quote
That is SRB2 Kart. I'm not a part of it's dev team nor do I own a protocol to it. I'm sorry.


It seems to have the source-code available here:
'https://mb.srb2.org/showthread.php?t=36732 [^]'

I might take a look at it later. Unless SRB2 team would like to carry on the plugin development from now on. All server query code is located in this file:
'https://bitbucket.org/Doomseeker/doomseeker/src/89ca22b83e77d90094fcf2fb3d5a5e31c34a17e7/src/plugins/srb2/srb2server.cpp?at=default&fileviewer=file-view-default [^]'

(0014123)
Unknown   
2016-01-17 22:12   
(edited on: 2016-01-17 22:22)
Keep in mind that earlier version of the game (exactly 2.0.7 , xsrb2, srb2cb , stb2 cineblast, srb2 riders 2.46.5) are still supported by the Master server too , they're all downloadable from here ( some don't have sourcodes though ) :'http://mb.srb2.org/forumdisplay.php?f=100 [^]'

2.0.6 and it's patch 2.0.7 are here ( although i'm not sure if their sourcecode is still available) :
'https://www.srb2.org/download/historic-downloads/ [^]'

 .

(0014124)
Zalewa   
2016-01-17 22:57   
I fixed the duplicated servers problem. Update your plugin from auto-update feature and try it out.
(0014125)
Unknown   
2016-01-17 23:20   
Yep, looks like you fixed it =)
(0014127)
Unknown   
2016-01-18 06:42   
(edited on: 2016-01-18 12:05)
Will you also implement the rest of Server administration features like "MOTD" "PASSWORD" to "Misc" tab in Server creation menu ? :
'https://wiki.srb2.org/wiki/Console/Commands#Server.2Fadmin_commands [^]'

Don't forget "inttime" which isn't mentioned in that page, it allows the admin to change the waiting time between each level .

Also it looks like Checking "Broadcast to Master" doesn't actually do what it says, the Master server has 2 Rooms, each room has it's ID (33 for Standard and 28 for Casual) and by default before starting a server players will be asked in which Room would they like to Advertise their server .

EDIT : Just wondering why isn't "http://static.best-ever.org/wads/" included by default in wad sites (configuration>sites), a lot of SRB2 Wads are just there and not on other sites, that wouldn't help the user to get their wads .

EDIT 2 : Another feature that isn't working is that Doomseeker doesn't check wads in the subfolder "DOWNLOAD" inside SRB2 Folder , This is where ingame Downloader (that crappy ingame downloader) puts files usually .

(0014134)
Zalewa   
2016-01-19 20:34   
(edited on: 2016-01-19 20:35)
Quote from "Unknown"

Will you also implement the rest of Server administration features like "MOTD" "PASSWORD" to "Misc" tab in Server creation menu ? :
'https://wiki.srb2.org/wiki/Console/Commands#Server.2Fadmin_commands [^]' [^]

EDIT : Just wondering why isn't "http://static.best-ever.org/wads/" included by default in wad sites (configuration>sites), a lot of SRB2 Wads are just there and not on other sites, that wouldn't help the user to get their wads .

EDIT 2 : Another feature that isn't working is that Doomseeker doesn't check wads in the subfolder "DOWNLOAD" inside SRB2 Folder , This is where ingame Downloader (that crappy ingame downloader) puts files usually .

Done, done.

Site added.

DOWNLOAD dir will be searched if all other dirs fail.

Quote from "Unknown"

Also it looks like Checking "Broadcast to Master" doesn't actually do what it says, the Master server has 2 Rooms, each room has it's ID (33 for Standard and 28 for Casual) and by default before starting a server players will be asked in which Room would they like to Advertise their server .

Fixed. Ticking the check box will now broadcast to standard room. Broadcasting to casual room will require unticking the check box and specifying a custom parameter '-room 28'. I know this isn't intuitive but it also isn't as simple as it looks to implement a more flexible mechanism for broadcast handling (or rather: it is simple, but not "doable-in-5-minutes" simple). None of the supported games so far had a split within the master server itself.

Quote from "Unknown"

Don't forget "inttime" which isn't mentioned in that page, it allows the admin to change the waiting time between each level .

Can be done, but I need feeback on this to do this properly. I see that game allows to specify two limits: timelimit and pointlimit. To which game modes are they applicable? Can timelimit be set in cooperative? Does pointlimit apply? Are there any other limits? Does inttime apply to all game modes?

(0014135)
Unknown   
2016-01-20 07:14   
(edited on: 2016-01-20 07:52)
Timelimit and Pointlimit are applicable for Match,Tag,Hide and Seek and CTF
Timelimit and Pointlimit can't be set to coop, Inttime applies to all game modes , There's another limit for Race after a player reaches the exit or completes Laps, the time set with the command COUNTDOWNTIME will start counting down till it reaches 0 .

'https://wiki.srb2.org/wiki/Console/Variables#COUNTDOWNTIME [^]'

And also NUMLAPS, which will define the number of laps that players need to complete in Race levels (only Applicable for Race) :

'https://wiki.srb2.org/wiki/Console/Variables#NUMLAPS [^]'

And HIDETIME which Sets the number of seconds the non-IT players in Tag and Hide & Seek to flee before the IT player (who's going to look for them) can move .

'https://wiki.srb2.org/wiki/Console/Variables#HIDETIME_.3Cinteger.3E [^]'

RESPAWNITEMTIME, sets the number of seconds before an item respawns (all gametypes) .

'https://wiki.srb2.org/wiki/Console/Variables#RESPAWNITEM_.3Cboolean.3E [^]'

RESPAWNITEM is used to enable or disable Item respawning (all gametypes)

'https://wiki.srb2.org/wiki/Console/Variables#RESPAWNITEM [^]'

FLAGTIME to set how long will the Flag last on the ground when dropped before it returns back to the base

'https://wiki.srb2.org/wiki/Console/Variables#FLAGTIME [^]'

For CTF, Pointlimit is used to set the Max number of Flag captures (1 Capture = 1 Point for the Team, X Points to Win are defined using this command)

For Match,Tag and Hide and Seek , Point limit is counted by Score of hits (50 Per hit in Match and Tag, and 100 Per hit for Hide and Seek)

There are other Commands which admins can set, like FRIENDLYFIRE, ALLOWMLOOK, ALLOWEXITLEVEL, TEAMSCRAMBLE, STARTINGLIVES, TOUCHTAG ... etc, they're all on the same Wiki page (with explanation) .

STARTINGLIVES is only applicable for Coop and Competition by the way

RINGSLINGER only for Coop, Competition and Race, Tag, Hide and Seek.

TOUCHTAG is applicable for Tag and Hide and Seek .

ALLOWEXITLEVEL allows players to exit levels via Exit sectors in gametypes other than Coop .

ALLOWTEAMCHANGE is applicable for CTF and Team Match .

PLAYERSFOREXIT Defines if 1 or all players need to be in the exit sector to exit the level .

(0014141)
Zalewa   
2016-01-20 21:48   
Please review srb2gameinfo.cpp changes within this commit:
'https://bitbucket.org/Doomseeker/doomseeker/commits/47142e80683b3dca2e8413adde5dd70d69eba726#chg-src/plugins/srb2/srb2gameinfo.cpp [^]'

This should handle all game limits that are set by integer values. Please check if I didn't mix anything up.

Boolean flags will be done in a separate commit.
(0014142)
Unknown   
2016-01-21 06:35   
(edited on: 2016-01-21 06:40)
* Deathmatch and Team deathmatch are named in SRB2 "Match" and "TeamMatch"
* (line 29) what is comptetition .?

Other than that i don't see anything wrong with it, looks like all game limits are there .

Waiting for rest of flags :) .

(0014147)
Zalewa   
2016-01-21 17:14   
Lines in the red are removed and no longer in the source code. I noticed the mispelling and corrected it.

I propose that Deathmatch and Team Deathmatch names remain as these names are directly used in server browser filters and it will stay consistent with other games.
(0014148)
Unknown   
2016-01-21 21:20   
Okay good .
(0014158)
Zalewa   
2016-01-22 19:38   
Update to version 3 is out. Please test.
(0014159)
Unknown   
2016-01-22 21:54   
(edited on: 2016-01-22 21:56)
Nice , each gametype has it's own Flags, love it . There's only one more feature that is missing , Non Dedicated server, I Mean some method to not force the server to be dedicated so that The players will start right inside their servers .

(0014160)
Zalewa   
2016-01-22 22:19   
I assume this is the only way to play a netgame where two players play on split screen and the rest can still connect? I can just add it in a form of another flag, either way.

Same for the casual room, too.
(0014161)
Unknown   
2016-01-22 22:27   
There's no way to let others join a Split screen game as far as i know, what i meant was some way to directly start a server with you inside it Rather than a console (Non-Dedicated) .
(0014162)
Zalewa   
2016-01-23 10:15   
Kermit:'https://bitbucket.org/Doomseeker/doomseeker/commits/0226c29ff65ec5e9ea97d20d366e3995f851a6a2 [^]'

And the update to version 4 is out. Please test.
(0014163)
Unknown   
2016-01-23 19:13   
Tested, it works perfect, all the flags seem to work just fine, and we can now start a listen server, this is great :) .
(0014165)
Zalewa   
2016-01-23 19:53   
I'm closing this ticket as resolved then. Glad to be of help.
(0014198)
Unknown   
2016-01-25 09:26   
(edited on: 2016-01-26 09:48)
Sorry for Having to reopen this, But there's a little bug i found:
* You can't load more than 1 Lua file for some reason .

EDIT : Another bug or not working feature, Doomseeker doesn't launch the game with the wads loaded if they're not inside the game folder (the wads that it downloads) , although it's possible to do that Manually if you use -file "Directory/yourwad.wad" "Directory/yourlua.lua" ... etc , i mean it's possible to load the files from outside of SRB2s folder but it doesn't work for Doomseeker .

Also the following Server settings are really very important to reduce the lag for a Smoother playing, if you add them it would be really appreciated :

* MAXPING (integer) : Automatically kicks players with a ping higher than the given value.
'https://wiki.srb2.org/wiki/Console/Variables#MAXPING [^]'

* DOWNLOADING <boolean> : Allows/disallows WAD downloading in a netgame.
'https://wiki.srb2.org/wiki/Console/Variables#DOWNLOADING [^]'

* MAXSEND (integer) : Sets the maximum filesize (in KB) a loaded WAD or file can be for a player to download it. Players downloading large WADs from the server will cause visible and sometimes disrupting lag in the netgame .
'https://wiki.srb2.org/wiki/Console/Variables#MAXSEND_.3Cinteger.3E [^]'

* NETTIMEOUT (integer) : Determines the maximum amount of time (in tics) to wait between packets sent before the game decides that a player has timed out from a netgame .
'https://wiki.srb2.org/wiki/Console/Variables#NETTIMEOUT [^]'

* RESYNCHATTEMPTS (integer) : Sets the number of attempts to resynch the game before kicking any desynchronised players.
'https://wiki.srb2.org/wiki/Console/Variables#RESYNCHATTEMPTS [^]'

And also those small things :

* ALLOWMLOOK <boolean> : Allow players to mouselook in a netgame .
'https://wiki.srb2.org/wiki/Console/Variables#ALLOWMLOOK [^]'

* TAILSPICKUP <boolean> : Makes players solid (similar to sv_unblockplayers) and prevent players using flying characters from grabbing others .
'https://wiki.srb2.org/wiki/Console/Variables#TAILSPICKUP_.3Cboolean.3E [^]'

* AUTOBALANCE <integer> : Automatically balances teams in CTF mode. The value (between 1 and 4) defines how great the difference in team members may be before the teams are autobalanced. Setting it to 0 turns it off.
'https://wiki.srb2.org/wiki/Console/Variables#AUTOBALANCE [^]'

* FORCESKIN <boolean> : Forces all players in the game to use the character that the server is using.
'https://wiki.srb2.org/wiki/Console/Variables#FORCESKIN [^]'

* FRIENDLYFIRE <boolean> : Enables or disables friendly fire among teammates.
'https://wiki.srb2.org/wiki/Console/Variables#FRIENDLYFIRE [^]'

* SCRAMBLEONCHANGE <integer/string> : If enabled, teams in a Team Match or CTF game will be scrambled automatically each time the game advances to another map (not if you switch maps manually).
'https://wiki.srb2.org/wiki/Console/Variables#SCRAMBLEONCHANGE [^]'

* RESTRICTSKINCHANGE <boolean> : Applies some gametype specific restrictions mentioned in page below .
'https://wiki.srb2.org/wiki/Console/Variables#RESTRICTSKINCHANGE [^]'

* JOINNEXTROUND <boolean> : force players to wait until the next round is started to join a netgame .
'https://wiki.srb2.org/wiki/Console/Variables#JOINNEXTROUND [^]'

* POWERSTONES <boolean> : Enables/disables Chaos emeralds spawning in Match, Team Match and CTF .
'https://wiki.srb2.org/wiki/Console/Variables#POWERSTONES_.3Cboolean.3E [^]'

Those can only be set by the Server admins of course . they're applicable for all gametypes except autobalance which only works for CTF , And SCRAMBLEONCHANGE which works for exclusively for both CTF and Team Deathmatch , And POWERSTONES for Match,Team Match, and CTF .

Sorry about any kind of Disturbance, Thank you so much for adding those ;)

(0014631)
Zalewa   
2016-03-31 21:53   
Updates ready for testing on beta update channel.

Quote from "Unknown"

Also the following Server settings [...] if you add them it would be really appreciated


Added all but SCRAMBLEONCHANGE in this commit:
'https://bitbucket.org/Doomseeker/doomseeker/commits/992a3bf41a2aaf20e1c975253cd5c99ba031cc00 [^]'

I omitted SCRAMBLEONCHANGE for now because current plugin API makes it impossible to add this property within realms of sanity. I can only add boolean flags and integer values and I can't provide tooltips. This property isn't self-explanatory. I'll add it when I get around to improving current API (which might take another 2 months or so)

Quote from "Unknown"

You can't load more than 1 Lua file for some reason .


Should be fixed:
'https://bitbucket.org/Doomseeker/doomseeker/commits/f31d2b361125d1f50cb3473e6519dad51efeb6c7 [^]'

Quote from "Unknown"

Another bug or not working feature, Doomseeker doesn't launch the game with the wads loaded if they're not inside the game folder (the wads that it downloads) , although it's possible to do that Manually if you use -file "Directory/yourwad.wad" "Directory/yourlua.lua" ... etc , i mean it's possible to load the files from outside of SRB2s folder but it doesn't work for Doomseeker.


My investigation revealed that it is not possible to load files outside of SRB2 folder when there's '-connect' present in the command line. Files can be loaded only if they're in a subtree under srb2.exe. I created a 'lol' directory and put some .lua files there and the game found them in that directory and loaded them when I tried to join a server that required them. It almost looks like the game ignores '-file' arguments when '-connect' is present on the command line.

I did nothing about this for now. I believe that it's a bug in the game and it should be fixed. If it's impossible then I have a shitty solution where Doomseeker would create a temporary directory within SRB2 directory and copy the WAD files there and then remove them when game exits. This allows for some potential situations where it will fuck up and fail to remove the temp dir and leave trash files that will hog up the drive and confuse the game upon subsequent runs. Another solution is to point Wadseeker to store files within SRB2 subdirectory, which might not sit very well with you if you also want to run normal Doom games using the same Doomseeker config and/or suffer from OCDs (no insult intended). It will also nicely fuck up if you installed SRB2 to "Program Files" and have UAC enabled - from experience there are people who are unaware why it's impossible for programs under usual circumstances to write to "Program Files" directory and its subdirs.

Please note that "create game" actions don't suffer from this problem as there's no '-connect' in cmd line there.
(0014658)
Unknown   
2016-04-03 15:44   
I Just tested it, everything works great so far, the only thing that's missing is the -FORCE option :'https://wiki.srb2.org/wiki/Console/Commands#-FORCE [^]' .
(0014665)
frozenLake   
2016-04-03 17:15   
(edited on: 2016-04-03 17:32)
Something that would be nice is a way to identify if the Server is running a separate version of SRB2 than the norm, such as EXE Mods like SRB2 Kart and Thokker. Being able to use those EXEs instead when joining those servers would also be nice.

EDIT: "version" and "subversion" in the PT_SERVERINFO packet contain this information.

(0014998)
frozenLake   
2016-05-29 19:09   
(edited on: 2016-05-29 19:11)
I'm not sure if I'm doing something wrong, but regardless of adding "+forceskin -1" to the command line parameters, it seems to automatically force the skin to sonic, which is a numerical value of 0. having it set a forceskin of -1 would turn it off, which is the default according to the wiki.

(0015412)
Unknown   
2016-07-28 10:31   
(edited on: 2016-07-28 10:32)
I suggest adding Force skin value changing option to Rules tab, I Think it would be better .

(0017765)
SteelTitanium   
2017-05-27 03:18   
Like it was said on note 0015412, can you make it so the force server skin button isn't a check-mark box, and be a integer field instead, the host can set the skin everyone is forced to use to a integer value.
(0017766)
Zalewa   
2017-05-27 06:08   
I'll have a look at this.
(0017769)
SteelTitanium   
2017-05-28 01:30   
That would be great, another thing I noticed, is that the score of the player isn't reported correctly, it's either 255 or 0, nor is the status of the player.
(0017774)
Zalewa   
2017-05-28 14:50   
Try to update Doomseeker from the beta auto-update channel and see if things have improved. There was indeed a problem with refreshing servers that were already known to Doomseeker. I have also moved the "+forceskin" rule to the "Rules" tab and turned it into a cryptic int field. Not much else can be done at a short notice, given that we're nearing Doomseeker 1.1 and I don't want to stir the code.

In regards to the score: I have noticed that SRB2 itself does something wrong with it. If you connect to a game that is in progress, you won't receive score of other players that was received as the bonus score for finishing the level. The in-game score table itself diplays the wrong values. See this pic.

In regards to player status: if plugin version 8 doesn't fix your problem, you'll have to be more specific about what doesn't work. I'm gonna need steps to reproduce.
(0017778)
SteelTitanium   
2017-05-28 18:00   
(edited on: 2017-05-28 18:01)
it actually does report the score correctly, I noticed both players in the screenshot was named player 3, which must have been causing a conflict on which score is tied to which player. What I noticed is that if the player's score is too high, it goes into negatives. 'https://i.imgur.com/f49cMNu.png. [^]' According to this page:'https://wiki.srb2.org/wiki/PT_PLAYERINFO [^]'
The data type for "score" is Unsigned 32-bit Integer, which should fix the score showing up as negative when it's very high.

(0017779)
Zalewa   
2017-05-28 18:19   
Quote from "SteelTitanium"
I noticed both players in the screenshot was named player 3, which must have been causing a conflict on which score is tied to which player.

Did you check? Can you point out to me any place in the source code of the game where the player's data structure is being found and accessed basing on player's name?

The same problems with score were happening when players were not named the same.

Quote from "SteelTitanium"
The data type for "score" is Unsigned 32-bit Integer, which should fix the score showing up as negative when it's very high.

Doomseeker stores player's score as "short", which results in this problem. Converting this to "long" (or int32) should provide enough space. I don't suppose the score can realistically go above 2 billions.
(0017781)
SteelTitanium   
2017-05-28 19:22   
I can't seem to reproduce that bug with scores not being correct for players who join a in-progress game. Anyways, yeah, the score can't realistically go above 2 billions, so that's fine. In that case, then, aside from the score going into negatives, I can't find any else to report.
(0017783)
Zalewa   
2017-05-28 19:43   
1. Run cooperative server.
2. Join with 1 client.
3. Collect rings.
4. Kill some enemies.
5. Beat the level.
6. Refresh the server from Doomseeker or join as a second client - you won't see the score awarded as bonus for completing the level, but you will see the score awarded for kills.

I'm using the newest SRB2 build, just downloaded it today.
(0017785)
SteelTitanium   
2017-05-28 22:10   
Must have been a weird one time thing, not even with the steps provided I can't reproduce this bug.
(0018675)
WubTheCaptain   
2017-10-30 03:51   
What more needs to be done here to tag this as resolved?
(0018727)
Zalewa   
2017-11-02 14:20   
Quote from "WubTheCaptain"
What more needs to be done here to tag this as resolved?

Good question, heh.

I suppose I kept this open because I wanted to add some additional rules to the "Create Game" box that are not strictly boolean. Current Doomseeker Plugin API assumes that all flags are "yes or no" kind of thing. We could expand this API to allow drop-down lists, min-max integers, floats, arbitrary strings, etc.

Another thing that is mentioned in the notes here are the ".exe" mods, although I'm not sure how to implement them in a seamless way. Probably when joining a server, Doomseeker would need to pop out a box allowing the user to choose game executable to run.

These are all expansions to the Plugin API, hence this was kept on hold for the release of 1.1. We can consider this for 1.2, although I think we still have more important issues to attend to, so maybe for later.

I wouldn't close it just yet.

(0018730)
WubTheCaptain   
2017-11-02 15:11   
I think the basic support is already there, and what you've listed are enhancements which could have their own tickets for suggestions/bugs and be children of this ticket.

As far as I see it, this ticket (with its description to be able to browse servers) is resolved.

(0019123)
SteelTitanium   
2018-03-04 06:01   
There's still the issue with the score going into negatives when it reaches a really high value though.
(0019138)
Zalewa   
2018-03-04 19:42   
SteelTitanium, do you know what is that "high" value exactly?
(0019141)
SteelTitanium   
2018-03-05 18:00   
It seems when the score is 32768, it starts overflowing into the negatives.
(0019142)
Zalewa   
2018-03-05 18:43   
This shouldn't happen since Doomseeker 1.1 and SRB2 plugin version x.9. What versions are you using? Please see in the "About" dialog.
(0019143)
SteelTitanium   
2018-03-05 21:52   
Compiled from source, so currently it's version 1.2~beta-180222-2034M 5aaddc0f1531 Revision:1519331696
(0019144)
Zalewa   
2018-03-05 23:16   
1.'https://bitbucket.org/Doomseeker/doomseeker/commits/50fef8db0065467d7da8987f3dbf810906de17c0 [^]'
2.'https://bitbucket.org/Doomseeker/doomseeker/commits/c2c7f37b1afb92d40f4ccc13905079db486fe3d1 [^]'

Try to compile newest tip now and see if it gets any better.

And thanks for being persistent in reporting this.

(0019145)
SteelTitanium   
2018-03-06 20:02   
Yup, the recent changes fixed it!
(0019685)
Zalewa   
2018-09-23 07:35   
As the original ticket says to "add support for SRB2", I'd say that the support has been added and this ticket has been open long enough. If anyone still desires extra features, they better fit separate tickets.