Official Soldat Forums

Soldat Talk => Game Improvements / Suggestions => Topic started by: Mr on February 17, 2012, 03:23:40 pm

Title: [Feature] Option to have a match recorded by the server
Post by: Mr on February 17, 2012, 03:23:40 pm
A request from the volks at #lrs:
An option to start recording a demo from the admin console, without the need of a Soldat client, and option to automatically start the recoding when a new game starts.

Commands:
/sdauto 1|0 - Starts recording a demo when a new map starts, matching entry in soldat.ini to set a default value (autodemo)
/sdstart [filename] - Starts recording a demo to ./demos/<filename>.sdm, has no effect if a demo is being recorded already or autodemo is active
/sdstop - Stops recording the current demo and/or temporarily disables autodemo until the next game starts

If no filename is given or autodemo is active, use the following format: YYYYMMDDHHMM_Mapname_ID.sdm, where ID is a number that is incremented if the file already exists, and is 0 if it doesn't (so that we don't get ambiguous file names).

This would be a great help for evidence gathering in gathers and leagues - please discuss!
Title: Re: [Feature] Option to have a match recorded by the server
Post by: Leo on February 17, 2012, 03:25:32 pm
Yep, what Mr said :D
Title: Re: [Feature] Option to have a match recorded by the server
Post by: KentheGreat on February 17, 2012, 03:26:10 pm
Yep, what Mr said :D
Seconded /oldnick
Title: Re: [Feature] Option to have a match recorded by the server
Post by: Mittsu on February 17, 2012, 03:29:34 pm
seal of approval, this would be very helpful for server admins
Title: Re: [Feature] Option to have a match recorded by the server
Post by: Xadhoom on February 17, 2012, 03:30:42 pm
+1   :)
Title: Re: [Feature] Option to have a match recorded by the server
Post by: Bistoufly on February 17, 2012, 05:20:25 pm
That would be amazing.

I would love to have that for the runmode server.

Wholeheartedly  F12
Title: Re: [Feature] Option to have a match recorded by the server
Post by: Shoozza on February 18, 2012, 12:04:32 am
Note there is already a commend in the client which does this for the client
/RECORD name    records a demo stored in the Soldat\Demos folder

I suggest we keep the server consisted with the client which means /record should start recording a demo.
Could you update the commands to fit that?
Title: Re: [Feature] Option to have a match recorded by the server
Post by: Mr on February 18, 2012, 06:00:17 am
Hey Shoozza, thanks for your quick response.
The reason why I came up with commands starting with /sd (= server demo) is that an ingame admin should be able to start the demo process on the server.

Now if the command is /record, it will not be sent to the server, instead the Soldat client will start recording.
How about "/sdrecord [name]" to keep it similar to the command name in the client?
Title: Re: [Feature] Option to have a match recorded by the server
Post by: Shoozza on February 18, 2012, 08:50:04 am
how about /serverrecord ?
Title: Re: [Feature] Option to have a match recorded by the server
Post by: Mr on February 18, 2012, 09:18:17 am
Yes, "/serverrecord" sounds good, it even gives a little hint about what it's going to do, and that it's going to do that on the server!
Wonderful, now that we've found a good name for the command to instruct the server to start recording a demo, will you implement it? ;)
Title: Re: [Feature] Option to have a match recorded by the server
Post by: SyavX on February 18, 2012, 05:40:43 pm
How about "sv_" prefix for the server commands like in H-L/CS?
/sv_autodemo
/sv_record
/sv_stop
/sv_recordtime
Title: Re: [Feature] Option to have a match recorded by the server
Post by: Falcon` on February 19, 2012, 08:56:12 am
that all sounds great guys, but what about extracting those demos later? I could just set up FTP server pointing to demo's folder, but first of all not everybody can, and 2nd admins will be able to download only whole (or well, what they recorded but i guess that in most cases it'll be just recording everything as starting to record after !admin call is a little bit too late) demos while in most cases they'll be interested only in a small part containing teamkill/hacker etc.
Title: Re: [Feature] Option to have a match recorded by the server
Post by: Mr on February 19, 2012, 09:43:12 am
[...] in most cases they'll be interested only in a small part containing teamkill/hacker etc.

A script could log the time when someone types !admin, relative to when the last demo was started (scriptcore events?). A timeslider (see Google Moderator) in the client could then be used to fast-forward to that point when playing the demo.

Regarding downloading/receiving the demos: The client could either have an option to stream the demo from the server (this requires quite a bit of code I guess tho), or, like you suggested, set up an FTP server. There are plenty of tutorials for that on the internet, even those new to *nix and servers should be able to do it, so I do not think this will become an issue (people can upload maps, they sure can download demos).
Title: Re: [Feature] Option to have a match recorded by the server
Post by: Falcon` on February 19, 2012, 02:29:21 pm
I would see it in a way that server records everything and keeps data only from last n hours (both if recording enabled and buffer length should be settable somewhere in ini). Buffer would be stored, as Mr suggested, in files somewhere on server in that date format. Admin could also be able control recording behavior from console using commands specified above+should be able to get the specified part of the demo but how exactly i don't know. Maybe file protocol could be adjusted? You'd have to add authorization though...