Demo recorder -
RogueDrifter - 20.12.2018
Demo-Recorder
Github:
https://github.com/RogueDrifter/Demo-recorder
Installation
Simply install to your project:
Code:
sampctl package install RogueDrifter/Demo-recorder
Include in your code and begin using the library:
Testing
To test, simply run the package:
Code:
sampctl package run
Purpose of this is just as a fallback if you wanna confirm someone cheated or anything, concept is very easy as well just include it in your gamemode and everything is done on its own, check for the saved NPC files in your server folder with the player name starting with DEMO_ and ending with either _VEHICLE or _FOOT
FAQ:
1- So this catches all cheaters? No because it overwrites so things will go missing.
2- Will this fill up my space with recorded files? No because it overwrites the files per-player
3- So how does it work? Once someone connects a file is set under their name on foot, that changes every time they get in/out of a car and it gets overwritten, so every player can only have 2 files, one inside of a car and one on-foot.
4- How do i play it? If you've ever used NPCs you'll know how to get it done, just spectate the NPC once you play the recorded file if you wanna check for anything.
Topic is always open for discussion/suggestions.
Re: Demo recorder -
Gammix - 20.12.2018
Aight, you shoulda made a killcam system instead, or some similar sort of implementation so players could actually replay the record file in a seperate virtual world.
Re: Demo recorder -
ForT - 20.12.2018
Great idea, but I do not know if this would affect performance if many players are online, and I think the final file size is not a problem if the server is hosted in a VPS with several GB of space, and in addition we could exclude automatically old script with a simple script, so you can use the example format: "nickname.date" or "nickname.loginid".
Another implementation could be done with FCNPC, the administrator could see the replay directly from the server using FCNPC_StartPlayingPlayback without having to download the file, however I do not know if FCNPC can access files directly from scriptfiles.
Re: Demo recorder -
NaS - 20.12.2018
Quote:
Originally Posted by ForT
Great idea, but I do not know if this would affect performance if many players are online, and I think the final file size is not a problem if the server is hosted in a VPS with several GB of space, and in addition we could exclude automatically old script with a simple script, so you can use the example format: "nickname.date" or "nickname.loginid".
Another implementation could be done with FCNPC, the administrator could see the replay directly from the server using FCNPC_StartPlayingPlayback without having to download the file, however I do not know if FCNPC can access files directly from scriptfiles.
|
Yes it can. You can also use a regular NPC for this by escaping the npcmodes directory (file name can be communicated from your gamemode to the npc script).
Re: Demo recorder -
RogueDrifter - 20.12.2018
@Gammix i assume it'd be used to be played later separately after someone reports a player for some reason or if someone gets banned by your anti cheat and claims 'I didn't do that!' So you can confirm it this way, although you got a good point it'd be a good update.
@Fort i didn't try it on big servers feel free to do so, also, the reason it overwrites is because i already tried to use the date format so every player would have a full-on record although it was just too much for me but you can edit that easily if you want maybe i'll separate it into versions.
Also i never really used FCNPC so feel free to fork it and show us your works if you're good for it :)
Re: Demo recorder -
SapMan - 21.12.2018
Exactly how is it? Is it like the counter strike 1.6 (record demo, stop demo, view demo)? Because I've always looked for something like that so nobody has excuses.
Re: Demo recorder -
Pottus - 21.12.2018
It is a good idea but kind of a naked release thus far. There is no real substance but it looks like a pretty good prototype idea to expand on.
Quick idea -
Code:
RecordLocation(Float:x,Float;y,Float:z);
Records all players entering a specific area
- Timestamp when player enters area, leaves area, spawns, or dies
- Save: timestamp, player name, eventtype, recording file name
That is just for starters, it feels like you didn't even try when making this.
1-Star from me overall it is completely incomplete. I am not going to vote because it could be a lot better and wouldn't take long to make it better.
Re: Demo recorder -
RogueDrifter - 21.12.2018
@SapMan yeah you're right thats what i had in mind making this
@Pottus Yeah you're right but then again the whole idea of making it with a date format makes it too crowded on the scriptfiles folder but i'll see about creating a few functions going forward.
Re: Demo recorder -
Sellize - 22.12.2018
pretty neat
Re: Demo recorder -
N0FeaR - 11.01.2019
Another good one from Rogue good job!
Re: Demo recorder -
RogueDrifter - 11.01.2019
Thanks @all the above