Releases: shavitush/bhoptimer
v3.1.0
important things
shavit-replay
was split intoshavit-replay-playback
andshavit-replay-recorder
- delete shavit-replay.smx or stuff will break
- added
minimum_time
(default: 3.5) andminimum_time_bonus
(default: 0.5) style keys 2fc7254 98505fd 3618269- You will need to adjust these for any meme dumb styles that let you go really fast like parkour, unreal, or thanos.
main changelog stuff
- closestpos has been updated to v1.1.1. https://github.com/rtldg/sm_closestpos/releases/tag/v1.1.1
- moved checkpoint code out of
shavit-misc
and intoshavit-checkpoints
- sped up queries used for recalculating points
shavit-mapchooser
stuff- added
smc_mapvote_printtoconsole
a3e3e06 - fix an error introduced that involves novote & rtv 0164d15
- made
!map
with no args show the menu using theshavit-mapchooser
list 3388c7b - fix
!map
menu using wrong parameter for client 4f98303 - made rtv change the map immediately if novote wins cf51054
- added
Shavit_GetMapsArrayList()
andShavit_GetMapsStringMap()
cdb4b57 - remove nomination on disconnect ad837a7
- added
- added
shavit_rankings_weighting_limit
ae82d9a - add missing sync next to strafe count in CS:S hud c5d4679
- changed
shavit_misc_botfootsteps
toshavit_replay_bot_footsteps
c33ea7c - turned replay reading & writing functions into stocks so they can be used by external plugins easier ab0fc28
- removed
Shavit_OpenCheckpointMenu()
. UseFakeClientCommand(client, "sm_checkpoints");
instead 0b31c6a - removed
Shavit_OpenStatsMenu()
. UseFakeClientCommand(client, "sm_profile steamid");
instead 1bb7b3e - fixed bug that was changing human names on connect message c81f958
- added an alternate format for the
!keys
text that should work better for linux players a0a2cce - flashlight flag is now disabled when someone uses
!spec
0f66a08 - swapped to using
OnPlayerRunCmdPost
for recording replay frames 55b6253 - fixed
isBestReplay
andisTooLong
being swapped inShavit_OnReplaySaved()
4d8faa1 de1d1d5 - fixed own playtime display & rank in
!playtime
menu df2e9c4 - added some stripper configs for bad maps 09693df d59399b 5a39f5c 849bc0e 3f3474f
- made
!hide
's set-transmit hook to also hide dead players like btimes (so players can't use a speclist cheat in csgo) 73b1794 - removed
shavit_misc_bhopsounds 0
5d26e76 - allow
!setstart
outside of the start-zone b88367d - removed
shavit_core_timernozone
4b51bd7 - split shavit.inc into .inc files for each plugin. shavit.inc now just includes all the separate .inc files.
- mapfixes for
bhop_overthinker
's bonus,shavit_misc_resetclassname_main
to unbreakbhop_japan
,kz_bhop_strafe_comjump2
andkz_bhop_strafe_comjump2_v2
,bhop_horseshit_5
, unbreakbhop_decbble
59ec8eb,bhop_appaisaniceman3
dedbba5 5b8a149, and some more misc 5882e45 - something to stop hsw tracking strafes on
w
573e97e - something that might let people unrtv after a non-rtv'd mapvote cf7c1d8
- replaced
shavit_misc_weaponsspawngood
with!hud
settings that toggle USPs with silencers and glocks being given burst-fire. 8a31bc8 0591499- added
!hud
setting that lets you pick between spawning with a USP or glock. - added
Shavit_GetHUD2Settings()
in this commit - made weapons spawn with skins 8ce9cd9
- added
- Fixed SQL error that'd happen from inserting player names on CS:S due to steam names being
[32+1]
and CS:S names being[32]
by introducingSanerGetClientName
. 5312c31 - Fixed name changes not showing up in chat f61ea0f
- added
!sm_drawallzones
andshavit_zones_allowdrawallzones
a68b21e - added
!tptozone
9cb2298 - added map list matches to !wr menu bce7c04 64088b6
- added
Shavit_GetReplayFolderPath()
70ca6ac- also
Shavit_GetReplayFolderPath_Stock
xd 4b711b1
- also
- merged bhopstats into repo aba5398
- adjusted !keys alignment 03d44c9
- added
Shavit_Core_CookiesRetrieved()
andLoading...
text to hud while player cookies are loading f344fdd - added
kzcheckpoints_ladders
style setting 48d8e01 - added
climb_zone_*
parsing for prebuilt zones 3057492 - messed around with the csgo hud to hopefully make it look better 7e04e84
- added
!addzone
&!delzone
as aliases bd596be - fixed css perfs not showing if sync is not enabled 07b165b
- disable style setting
force_timescale
4e16365 - merged
!ranks
menu and!chatranks
menu https://github.com/shavitush/bhoptimer/com...
v3.0.8
stuff
- fix replay bot being given a usp repeatedly on csgo e7bf386
- hide
timeleft
from chat ifsmc_hide_rtv_chat 1
468e9bf - fixed
sm_profile
without any args not working 468e9bf - fixed
sm_mapsdone
without any args not working 0f250cc - added
bhop_symbiotic
to shavit-mapfixes.cfg 87f361a - make the
Alphabetic
list in !nominate filter out maps followingsmc_min_tier
andsmc_max_tier
83a572c - added map count to tier display string 7375900
- added bhop_drop to mapfixes b64ed47
- added
shavit_hud_debugtargetname
b1a5339 - added
shavit_timelimit_minimum
&shavit_timelimit_maximum
35de5f5 - added
shavit_timelimit_hidecvarchange
ad48845 - change the dynamic time limit averaging from row-count to the minimum times thing 6b2f709
- add
shavit_misc_spec_scoreboard_order
e53fb80 - add ranks to playtime menu c52eb10
- removed
shavit_misc_prespeed_startzone_message
and usage ofBHStartZoneDisallowed
bfdfff0 - fixed the completion message when spectating someone that I broke 480dbef
- prevent nominate/unnominate when the map vote is active or finished c3e57b8
- added
sm_reloadmap
&sm_restartmap
which reload the current map f425294 - some replay bot changes so bots join and have the true name earlier f7fd2af
- adjust dynamic time limit to always multiply average e174b95
- added matches menu when using !map afed33e 276d74b
v3.0.7
edit: bhoptimer-v3.0.7-2.zip added to fix !profile
with no arguments saying it was broken
edit: bhoptimer-v3.0.7-1.zip added with a single commit added for csgo handling of shavit_replay_botweapon
e7bf386
stuff
- some name trim & buffer size stuff for !recent menu 60d9609 94f3069
- reverted shavit-wr change that resulted in handles leaking 8ee42d6
- in-game player's cache is refreshed when they have a time of theirs deleted b893486
- added
!ihate!main
1954583 - !wr menu remembers page 82c1605
- !wrn, !wrsw, !bwrscroll, etc added c805154
- added
Shavit_SetReplayCacheName
36a4686 - fixed prebuilt zones being cached twice ea5e6b853579a9ec3b4cA1fcbb6816c0b17d643a
- added support for playing btimes replays (file names still need to be renamed) fe1d01e
- tried to prevent zone beam flickering a bit a62a5ca fe076df
- fix thing that was wiping !wr menu cache 5eae3f6
- fix mvp star query not running c25e340
- wrholder queries changed 8bc2662
- add more parameters to
Shavit_OnReplayStart
andShavit_OnReplayEnd
f88885b - fixed tf2 linux bot creation 6e3bd85
- add dominatingme symbols for players who hold a wr on the current map 4d03e30
- fix tf2 uncrouch that would limit velocity cfa724f
- added shavit_misc_prespeed_startzone_message b602c57
- add playtime tracking. total time & also per-style. (replaces shavit-playtime by cam/whocodes) 670f220 d3b285f bf9b731
- made !profile/!mapsdone/!mapsleft
<steamid>
work b23542c 0698a9d In End/Start Zone
is now only shown when you are inside a zone of your current track ef5bf0c- fixed bullet sound/impact hook not working 100% of the time 24e6a0b
- merged in shavit-mapchooser d79cf72
- many speed improvements. you can now use !map or !nominate with 6k maps and it won't lag :)
- added
smc_prefix
,smc_anti_spam
,smc_maplist_type 4
,smc_rtv_spectator_cooldown
,smc_exclude_prefixes
,smc_autocomplete_prefixes
,smc_hide_rtv_chat
,smc_nominate_delay
,sm_extend
(alias ofsm_extendmap
),smc_mapvote_extend_limit -1
- added something to stop segmented players from accidentally voting by blocking the menu for 1.75s 7342baa
- duplicate maps don't show in the map vote menu anymore fed3551
- moved setting timescale for eventqueuefix events into the timer to handle some style settings (you'll also need to update eventqueuefix) f8147a6
- added
bhop_kirous
to shavit-mapfixes.cfg 3149fc6 - added track to zone log message 07a55bd
- !stats/!profile menu was made cooler by @NukoOoOoOoO & @Nairdaa #1077
- fixed being able to abuse endtouch boosters on segmented (requires eventqueuefix) f4d8e55
- migrated map names in db to be lowercase f23bd4b
- updated csgo offsets for UpdateStepSound & GetPlayerMaxSpeed 5b522d3 06e9f23
v3.0.6
- fix reset-checkpoints menu from being overlapped by the checkpoint menu reopening. thanks, haze fc801e8
- fixed some more errors that came up from the Shavit_OnDatabaseLoaded stuff 309421a 599b276
- wr cache is now emptied on map end so you no longer see stale times on map change for a couple seconds 09f34bc
- delayed bot name change to prevent crash in Host_Changelevel f7cd8bf
- stopped timescale from being set to less-than-or-equal-to zero. this should fix the rare bug that'd cause people to be stuck on map change 4553286
v3.0.5
replaced with zip with some more sql handle checks & a fix for the Reset checkpoints
menu before you can fix it
v3.0.5
- The zone intersection checks now block start & end zones from intersecting. 6bcb16b e00b394
- Fixed a number of things for replay bots using custom-frames
- Added
kz_bhop_izanami
toshavit-mapfixes.cfg
f5a5f5e - Made the WR message2 (avg/max vel & perf percentage) only print for non-
autobhop
styles. a373329 - Added
Shavit_OnRestartPre
to fix usingsm_r
to respawn from spectator. 3f14b65- The return value from
Shavit_OnRestart
is now ignored.
- The return value from
- Added
shavit_core_disable_sv_cheats
to blocksv_cheats
from being set. 140b43d c5480e7 9f313ee 4da5d52- The following commands can only be used by rcon admins now:
ent_setpos
setpos
setpos_exact
setpos_player
explode <player>
explodevector <player> ...
kill <player>
killvector <player> ...
give
- Also, some of the cheat
impulse
s.
- The following commands can only be used by rcon admins now:
- The checkpoints menu will now reopen every 0.5s to help people who have bad internet aa78c6f
- Weapons on the ground will now be removed every 10s if
shavit_misc_noweapondrops
is enabled. c3ad16b - Nobody liked the replay postframes increasing the time at the end of the replay, so it was removed 2eb78a2
- Changed the
wrhrank*
family of TEMPORARY tables to be VIEWs instead d4b61a4 - Made sure sm_closestpos handles are deleted when a replay is unloaded. c8bcd75
- By the way, the releases page now has linux & windows binaries made from github actions. Thanks @fuckOff1703
- Prebuilt zones (
mod_zone_*
) are inserted into the database now so things like!mapsleft
work properly for them. - Replay Props have been improved so you can now see entities that are outside your
AreaNum
! 2733faf - Added
SHAVIT_LOG_QUERIES
2b4d77d
v3.0.0 - Fluffytail edition
v3.0.4
- make mp_humanteam always apply
- prevent zones from being placed inside another zone
- fix grid snap visualization
v3.0.3
- added
shavit_misc_resettargetname_main
&shavit_misc_resettargetname_bonus
to help with some more maps - trim lines in convar_class so potentially remove erring crlfs
- reopen !replay menu only if still open
- fix some checkpoint/gravity/timescale/speed related stuff
- make mapname buffers all use PLATFORM_MAX_PATH
- add missing parameters to function declaration
- add bhop_space & bhop_crash_egypt to shavit-mapfixes.cfg
- make {styletag} & {style} work for !replay bots again
v3.0.2
- fix error from gH_SQL being null in OnMapEnd after server restart
v3.0.1
- update eventqueuefix header
- mark shavit-wr as required in notes
- fix shavit_misc_hideteamchanges on css
- make Shavit_OnDatabaseLoaded run after migration like it's supposed to
v3.0.0 update notes
This update breaks plugins using natives with enum structs along with removing some natives. Recompile any plugin that uses shavit.inc. Also stylesettings_t
was removed so anything that uses that will need to be changed, but it's easy to fix.
Also, make sure to post any errors or problems you find in the github issue tracker or in the #timer-support-here
channel of the bhoptimer discord https://discord.gg/jyA9q5k
Update Notes TL;DR (the most notable things):
- You can now make a total of 8 bonuses.
!r
now goes to the most recent track.!main
/!m
was added to go to the main track.- Multiple replay bots can be spawned simultaneously. Also you can make replay bots that loop styles & tracks.
- The
!replay
menu now has options to skip forwards, skip backwards, and play at 2x speed. - The stage times from the WR run will now be saved (if you add stage zones).
- Support added for
hermansimensen/eventqueue-fix
to allow timescaling map events and help prevent some map exploits. - Postframes added to replays.
- More efficient time-difference calculation possible with
rtldg/sm_closestpos
- Times should now be slightly more accurate by basing off tick-interval instead of frame-time.
Concommands
- added
sm_ccadd <steamid>
andsm_ccdelete <steamid>
to give ccname&ccmsg access via steamid instead of adding them with admin flags or something (#861). 19c5ccb sm_recalcall
andsm_recalcmap
should be faster now.- added
sm_toggleadverts
for clients. - Multiple bonus typo convenience commands added.
sm_b1
,sm_b2
, etc through tosm_b8
. - Multiple stage typo convenience commands added.
sm_s1
,sm_s2
, etc throughsm_s9
. !r
now resets your timer back to the track you were previously on.!main
/!m
was added to move you back to the main tracksm_p
has been changed to be an alias ofsm_profile
instead of noclip. You'll probably want to usesm_nc
now.sm_noclip
can now be used as an alias of the timer noclip commands. dd756b9
sm_loadunzonedmap
to load the next unzoned map from themaps
folder (doesn't include workshop maps or sub-folders).sm_save
will now refresh an open checkpoint menu.
Convars
- added
shavit_rankings_default_tier
. (#1041) - renamed
shavit_stats_mvprankones
toshavit_rankings_mvprankones
. - renamed
shavit_stats_mvprankones_maintrack
toshavit_rankings_mvprankones_maintrack
. shavit_misc_prespeed
gained5 - Limit horizontal speed to prestrafe but allow prespeeding.
70ae9bcshavit_hud_timedifference
renamed toshavit_replay_timedifference
- added
shavit_replay_timedifference_tick
to change often the time/velocity difference values are updated. shavit_misc_hideradar
will now forcesv_disable_radar
on CS:GO. 6229900- added
shavit_replay_dynamicbotlimit
to set how many replay bots can be spawned by players. - added
shavit_replay_allowpropbots
to enable/disable Prop (prop_physics) Replay Bots. - added
shavit_core_timeinmessages
to print the server time before chat messages and timer messages. 7df2e2c - added
shavit_misc_botfootsteps
to toggle replay bot footstep sounds. c4520b7 3c5fa5e 4d797d2 - added
{cr}
as an option forshavit_misc_clantag
- added
shavit_misc_weaponcommands 3
to give infinite clip ammo (useful for CSS which doesn't havesv_infinite_ammo
). 6bd7b0a - added
shavit_replay_postruntime
to set how long postframes should record. 28e9d40 - fixed
shavit_misc_godmode 1
(no fall damage) not working (#1051)- spectators being aimpunched has been fixed also. 4f23ec8
- added
shavit_misc_weaponsspawngood
to make glocks spawn on burst-fire and USPs to spawn with a silencer on. - added
shavit_core_pause_movement
to allow player movement/noclip while paused. (#1067) - added
shavit_zones_prebuilt_visual_offset
to adjust the visual zones for maps likebhop_amaranthglow
andbhop_tranquility
- added
shavit_misc_experimental_segmented_eyeangle_fix
to fix segmented replays have bad eye-angles when teleporting to a checkpoint. aff3f95
Misc
- Allow !goto/!tpto from start/end zone (#963)
- only print the stage time message once per stage (#965)
- allow !resume when not on the ground (#966)
- Multiple bonuses (1-8) added (#982)
- Bonus1 settings are copied to any bonuses that don't have settings in
shavit-zones.cfg
- Bonus1 settings are copied to any bonuses that don't have settings in
- Persistent-data, savestates, and checkpoints have been improved.
- Can now checkpoint onto a ladder thanks to
m_vecLadderNormal
. - Fixed segmented checkpoints from starting in practice mode sometimes (#1023)
- Persistent data is now kept when changing map to the same map. This is done because of server hibernation causes map changes a lot on csgo which is annoying.
- reduced some allocations and ArrayList cloning
- fixed persistent data & savestates spawning you in the wall if you were ducked in a tunnel.
- Can now checkpoint onto a ladder thanks to
- Add support for https://github.com/hermansimensen/eventqueue-fix
- boosters & map outputs can be saved in checkpoints to prevent cheesability
- events are paused from running when the timer is paused (although this still needs to be worked on)
- increased top left WR hud buffer size to handle long player names (#1050)
- changed replay bot score from 2000 to 1337 (#1059)
- initial DynamicChannels stuff added (which probably doesn't work too well)
- Fix exploit allowing extra height on spawn. f7c878b
- Speculative exploit fix for passing through zones or something. 976fc90
- Speculative fix for timers starting when you're not on the ground. 3f7d3e3
- Fixed bug that caused style command callbacks to register twice.
- Improve zone drawing cycle stuff.
- Various SQL query changes to hopefully improve the speed of some things.
- Replay bots now do a (jank) jump animation (#1046)
- Block SHSW on HSW while still allowing
+back
to be used in the air to stop. (#973) - Removed restart warning for segmented styles.
- Fixed
player_speedmod
and timescaled styles interacting. For example the bhop_voyage hot air balloon level now works timescaled. 6db6b5f- edit 2021-11-08: also
speed
andtimescale
both affect styles now since some commit somewhere... slow mo was affected. just remove the"speed" "0.5"
and it should work how it used to
- edit 2021-11-08: also
- Setspawn/setstart for each player added. !sp / !ss / !delss / !delsp (#1028)
- Added velocity difference to the HUD from the closest replay time position. 8b48ae8
- Removed
base.nav
by embedding it in shavit-replay.sp. - .nav files are now written for all maps on plugin start. 91ccae3
- .nav files can now be loaded without needing to changelevel. 0448297
- Show wrs and blank styles on
!wr notcurrentmap
. https://gi...
v2.6.0 - Community Update Edition
Edit 1: Included fix for Shavit_SaveCheckpoint native
v2.6.0 update notes
This update breaks plugins using natives with enum structs. To fix simply recompile broken plugins with latest shavit.inc
DHooks is no longer an optional requirement for the timer. You will need it installed in order to use the new precise ticking method
- GuessBestMapName moved to shavit.inc
- Tidied up shavit-chatsettings.cfg loading to throw a better exception if not present(Thanks gammacase)
- Added accountid validation to replay deletion (Thanks deadwinter)
- PB's are now reset on players if they are connected when their replay is deleted.
- Times are now incremented after a players movement has been processed in order to more accurately track times and prevent exploits.
- HUD default values can now be set from a convar.
- Turn binds now show up in keys panel
- Players can now enable seeing their rank for the given time in the top left hud.
- Checkpoints are now stored in an arraylist and can be deleted individually.
- Radar and flash are now removed constantly to prevent being displayed again.
- Stamina is now reset inside OnRestart as well.
- Added OnPlay forward to allow for dynamic wr sounds.
- Spectate bot if using the !replay command while alive.
- Implemented a fix for rounds restarting in single round servers into shavit-timelimit.
- Added enable/disable convars to minor shavit plugins.
- fix using -1 for shavit_misc_persistdata
- fix error that happens if you 'sm_tele 0' with no checkpoints
- don't set FL_ATCONTROLS when dead/spec so you can freecam while paused
- Added ProcessMovement forwards for easier access.
Big thanks to Gammacase, rtldg, nairdaa, deadwinter, carnifex, and SaengerItsWar for the majority of contributions to the development of the timer this update.
Convars
shavit_core_useoffsets
- Calculates more accurate times by subtracting/adding tick offsets from the time the server uses to register that a player has left or entered a trigger.shavit_hud_timedifference
- Enabled dynamic time differences in the hud.- Recommended to be left off.
shavit_hud_specnamesymbollength
- Maximum player name length that should be displayed in spectators panel.shavit_hud_default
- Default HUD settings as a bitflag- see description for bitflag values.
shavit_hud2_default
- Default HUD2 settings as a bitflag- see description for bitflag values.
shavit_sounds_enabled
- Enables/Disables functionality of the shavit sounds plugin.shavit_timelimit_gamestartfix
- If set to 1, will block the round from ending because another player joined. Useful for single round servers.shavit_timelimit_enabled
- Enables/Disables functionality of the shavit timelimit plugin.shavit_replay_timedifference_cheap
- Disabled 1 - only clip the search ahead to shavit_replay_timedifference_search 2 - only clip the search behind to players current frame 3 - clip the search to +/- shavit_replay_timedifference_search seconds to the players current frame.- Recommended value if set is 3.
shavit_replay_timedifference_search
- Time in seconds to search the players current frame for dynamic time differences 0 - Full Scan- Note: Higher values will result in worse performance
- Recommended value if set is 10.
API
-
Changed Structures:
timer_snapshot_t
now contains time and distance offsets.
-
Changed natives:
Shavit_DeleteReplay
now passes in the accountid to be validated against, 0 to skip.
-
Added natives:
Shavit_GetStageZone
- Retrieve the zone ID for a given stage number. Will return exception if stage number doesn't have a zone.Shavit_SetClientPB
- Sets the cached pb directly for the given client, style and track.Shavit_GetClientCompletions
- Retrieves the completions of a player.Shavit_StartReplay
- Starts a replay given a style and track.
-
Changed forwards:
Shavit_OnWRDeleted
- Added accountid of deleted record.
-
Added forwards:
Shavit_OnDelete
- Called when a player deletes a checkpoint.Shavit_OnPlaySound
- Called before a sound is played by shavit-sounds.Shavit_OnProcessMovement
- Called before the server & timer handle the ProcessMovement method.Shavit_OnProcessMovementPost
- Called After the server handles the ProcessMovement method, but before the timer handles the method.
v2.5.7a
v2.5.7a update notes
This update breaks plugins using natives with enum structs. To fix simply recompile broken plugins with latest shavit.inc
If you have performance issues after this update, disable dynamic time difference.
-
Added preruns to replays. Thanks @deadw1nter
-
Added dynamic time difference. Thanks again rellog, and @deadw1nter
-
Implemented hintfix for csgo players to reduce memory leaks.
-
Fix for adminmenu late load or reload. Thanks @Kxnrl
-
Added
jump_multiplier
andjump_bonus
to shavit-styles -
Increased dynamic memory size
-
Syntax fix for MySQL 8.0
-
Fixed perf jump detection being slightly off
Convars
-
shavit_hud_csgofix
- Apply the csgo color fix to the center hud? This will add a dollar sign and block sourcemod hooks to hint message -
shavit_replay_preruntime
- Time (in seconds) to record before a player leaves start zone. (The value should NOT be too high) -
shavit_replay_prerun_always
- Record prerun frames outside the start zone? -
shavit_misc_restrictnoclip
- Should noclip be be restricted?- 0 - Disabled
- 1 - No vertical velocity while in noclip in start zone
- 2 - No noclip in start zone
-
shavit_zones_box_offset
- Offset zone trigger boxes by this many unit- 0 - matches players bounding box
- 16 - matches players center
API
-
Added natives:
-
Shavit_GetReplayStatus
- Gets the replay status. -
Shavit_SaveCheckpoint
- Saves a new checkpoint and returns the new checkpoint index. -
Shavit_GetCurrentCheckpoint
- Gets the current checkpoint index. -
Shavit_SetCurrentCheckpoint
- Sets the current checkpoint index. -
Shavit_GetPlayerPreFrame
- Returns the number of preframes in the players current run. -
Shavit_SetPlayerPreFrame
- Sets player's preframe length. -
Shavit_GetClosestReplayTime
- Gets time from replay frame that is closest to client. -
Shavit_GetPlayerTimerFrame
- returns the number of timer preframes in the players current run. -
Shavit_SetPlayerTimerFrame
- Sets player's timer preframe length.
-
-
Added forwards:
-
Shavit_OnCheckPointMenuMade
- Called after the checkpoint menu has been made and before it's sent to the client. -
Shavit_OnCheckpointMenuSelect
- Called when before a selection is processed in the main checkpoint menu. -
Shavit_OnTimescaleChanged
- Called when a clients dynamic timescale has been changed.
-
v2.5.6
v2.5.6 update notes
This update contains changes that may alter your plugin configs. Be sure to backup your plugin configs beforehand.
This update contains changes to the shavit-zones translation files, as well as the zones config files. Update accordingly.
- Added stage zone to shavit-zones. Accessible via
sm_stages
andsm_stage
. - Moved convars into an auto-updating convar methodmap.
- Moved cp_cache_t enum struct into shavit.inc for native usage.
- Added dynamic timescales for styles like TAS.
- Fixed
Shavit_GetReplayBotCurrentFrame
pointing to the wrong native callback. - Selecting an unfinished map from the !profile menu, will attempt to nominate it for the client.
- Removed extra bracket. Thanks @SaengerItsWar
- Permission flags inside shavit-styles.cfg no longer need a command override to work.
- Chat messages from
sm_tele
are now suppressed.
Console Variables
shavit_misc_bhopsounds
- Should bhop (landing and jumping) sounds be muted? 0 - Disabled 1 - Blocked while !hide is enabled 2 - Always blocked
API
-
Added natives:
-
Shavit_GetTotalCheckpoints
- Gets the total number of CPs that a client has saved. -
Shavit_GetCheckpoint
- Gets CP data for a client at the specified index. See cp_cache_t. -
Shavit_SetCheckpoint
- Sets CP data for a client at specified index. See cp_cache_t. -
Shavit_TeleportToCheckpoint
- Teleports client to the checkpoint at the given index. -
Shavit_ClearCheckpoints
- Clears all saved checkpoints for the specified client. -
Shavit_OpenCheckpointMenu
- Opens checkpoint menu for a client. -
Shavit_SetClientTimescale
- Sets the clients dynamic timescale. -1.0 to use the timescale of the client's style.- Note: Values above 1.0 won't scale into the replay bot.
-
Shavit_GetClientTimescale
- Gets the clients dynamic timescale, or -1.0 if unset.
-
-
New forward behavior:
Shavit_OnTeleport
- now includes the checkpoint index that was teleported to.Shavit_OnSave
- now includes the index the checkpoint was saved to. As well as whether that checkpoint triggered an overflow and wiped a previous checkpoint.Shavit_OnEnterZone
- now passes the zone data for stage referencing.Shavit_OnLeaveZone
- now passes the zone data for stage referencing.
-
Added forwards:
Shavit_OnTrackChanged
- Called when a player changes their bhop track.Shavit_OnReplaysLoaded
- Called when all replays files have been loaded.Shavit_OnTimescaleChanged
- Called when a clients dynamic timescale has been changed.
v2.5.5a
v2.5.5a update notes
As usual, backup your database before ANY update in case something breaks.
If you're suspicious of server's database being slower than it should be, after updating, follow this procedure:
Note that this only applies to installations where bhoptimer was first installed before the release of v2.5.5.
- Run the following queries in your database:
# Note: if you use a table prefix, add it in front of the following keywords: playertimes, pt_auth, chat, ch_auth
ALTER TABLE `playertimes` DROP FOREIGN KEY `pt_auth`;
ALTER TABLE `chat` DROP FOREIGN KEY `ch_auth`;
- Disable the
shavit-rankings
module if it's in use. - Start the server, lock it with a password so no one can enter it.
- Run the command
sm_migration all
with root access. - Wait up to 1 minute.
- Restart the server. If you desire to use the rankings module, enable it again.
Your database should be MUCH faster if it was misconfigured due to failed migrations.
- Improved measuring for perfect jumps (scroll styles).
- Added failsafe to prevent data loss when players finish maps when the database is locked.
- Fixed !end not working on maps with trigger zones.
- Fixed trigger zones not working if the running map is the first one since server start.
- Fixed replay plugin causing connect/disconnect messages to not show up.
- Added
sm_migration
command to re-apply database migrations if needed. - Added logging when wiping player data.
- Added warning message when trying to wipe player data for invalid SteamIDs.
- Minor database optimizations.
- Fixed foreign keys not being removed/added properly for tables with prefixes, in database migrations.
Console Variables
shavit_misc_wrmessages
- change this to set the amount of messages that show up when someone sets a WR. 0 to completely disable the message.
API
-
Added natives: (thanks @kidfearless!)
Shavit_GetClientFrameCount
Shavit_GetReplayFrames
-
Added forwards:
Shavit_OnFinishMessage
- allows you to modify the finish messages in chat.