Commit Graph

180 Commits

Author SHA1 Message Date
deadw1nter
7477c7780f A shitty implementation 2021-03-01 17:41:59 +08:00
Joe
b62352835f
Merge branch 'very_good_yes' into delete_replay 2021-03-01 02:12:30 +00:00
Joe
27dfcd740f add timestamp to finish-forwards. add Shavit_ShouldSaveReplayCopy and Shavit_OnReplaySaved 2021-02-27 19:39:21 +00:00
Joe
4b97af25d8 add avg/max velocity to run completion message 2021-02-26 20:41:58 +00:00
Joe
5351e49e76 spread avg/max velocity into as many places as possible 2021-02-26 18:28:40 +00:00
deadw1nter
6ae4ce15d9 Add mapname param to OnWRDeleted 2021-02-24 20:04:34 +08:00
kidfearless
7c5298f721 fixup compile errors 2020-12-04 07:51:23 -07:00
kidfearless
200ffd16f8 Removed shavit_getstylesettings from shavit-wr 2020-12-04 07:48:57 -07:00
Joe
a1e60b39fa
Multiple bonuses (#982)
* 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
2020-11-30 09:40:45 -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
Joe
c40ab49fac
Wr suggestions (#972)
* make !wr say map not found when map not found...

* use translation string for 'map was not found'

* stockify GuessBestMapName() and also use in sm_tier

* fix formatting

Co-authored-by: KiD Fearless <kidfearless1@gmail.com>
2020-10-17 15:41:43 -06:00
Q
1ec04b4993 no empty line 2020-08-20 09:59:30 +08:00
Q
d4d51c752d Fixed bugs 2020-08-20 09:44:27 +08:00
Dustin
06aa539d9e
Added Shavit_GetClientCompletions (#908)
* Added Shavit_GetClientCompletionss

* Misc. changes

Co-authored-by: KiD Fearless <kidfearless1@gmail.com>
2020-07-10 22:01:28 -06:00
Kyle
e75617e191 Fix admin menu
Fix for adminmenu late load or reload
2020-03-07 13:28:31 +08:00
KiD Fearless
3283a26d45 Added Convar_class methodmaps for timer convars 2020-01-22 17:16:37 -07:00
Dustin
0c7a0702d0
removed ] that was to much 2019-08-16 19:26:44 +02:00
shavit
a66d75e9db Added failsafe to prevent data loss when players finish maps without cache being loaded (#813). 2019-07-24 15:34:46 +03:00
shavit
89d33d91d4 Added Shavit_OnFinishMessage forward (#821).
(and changed PB cache to only update after the finish message is sent to the players)
2019-07-24 15:19:49 +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
70dd8f7c9c Added tracking for map completions (#804). 2019-05-28 18:32:24 +03:00
shavit
25ca9f72da Removed gI_RecordAmount for a more elegant solution. 2019-05-23 22:16:33 +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
fbe78584ae Fixed table creation when using the same database for more than one server. 2019-04-27 12:54:06 +03:00
shavit
bb74e14bcf Fixed SQL issues on table creation when using table prefix. 2019-04-26 17:09:37 +03:00
shavit
c2467f4d52 Fixed odd behavior when a map has more than 1000 records. 2019-04-18 05:08:43 +03:00
shavit
9550c7a801 Fixed SQL error in recent records when running MySQL Server 5.7
... what a surprise, MariaDB doesn't throw this error.
2019-04-15 04:19:43 +03:00
shavit
a375fff570 Fixed all WR submenus showing perf% 2019-04-15 04:03:16 +03:00
shavit
fb0b84878e Added "noimprovement" sound type (#783) 2019-04-14 23:35:35 +03:00
Nairdaa
8baa8d2dfe
Update shavit-wr.sp
-0.000 wr time fix
2019-04-03 00:35:21 +02:00
shavit
12005e8c18 Rewrote queries to support ONLY_FULL_GROUP_BY (#764). 2019-03-27 10:27:50 +02:00
shavit
648eb17d57 Removed ancient sm_deletestylerecords command.
sm_deleteall should be used instead
2019-03-26 02:26:04 +02:00
shavit
bbccdcf28a Removed ancient table migration code (#758).
Should speed up initial load after map change by a lot! I believe this is now useless.
2019-03-25 10:20:23 +02:00
shavit
463b8a857b Major optimizations to database structure.
* 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)`
2019-03-25 09:33:34 +02:00
shavit
79a6fef09c Added "enabled" and "inaccessible" style settings. (#761) 2019-03-24 23:10:00 +02:00
shavit
3784ab969b Added foreign keys (#758). 2019-03-23 05:48:31 +02:00
shavit
4c9a969d3a Added far more extensive logging for single record deletion. 2019-03-08 09:00:02 +02:00
shavit
0fa1cbd58e Added the ability to stop playback as the requester. (#705) 2019-03-07 01:20:50 +02:00
shavit
fce9ba6b11 Fixed !deleteall removing replays of all styles. 2019-03-07 01:04:49 +02:00
shavit
08f0224759 Added menu ordering for styles (#681).
Also added Shavit_GetOrderedStyles ofc.
2019-02-24 17:05:39 +02:00
shavit
9a27655f79 Added the ability to delete all records per style (#667). 2019-02-24 16:23:25 +02:00
shavit
78bba83fd0 Added Shavit_ReloadLeaderboards. 2019-02-24 15:53:51 +02:00
strafe
683e75c474 Remove semicolon after closing brace on enum structs
https://github.com/alliedmodders/sourcepawn/pull/319
2019-02-21 23:32:15 +00:00
shavit
3114eec03f Got rid of the cached cvars bullshit
protip: don't follow hosties' coding conventions that shit sucks mad dick
2018-12-27 06:42:02 +02:00
shavit
a0ab1b7147 Structified some of WR plugin, deprecated Shavit_GetPlayerPB
(and GetWRTime)
2018-12-27 00:12:02 +02:00
shavit
2ab6c57e1f Refactored whole plugin to use enum structs
SourceMod 1.10 is now a requirement.
2018-12-24 00:31:50 +02:00
shavit
34a3a2ad49 reverted the dumbest fucking commit ever 2018-11-27 22:53:06 +02:00
shavit
2d192c7f88 support for sql mode only_full_group_by (#691) 2018-11-03 12:59:06 +02:00
shavit
020acc5ac2 Fixed PB showing #0 when #1 2018-10-10 17:54:13 +03:00
shavit
d1d594503e Dropped dynamic arrays for strings, unless necessary. 2018-09-23 04:16:23 +03:00
shavit
81dbdedfba Added !deletemap (#668) 2018-09-15 17:26:11 +03:00
shavit
9d4077d4ba untested but might fix #0 in topleft hud
i can't reproduce the issue on demand unfortunately so this is a gamble
2018-07-10 08:35:00 +03:00
shavit
a1a318b007 Fixed SQL error on new setups. 2018-05-13 21:14:10 +03:00
shavit
4bcfae7e94 Don't show perf% for old records. 2018-05-02 13:54:01 +03:00
shavit
8c25086471 Added perfect jump% measuring for scroll styles.
* 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.
2018-05-02 12:21:38 +03:00
shavit
8861c388fe Added record count in !delete menu, disabled buttons when unnecessary. 2018-05-02 10:56:21 +03:00
shavit
799d6ba65b Added replay deletion to admin menu. 2018-05-02 10:30:44 +03:00
shavit
c1b93bfdff Opt-in to per-plugin adminmenu integration rather.
Rather than creating the category via core and then adding items on it.
2018-05-02 10:23:43 +03:00
shavit
e2e60bdc70 Code style adaptions. 2018-04-15 21:56:48 +03:00
shavit
fdeceabcf0 Fixed CS:S HUD breaking apart after adding new styles without restart. 2018-03-20 04:32:47 +02:00
shavit
b6861033d0 Added logging for admin actions in shavit-wr. 2018-03-15 00:23:55 +02:00
shavit
ee8b85621c Changed playertimes' structure for the billionth time..
See: 74d468c639...40f21523f4

Also, changed `style` and `track` to TINYINT.
2018-01-23 05:22:32 +02:00
shavit
a61cfadfd2 Fixed an issue with WR menu record count.
The menu would show the amount of records for the current map rather than grab it from the map itself.
2018-01-13 09:35:21 +02:00
shavit
5810dbc806 Micro-optimization to shavit-wr 2018-01-03 21:28:50 +02:00
shavit
48b66f09ef Reverted this change I forgot to remove in first place.. 2017-12-16 10:53:03 +02:00
shavit
225dd2fadf Fixed "n records" in WR menu capping at shavit_wr_recordlimit 2017-12-11 21:21:33 +02:00
shavit
596934c735 Fixed shavit-wr's cvars being respected as bool instead of int (#535) 2017-12-11 20:46:07 +02:00
shavit
e36d917f6d Update table creation queries. 2017-11-23 22:20:33 +02:00
shavit
d20839218c New replay bot format (#434) and some of #537 2017-11-21 11:28:57 +02:00
shavitush
d371d99ff3 Fixed !rr selecting wrong row content. (#532) 2017-11-19 01:53:09 +02:00
shavitush
d443726fe3 Fixed issues with long names in !rr menu. 2017-11-19 01:43:38 +02:00
shavit
6ba9fe5499 Added cycling for zone drawing (#490) 2017-11-15 04:19:00 +02:00
shavit
6503b6573b Added Shavit_GetTimeForRank (#512)
Also fixed return value for Shavit_GetRankForTime's description.
2017-11-15 03:14:19 +02:00
shavit
f65f7f4411 Added "oldwr" parameter to Shavit_OnWorldRecord (#512) 2017-11-15 03:01:27 +02:00
shavit
76189611b9 Fix !bwr back button issues (#511) 2017-11-12 20:21:50 +02:00
shavit
ed11f900e8 Fix invalid array index issue (#484)
L 11/05/2017 - 21:07:50: [SM] Exception reported: Invalid index 0 (count: 0)
L 11/05/2017 - 21:07:50: [SM] Blaming: shavit-wr.smx
L 11/05/2017 - 21:07:50: [SM] Call stack trace:
L 11/05/2017 - 21:07:50: [SM]   [0] ArrayList.Get
L 11/05/2017 - 21:07:50: [SM]   [1] Line 2202, E:\git\bhoptimer\addons\sourcemod\scripting\shavit-wr.sp::GetRankForTime
L 11/05/2017 - 21:07:50: [SM]   [2] Line 2038, E:\git\bhoptimer\addons\sourcemod\scripting\shavit-wr.sp::Shavit_OnFinish
L 11/05/2017 - 21:07:50: [SM]   [4] Call_Finish
L 11/05/2017 - 21:07:50: [SM]   [5] Line 1016, E:\git\bhoptimer\addons\sourcemod\scripting\shavit-core.sp::Native_FinishMap
L 11/05/2017 - 21:07:50: [SM]   [7] Shavit_FinishMap
L 11/05/2017 - 21:07:50: [SM]   [8] Line 2321, E:\git\bhoptimer\addons\sourcemod\scripting\shavit-zones.sp::StartTouchPost
2017-11-08 01:57:45 +02:00
shavit
f597b2dd5e Missed this one.. 2017-10-29 18:20:29 +02:00
shavit
a1629d839c Add indexes, VARCHAR >> CHAR(n).
BIG optimization.
2017-10-29 18:08:44 +02:00
shavitush
70e885c25f Restructured files. 2017-10-24 01:05:09 +03:00