* block s on regular hsw (so you can't shsw...)
* block shsw on hsw while still allow S to stop
* also remove IN_FORWARD when removing IN_BACK
i hope these commits are squashed so nobody sees these
* remove unnecessary bStop variable for shsw
* cleanup GetTrackName()
* a few more changes to change mod_zone_bonus & add Track_Bonus_Last
* fix undefined symbol sTrack
* fixup !bwr for multiple bonuses
* fix GetTrackName() after I broke it
* add bonus number param to help text of sm_bwr
* fix !wr after I broke it adding !bwr [bonus number]
* ignore checkpoint zones for now because nothing is ready for them
* update points for bonus #2 through #8 at same time
so instead of something like `9 (track count) * 22 (style count)` queries, it'll do `3 (main, bonus1, rest of bonuses) * 22 (style count)` queries and the rest of the bonuses on the recalc all in the same query
* 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>
* 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>
* Deletes invalid times/chat records before adding the new constraints.
* Use of `ip` index while converting the IP addresses.
* Limit IP conversion transaction to 10k queries to prevent memory leak on large datasets.
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.
* in table `playertimes` add `time` to the `map` index - it should look like this:
```sql
INDEX `map` (`map`, `style`, `track`, `time`)
```
* in all tables, change all CHAR(x) to VARCHAR(x). the following are the changes:
- `chat.auth VARCHAR(32)`
- `chat.ccname VARCHAR(128)`
- `chat.ccmessage VARCHAR(16)`
- `users.auth VARCHAR(32)`
- `users.country VARCHAR(32)`
- `users.ip VARCHAR(64)`
- `maptiers.map VARCHAR(128)`
- `playertimes.auth VARCHAR(32)`
- `playertimes.map VARCHAR(128)`
- `playertimes.date VARCHAR(16)`
- `mapzones.map VARCHAR(128)`
[Promising] Promises : cud u make a setting to disable this:
[Promising] Promises : [ Timer ] WARNING: You're now in practice mode. Your times WILL NOT be saved and will be only displayed to you!
* Added `oldtime` and `perfs` parameters for forwards that missed them.
* Added `iMeasuredJumps` and `iPerfectJumps` to snapshots.
* Added a database migration to add `perfs` column.
* Added perfect jumps% to CS:S keyhint HUD. Not necessary in CS:GO due to annoying limitations.
* Added perfect jumps% to WR menu.
* Added `Shavit_GetPerfectJumps` native.
* Added `Shavit_HasStyleAccess` native.
* Added `permissions` setting to styles. Use like "p;style_tas" for example. First section is the flag needed, and the second section is the override for it.
* Changed default (1) to block button inconsistencies.
* Made the duration of inconsistencies less annoying.
* Changed the first option to 2, which stops the timer on inconsistencies.
This commit uses a different method of autobhop.
Benefits over the old one:
* Doesn't break with unusual trigger_push setups (i.e. bhop_arcane_v1, bhop_cutekittenz, bhop_ml - or any map with badges' "unbreakable boosters" prefab).
* Doesn't modify the usercmd, therefore other plugins can see the jump button being in use.
`shavit_misc_prespeedlimit`'s behavior was changed and is now `shavit_misc_prestrafelimit`. The value determines the maximum allowed prestrafe in the start zone *added* to the style's run speed. So i.e., Scroll can prestrafe up to 280 (in reality, 278) and Normal can up to 290.
The default settings for `shavit_core_blockprejump` and `shavit_misc_prespeed` were changed due to this commit.
`shavit_misc_createspawnpoints`'s default setting was changed to 6 as 32 didn't make much sense.