Commit Graph

129 Commits

Author SHA1 Message Date
KiD Fearless
77676db8ed Tidy up dynamic time difference so that both cheap and expensive methods are available.
dynamic time difference is now disabled by default, and will be using a shortened convar name. it is reccomended that if you do use the cheap method to set it to 2 or 3 as not having an early reference point was the main cause for time skipping.
2020-11-14 07:45:42 -07:00
kidfearless
c52c3c3e79
Add account id validation when deleting replays
* Fixed bugs

* Make it optional

* no empty line

* Update shavit-core.sp

* How can I didn't notice this before
2020-11-10 12:40:53 -07:00
KiD Fearless
b20a2c6762 Update documentation and change some verbage 2020-11-10 12:40:06 -07:00
Joe
e1e7d3bf2e
Don't include preframe count for dynamic time diff (#971)
"Also, when you go back to startzone (not with !r) your dynamic time is not back to 0 when you have more than 10 seconds on the timer (you can have even 30 on it, walk back to startzone, walk out and it will show -10 sec on dynamic timer right away)."
2020-10-17 14:17:12 -06:00
Joe
a4f471479c
grab Z from replay origin for dynamic time diff (#970) 2020-10-17 09:00:41 -06:00
Joe
50805a5d8d
just spectate the bot 4head (#969) 2020-10-15 09:20:46 -06:00
KiD Fearless
596c631861 Revert "begin moving persist replay frames out of shavit-misc"
This reverts commit d2cfeeebda.
2020-10-04 07:47:56 -06:00
Q
d4d51c752d Fixed bugs 2020-08-20 09:44:27 +08:00
KiD Fearless
d2cfeeebda begin moving persist replay frames out of shavit-misc 2020-08-09 13:49:54 -06:00
KiD Fearless
f417730b01 fixup GetClosestReplayTime part 1 2020-08-02 21:13:52 -06:00
KiD Fearless
03775a910f Add convar for max search length for dynamic time differences 2020-07-25 19:48:55 -06:00
KiD Fearless
1e53a1ab81 Optimize Shavit_GetClosestReplayTime 2020-07-25 19:41:51 -06:00
KiD Fearless
f0ecfaf2a7 Add preframe sanity check 2020-07-11 16:58:26 -06:00
Herman Simensen
dec640f2b4
New timer method, tick fractions & StartReplay native (#931)
* Add Convar to restrict noclip in start zone

* remove unused translation file

* Require the enum struct size to be passed to natives

This should hopefully prevent Invalid memory access from plugins compiled on older version of the timer. If an enum struct is changed then plugins compiled on older version of the timer will be forced to be recompiled to match the version they are using.

* Fix save states not tracking preframes

Misc. name changes for natives. And a somehow possible exception fixed when getting a record.

* Add hitbox/center mass cvar (#930)

* Add optional cvar for player center of mass/player hitbox for touching zones

* 2.5.7a Final Changes

fix spelling mistake
add missing optional native
tabify spaces

* Tick offsets, new timing method

Added the tick fraction system from Momentum Mod. Timer is now run within ProcessMovement

* Add StartReplay Native

* Remove debug code

* remove extra gamedata

* Change Hook To Post.

* Increment version

Co-authored-by: KiD Fearless <kidfearless1@gmail.com>
Co-authored-by: Nairda <38843773+Nairdaa@users.noreply.github.com>
2020-07-08 18:00:28 -06:00
kidfearless
48f051f78c
Update very_good_yes from master (#932)
* Add Convar to restrict noclip in start zone

* remove unused translation file

* Require the enum struct size to be passed to natives

This should hopefully prevent Invalid memory access from plugins compiled on older version of the timer. If an enum struct is changed then plugins compiled on older version of the timer will be forced to be recompiled to match the version they are using.

* Fix save states not tracking preframes

Misc. name changes for natives. And a somehow possible exception fixed when getting a record.

* Add hitbox/center mass cvar (#930)

* Add optional cvar for player center of mass/player hitbox for touching zones

* 2.5.7a Final Changes

fix spelling mistake
add missing optional native
tabify spaces

Co-authored-by: Nairda <38843773+Nairdaa@users.noreply.github.com>
2020-07-07 17:37:17 -06:00
KiD Fearless
26c9f0381d Save the proper frame count to the replay files 2020-06-17 19:31:23 -06:00
KiD Fearless
8f0fd02f32 Merge branch 'very_good_yes' 2020-06-16 21:01:24 -06:00
KiD Fearless
2b16a8d2e9 Fix replay bots desyncing after WR 2020-06-16 20:49:45 -06:00
Nairda
469785b80c
Update to current api standards (#922) 2020-06-10 11:45:14 -06:00
Nairda
d1308939bd
Add dynamic timer difference (#921) 2020-06-10 11:16:15 -06:00
Nairda
f2ae4b050d
Fix hud error bug spam in server console and prespeed on replay (#918)
#BlameNairdaIfItBreaks
2020-06-05 22:00:53 -06:00
Nairda
dff6f61145
fix replay bug (#906)
Speculatory fix for "replay bug"
2020-05-05 08:19:54 -06:00
deadw1nter
e753b7bdd8
Remove extra prerun frame, Add dynamic time difference (#890)
* Make clearpreframe optional

* Remove extra prerun frame, Add dynamic time difference
2020-04-25 16:13:52 -06:00
KiD Fearless
1671f8380c Update FormatSeconds to handle negative time
* Remove shavit_hud_prerun_countdown

* Replace %with %%
2020-04-10 11:38:31 -06:00
deadw1nter
91f83e2c2a
Clean up prerun code + Add prerun countdown to hud (#886)
* remove timer preframe variables

* Prerun should only record when you are in start zone

* Make clearpreframe optional

* add prerun countdown to hud
2020-04-10 09:57:21 -06:00
KiD Fearless
3846122367 Change language of prerun convar 2020-04-07 14:16:59 -06:00
deadw1nter
db5ee570f0
Prerun should only record when you are in start zone (#885)
* Make clearpreframe optional
2020-04-07 14:12:32 -06:00
KiD Fearless
9affa982cf remove shavit_replay_maxlength_instart 2020-04-06 10:29:24 -06:00
KiD Fearless
94693fc6d8 overwrite older preframes instead of clearing them upon reaching the max list limit 2020-04-04 13:28:30 -06:00
KiD Fearless
8650fe86b7 always return the actual run time 2020-04-04 12:39:27 -06:00
Nairda
986ebcd427
segmented prespeed fix (#883)
* Update shavit-misc.sp

* Update shavit-replay.sp

* Update shavit.inc

* Update shavit.inc

* Update shavit-misc.sp

* Update shavit-replay.sp
2020-04-04 11:17:31 -06:00
deadw1nter
d8fbcbb780 Implement prerun feature for replay (#882)
* Implement prerun feature for replay

* Update shavit-replay.sp

* Update shavit-replay.sp

* Using blacky's method to handle prerun

I know it is kinda copy-pasta, but it is the best way that I can come up with :(

* I suck at naming 👎
2020-04-02 14:15:19 -06:00
KiD Fearless
53d71509bd Merge branch 'very_good_yes' 2020-03-07 00:47:10 -07:00
Kyle
e75617e191 Fix admin menu
Fix for adminmenu late load or reload
2020-03-07 13:28:31 +08:00
KiD Fearless
ec5888d1f6 Changed pragma dynamic to allow for longer replay bots 2020-02-24 11:20:43 -07:00
KiD Fearless
3283a26d45 Added Convar_class methodmaps for timer convars 2020-01-22 17:16:37 -07:00
KiD Fearless
0313239eed Add check for unset timescales 2019-12-20 11:22:07 -07:00
KiD Fearless
32e994aa18 Added dynamic timescales.
Start zone will no longer enforce 1.0 style speed.
2019-12-19 11:53:21 -07:00
KiD Fearless
c42d14f46d Added Shavit_OnTrackChanged and Shavit_OnReplaysLoaded 2019-12-18 12:14:22 -07:00
KiD Fearless
b2abc371ab Fix Shavit_GetReplayBotCurrentFrame 2019-11-24 11:12:54 -07:00
KiD Fearless
7e1c729bc1 Added "Shavit_GetClientFrameCount" and "Shavit_GetReplayFrames" 2019-08-05 16:31:47 -06:00
shavit
c84815584c Refactored event hooks in replay plugin. Should broadcast events properly now. 2019-07-31 20:19:02 +03:00
shavit
fd121092c8 Refactored database handles so that there are multiple instead of a single one. 2019-05-31 17:32:03 +03:00
shavit
0650d20eff Removed ancient SetPrefix code and put it in a stock function instead. 2019-05-31 17:03:27 +03:00
shavit
547f90ef62 Added automatic database migrations and revamped overall database structure.
Now I can push database migrations without making the plugin's users do the querying on their own.

List of migrations:
* **Converted all SteamIDs in the database from SteamID3 to Steam Account ID format. The difference is simply stripping of the [U:1: prefix and ] suffix. This change speeds up the queries and reduces the database's size by a lot.**
* Removal of `workshop/` paths from all map names in the database.
* Added index to `lastlogin` to speedup the filtering I added to rankings with `shavit_rankings_llrecalc`.
* Removed `country` from database. It was completely unnecessary.
* Converted IP addresses from plaintext to a single 4 bytes integer.
* Converted `date` of records from a string to integer.
2019-05-12 07:57:04 +03:00
shavit
26d5bfa3ba Split replay version loaders
And fixed a bug with old replays where the very first frame wouldn't
be loaded.
2019-05-03 10:56:56 +03:00
shavit
8b2e3357bb Fixed a minor memory leak when loading corrupted replay files. 2019-04-06 01:58:34 +03:00
shavit
38bec72377 Replay subversion 3 (#776) 2019-04-06 01:53:24 +03:00
shavit
39572abfd9 Added persisting timer data (#757). 2019-03-27 19:50:03 +02:00
shavit
6a73893857 Made teleport to last frame of replay playback seamless. 2019-03-27 11:36:27 +02:00