Skip to content

Releases: shavitush/bhoptimer

v2.5.5

14 Jul 13:25
e4c8be0
Compare
Choose a tag to compare

v2.5.4...v2.5.5

v2.5.5 update notes

This update features automatic database migrations. Backup your database and read this gist before updating.

Somewhat big update. I'm unmotivated recently so it'll probably be a while until next one.

  • prespeed setting in style config now supports the value of 2. If it's set to 2, the value of shavit_core_nozaxisspeed will be respected by the style.
  • Fixed an error that occurs when someone finishes a map without having any sound in the "noimprovement" section.
  • Fixed record cache issues when maps have more than 1000 records combined between all styles/modes.
  • After opening the KZ menu manually, it will be kept open unless interrupted by other menus.
  • Fixed points recalculation for long map names.
  • Fixed SQL query issues when using table prefix.
  • Fixed foreign key constraints issues when running multiple bhoptimer servers on the same database.
  • Added new CS:GO radio commands to the radio block list.
  • Split replay loaders for the different kinds of replay formats. (technical change, helps me maintain the code)
  • Fixed the very first frame of replays from version 1.4b and below not being played.
  • Added shavit_rankings_llrecalc cvar, see the section below.
  • Optimized chat plugin to not query the database for data saving unless it is needed.
  • Added database migrations! Refer to my gist about it.
  • Optimized the database structure by A LOT. Wait a while (depends on how big your database is) after starting the server, after updating. You should wait at least 30 min for big databases before restarting the server.
  • Added the ability to force invisible zones to be shown the players. The use case is making glitch zones visible to players while not doing it for all of them.
  • Added custom sv_airaccelerate zones.
  • Changed the behavior of No Speed Limit zones to Custom Speed Limit. All old zones are unlimited speed limit.
  • Added GitHub Sponsors. Sponsoring itself is not usable right now because I'm not accepted yet though.
  • Fixed "weapon is not owned by client " error.
  • Added tracking for map completions. It is shown in the submenu of a record's details.
  • Added "simplerladders", see cvar section.
  • Optimized rankings plugin to not query the database for recalculations more times than needed.
  • Split database handles per-plugin instead of using the same connection for all of them.
  • Fixed sync for HSW. Thanks @Nairdaa!

Console Variables

  • shavit_rankings_llrecalc - Maximum amount of time (in minutes) since last login to recalculate points for a player. sm_recalcall does not respect this setting. 0 - disabled, don't filter anyone. This setting optimizes recalculation time by a lot.
  • shavit_core_simplerladders - Allows using all keys on limited styles (such as sideways) after touching ladders. Touching the ground enables the restriction again.

v2.5.4

15 Apr 01:30
88b8b9a
Compare
Choose a tag to compare

v2.5.3...v2.5.4

v2.5.4 update notes

This is a hotfix update with some changes requested shortly after the v2.5.3 update.

  • Added force_groundkeys style property. It forces the key blocking settings even when on ground. e.g. enabling this on W-Only will not allow prestrafing with the A/D keys.
  • Fixed an issue that caused !r to not show up the menu that has "your timer will stop" warning.
  • Slight reorganization the checkpoints menu. I moved the reset button one item below, and it now has a confirmation prompt when you try to reset your checkpoints.
  • Fixed multiple issues with the KZ menu. Additionally, it will now not keep persisting when manually closed.
  • Fixed an issue that caused autobhop WR submenus show the perfect jump %.
  • Fixed a query error with the !rr command on servers running MySQL 5.7 and ONLY_FULL_GROUP_BY. Lower versions, and MariaDB servers are unaffected.

v2.5.3

14 Apr 21:45
2a19140
Compare
Choose a tag to compare

v2.5.2...v2.5.3

v2.5.3 update notes

  • Added pause button in KZ CP menu.
    • In addition, the KZ CP menu now persists and will re-open in case it disappears.
  • Fixed error when a player uses !top before the rankings have been calculated.
  • Removed the pointless round restarting logic in the Dynamic Timelimit module.
  • Made the default method for zoning to be aiming.
  • Added warning that shows up before using functionalities that can stop the timer when your time passes a defined number of seconds. See the new added console variable shavit_misc_stoptimerwarning. This is triggered on noclip/stop and style changing commands.
  • Added "noimprovement" sound config file. The sound will play if you finish the map, but not beating your personal best.

Console Variables

  • shavit_misc_stoptimerwarning - the amount of seconds someone's timer needs to have to receive the "your timer will be stopped" warning upon using !stop, !nc or changing their style.

API

  • Added natives:
    • Shavit_CanPause - determines whether a player is able to pause or not. A value of 0 means that they can pause or resume their timer. Otherwise, this native retrieves flags: CPR_ByConVar, CPR_NoTimer, CPR_InStartZone, CPR_NotOnGround. Sample usage:
if((Shavit_CanPause(client) & CPR_ByConVar) > 0)
{
    // this code will be executed if the pause cvar is disabled
}
  • New native behavior:

    • Shavit_ResumeTimer - now has a second parameter, teleport. True will teleport the player to the position they paused at.
  • Added forwards:

    • Shavit_OnTeleport - called upon teleporting with a checkpoint
    • Shavit_OnStopPre - called when the timer is stopping. Ignored when Shavit_StopTimer is called with the bypass parameter set to true. Returning false here will prevent the timer from stopping.

v2.5.2

05 Apr 23:06
5fb84e6
Compare
Choose a tag to compare

v2.5.1...v2.5.2

v2.5.2 update notes

  • Fixed harmless error that occurs when a player is disconnecting before getting fully in-game.
  • Fixed being able to break records by -0.000. Might or might not work. Probably does though.
  • Added integrity checks to replay files.
  • Fixed minor memory leak caused by loading corrupted replay files.

v2.5.1

29 Mar 05:45
c631f2f
Compare
Choose a tag to compare

v2.5.0...v2.5.1

v2.5.1 update notes

Highly recommended to update if you're on v2.5.0.

  • Fixed a game breaking exploit related to persisted data.

v2.5.0

29 Mar 03:45
95d9cad
Compare
Choose a tag to compare

v2.4.1...v2.5.0

v2.5.0 update notes

  • Added enabled, inaccessible and kzcheckpoints style modifiers.
    • enabled - 0 to disable a style, -1 to disable it from being shown in all menus.
    • inaccessible - disables manual switching to the style. You may only switch to such a style using external modules (use case is TP mode for KZ).
    • kzcheckpoints - enables a new mode for checkpoints. They don't modify the timer, you don't keep your speed and they get reset as soon as you start a new run.
  • Added persisting for timer data (also known as "saveloc") on player disconnection.
  • Optimizations to database structure have been applied. If your initial installation was prior to this release, please follow the database maintenance wiki page's instructions.
  • Optimizations to database queries have been applied as well.
  • Improved cvar enforcing in replay plugin.
  • Re-added the "No Speed Limit" text to CS:S HUD.
  • Fixed foreign key error in chat module.
  • Fixed errors in chat module when running SQLite.
  • Changed default zone modifier setting to 16 units.
  • !replay now opens the menu at the same page if playback fails.
  • Fixed a bug that allowed teleporting to deleted checkpoints.
  • Fixed a rare bug with replay playback.
  • Fixed WR counter being inaccurate.
  • Fixed compatibility with ONLY_FULL_GROUP_BY database servers.
  • Removed very old table migration code due to it being slow.
  • Now !style shows bonus rank 1 times if you're on bonus track.
  • Added a decrease button for grid snap during zone setup.
  • Added !mapsdone and !mapsleft commands.
  • Maps left menu now shows map tier.
  • Removed old delete function from admin menu.
  • Fixed mp_humanteam setting being ignored.
  • Changed zone setup to be easier for bonus zones.
  • Transition to last frame of the replay will be smoother now.
  • Fixed replay HUD bug for styles with speed multipliers.
  • Fixed issues with the replay counter for HSW.
  • Revamped spawn point addition. It also supports bonus track now.
  • Fixed rare bug caused by slow databases.

Console Variables

  • shavit_misc_hidechatcmds - hides all commands in chat.
  • shavit_misc_persistdata - controls minimum time (in seconds) to persist timer data for a player that disconnects.

API

  • Added forwards:
    • Shavit_OnTeleport - called upon teleporting with a checkpoint
    • Shavit_OnSave - called upon saving a checkpoint

v2.4.1

08 Mar 11:19
a0d2052
Compare
Choose a tag to compare

v2.4.0...v2.4.1

v2.4.1 update notes

  • Fixed exploit related to checkpoints.
  • Added sm_wipeplayer command.
  • Added style ordering to menus. Use ordering style config to order styles without changing their IDs.
  • Added the ability to stop replay playback as the requester.
  • *Improved logging of single-record deletion.
  • !replay command moves you to spectator, and refers you to the replay bot upon use now.
  • Added PB split to HUD. The top-left HUD will split to two sections; "best" and "PB".
  • Added map tier to start zone HUD.
  • Fixed unintended behavior with checkpoints menu.
  • Added the {rank} format specifier to custom clan tag console variable.
  • !r shows the track in the message if start zone doesn't exist.
  • Fixed HUD showing wrong time when playing with timescale.
  • Fixed checkpoints not properly setting targetname and classname.
  • Fixed error when certain commands are used from the server's console. This fix allows them to work now.
  • Changed !deleteall so you can delete all records per-style rather than just per-track.
  • Fixed an issue where deleted replays would not be overwritten.
  • Added cooldown for replay playback/stop for non-admin users.
  • Fixed replay bots breaking at certain interactions; such as stopping playback between the replay's end and its nullification and then requesting new playback.
  • Improved smoothness of all replay playback.
  • Fixed a bug that caused the last frame of replays seem out-of-place.

API

  • Added natives:

    • Shavit_ChangeClientStyle
    • Shavit_ReloadLeaderboards
    • Shavit_DeleteReplay
    • Shavit_GetOrderedStyles
    • Shavit_IsPaused
  • Added forwards:

    • Shavit_OnRankAssigned

A relatively big update considering it's a minor version, have fun!

v2.4.0

02 Feb 00:56
1cd4b4c
Compare
Choose a tag to compare

v2.3.6...v2.4.0

Note: bhoptimer now requires SourceMod 1.10 or above.

  • Revamped HUD for CS:GO. CS:GO HUD has been technically modified so it is easier to manipulate for developers.
  • Restructured the whole plugin to use enum struct. Code should be easier to understand. As far as I'm aware other modules should not break. However, they will need to be modified if a recompilation is desired.
  • Fixed chat colors in CS:GO.
  • Deprecated Shavit_GetPlayerPB and Shavit_GetWRTime. Use Shavit_GetClientPB and Shavit_GetWorldRecord respectively.
  • Added shavit_rankings_weighting cvar. This allows you to control the weighting in rankings. Set this to 1.0 to disable weighting and instead give users the exact amount of points shown in record submenus.
  • Changed users.name collation to utf8mb4_general_ci. This is not an automatic migration and will require manual action for existing installations.
  • Added shavit_core_nochatsound to get rid of the chat ticking sound from timer messages.
  • Fixed exploit in chat plugin that allowed breakage of the chat in CS:S.
  • Fixed RTLer not working in chat plugin.
  • Fixed attempts to teleport a kicked/non spawning central bot resulting in logged errors and paused script execution.
  • Changed !hud so it is easier to understand for the end-user. The menu now also has new settings that allow you to disable the main HUD's components individually.
  • Added commands to toggle frequently changed HUD components. !keys, !master, !center, !zonehud, !hideweapon, !truevel
  • Fixed exploit allowing users to submit segmented runs as if they were done in realtime.
  • Fixed server crash exploit with checkpoints.

v2.3.6

23 Dec 18:50
98d9b29
Compare
Choose a tag to compare

v2.3.5...v2.3.6

bhoptimer v2.4.x and above will require SourceMod 1.10 (6371 or newer)

  • Fixed out of bounds error in Shotgun Shot sound hook
  • Prioritized custom spawns > server zones > prebuilt zones

v2.3.5

07 Dec 05:54
f527455
Compare
Choose a tag to compare

v2.3.4...v2.3.5

  • Fixed some stats being off (map completion, ranks etc)
  • Fixed targetnames and classnames not saving properly in checkpoints
  • Updated run speed offset for CS:GO
  • Made color formatting in shavit-chatsettings.cfg possible