City of Heroes Mastermind Numeric Keypad Pet Controls



City of Heroes Mastermind Numeric Keypad Pet Controls by Sandolphan
This Guide contains several sections:
  • Overview
  • Bind Chains (Version 1)
  • Text Files (Version 2)
  • Commanding Subsets of Pets (ie Genin and Jounin without Oni, using one command)
  • Bodyguard Mode
  • RV Heavies
  • FAQ
*** To get started quickly, just read the Overview and the Bind Chains version. ***
The Text Files version is a bit more complicated.
The other sections deal with specific additions to the system.
The FAQ contains common problems and questions. Good luck!
    • OVERVIEW:

 

The Mastermind Numeric Keypad Pet Controls system uses the numeric keypad to select a group of henchmen, choose a stance for them, and issue a command to the group. Stances and commands are issued separately, and can be combined in any way desired. Henchmen will retain their stance and command unless changed.
KEYPAD LAYOUT:
Group select: 0=All, 1=Minions, 2=Lieutenants, 3=Boss
Stances: 4=Aggressive, 5=Defensive, 6=Passive
Commands: 7=Attack, 8=Follow, 9=Goto (brings up target recticle)
EXAMPLE OF USE:
Select the group of henchmen you wish to command, then give that group a stance and command.
For example:
a. press numpad0 to select All henchmen.
b. press numpad5 to set them to Defensive stance.
c. press numpad8 to command them to Follow you.
Shortly, you spot a target you want to attack, but you only want to send the Minions to attack.
d. press numpad1 to select only the Minion henchmen.
e. press numpad7 to command them to Attack your target.
The Lieutenants/Boss will remain behind still Following you Defensively.
After just a few minutes using the system, I think you’ll find it completely intuitive.
If you don’t like using the keypad, just edit the binds to map onto different blocks of keys (ZXCV ASD QWE for example).
Personal Note: I can’t emphasize enough how important the GOTO command is, especially for melee pets…please learn it and use it constantly!
TWO VERSIONS OF THE SYSTEM:
There are two versions of the system in this post. The first system (borrowing an idea by Samuel-Tow in which the binds create other binds…a neat trick!) consists of a set of /bind commands to be typed directly into the game from the command prompt (chat box). The binds are rather long and must be done exactly, so I would recommend opening them as a text file in Notepad, and copying and pasting them into the game one at a time. This only needs to be done once per character and you’re set; unless you want to alter the /binds, in which case you’d need to copy/paste them into the game again. Binds cannot exceed 256 characters in length, and some of these are already very near max!
The second version of the system (with key help from Dying_Breath) consists of a series of small text files, which get loaded dynamically as the system is used. It’s a little more complicated, but it is also much more flexible. You can make changes and add a lot of functions to this version very easily (such as complicated emotes, dialogues, situationals, etc.), simply by altering or expanding the contents of the text files. Changes made in the files are implemented automatically any time the system gets used. This system is very useful for Masterminds who want to really get the most out of their class.
I would recommend trying the first version if you are not comfortable with making text files. Either system works fine, and should make your Mastermind career far easier and more fun!
    • BIND CHAINS (version 1)

 

This setup uses a series of long /bind commands manually entered into the game at the command prompt (chat box). It is an easier system to get working, but must be entirely re-issued if any changes wish to be done later.
I. HOW TO USE:
1. Select a pet group using the numeric keypad: 0=All, 1=Minions, 2=Lts., 3=Boss
2. Choose a stance for that group: 4=aggressive, 5=defensive, 6=passive
3. Give a command to that group: 7=attack, 8=follow, 9=goto
The current group you select will remain active, as will the command and stance given that group, until you change it.
The Goto command will bring up the target recticle.
Choose individual pets by name with /, *, for the three minions and +, for the two lieutenants.
II. SETUP INSTRUCTIONS:
1. Make and save a text file from the /binds listed below in Part III for your type of Mastermind. You need the ALL PETS /bind, plus a set of the three GROUP /binds for your Mastermind type (Robot, Merc, Necro, or Ninja). The BY NAME /binds are optional, but if you use them be sure to edit in the names of your pets. Saving a text file of these /binds will make it easier should you wish to make changes.
2. Open your text file in notepad and run the game. Once you have your character loaded in the game, switch back to Notepad (press ALT+TAB). Copy each /bind command one at a time and paste it into the game at the command prompt.
3. When all /binds are entered (the ALL PETS, a MINION, a LIEUTENANT, a BOSS, and optionally the BY NAMES /binds if desired), the system is ready to use as described in HOW TO USE above.
Note: /bind commands cannot exceed 255 characters in length. Some of these are very near the limit!
III. COMPLETE FILE SETS OF MASTERMIND BINDS:
Listed here are the complete sets of /binds for all Masterminds. For any one type of Mastermind, you will need: the ALL PETS, MINION, LIEUTENANT, and BOSS /bind for your Mastermind type (plus the five BY NAME /binds if using them).
Each of the /binds must be one continuous line typed exactly as shown to work, especially the quote marks!. The periods in the listing are just spacers for readability.
Optional: If you are using them, remember to edit the BY NAMES /binds to use your own pet names (try to use just four or five unique letters of the pet name, as the binds might exceed their length limit).
ALL PETS:
Quote:
/bind numpad0 “bind numpad4 petcomall agg$$bind numpad5 petcomall def$$bind numpad6 petcomall pass$$bind numpad7 petcomall att$$bind numpad8 petcomall fol$$bind numpad9 petcomall goto”
DEMONS (MINION, LIEUTENANT, BOSS):
Quote:
/bind numpad1 “bind numpad4 petcompow ling agg$$bind numpad5 petcompow ling def$$bind numpad6 petcompow ling pass$$bind numpad7 petcompow ling att$$bind numpad8 petcompow ling fol$$bind numpad9 petcompow ling goto”
.
/bind numpad2 “bind numpad4 petcompow mons agg$$bind numpad5 petcompow mons def$$bind numpad6 petcompow mons pass$$bind numpad7 petcompow mons att$$bind numpad8 petcompow mons fol$$bind numpad9 petcompow mons goto”
.
/bind numpad3 “bind numpad4 petcompow prin agg$$bind numpad5 petcompow prin def$$bind numpad6 petcompow prin pass$$bind numpad7 petcompow prin att$$bind numpad8 petcompow prin fol$$bind numpad9 petcompow prin goto”
MERC (MINION, LIEUTENANT, BOSS):
Quote:
/bind numpad1 “bind numpad4 petcompow sold agg$$bind numpad5 petcompow sold def$$bind numpad6 petcompow sold pass$$bind numpad7 petcompow sold att$$bind numpad8 petcompow sold fol$$bind numpad9 petcompow sold goto”
.
/bind numpad2 “bind numpad4 petcompow spec agg$$bind numpad5 petcompow spec def$$bind numpad6 petcompow spec pass$$bind numpad7 petcompow spec att$$bind numpad8 petcompow spec fol$$bind numpad9 petcompow spec goto”
.
/bind numpad3 “bind numpad4 petcompow comm agg$$bind numpad5 petcompow comm def$$bind numpad6 petcompow comm pass$$bind numpad7 petcompow comm att$$bind numpad8 petcompow comm fol$$bind numpad9 petcompow comm goto”
NECRO (MINION, LIEUTENANT, BOSS):
Quote:
/bind numpad1 “bind numpad4 petcompow zomb agg$$bind numpad5 petcompow zomb def$$bind numpad6 petcompow zomb pass$$bind numpad7 petcompow zomb att$$bind numpad8 petcompow zomb fol$$bind numpad9 petcompow zomb goto”
.
/bind numpad2 “bind numpad4 petcompow grav agg$$bind numpad5 petcompow grav def$$bind numpad6 petcompow grav pass$$bind numpad7 petcompow grav att$$bind numpad8 petcompow grav fol$$bind numpad9 petcompow grav goto”
.
/bind numpad3 “bind numpad4 petcompow lich agg$$bind numpad5 petcompow lich def$$bind numpad6 petcompow lich pass$$bind numpad7 petcompow lich att$$bind numpad8 petcompow lich fol$$bind numpad9 petcompow lich goto”
NINJA (MINION, LIEUTENANT, BOSS):
Quote:
/bind numpad1 “bind numpad4 petcompow gen agg$$bind numpad5 petcompow gen def$$bind numpad6 petcompow gen pass$$bind numpad7 petcompow gen att$$bind numpad8 petcompow gen fol$$bind numpad9 petcompow gen goto”
.
/bind numpad2 “bind numpad4 petcompow jou agg$$bind numpad5 petcompow jou def$$bind numpad6 petcompow jou pass$$bind numpad7 petcompow jou att$$bind numpad8 petcompow jou fol$$bind numpad9 petcompow jou goto”
.
/bind numpad3 “bind numpad4 petcompow oni agg$$bind numpad5 petcompow oni def$$bind numpad6 petcompow oni pass$$bind numpad7 petcompow oni att$$bind numpad8 petcompow oni fol$$bind numpad9 petcompow oni goto”
ROBOT (MINION, LIEUTENANT, BOSS):
Quote:
/bind numpad1 “bind numpad4 petcompow batt agg$$bind numpad5 petcompow batt def$$bind numpad6 petcompow batt pass$$bind numpad7 petcompow batt att$$bind numpad8 petcompow batt fol$$bind numpad9 petcompow batt goto”
.
/bind numpad2 “bind numpad4 petcompow prot agg$$bind numpad5 petcompow prot def$$bind numpad6 petcompow prot pass$$bind numpad7 petcompow prot att$$bind numpad8 petcompow prot fol$$bind numpad9 petcompow prot goto”
.
/bind numpad3 “bind numpad4 petcompow assa agg$$bind numpad5 petcompow assa def$$bind numpad6 petcompow assa pass$$bind numpad7 petcompow assa att$$bind numpad8 petcompow assa fol$$bind numpad9 petcompow assa goto”
THUGS (MINION, LIEUTENANT, BOSS):
Quote:
/bind numpad1 “bind numpad4 petcompow thug agg$$bind numpad5 petcompow thug def$$bind numpad6 petcompow thug pass$$bind numpad7 petcompow thug att$$bind numpad8 petcompow thug fol$$bind numpad9 petcompow thug goto”
.
/bind numpad2 “bind numpad4 petcompow enf agg$$bind numpad5 petcompow enf def$$bind numpad6 petcompow enf pass$$bind numpad7 petcompow enf att$$bind numpad8 petcompow enf fol$$bind numpad9 petcompow enf goto”
.
/bind numpad3 “bind numpad4 petcompow bru agg$$bind numpad5 petcompow bru def$$bind numpad6 petcompow bru pass$$bind numpad7 petcompow bru att$$bind numpad8 petcompow bru fol$$bind numpad9 petcompow bru goto”
INDIVIDUAL BY NAME (note: change MinionA, MinionB, MinionC, LieutenantA, LieutenantB to your names):
Note:Keep pet names under six characters long in the /bind (you can use any unique portion of the name)
Quote:
/bind divide “bind numpad4 petcomname MinionA agg$$bind numpad5 petcomname MinionA def$$bind numpad6 petcomname MinionA pass$$bind numpad7 petcomname MinionA att$$bind numpad8 petcomname MinionA fol$$bind numpad9 petcomname MinionA goto”
.
/bind multiply “bind numpad4 petcomname MinionB agg$$bind numpad5 petcomname MinionB def$$bind numpad6 petcomname MinionB pass$$bind numpad7 petcomname MinionB att$$bind numpad8 petcomname MinionB fol$$bind numpad9 petcomname MinionB goto”
.
/bind subtract “bind numpad4 petcomname MinionC agg$$bind numpad5 petcomname MinionC def$$bind numpad6 petcomname MinionC pass$$bind numpad7 petcomname MinionC att$$bind numpad8 petcomname MinionC fol$$bind numpad9 petcomname MinionC goto”
.
/bind add “bind numpad4 petcomname LieutenantA agg$$bind numpad5 petcomname LieutenantA def$$bind numpad6 petcomname LieutenantA pass$$bind numpad7 petcomname LieutenantA att$$bind numpad8 petcomname LieutenantA fol$$bind numpad9 petcomname LieutenantA goto”
.
/bind numpadenter “bind numpad4 petcomname LieutenantB agg$$bind numpad5 petcomname LieutenantB def$$bind numpad6 petcomname LieutenantB pass$$bind numpad7 petcomname LieutenantB att$$bind numpad8 petcomname LieutenantB fol$$bind numpad9 petcomname LieutenantB goto”
    • TEXT FILES (version 2)

 

This setup uses a set of text files dynamically loaded whenever a group of henchmen are selected. Essentially, every time you select a group, the command keys are re-mapped to that group.
Editing the commands in this version is easier than the bind chain setup of version 1, since once the file system is in place, any changes you make to the files are updated automatically simply by using the system.
It is quite easy to add additional commands for a group (including emotes, dialogue, etc.), or alter the keys used to different keysets as the user prefers. Also, consider using key modifiers to increase the commands available on the keypad (control, shift, alt with the numpad to do additional commands). You can see I did this with the Dismiss command in the files.
I. HOW TO USE:
1. Select a pet group using the numeric keypad: 0=All, 1=Minions, 2=Lts., 3=Boss
2. Choose a stance for that group: 4=Aggressive, 5=Defensive, 6=Passive
3. Give a command to that group: 7=Attack, 8=Follow, 9=Goto
The current group you select will remain active, as will the command and stance given that group, until you change it.
The Goto command will bring up the target recticle.
Note: Added a Dismiss command to the files. Press left control+numpad decimal to dismiss the CURRENT group.
II. SETUP INSTRUCTIONS:
1. Make and save each of the textfiles for your type of Mastermind, and put them into a new directory called c:covbinds (files are listed in Part III).
You need the ALL PETS File, and a set of the four GROUP Files for your Mastermind type (Robot, Merc, Necro, Ninja, or Thug).
If you prefer a different directory, just edit the files accordingly.
2. In the game, activate the system one time by manually issuing ONE of the following commands to load the root file:

(For DEMONS) /bindloadfile c:covbindsDemonSumm.txt
(For ROBOTS) /bindloadfile c:covbindsRobot.txt
(For MERCS) /bindloadfile c:covbindsMercs.txt
(For NECROS) /bindloadfile c:covbindsNecro.txt
(For NINJAS) /bindloadfile c:covbindsNinja.txt
(For THUGS) /bindloadfile c:covbindsThugroot.txt

3. Once the root file is activated by Step 2, the system is ready to use as described in HOW TO USE above.
III. FILES TO BE SAVED IN DIRECTORY C:covbinds:
These are the files to be created and saved. Filenames are in italics, actual file contents follow after in the quote box.
A full set of GROUP files for a Mastermind type consists of the ROOT, MINION, LIEUTENANT and BOSS files (plus the ALL PETS file).
Standard ROOT files are four lines long, the others are seven lines long. You can customize the setup by adding to or editing commands in these files.
Optional: If you wish to add the ability to control each separate henchman BY NAME, see the special changes needed in Part IV at the end.
ALL PETS:
——–
c:covbindsAll.txt
Quote:
numpad4 petcom_all Aggressive
numpad5 petcom_all Defensive
numpad6 petcom_all Passive
numpad7 petcom_all Attack
numpad8 petcom_all Follow
numpad9 petcom_all Goto
lctrl+decimal petcom_all Dismiss
GROUP FILES FOR DEMONS:
————————–
ROOT FILE DEMONS:
c:covbindsDemonSumm.txt
Quote:
numpad0 bind_load_file c:covbindsAll.txt
numpad1 bind_load_file c:covbindsDemonlings.txt
numpad2 bind_load_file c:covbindsDemons.txt
numpad3 bind_load_file c:covbindsPrince.txt
MINIONS Demons:
c:covbindsDemonlings.txt
Quote:
numpad4 petcom_pow Demonlings Aggressive
numpad5 petcom_pow Demonlings Defensive
numpad6 petcom_pow Demonlings Passive
numpad7 petcom_pow Demonlings Attack
numpad8 petcom_pow Demonlings Follow
numpad9 petcom_pow Demonlings Goto
lctrl+decimal petcom_pow Demonlings Dismiss
LIEUTENANTS Demons:
c:covbindsDemons.txt
Quote:
numpad4 petcom_pow Demons Aggressive
numpad5 petcom_pow Demons Defensive
numpad6 petcom_pow Demons Passive
numpad7 petcom_pow Demons Attack
numpad8 petcom_pow Demons Follow
numpad9 petcom_pow Demons Goto
lctrl+decimal petcom_pow Demons Dismiss
BOSS Demons:
c:covbindsPrince.txt
Quote:
numpad4 petcom_pow Prince Aggressive
numpad5 petcom_pow Prince Defensive
numpad6 petcom_pow Prince Passive
numpad7 petcom_pow Prince Attack
numpad8 petcom_pow Prince Follow
numpad9 petcom_pow Prince Goto
lctrl+decimal petcom_pow Prince Dismiss
GROUP FILES FOR MERC:
————————–
ROOT FILE MERC:
c:covbindsMerc.txt
Quote:
numpad0 bind_load_file c:covbindsAll.txt
numpad1 bind_load_file c:covbindsSoldier.txt
numpad2 bind_load_file c:covbindsSpec.txt
numpad3 bind_load_file c:covbindsCommando.txt
MINIONS MERC:
c:covbindsSoldier.txt
Quote:
numpad4 petcom_pow Soldier Aggressive
numpad5 petcom_pow Soldier Defensive
numpad6 petcom_pow Soldier Passive
numpad7 petcom_pow Soldier Attack
numpad8 petcom_pow Soldier Follow
numpad9 petcom_pow Soldier Goto
lctrl+decimal petcom_pow Soldier Dismiss
LIEUTENANTS MERC:
c:covbindsSpec.txt
Quote:
numpad4 petcom_pow Spec Aggressive
numpad5 petcom_pow Spec Defensive
numpad6 petcom_pow Spec Passive
numpad7 petcom_pow Spec Attack
numpad8 petcom_pow Spec Follow
numpad9 petcom_pow Spec Goto
lctrl+decimal petcom_pow Spec Dismiss
BOSS MERC:
c:covbindsCommando.txt
Quote:
numpad4 petcom_pow Commando Aggressive
numpad5 petcom_pow Commando Defensive
numpad6 petcom_pow Commando Passive
numpad7 petcom_pow Commando Attack
numpad8 petcom_pow Commando Follow
numpad9 petcom_pow Commando Goto
lctrl+decimal petcom_pow Commando Dismiss
GROUP FILES FOR NECRO:
————————–
ROOT FILE NECRO:
c:covbindsNecro.txt
Quote:
numpad0 bind_load_file c:covbindsAll.txt
numpad1 bind_load_file c:covbindsZombie.txt
numpad2 bind_load_file c:covbindsGrave.txt
numpad3 bind_load_file c:covbindsLich.txt
MINIONS NECRO:
c:covbindsZombie.txt
Quote:
numpad4 petcom_pow Zombie Aggressive
numpad5 petcom_pow Zombie Defensive
numpad6 petcom_pow Zombie Passive
numpad7 petcom_pow Zombie Attack
numpad8 petcom_pow Zombie Follow
numpad9 petcom_pow Zombie Goto
lctrl+decimal petcom_pow Zombie Dismiss
LIEUTENANTS NECRO:
c:covbindsGrave.txt
Quote:
numpad4 petcom_pow Grave Aggressive
numpad5 petcom_pow Grave Defensive
numpad6 petcom_pow Grave Passive
numpad7 petcom_pow Grave Attack
numpad8 petcom_pow Grave Follow
numpad9 petcom_pow Grave Goto
lctrl+decimal petcom_pow Grave Dismiss
BOSS NECRO:
c:covbindsLich.txt
Quote:
numpad4 petcom_pow Lich Aggressive
numpad5 petcom_pow Lich Defensive
numpad6 petcom_pow Lich Passive
numpad7 petcom_pow Lich Attack
numpad8 petcom_pow Lich Follow
numpad9 petcom_pow Lich Goto
lctrl+decimal petcom_pow Lich Dismiss
GROUP FILES FOR NINJA:
————————–
ROOT FILE NINJA:
c:covbindsNinja.txt
Quote:
numpad0 bind_load_file c:covbindsAll.txt
numpad1 bind_load_file c:covbindsGenin.txt
numpad2 bind_load_file c:covbindsJounin.txt
numpad3 bind_load_file c:covbindsOni.txt
MINIONS NINJA:
c:covbindsGenin.txt
Quote:
numpad4 petcom_pow Genin Aggressive
numpad5 petcom_pow Genin Defensive
numpad6 petcom_pow Genin Passive
numpad7 petcom_pow Genin Attack
numpad8 petcom_pow Genin Follow
numpad9 petcom_pow Genin Goto
lctrl+decimal petcom_pow Genin Dismiss
LIEUTENANTS NINJA:
c:covbindsJounin.txt
Quote:
numpad4 petcom_pow Jounin Aggressive
numpad5 petcom_pow Jounin Defensive
numpad6 petcom_pow Jounin Passive
numpad7 petcom_pow Jounin Attack
numpad8 petcom_pow Jounin Follow
numpad9 petcom_pow Jounin Goto
lctrl+decimal petcom_pow Jounin Dismiss
BOSS NINJA:
c:covbindsOni.txt
Quote:
numpad4 petcom_pow Oni Aggressive
numpad5 petcom_pow Oni Defensive
numpad6 petcom_pow Oni Passive
numpad7 petcom_pow Oni Attack
numpad8 petcom_pow Oni Follow
numpad9 petcom_pow Oni Goto
lctrl+decimal petcom_pow Oni Dismiss
GROUP FILES FOR ROBOT:
————————–
ROOT FILE ROBOT:
c:covbindsRobot.txt
Quote:
numpad0 bind_load_file c:covbindsAll.txt
numpad1 bind_load_file c:covbindsBattle.txt
numpad2 bind_load_file c:covbindsProtector.txt
numpad3 bind_load_file c:covbindsAssault.txt
MINIONS ROBOT:
c:covbindsBattle.txt
Quote:
numpad4 petcom_pow Battle Aggressive
numpad5 petcom_pow Battle Defensive
numpad6 petcom_pow Battle Passive
numpad7 petcom_pow Battle Attack
numpad8 petcom_pow Battle Follow
numpad9 petcom_pow Battle Goto
lctrl+decimal petcom_pow Battle Dismiss
LIEUTENANTS ROBOT:
c:covbindsProtector.txt
Quote:
numpad4 petcom_pow Protector Aggressive
numpad5 petcom_pow Protector Defensive
numpad6 petcom_pow Protector Passive
numpad7 petcom_pow Protector Attack
numpad8 petcom_pow Protector Follow
numpad9 petcom_pow Protector Goto
lctrl+decimal petcom_pow Protector Dismiss
BOSS ROBOT:
c:covbindsAssault.txt
Quote:
numpad4 petcom_pow Assault Aggressive
numpad5 petcom_pow Assault Defensive
numpad6 petcom_pow Assault Passive
numpad7 petcom_pow Assault Attack
numpad8 petcom_pow Assault Follow
numpad9 petcom_pow Assault Goto
lctrl+decimal petcom_pow Assault Dismiss
GROUP FILES FOR THUGS:
————————–
ROOT FILE THUGS:
c:covbindsTHUGROOT.txt
Quote:
numpad0 bind_load_file c:covbindsAll.txt
numpad1 bind_load_file c:covbindsThugs.txt
numpad2 bind_load_file c:covbindsEnforcer.txt
numpad3 bind_load_file c:covbindsBruiser.txt
MINIONS THUGS:
c:covbindsThugs.txt
Quote:
numpad4 petcom_pow Thugs Aggressive
numpad5 petcom_pow Thugs Defensive
numpad6 petcom_pow Thugs Passive
numpad7 petcom_pow Thugs Attack
numpad8 petcom_pow Thugs Follow
numpad9 petcom_pow Thugs Goto
lctrl+decimal petcom_pow Thugs Dismiss
LIEUTENANTS THUGS:
c:covbindsEnforcer.txt
Quote:
numpad4 petcom_pow Enforcer Aggressive
numpad5 petcom_pow Enforcer Defensive
numpad6 petcom_pow Enforcer Passive
numpad7 petcom_pow Enforcer Attack
numpad8 petcom_pow Enforcer Follow
numpad9 petcom_pow Enforcer Goto
lctrl+decimal petcom_pow Enforcer Dismiss
BOSS THUGS:
c:covbindsBruiser.txt
Quote:
numpad4 petcom_pow Bruiser Aggressive
numpad5 petcom_pow Bruiser Defensive
numpad6 petcom_pow Bruiser Passive
numpad7 petcom_pow Bruiser Attack
numpad8 petcom_pow Bruiser Follow
numpad9 petcom_pow Bruiser Goto
lctrl+decimal petcom_pow Bruiser Dismiss
IV. OPTIONAL: CONTROLLING SINGLE PETS BY NAME
Let me state there is no need to implement the ideas that follow…the basic system already shown above will cover probably 99% of your entire MM career.
To command individual henchmen, I have assigned the keypad divide (/), multiply (*), subtract (-) keys to each minion, and the keypad add (+), keys to each lieutenant.
Make sure when you edit the files to substitute your henchmen names for MINIONA, MINIONB, MINIONC, LIEUTENANTA, LIEUTENANTB. Note: The boss is already controlled using the basic system.
The changes needed to make to the files are:
1. Alter the your Mastermind’s ROOT file to include five more lines, one for each of the three minions and two lieutenants. Here is my sample root file for Robot.txt (note the added five lines):
SAMPLE ALTERED ROOT FILE ROBOT:
c:covbindsRobot.txt
Quote:
numpad0 bind_load_file c:covbindsAll.txt
numpad1 bind_load_file c:covbindsBattle.txt
numpad2 bind_load_file c:covbindsProtector.txt
numpad3 bind_load_file c:covbindsAssault.txt

divide bind_load_file c:covbindsMINIONA.txt
multiply bind_load_file c:covbindsMINIONB.txt
subtract bind_load_file c:covbindsMINIONC.txt
add bind_load_file c:covbindsLIEUTENANTA.txt
numpadenter bind_load_file c:covbindsLIEUTENANTB.txt

2. Now create five new text files, one for each of the named minions and lieutenants. The contents of these files mimic the Group files, except use petcom_name . Here is the example of a minion file MINIONA.txt:
SAMPLE MINIONA FILE:
c:covbindsminiona.txt
Quote:
numpad4 petcom_name MINIONA Aggressive
numpad5 petcom_name MINIONA Defensive
numpad6 petcom_name MINIONA Passive
numpad7 petcom_name MINIONA Attack
numpad8 petcom_name MINIONA Follow
numpad9 petcom_name MINIONA Goto
lctrl+decimal petcom_name MINIONA Dismiss
I hope you see the pattern here. Wherever you see ‘MINION’ or ‘LIEUTENANT’ you should substitute your own pets’ names.
V. OPTIONAL: TARGETING SINGLE PETS BY NAME
This will add an additional function to allow you to select (target) the specific pet by name. It is helpful when targeting pets for buffing or other needs, since targeting and petcom selection are independent. Again, this section is completely optional.
To use the new command, press left alt and the numpad pet select key you wish (/ * – + enter or numpad3) to make that pet your target.
To add the function, alter the your Mastermind’s ROOT file (Robot.txt, Merc.txt, Necro.txt, Ninja.txt) to include six more lines, one for each of the three minions, two lieutenants, and the boss. Here is my sample root file for Robot.txt (note the six lines added at the bottom):
SAMPLE ALTERED ROOT FILE ROBOT:
c:covbindsRobot.txt
Quote:
numpad0 bind_load_file c:covbindsAll.txt
numpad1 bind_load_file c:covbindsBattle.txt
numpad2 bind_load_file c:covbindsProtector.txt
numpad3 bind_load_file c:covbindsAssault.txt

divide bind_load_file c:covbindsMINIONA.txt
multiply bind_load_file c:covbindsMINIONB.txt
subtract bind_load_file c:covbindsMINIONC.txt
add bind_load_file c:covbindsLIEUTENANTA.txt
numpadenter bind_load_file c:covbindsLIEUTENANTB.txt

lalt+divide pet_select_name MINIONA
lalt+multiply pet_select_name MINIONB
lalt+subtract pet_select_name MINIONC
lalt+add pet_select_name LIEUTENANTA
lalt+numpadenter pet_select_name LIEUTENANTB
lalt+numpad3 pet_select_name BOSSNAME

I’ve found this makes buffing very easy. Others have told me they use the six keys above the arrows (Insert, Home PageUp, Delete, End, Pagedown) for pet targeting.
Note: While I could have moved the commands into the specific pet name files, it would have then required two commands to use (activating the pet file, and issuing the command). Due to the nature of this command, I wanted it as a simple one-key press. Thus its inclusion in the Root file. When adding other commands, I would recommend not cluttering the Root file any more than necessary, and put commands in the specific selectable pet group/name files.
    • COMMANDING SUBSETS OF PETS: (ie Genin and Jounin without Oni, using one command)

 

SUBSETS PART 1
Back in beta, I had a post showing the various combos you could use to command different pairs of pet groups. This works using the command parser’s ‘best fit’ rules for choosing which pets receive instructions.
The ability to control some groups and leave others out is especially important for powersets like Thugs, Ninja and Necro, where you want some of the pets moved into melee, and others to remain back at range or on Bodyguard duty. It’s also important to use this method instead of a series of Goto commands, as you cannot place more than one Goto recticle per command bind.
Use the command /petcom_pow , where the is unique to the groups you wish to issue a . Here is a chart showing the pair combinations of pet groups and associated unique letters you can use:
(chart format)
Mastermind Type:
Pet groups 1 and 2: unique letter(s) for command
Pet groups 2 and 3: unique letter(s) for command
Pet groups 1 and 3: unique letter(s) for command
Quote:
Demons:
tiers 1+2: S
tiers 1+3: I
tiers 2+3: none

Mercs:
tiers 1+2: S,E
tiers 2+3: C
tiers 1+3: D

Necro:
tiers 1+2: R,E
tiers 2+3: (none)
tiers 1+3: (none)

Ninja:
tiers 1+2: C,A,L
tiers 2+3: O
tiers 1+3: (none)

Robot:
tiers 1+2: E,R
tiers 2+3: BO,BOT,BOTS, OT, OTS, TS
tiers 1+3: A,L

Thugs:
tiers 1+2: (none)
tiers 2+3: E,R
tiers 1+3: U,S

In each case, a single letter can be used in the command and the game will ‘best fit’ the command to the powernames. For example, to command the Robot pet groups Battle Drones and Protector Bots together, you could issue the command:
/petcom_pow e goto
This would send only those two groups to the targeted location. Single letters work fine. As per the chart above, some combinations are not possible; the Robot tiers 2 and 3 have to use some combination of the word ‘bots’ consisting of more than one letter.
If you wanted to append these functions onto the numpad system, you could assign a modifier key (alt, ctrl, shift) to the numpad1-3 and make text files or bind chains to select groups 1+2, 2+3, 1+3 for commands. Something like this (using bind chains and left-control in the example):
SAMPLE MERC SUBSETS USING BIND CHAINS (Minion+Lieutenant, Lieutenant+Boss, Minion+Boss):
Quote:
/bind lctrl+numpad1 “bind numpad4 petcompow s agg$$bind numpad5 petcompow s def$$bind numpad6 petcompow s pass$$bind numpad7 petcompow s att$$bind numpad8 petcompow s fol$$bind numpad9 petcompow s goto”
.
/bind lctrl+numpad2 “bind numpad4 petcompow c agg$$bind numpad5 petcompow c def$$bind numpad6 petcompow c pass$$bind numpad7 petcompow c att$$bind numpad8 petcompow c fol$$bind numpad9 petcompow c goto”
.
/bind lctrl+numpad3 “bind numpad4 petcompow d agg$$bind numpad5 petcompow d def$$bind numpad6 petcompow d pass$$bind numpad7 petcompow d att$$bind numpad8 petcompow d fol$$bind numpad9 petcompow d goto”
SUBSETS PART 2
For commanding tier pairs that have no unique common letters in the powername, you will have to use the /petcom_name , which requires carefully naming your pets with letter sharing in mind.
For example, Thugs tiers 1 and 2 have no unique common letters that the tier 3 does not also have. Thus you need to name each pet such that the tier 1 and 2 pet names all share a letter, but the tier 3 name does not contain it. Just as an example:
Quote:
tier 1
John
Joe
Jim
.
tier 2
Jason
Justin
.
tier 3
Harry
Now bind a key (or set of binds) to the ‘J’ in the name, and only the tier 1 and 2 will respond. Here is a bind chain example:
Quote:
/bind decimal “bind numpad4 petcomname J agg$$bind numpad5 petcomname J def$$bind numpad6 petcomname J pass$$bind numpad7 petcomname J att$$bind numpad8 petcomname J fol$$bind numpad9 petcomname J goto”
This binds the J’names to the Decimal key, and uses the same layout for commands as the basic numpad guide (ie 456 for stance, 789 for command). This bindset can be added to the basic setup and it won’t alter the rest of the basic numpad setup if you’re already using it.
Use any names you like, just follow the rule though of sharing letters between the pets you want, but excluding the pets you don’t want.
    • BODYGUARD MODE

 

To build on the pet-pair-command idea, I thought having a fast hotkey to activate Bodyguard mode for a specific subset of pets that also sets up command over the non-bodyguard groups might be handy. Which pets should be chosen will probably vary alot among the MM sets, so you will have to edit and select as you see fit.
This example will show a Robot Mastermind with the Protector bots as the bodyguard, and the Battle and Assault bots as the active attackers being commanded. The hotkey to select the Bodyguard mode is the numpad decimal.
HOW TO USE:
Pressing the numpad decimal key will put a chosen subset of pets into Bodyguard mode (Follow Defensive). It will also change the command and stance keys (numpad4-9) to control all pets other than the bodyguard.
SETUP INSTRUCTIONS:
1. Add a line to the ROOT file of your Mastermind’s binds, creating a Bodyguard mode hotkey. Here is an example of the added line for Robots:
SAMPLE ADDITION TO ROOT FILE ROBOT:
c:covbindsROBOT.txt
Quote:
decimal “bind_load_file d:covbindsRobotGuard.txt$$petcompow Protector Follow Defensive”
The additional line will bind the decimal key on the numpad to select and command the all the pets except the bodyguard, and set the bodyguard pets to Follow Defensive. You’ll need to change the filename (RobotGuard.txt) and the bodyguard group (Protector) to whatever you need for your own mastermind. Set any pets you like, by name or power, to Follow and Defensive to make them the bodyguard. Keep in mind you’ll need to command all the other pets in the next step.
2. Create the file to command the non-bodyguard pets. Here is an example of a Guard file for Robots that sends orders just to the Battle and Assault bots.
SAMPLE BODYGUARD FILE ROBOT:
c:covbindsRobotGuard.txt
Quote:
numpad4 petcom_pow a Aggressive
numpad5 petcom_pow a Defensive
numpad6 petcom_pow a Passive
numpad7 petcom_pow a Attack
numpad8 petcom_pow a Follow
numpad9 petcom_pow a Goto
lctrl+decimal petcom_pow a Dismiss
Note the letter ‘a’ in the commands. This allows a command to be issued for the Battle and Assault bots, leaving the Protectors behind. I posted how to command combinations of tiers a bit further back (please refer to the section on commanding subsets of pets).
If instead you’d like to command certain pets to be bodyguards and others attackers by their names, you’ll need to find letters in common among the desired pet names, and use the petcom_name command (again, refer back to that section). Also, if there are no combinations from the power chart above for what you want, you will have to use the common name letters method.
3. Don’t forget to re-initialize the system by loading the new ROOT file:
/bindloadfile c:covbindsRobot.txt
    • COMMANDING RV HEAVIES

 

Here’s a bind-chain for controlling Heavies in RV; the first one is for Heroes (Freedom Corps Cataphract) and the second one is for Villains (Arachnos Heavy Blaster):
Quote:
/bind lalt+numpad3 “bind numpad4 petcomname free agg$$bind numpad5 petcomname free def$$bind numpad6 petcomname free pass$$bind numpad7 petcomname free att$$bind numpad8 petcomname free fol$$bind numpad9 petcomname free goto”
.
/bind lalt+numpad3 “bind numpad4 petcomname arac agg$$bind numpad5 petcomname arac def$$bind numpad6 petcomname arac pass$$bind numpad7 petcomname arac att$$bind numpad8 petcomname arac fol$$bind numpad9 petcomname arac goto”
I have them both set up to use the left alt key with numpad3 (they’re like alternate boss pets ). Change the activation key to whatever you like. Make sure “free” or “arac” are not part of one of your pet’s names…otherwise you’ll need to select something else unique from the Heavies’ names as I listed them above.
I’m not really sure you need to bother with a text file version, since customizing the Heavies is lacking. Those who are using the text files I’m sure can easily figure out what to add to their MM root file and make a text file to control the Heavy. Have fun!
    • FAQ FOR MASTERMIND NUMERIC KEYPAD PET CONTROLS

 

Q: How do I paste the bind chains into the game?
A: Here is one simple way:

1. Run Notepad and open your text file with the binds.
2. Run CoV and load up your character.
3. Alt-Tab out to the Notepad (can also press the ‘windows key’).
4. Highlight and Copy one of the binds (ctrl-c is copy).
5. Go back into CoV.
6. Put your cursor in the chat box line and hit ctrl-v to Paste the bind in.
7. Press Enter to enter the command.
8. Repeat steps 3-7 for each bind you want to enter.

It’s really not at all as complicated as the eight (!) steps above. Some people don’t know key commands though, so it helps to go step by step.

Q: I put my covbinds directory in c:City of Heroes, and it’s not working.
A: The problem is the directory c:City of Heroes contains spaces. You’ll either need to put the full command containing the path in quotes (ex: /bindloadfile “c:City of HeroescovbindsRobot.txt”), or move covbinds to another location without spaces (like the root directory c:).
Q: Everything seems to be typed in and setup correctly but still isn’t working.
A: Wow, well that could be a lot of things. However, here are the two most common problems:

1. Don’t use fancy quotes. If you typed the text files in notepad you’re probably ok. If you used MS Word or an advanced word processor, the program likely ‘helped’ you by using the open- and close- quotes (the kind that lean or have little bulbs on them). City of Villains doesn’t recognize the fancy ones properly. Open the text file in notepad, and change all the quotes to normal text ones (straight up and down kind) and try them again.

2. Windows likes to append a filetype onto the name you give. If you typed .txt in the name yourself, it likely has a hidden double filetype in the name like so: Battle.txt.txt. It’s best if you don’t supply the .txt part yourself when saving the files, and again use Notepad for straight text saving.

Q: How do I add spoken phrases or emotes to the pet commands?
[color=”orange”]A: You simply add the phrase or emote to the command binds in the appropriate text files, according to which keys you want feedback for, like so:
Robot.txt
Quote:
numpad0 “bind_load_file d:covbindsAll.txt$$petsay_all All bots ready!”
numpad1 “bind_load_file d:covbindsBattle.txt$$petsay_pow Battle Battle drones ready!”
numpad2 “bind_load_file d:covbindsProtector.txt$$petsay_pow Protector Protector bots ready!”
numpad3 “bind_load_file d:covbindsAssault.txt$$petsay_pow Assault Assault bot ready!”
[color=”orange”]Battle.txt
Quote:
numpad7 “petcom_pow Battle Attack$$em attack”
numpad8 “petcom_pow Battle Follow$$em stop”
numpad9 “petcom_pow Battle Goto$$em point”
The example two files changed are the Robot Root file, and the Battle drones file. The first change has the selected pets say they are ready. The second change makes you do an emote giving some feedback that you are issuing a command. I use the emotes on the commands to show my teammates I’m actually doing stuff! :P

Important: Make sure you enclose the entire set of commands in quotes (which weren’t needed when only one thing was being done).

Q: I don’t like taking my hand off the mouse to use the binds. Any suggestions?
A: I make mention briefly in the Overview of customizing the key layout to suit the user’s taste. The control system is an underlying structure of binds, not a specific key-interface layout. There is no reason why the binds must be associated with the numpad. However, since the numpad layout was a natural fit to pet group selection and commands, and it was probably under-utilized by most players, it seemed the best example to use for the bind system.

Just for fun, I have tried binding the controls to lalt+ ZXCV ASD QWE and found this to be an equally intuitive setup. Anyone who is concerned about the ‘hand off the mouse’ issue I would urge to try this setup or one of your own choosing.

Taking the hand off the mouse to me is not really that big of a deal; probably because I chat constantly, even in the heat of battle, and obviously this involves both hands at the keys.

Q: Are you the original author Khaiba from Beta?
A: Yes, I’m the original author. Sandolphan is my CoH handle. Khaiba was my CoV Beta handle. Perhaps it sounded like I was taking credit for someone else’s beta-post when I posted this version to the Live boards, but I’m one and the same person (most days). I originally named it Khaiba’s on the forums so that the beta-people could all quickly locate it and know what it was when CoV went live.
-Sandolphan (aka CoVBeta Khaiba)
Other City of Heroes Freedom Articles

Leave a Reply