Skip to content

OfficialExtan/bhoptimer

 
 

Repository files navigation

Build status

Build status

AlliedModders thread

Download

shavit's simple bhop timer

a bhop server should be simple

Mapzones' setup demonstration

Requirements:

Optional requirements:

  • DHooks - required for static 250 prestrafe (bhoptimer 1.2b and above)

Installation:

  1. Add a database entry in addons/sourcemod/configs/databases.cfg, call it "shavit"
"Databases"
{
	"driver_default"		"mysql"

	// When specifying "host", you may use an IP address, a hostname, or a socket file path

	"default"
	{
		"driver"			"default"
		"host"				"localhost"
		"database"			"sourcemod"
		"user"				"root"
		"pass"				""
		//"timeout"			"0"
		//"port"			"0"
	}

	"shavit"
	{
		"driver"         "mysql"
		"host"           "localhost"
		"database"       "shavit"
		"user"           "root"
		"pass"           ""
	}
}
  1. Copy the desired .smx files to your plugins (addons/sourcemod/plugins) folder
    2.1. Copy shavit.games.txt to /gamedata if you have DHooks installed.
  2. Copy base.nav to the maps folder.
  3. Copy the files from the sound folder to the one on your server. Make sure to also have equivelant bz2 files on your FastDL server!
  4. Copy the configs file to your server and modify shavit-sounds.cfg if you wish to.
  5. Restart your server.

Required plugins:

shavit-core - no other plugin will work without it.
shavit-zones - required for server functionality and for shavit-misc.
shavit-wr - required for shavit-stats, shavit-replay, shavit-sounds, shavit-stats and shavit-rankings.
shavit-rankings - required for some functionality in shavit-chat.

Todo for 1.5b release (out of beta!)

  • Migrate every menu to the 1.7 transitional syntax.
  • Migrate DBI to the 1.7 transitional syntax.
  • Migrate events to the 1.7 transitional syntax.
  • Migrate ADT_Arrays to ArrayList.

~ shavit-core:

  • Fix chat colors for CS:S.
  • Add table prefix. (shavit_core_sqlprefix)
  • Add shavit_core_nostaminareset ("easybhop")
  • Make a global enumerator/variable with per-style settings (bitflags) - configs are canceled, just recompile the plugin with your own edit of shavit.inc.
  • Add unranked styles.
  • Add native that will execute threaded MySQL queries and allow callbacks - including safety checks, to prevent error spams. (Migrate DBI to new syntax first!)
  • Measure strafe sync, also have it in the Shavit_OnFinish forward.
  • Add bonus timer.

~ shavit-hud:

  • HUD toggling command. (sm_hud)
  • Zone (start/end) HUD toggling command. (sm_zonehud)
  • [CS:GO] Replace "- Replay Bot -" for bots with an underlined and pretty text.
  • Show time in a "TIME/RECORD" format including percentage for replay bots.
  • Remove sm_zonehud and make sm_hud a menu that can toggle HUD, zonehud and spectators list in a panel.
  • Support for bonus timer.

~ shavit-replay

  • Add admin interface. (delete replay data)
  • Remove replay bot data on deletion of the #1 record.
  • Make a boolean native that confirms if a client is a replay bot with loaded data. (used for shavit-hud)

~ shavit-wr

  • Make UpdateWRCache smaller. Will result in extra optimization and more uhm.. dynamic!
  • Add a cvar that limits the amount of records in the WR menu. (default: 50 | shavit_wr_recordlimit)
  • Remove sm_wrsw and make sm_wr a dynamic menu with all difficulties. (dynamic!)
  • Add strafe sync to the WR menu where available.
  • Add sm_bwr sm_bonuswr sm_bonusworldrecord.

~ shavit-stats

  • Make style names editable from shavit.inc (like I did to the rest of modules) (dynamic!)

~ shavit-misc

  • Allow changing the prespeed limitation.

~ [NEW PLUGIN] shavit-sounds

  • Play sounds (from config file | configs/shavit-sounds.cfg) on new events.
  • On new #1.
  • On personal best.
  • On map finish.

~ [NEW PLUGIN] shavit-rankings:

  • Create tables. (mappoints, playerpoints)
  • Allow RCON admins to set ideal points for map and time for the default style.
  • Implement an algorithm that will calculate points for the map, will also take the time and style into account. Add a +25% bonus if the time is equal or better than the ideal one.
  • Use a weighting system for points calculation. The highest ranked time will be weighted 100% and worse times will be weighted as 5% less each time.
  • Calculate points and rank for players once they connect to the server.
  • Add sm_top that will show the top X players, sort by points.
  • Add natives. float Shavit_GetPoints(int client) int Shavit_GetRank() void Shavit_GetMapPoints(float &points, float &idealtime)
  • Add a command that recalculates points for every player in the server. To be ran when rankings are first installed for retroactivity purposes.

~ [NEW PLUGIN] shavit-chat:

  • Add logic that processes chat without requiring an external plugin such as Simple Chat Processor (Redux).
  • Custom chat titles/colors for rank range. (will require shavit-rankings)
  • Custom chat titles/colors per individual player.

About

CS:S/CS:GO bhop timer

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • SourcePawn 71.4%
  • PHP 14.9%
  • C++ 12.6%
  • Other 1.1%