CZ Bind Maker is a little tool to help you make buy scripts and edit certain configuration settings. It's not, is a "be all" scripting tool (at least not the 1x version. version 2 will at least try) just yet. The program was/is written using C#, and as such needs Microsoft's .NET runtime libraries to run--it is available for download, both as a stand-alone install, and bundled with Bind Maker. Both the program and source code for the application are available for download here and are released under the GNU Public license.
Counter-Strike and Condition Zero use what is known as "Buy Scripts" which allow a player to purchase any and all equipment armor and weapons with the press of one (or more) buttons. Normally players use "Buy Menu's" and "Equipment Menu's" to navigate through their inventory and purchase items at the beginning of each round. Most game servers allow a little time at the beginning of each round for players to purchase such items, but some do not. In any case, being able to press single buttons to purchase one or more items can be useful for the impatient.
There are a lot of very talented scripters that write pre-packaged "buy scripts" for Counter-Strike and Condition Zero. These packages install special menus into the game to enable one to make custom buy scripts in game. Bind Maker intentionally does not integrate into the game so as to leave the game with its "stock" or standard look. The reasoning behind this is that, if you were to create binds and aliases in game, they would be written to your configuration files and your menus and general "look and feel" would remain unchanged. Bind Maker reads directly from these configuration files (and conversely writes directly to them) to do what it does.
The Official Version of Bind Maker which is available here will not at any time install any files onto your computer which could jeopardize your standing with valve (Valve's Anti-Cheat System). All distributions found on this website have been digitally signed to ensure the security and authenticity of the application. If you download this application from other websites, We cannot guarantee the legitimacy of the application, nor your safety in using it (as the source code is available for download, anyone can create a wares version which might not be safe). Many sites deep link into this site to distribute the application... this method is the one recommended by the author of the application.
Some have asked whether scripts generated by Bind Maker are considered a "cheat?" Others have asked whether scripts will get them banned (VAC'd). Valve has said time and time again that "Scripts don't get you banned. Period. Thre is nothing you can type in to the console that will make you get banned." (the misspelling has been intentionally left in from the referenced post). bind maker generates text which can be created in game just as easily, and can be typed into the console during game play to achieve the same results. There is nothing which Code Zulu Bind Maker does that is or ever will be considered a "cheat" in the eyes of Valve. Scripts can be controversial on certain servers depending on those who run or maintain them. Some server admins do not allow use of a sniper rifle, or riot shield, and some would frown on the idea of a buy script. To this I would have to say, "Follow the rules of the servers you play in." If they aren't allowed, don't use it.
When starting up CZ Bind Maker you could be prompted for several items during the applications load process (the splash screen):
Bind Maker attempts to locate your game’s configuration files so that you do not have to browse to that location every time you want to edit your configuration settings or add, edit, or remove a script.
- If Bind Maker cannot find your game directory you will be prompted to locate your config.cfg file:
Pressing "OK" will open a file dialog, and you’ll need to browse to your:
Counter-Strike/cstrike/config.cfg or Condition Zero/czero/config.cfg
These folders will be located (depending on where you installed the game) in your game directory. The default Steam Directory is:
- If you have multiple user accounts, an account dialog appear prompting you to select which account you wish to use.
Select your account use and press "OK"
- If you own Counter-Strike 1.6 and Condition Zero, you’ll also be prompted by another little dialog that will allow you to select which game you want to create binds for:
Simply select which game you want to use and press "OK"
- You’ll then be taken to the main window where you can start making buy scripts and editing certain configuration settings:
Scripting in Half-Life Mods (such as Counter-Strike and Condition Zero) can be broken down into 2 different parts.
Binds are a way to tie a command to a key.
Aliases are a way to create a command from one or more other commands. Aliases are often used with binds to connect a key being pressed to a command or sequence of commands.
Simply put, you use these combination's of binds and aliases every time you play any Half-Life Mod (whether you know it or not). It is what is used to tie your keyboard key to a command. using the (default) W or Up Arrow key will advance my player forward. This is done so because there is a command for this action in my config.cfg file in my game directory.
Lets look at a bind.
bind "w" "+forward"
the first word in this is the word "bind" this lets the game know that when ever the letter to its right is pressed it needs to execute the forward command. the + symbol plays a special role in binding and is a symbol that denotes "while the key is pressed down, do this command. when the key is released (comes back up) stop doing this command." We'll talk more about this when we discuss aliases.
forward is a command that ships standard with half life. there are other commands that you can bind keys to. Weapons are purchased at the beginning of each round. Usually players have to navigate through a series of menu's to purchase the items he or she needs for that round. One popular form of scripting is known as "buy scripts."
The original intent of CZ Bind Maker was to make buy scripts. I had originally intended to replace the entire in-game options menu, but after a while I decided that this would be tedious and boring, so I focused on configuration settings not available in the in-game menu (lets not re-invent the wheel).
CZ Bind Maker allows you to make buy scripts by selecting a key to bind, to one or more items from the bind items list. More detail on creating buy scripts with Bind Maker can be found on the link titled "creating a buy script." Buy scripts allow you to buy a weapon (or your entire setup) with a press of a single button.
bind "F1" "deagle; secammo; vesthelm;vest;"
This script will purchase a desert eagle, full secondary ammo, a vest and helmet (or if you're too poor for that, just a Kevlar vest). This script can very easily be made using CZ Bind Maker.
The second part of scripting is the alias. Aliases are a way of executing multiple built in or made up commands with a single word (and thus the name "alias" meaning a word substituted for another). There are 2 main kinds of aliases: the toggle and the key press alias (+ & -). The following is an example of a toggle.
alias walk_t walk_on
alias walk_on "alias walk_t walk_off; +speed;"
alias walk_off "alias walk_t walk_on; -speed;"
As its name suggests this alias toggles the name "walk_t" (short for walk_toggle) between "walk_on" and "walk_off." walk_on and walk_off are also aliases. the main thing that walk_on does is execute the +speed command. In Counter-Strike and Condition Zero, this command allows you to walk when you hold down the walk button. If you were to type +speed in your console, you would notice that your player would continuously walk. This happens because you used a key up/down alias without pressing a key. when you script in a +command it does the same as a built in toggle. So here we're toggling the walk command. walk_on starts the walking and walk_off stops it (-speed).
The rest of the line is used to set the value of "walk_t" each time the key is pressed. if we bound the "o" key to "walk_t" the first time the key was pressed it would rename walk_t to execute the stop walking command, and it would start your player model walking. the second time you press the "o" key, it would rename the "walk_t" alias to "walk_on" so that the next time you pressed the button you would start to walk again, and then it would stop your walking. since we use more than one command for our aliases we have to put a semicolon after each command so that the game knows that each sentence that ends in a semicolon is the same as a single line if we were to type it into the console. when more than one command is used we have to wrap the whole thing in quotation marks to let the game know that the word we are aliasing included everything included inside the quotes.
The next type of alias is the key up / down ( + & - ) alias. Again this is a special naming convention. It tells the game that when the key is pressed down to do a certain command and to do another set of commands when the key goes back up. Here's an example of a key up / down alias:
alias +clean_scores "+showscores; hud_saytext_internal 0;"
alias -clean_scores "-showscores; hud_saytext_internal 1;"
"+showscores" shows the score board when you press the button. hud_saytext_internal is an in-game variable (0 for off, 1 for on) that determines whether or not the in-game chat is shown. This alias shows the scores and turns off the chat board while the button is pressed down. when you let go of the button the chat board comes back up and the score board goes away.
simple, clean, & easy.
These 2 things can be combined to create powerful and useful scripts. They form the basis for every script used in any Half-Life mod.
- Select a key on the virtual keyboard that you wish to bind something to:
- Select as many items from the Buy Scripting tab as you wish to add to your buy script:
- Type in any text that you want said in Say or Team Say and check off the check box next to it (checking the box adds the say text to your script, un-checking the box removes it from your script) NOTE: checkbox MUST be checked in order for it to be added to your script:
Fig 1: type some text into your say / team say textbox
Fig 2: tick the checkbox for the say / team say to add it to your script
- Select a command from the Radio Commands drop down (pressing the red "X" to the right of the drop-down will remove the radio command from your script):
Fig 1: Pull down the radio command dropdown
Fig 2: select the radio command you want to add to your script
Fig 3: to remove the radio command, simply press the "X" button to the right.
- Press the "Edit Item Sequence" button, or context menu option of the bind items, to bring up your binding sequence editor. This arranges your items’ order. Item order can be important in a buy script when funds are low. CS & CZ will only purchase as much equipment as you have money, so put important items first, and luxury items last to ensure important items are bought when money is low.
Fig 1: press either the button or the menu option to bring up the dialog below
Fig 2: the item sequence editor dialog is used to re-arrange your bind items’ order
- When your buy script looks the way you want it, press the "[ + ] Add Binds" button on the toolbar to add your selection to your current binds list. (This option is also available in your context menu’s (right click menu’s) over the bind items and the virtual keyboard).
Fig 1: adding your bind using the toolbar’s add bind button
Fig 2: using the bind items' context menu’s to add your script
Fig 3: using the keyboard’s context menu to add your script
- You can add custom scripts directly to your list (assuming you know how to write them by hand) using the Add Custom Bind textbox:
- Simply add a custom bind or alias here and press enter or Add Bind to add it to your list of Current Bind Settings.
Editing your scripts:
Editing a script "In Bind Maker"
- There are 2 ways of editing your scripts. One will place the items into bind maker as if you were first creating it, the other will open it up in a text editor and you can edit the text by hand. If Bind Maker is unable to reverse engineer the script and load it, it will open it up in the text editor dialog for you to edit by hand (although it should be able to reverse engineer 99% of the scripts out there).
- Select the script in your current binds list that you wish to edit and right click in the Current Bind Settings window to bring up your menu. Select "Edit This Bind" à In Bind Maker.
Fig 1: Selecting the option to edit in the script with bind maker’s user interface
Fig 2: Notice that any custom commands in your script will show up in the check box that contains your binding items (just as A_CUSTOM_SCRIPT does).
- Check, uncheck, and edit sequence of these items, just as if you were creating a new bind, and press the "Commit Edit" button in the tool bar:
Editing a script "As Text"
- To undo an edit in once you’ve selected to edit it, simply press the Undo button in the toolbar (as shown above). The "Undo" button and menu option only becomes available during a bind edit operation.
- Select the script in your current binds list that you wish to edit and right click in the Current Bind Settings window to bring up your menu. Select "Edit This Bind" As Text.
Fig 2: selecting the option to edit the script in a text editor dialog window
- This will bring up the text bind item editor dialog window
Deleting Your Scripts:
- Edit any items you need to by hand (or insert any other items you wish to add) and press "OK" to commit the changes. Pressing "Cancel" will undo the edit and no changes will be made.
- To Delete a bind, simply select the bind to delete and select that option in the context menu:
- As an Additional Note: if you wish to make a script that uses a custom alias that you have created outside of bind maker and wish to include it in your script, simply create your script like normal, and add it to your Current Bind Settings. Then edit that script "as text" and add your custom item / command there in the text editor.
There is certain configuration settings that bind maker allow you to edit which are not in your standard options. These items are located in your "Config Editor" tab.
- User Name – this is the name you wish to use in-game.
- Text Color – this allows you to change the color of your text in game.
Sample Text Color (as white)
- Net Graph – this is the graphs that show up in the corner of your screen to show you certain statistics about your game. Selecting the red [X] disables this feature.
Net Graph selection options in Bind Maker
Net Graph 1
Net Graph 2
Net Graph 3
- Net Graph Location – specifies the location of your net graph in game. Figure 2 shows the physical locations that the Net Graph will show up at, in game.
Fig 1 net graph Location in bind maker
Fig 2 corresponding locations in game
- Various Settings – There are various settings that are and are not available in your standard options menu. Hovering your mouse over each gives you a description of each.
- Frame Rate – allows you to adjust your Max FPS (frames per second) allowable in game.
- Network Rate – allows you to adjust the rate at which data is sent to and from the server across your network. This is useful for optimizing game play for faster connections.
- Crosshair Adjustments – allows you to adjust how your crosshair will look in game. The bottom checkbox option is also a crosshair adjustment for transparency.
Fig 1 adjust color, size and transparency of your crosshairs.
Important Note: if you set the color of your crosshairs in bind maker and go into your games’ options menu, your crosshair in there will most likely show up as green (as they are only able to draw 5 different colors in that dialog window) but the color in game will be whatever you have selected in bind maker as long as you do not use this options window to change your settings (if you do, you will get a green crosshair again).
CZ Bind Maker allows you to do some other things that are explained here. They are:
- Quickly open any of your standard config files.
To manually edit your config files, simply go to the "Edit" menu and select "Edit in Notepad" and select which file you want to look at and edit.
- Export all of your game settings as either a single compressed file, or to another folder location. Note: make sure to press the "Save Settings" button in your tool bar before backing up your settings (you don’t want to loose any changes that you are in the process of).
- Select the "File" menu option, go to "Export Settings" and select which option you wish to use.
Doing so gives you this window (if using compression),
This one if saving them to another folder location.
- Press the "Browse" button to choose your location (and file name).
- If you selected the option to export to a compressed file, select the level of compression by dragging the slider left or right.
- Press the "Backup" button to start the backup. This should go very quickly and there is a progress bar to show the current status of this operation.
- Once the backup has taken place the "Backup" button will be unavailable. Press "Close" to exit this window and return back to Bind Maker.
To import these settings back into your game later (after any kind of re-install or major change of your game settings), simply extract the zip file to your …\Counter-Strike\cstrike or …\Condition Zero\czero directory, or copy all the files from where you saved them back to your …\Counter-Strike\cstrike or …\Condition Zero\czero directory, over-writing any existing files.