Releases: bhopppp/Shavit-Surf-Timer
Shavit SurfTimer v1.0.5
Shavit SurfTimer Update [v1.0.4 Bugfix...v1.0.5
]
WARNING
- New ranking system is no longer support SQL version without window function, please check your database version before update
New Contributors
- @Cynosphere made their first contribution in #1
Separate control of the prespeed limit for each stage zone/track:
New option 'Speed Limit Options' added in zone edit / create menu, to control the ways to stop client from gaining speed in start zone:
- Limit horizental speed: Keep player's maximum velocity lower than a specific value (runspeed + shavit_core_prestrafelimit).
- Block Bunnyhop: Stop player if they jump more than once in start zone.
- Block Pre-jump: Stop player jumping inside start zone.
- Reduce speed when exceeding limit: Scale player's velocity to 1/3 if they exceeded limit.
- Start timer if vertical speed exists: Work as same as the functionality of
shavit_core_nozaxisspeed
.
If you have two or more start zone on a track, only the highest level of speed limit will apply to all start zone in this track.
New ranking system
New ranking system add rank as factor to caculate points
- point = rank point (RP) + finish point (FP)
RP : Main - (250, 850] | Bonus - (150, 400] | Stage - (50, 250]
FP : Main - 18.33 | Bonus - 35.0
- Formula
Main = (RP + records * ( tier^2 / 9 - tier )) / rank + (FP * (tier + (tier-4)^2 * tier))
Bonus = (RP + ( records / 2 )) / rank + FP
Stage = (RP + records * ( tier^2 / 16 - tier )) / rank + ( tier * 2 )
New features
- Persistent data for personal replay: Saved replay for a player after disconnected from server
- New sounds config option
wrcp
for beating stage records - Caculate and storage attempts and stage times for main run on staged map
- Add checkpoint records comparison menu
- Add 'Reset speed after teleport' Option for Teleport Zone
- Storage
First login
for each users, and display in Profile menu (Thanks for suggestion from @Calig) - Auto hook map start zone / end zone / stages / checkpoints for surf maps for specific targetname patterns triggers
- Integrates newmap feature in shavit-mapchooser github
- Command
!mapinfo <map>
to display info of a map in chat. - Add mapinfo HUD on key hint.
Bug fixes
- Fix uncorrect exit back on recent record sub menu
- Fix problem still able to set teleport destination in another stage zone
- Fix error on table create
- Fix bug cause StartTimer stopped by Shavit_OnStartPre after player use noclip
- Fix bug cause ArrayList.Resize to negative value when Edit replay frames for stage records
- Fix bug casue error when fetch wrcp from another map
- Fix speedometer feature disabled cause by plugin late load
- Fix translation name typos
The following commands are available in new version
!cpwr
- to see world record's checkpoint records!cppb
- to see personal records's checkpoint records!cpr
/ccpr
- to see comparison between PB and WR!specbot
- spectate a replay bot!recalcall
- recaculate all points (Admin menu)!newmaps
- open new map menu!saveloc
- alias command of!save
!teleprev
!telenext
- alias command of!prevcp
!nextcp
Merge stuffs from shavit bhoptimer & pull reqest
- SourceMod 12 fixes. (Thank you @Cynosphere)
- Fix database verison parsing. (Thank you @Awesomerly)
Change details
-
Teleport to zone changes: Set client to practice mode after teleport to zone [commit]
-
Remove style settings:
prespeed_type
blockprejump
nozaxisspeed
[commit] -
Handle speed limit logic in shavit-core instead of shavit-misc [commit]
-
Check player's speed when zone increment is 1 (Timer started) instead of when
EndTouchPost
called [commit] -
Check if a client inside a stage zone when Start/End Touch a zone instead of every tick [commit]
-
Move command sm_useshtier from shavit-ranking to shavit-wrsh [commit]
-
Convar changes:
Remove:
shavit_misc_prespeed
shavit_misc_prestrafezones
shavit_misc_prestrafelimit
shavit_core_blockjump
shavit_core_nozaxisspeed
Add:shavit_core_prestrafezones
shavit_core_prestrafelimit
shavit_hud_recordnamesymbollength
shavit_zone_defaultzoneprespeedlimit
shavit_replay_playernamesymbollength
shavit_personalreplay_persistdata_expiredtime
shavit_wrsh_mapnamefix
Default change:shavit_replay_preruntime
: 2.0 -> 1.7shavit_replay_postruntime
: 0.1 -> 0.2
- Native change:
Shavit_GetZoneUseSpeedLimit
bool ->Shavit_GetTrackSpeedLimitFlags
int - Add natives:
Shavit_GetClientStageAttempts
Shavit_SetClientStageAttempts
Shavit_GetClientStageAttempt
Shavit_SetClientStageAttempt
Shavit_GetClientStageFinishTimes
Shavit_SetClientStageFinishTimes
Shavit_GetClientStageFinishTime
Shavit_SetClientStageFinishTime
Full Changelog: v1.0.4...v1.0.5
Shavit SurfTimer v1.0.4 Bugfix
Shavit SurfTimer update [v1.0.4...v1.0.4 Bugfix]
Release note:
I'm sorry for publish a bugfix release and found this bug at this late,
Please understand that I am the only one working on this plugin and no one test this plugin for me.
And if there are any server using my plugins (appreciate it), please use this bugfix version ASAP
New feature
- Allow players to use checkpoints when timer paused
- Insert new wr's checkpoint times after old wr is deleted
- New command
sm_mapinfo
: Print the map info to a client - New variable: {type} for shavit-advertisements.cfg, type of map - staged / linear
Bug fixes
- Fix checkpoint times database insert error caused by SQL .
- Fix bug that cause bot angle flick on replay start.
Shavit SurfTimer v1.0.4
Shavit SurfTimer update [v1.0.3...v1.0.4]
New plugin
- New plugin shavit-persenoalreplay, save 5 replay in cache for players and allow them to watch.
New point caculate System
- Change the way to caculate point for finish map / bonus / stage.
- See more details HERE
Chat Message Options
- Add new menu to change chat message options instead in HUD option menu.
- Add Extra Finish Message for more details of your run.
- Add Points gained info when player gained points.
New features
- Caculate And Save Max / Avg / Start / End Velocity and Sync for each stages.
- New Option
Lock Axis
for zone creation, much more better to create a zone for not square-shaped platform. - Add start speed comparison to WR and PB.
- New command
sm_help
to show all commands and description in menu. - Stop player prespeed with noclip.
- Convar
shavit_zones_forcetargetnamereset
able to handle main / bonus track separately - A LOT OF New translations
Bug fixes
- Fix HUD Formating BUG.
- Fix SQL Error.
- Fix bug that cause player teleport to NULL_VECTOR on restart.
- Fix bug cause timer incidently start in wrong stage start zone.
- Fix bug of Shavit_StartReplayFromFrameCache Get Native Cell uncorrectly
The following commands are available in new version
sm_rewatch
- Watch your most recent run.sm_myreplay
sm_personalreplay
- Open personal replay menu.sm_setmaxvel
- Alias ofsm_setmaxvelocity
sm_help
- Open a menu with all commands and descriptionssm_msg
sm_message
- Open chat message option menu
Merge stuffs from shavit bhoptimer
- rename FillBoxMinMax to BoxPointsToMinsMaxs
- fix bad casts that broke Custom Airaccelerate & Custom Speed Limit zones from 7aca875
- Add no-jump and autobhop zones.
- do something to not error on negative sv_friction and negative sv_accelerate
- edit the DeprecateExactInt sql error handling a bit for #1218
Full Changelog: v1.0.3...v1.0.4
Shavit SurfTimer v1.0.3
#Shavit SurfTimer update [v1.0.2...v1.0.3]
New version has a table changes in database please check your database before install this version
Use command sm_migration 34
in server
OR
Run "ALTER TABLE startpositions ADD COLUMN stage TINYINT NOT NULL DEFAULT 1 AFTER track;" in your database
New features
- New plugin shavit-ghost2! which can draw WR route for clients in 3 different ways, use
sm_ghost
to display menu. - New plugin shavit-wrsh, fetch top records from SurfHeaven, and allow player to check their rank of map times in SurfHeaven
- Players can set start for each stages
- Admins can set map maxvelocity to each maps by using command
sm_setmaxvelocity
- Shows player's stage completions AND stage WRs in player's profile
- Show players Records of map / bonus / stage in map stats
- Show recent stage records in Recent records and allow to select map / bonus / stage records separately
- Allow to create zone by hooking a trigger but create it as box form (for multiple_trigger only)
- Draw multiple_trigger zone as trigger instead a box (added an option to draw it as a box too)
- Add new translations for new features
The following commands are available in new version
sm_ghost
- Display ghost menu
sm_toggleghost
- Toggle ghost
sm_shwr
- Display top map / bonus records from SurfHeaven (Alias: sm_shtop
sm_shmaptop
)
sm_shwrcp
- Display top stage records from SurfHeaven (Alias: sm_shstop
sm_shcpwr
sm_shstagetop
...)
sm_shmaprank
- Rank client's time of current track from SurfHeavn (Alias: sm_shrank
)
sm_shstagerank
- Rank client's current stage time from SurfHeavn (Alias: sm_shsrank
)
sm_reloadshrecord
- Admin Command Display a menu to handle some unexpected errors when fetching datas from SurfHeaven
sm_setmaxvelocity
- Admin Command Set a new sv_maxvelocity to current map which will save in database
sm_mapstats
- Display menu of player's map stats
Change to practice mode
- To prevent player from getting advantage from using noclip, the plugins will put player in practice mode in any situation when a player uses noclip.
- Practice mode WILL NOT disable when player in start zones (also stage start zone), player can only disable practice mode by using
sm_restart
(or alias command) to disable practice mode - Block player use
sm_setstart
(or alias command) if they are in practice mode or timer paused
Bug fixes
- Fix few menu display erros in TpToZone Menu
- Fix bugs of touching Checkpoint Zone
- Fix bug of noclip command listener
Merge stuffs from shavit bhoptimer
Shavit SurfTimer v1.0.2
This release has more feature than version of v1.0.1, which optimized code and few bugs and new stuffs.
- Add new zone
Zone_Checkpoint
( with database table column changes ) - Seperate stage zone prespeed limit (with database table column changes )
- Add ramp speed center HUD.
- New variable for replay config.
- Bug fixes.
Notes: If you have use v1.0.1 or lower version of this timer, please run the follow sql to fit your databse to the new version.
tablemigration.txt
Full Changelog: v1.0.1...v1.0.2
Shavit SurfTimer v1.0.1-alpha
Fix bugs, add timer repeat feature, change zone creation style
Shavit SurfTimer v1.0.1-alpha.zip
Full Changelog: v1.0.0...v1.0.1
Shavit SurfTimer v1.0.0
Version 1.0.0