splewis / csgo-executes

CS:GO SourceMod plugin for a site-execute practice gamemode
GNU General Public License v3.0
60 stars 22 forks source link
counter-strike counter-strike-global-offensive csgo sourcemod

csgo-executes

Build status Discord Chat

Gameplay

The T team setup to execute onto a site with ~40 seconds left and the CT team is typically in a fairly standard setup. Grenades are automatically thrown for the T players and the rounds plays out the way counter-strike plays. The game goes through pistol rounds, forcebuy/lowbuy rounds, then standard gun rounds. Players can use the guns menu to select some preferences: whether they want to have an AWP, which M4 to use, and what site they prefer to play on the CT side.

When a T team wins a round, the players typically move to CT. The goal is the defend off the executes and stay on CT. However, because executes is typically best played 5v5 it's hard to get varied teams if this is strictly followed, so there is some auto-scrambling of teams every sm_executes_auto_scramble rounds.

Installation

Instructions

Download the archive from the latest build and extract ALL the files to the game server. This includes both the executes.smx and csutils.smx plugin files needed.

Note: the csutils.smx plugin comes from the practicemode project, and is used to throw the execute grenades.

Configuration

The file cfg/sourcemod/executes/executes.cfg will be autogenerated when the plugin is first run and you can tweak it if you wish.

You may also tweak the values in cfg/sourcemod/executes/executes_game.cfg, which is executed by the plugin each map start.

Some important cvars:

Creating Executes and Spawns

The plugin now comes with some default spawn configs, but you are strongly recommended to create your own. The provides spawns are likely quite out of date (some grenades may not even work) and may reflect a poor variety of executes that don't represent the current meta.

!edit: launches the editor, opens the edit menu. You will use this a lot !setname: sets the name of the spawn/execute being edited !clearbuffers: clears any spawn/execute edit buffers

When working on a map, you should:

  1. Add CT spawns. Each has a notion of 'friendliness' to a site. For example, a B site spawn on de_cache should typically have a '5' friendliness to B and a '1' to A. A spawn in mid might have a '3' to each site. This must be accurate for the CT spawn algorithm to work.
  2. Add some basic T spawns. Add them in spots you don't throw nades from. Name them in a way you can identify where they are later, e.g. 'B main 1', 'B main 2', etc.
  3. Start adding the spawns for the smokes/mollies you want. To do this, stand in the spot, go to 'new spawn' in the menu, throw the greande, and save the spawn. The editor will remember the LAST grenade thrown and attach it to the next spawn made (unless you use !clearbuffs before then).
  4. Start adding executes. You will select a list of 'required' T spawns for the execute (typically these are your set smokes), and 'optional' ones. The execute is only eligible to be picked if all the required spawns can be chosen (so if there are 4 required spawns, there must be at least 4 T's).

Other notes:

Contributing

Pull requests will be reviewed if they meet a few guidelines:

There is a significant amount of bad code and TODOs - 95% of this was written in a few days. Cleaning those problems up is appreciated.

Discord Chat

A Discord channel is available for general discussion.

Known issues and limitations