Ghost Recorder

Post Reply
greenie
Full Member
Full Member
Posts: 1815
Joined: Sun Nov 21, 2021 4:55 pm
Jucator SA:MP ?: Nu
Nick:: greenie
Jucator CS ?: Nu

Ghost Recorder

Post by greenie »

Ghost Recorder
TeddyDesTodes 2009

.: Description / Features :.

This plugin let player record their movements and saves them for later replay
this is useful for jumping against urself on kreedzmaps(or bhop or whatever)
like in racegame the ghost driver
Default settings are :
- 6 Saveslots per map and player
- unlimited recording time
- recording with 1,5Kbyte/s

.: CVars :.
recorder_ignore_velocity <0|1> | Default: 0 Switch to ignore Velocity data disabled by default (very buggy and not useful)
recorder_maxsize <size in kb> | Default: 2048 to disable set to 0
.: Client Commands :.
say /demomenu - shows the menu
.: Credits :.
Emp´ - helping me with cast stuff
.: Changelog :.

version 0.24 (record_rendermode.amxx)
added addToFullPack forward that only the owner of the Ghost can see it
added menuItem for visibility in rendermenu
possibly fixed servercrash when someone is recording and replaying and server is restarting/mapchanging
fixed Loading of other recording
added progress indicator to playback hud
fixed missing sequences
changed fileformat and lowered size of header (new FileVersion is 24) (still compatible with FileVersion 22)
version 0.23
moved recorddir to "addons/amxmodx/data/record/"
added menu to choose Rendermode for the Ghost
added the possibility to load recordings from other players
changed filelayout a bit
added extension ".rec" to files
added Possibility to restrict filesizes
optimized old code
version 0.21(record.amxx)
added automatic dir creation
removed unused vars
version 0.2 initially release

.: Known Bugs :.
Problems with pev_sequence and pev_gaitsequence (some sequences are not shown (upper body goes to default position)) (dont know how to fix this)(fixed in 0.24)
Sizerestriction not working hopefully fixed inn next version)
.: How to install :.
Install like normal plugin
create a folder called "record/" in your data direcory (files will be save to this directory)(created automatically since 0.23)
.: Note :.
Server need write and read rights fro save directory
per default files will be written with 1.5Kbyte/sec ( 15 min equal 1.4MB) so be sure u have enought space on your server or change RECLIMITER to a bigger value or loweer the amount of save slots
byterate is calculated like this : 48*(1/RECLIMITER) this is max byterate per sec
if you set RECLIMITER to 0.0 every playerthink will be recorded wich on normal server is approx. 66 times/sec (3.1Kbyte/s (2.7MB for 15 min))
EDIT: just tested 20 min produced 1.5MB file
didn't test on 64bit system dont know if it will work since datatypes are a bit different
only tested in CStrike
you could test it here 85.14.217.35:1338
.: ToDo :.
tweaking visual stuff if needed
.: FileStructure (Version 22) :.

[HEADER][FLOAT][THINK][THINK][THINK][THINK]... ...[THINK]

the file is read until no data is found first float is useless

Header:
INT Version [22]
INT Unix Timestamp
String[33] PLayer Name
String[33] Steam ID
String[33] Map
String[33] Hostname
String[65] Weapon Model
String[65] Player Model
Think:
Float origin[0]
Float origin[1]
Float origin[2]
Float angles[0]
Float angles[1]
Float angles[2]
Float velocity[0]
Float velocity[1]
Float velocity[2]
Int sequence
Int gaitsequence
Float Time to next think
get plugin , get source - record.sma

get plugin , get source - record_rendermode.sma
Post Reply

Return to “General Purpose”