From this foundation, I then load in my bindloadfile(s) for each alt.
For my Mastermind ... that means loading a "master" Ninja control file that uses "reserved" keys that don't get overwritten by sub-options in the various sub-files. In my case, that is the Ninja.txt file which then controls which groups of Pets and/or individual Pets I'm wanting to address at any given time.
Ninja.txtt bindloadfile "./binds/NinjaGenin.txt"
shift+t bindloadfile "./binds/NinjaRoku.txt"
ctrl+t "petselectname Roku"
y bindloadfile "./binds/NinjaGenin.txt"
shift+y bindloadfile "./binds/NinjaNana.txt"
ctrl+y "petselectname Nana"
u bindloadfile "./binds/NinjaGenin.txt"
shift+u bindloadfile "./binds/NinjaHachi.txt"
ctrl+u "petselectname Hachi"
g bindloadfile "./binds/NinjaJounin.txt"
shift+g bindloadfile "./binds/NinjaShi.txt"
ctrl+g "petselectname Shi"
h bindloadfile "./binds/NinjaJounin.txt"
shift+h bindloadfile "./binds/NinjaItsutsu.txt"
ctrl+h "petselectname Itsutsu"
b bindloadfile "./binds/NinjaAll.txt"
shift+b bindloadfile "./binds/NinjaOni.txt"
ctrl+b "petselectname San"
ctrl+4 "petselect 0$$powexecname Train Ninjas$$unselect"
ctrl+5 "petselect 0$$powexecname Kuji In Zen$$unselect"
lshift+lctrl+lbutton "powexecname Turbo Boost"
For whatever reason, my game client simply WILL NOT accept any additional commands being appended onto a bindloadfile command. This means I can't do something like load a bind file AND execute a power function (toggle on, toggle off, execute, etc.) within the same keybind. It just doesn't work for me. For this reason, I have needed to get as bare bones basic as possible with my keybinds so as to ensure that my keybinds actually WORK on my game client ... rather than FAIL spectacularly and utterly refuse to work (or even load properly, as it turns out).
Using my common core keybinds (as shown in the previous post), I've settled upon putting my summoning/training powers into Tray 5 (so Control + 1-0) and my "leave the on toggles" (such as Time's Juncture and Leadership toggles) in Tray 6 (so Control + F1-F10). As you'll see down below, I use Control+X to dismiss pets (depending on the "command bindset" I have loaded at the time) so using Control+ to (re)summon and (re)train dismissed/new summons makes for the most ergonomic and easiest arrangement to coordinate one-handed.
In this particular instance, I've assigned the Control+4-5 keys for training, but with the added twist of automatically selecting the "topmost" pet in the pets window, casting the training power and then automatically deselecting the pet as a target. This automation helps with speeding up the process of training pets and returning to combat as quickly as possible (when necessary).
When it comes to naming of my Ninjas, I simply named them as ...
numbers (in Japanese) ... even my Mastermind.
- Ku no Ichi (九の一) means literally "1 of 9" for my Mastermind ... but written as KunoIchi (くノ一), which sounds EXACTLY THE SAME to the ear, it literally means "Female Ninja" while also being the stroke order for the kanji used to write woman (女). So yeah, multi-level linguistic pun in this context.
- San (三) is the number 3 ... is my Oni ... uses the B key. The pun here being this makes him Oni-San ... for those who like their onii-san jokes.
- Shi (四) is the number 4 ... is my Jounin 1 ... uses the G key.
- Itsutsu (五) is the number 5 ... is my Jounin 2 ... uses the H key.
- Roku (六) is the number 6 ... is my Genin 1 ... uses the T key.
- Nana (七) is the number 7 ... is my Genin 2 ... uses the Y key.
- Hachi (八) is the number 8 ... is my Genin 3 ... uses the U key.
As for what happened to number 2 ... Ni (二) ... I deliberately leave that number (and pun potential) "unused" so it can mean anything anyone wants it to. Ninjas are just mysterious that way, you know?
So that's how I named my Ninjas. I've explained it this way so that anyone who is (still) reading at this point will be able to easily identify what they need to do a Find/Replace on when converting my bindloadfiles for their own use, either as other Ninja Masterminds (easy) or as other primary type Masterminds (a little bit more involved, but doable with some extra effort).
Also, just as an extra aside, I incorporated emotes that my Mastermind will "perform" whenever issuing any commands to my Ninjas.
- Attack emotes a Throat Slash.
- Goto emotes a Point.
- Follow emotes a Thow Confetti (to signal them with sparkles where to fall back to).
- Aggressive emotes a Bring It (as my Ninjas race to engage any hostiles nearby).
- Passive emotes a Stop.
- Defensive emotes a Get Some.
- Dismissal of Ninjas emotes a Buzz Off (and the Ninjas disappearing in their own puff(s) of smoke).
If you're adapting my bindloadfiles to other Mastermind primary powersets, you
may want to edit which commands incorporate which emotes, and to do so you'll want to do a simple Find/Replace All with the desired replacement emote in all of the bindloadfiles you're using for your own command set. I picked these emotes because they're thematic to a Ninja Mastermind, but feel free to get creative on your own if you want something else.
So these are the requisite bindloadfiles called for by the "master" bindloadfile of Ninja.txt above (there are 9 of them).
NinjaAll.txtz "petcomall attack$$em slash"
shift+z "petcomall aggressive$$em bringit"
x "petcomall goto$$em point"
shift+x "petcomall passive$$em stop"
ctrl+x "petcomall dismiss$$em buzzoff"
c "petcomall follow$$em throwconfetti"
shift+c "petcomall defensive$$em kissit"
+v "petselectname Hachi$$petselectname Nana$$petselectname Roku$$petselectname Itsusu$$petselectname Shi$$petselectname San$$powexecname Temporal Selection$$powexecname Smoke Flash"
+shift+v "nop"
alt+t "nop"
alt+y "nop"
alt+u "nop"
alt+g "nop"
alt+h "nop"
alt+v "nop"
alt+b "nop"
NinjaGenin.txtz "petcompow Genin attack$$em slash"
shift+z "petcompow Genin aggressive$$em bringit"
x "petcompow Genin goto$$em point"
shift+x "petcompow Genin passive$$em stop"
ctrl+x "petcompow Genin dismiss$$em buzzoff"
c "petcompow Genin follow$$em throwconfetti"
shift+c "petcompow Genin defensive$$em kissit"
+v "petselectname Hachi$$petselectname Nana$$petselectname Roku$$powexecname Temporal Selection$$powexecname Smoke Flash"
+shift+v "petselectname Hachi$$petselectname Nana$$petselectname Roku$$powexecname Temporal Selection$$powexecname Smoke Flash"
alt+t "nop"
alt+y "nop"
alt+u "nop"
alt+g "nop"
alt+h "nop"
alt+v "nop"
alt+b "nop"
NinjaJounin.txtz "petcompow Jounin attack$$em slash"
shift+z "petcompow Jounin aggressive$$em bringit"
x "petcompow Jounin goto$$em point"
shift+x "petcompow Jounin passive$$em stop"
ctrl+x "petcompow Jounin dismiss$$em buzzoff"
c "petcompow Jounin follow$$em throwconfetti"
shift+c "petcompow Jounin defensive$$em kissit"
+v "petselectname Itsusu$$petselectname Shi$$powexecname Temporal Selection$$powexecname Smoke Flash"
+shift+v "petselectname Itsusu$$petselectname Shi$$powexecname Temporal Selection$$powexecname Smoke Flash"
alt+t "nop"
alt+y "nop"
alt+u "nop"
alt+g "nop"
alt+h "nop"
alt+v "nop"
alt+b "nop"
NinjaOni.txtz "petcompow Oni attack$$em slash"
shift+z "petcompow Oni aggressive$$em bringit"
x "petcompow Oni goto$$em point"
shift+x "petcompow Oni passive$$em stop"
ctrl+x "petcompow Oni dismiss$$em buzzoff"
c "petcompow Oni follow$$em throwconfetti"
shift+c "petcompow Oni defensive$$em kissit"
+v "petselectname San$$powexecname Temporal Selection$$powexecname Smoke Flash"
+shift+v "petselectname San$$powexecname Temporal Selection$$powexecname Smoke Flash"
alt+t "petselectname San$$inspexecpettarget Break Free$$inspexecpettarget Emerge$$inspexecpettarget Escape$$inspexecpettarget Liberate$$em alakazam"
alt+y "petselectname San$$inspexecpettarget Insight$$inspexecpettarget Keen Insight$$inspexecpettarget Uncanny Insight$$inspexecpettarget Sight Beyond Sight$$em alakazam"
alt+u "petselectname San$$inspexecpettarget Enrage$$inspexecpettarget Focused Rage$$inspexecpettarget Righteous Rage$$inspexecpettarget Furious Rage$$em alakazam"
alt+h "petselectname San$$inspexecpettarget Catch a Breath$$inspexecpettarget Take a Breather$$inspexecpettarget Second Wind$$inspexecpettarget Back in the Fight$$em alakazam"
alt+g "petselectname San$$inspexecpettarget Respite$$inspexecpettarget Dramatic Improvement$$inspexecpettarget Resurgence$$em alakazam"
alt+v "petselectname San$$inspexecpettarget Luck$$inspexecpettarget Good Luck$$inspexecpettarget Phenomenal Luck$$inspexecpettarget Amazing Luck$$em alakazam"
alt+b "petselectname San$$inspexecpettarget Sturdy$$inspexecpettarget Rugged$$inspexecpettarget Robust$$inspexecpettarget Resistant$$em alakazam"
NinjaShi.txtz "petcompow Shi attack$$em slash"
shift+z "petcompow Shi aggressive$$em bringit"
x "petcompow Shi goto$$em point"
shift+x "petcompow Shi passive$$em stop"
ctrl+x "petcompow Shi dismiss$$em buzzoff"
c "petcompow Shi follow$$em throwconfetti"
shift+c "petcompow Shi defensive$$em kissit"
+v "petselectname Shi$$powexecname Temporal Selection$$powexecname Smoke Flash"
+shift+v "petselectname Shi$$powexecname Temporal Selection$$powexecname Smoke Flash"
alt+t "petselectname Shi$$inspexecpettarget Break Free$$inspexecpettarget Emerge$$inspexecpettarget Escape$$inspexecpettarget Liberate$$em alakazam"
alt+y "petselectname Shi$$inspexecpettarget Insight$$inspexecpettarget Keen Insight$$inspexecpettarget Uncanny Insight$$inspexecpettarget Sight Beyond Sight$$em alakazam"
alt+u "petselectname Shi$$inspexecpettarget Enrage$$inspexecpettarget Focused Rage$$inspexecpettarget Righteous Rage$$inspexecpettarget Furious Rage$$em alakazam"
alt+h "petselectname Shi$$inspexecpettarget Catch a Breath$$inspexecpettarget Take a Breather$$inspexecpettarget Second Wind$$inspexecpettarget Back in the Fight$$em alakazam"
alt+g "petselectname Shi$$inspexecpettarget Respite$$inspexecpettarget Dramatic Improvement$$inspexecpettarget Resurgence$$em alakazam"
alt+v "petselectname Shi$$inspexecpettarget Luck$$inspexecpettarget Good Luck$$inspexecpettarget Phenomenal Luck$$inspexecpettarget Amazing Luck$$em alakazam"
alt+b "petselectname Shi$$inspexecpettarget Sturdy$$inspexecpettarget Rugged$$inspexecpettarget Robust$$inspexecpettarget Resistant$$em alakazam"
NinjaItsutsu.txtz "petcompow Itsutsu attack$$em slash"
shift+z "petcompow Itsutsu aggressive$$em bringit"
x "petcompow Itsutsu goto$$em point"
shift+x "petcompow Itsutsu passive$$em stop"
ctrl+x "petcompow Itsutsu dismiss$$em buzzoff"
c "petcompow Itsutsu follow$$em throwconfetti"
shift+c "petcompow Itsutsu defensive$$em kissit"
+v "petselectname Itsusu$$powexecname Temporal Selection$$powexecname Smoke Flash"
+shift+v "petselectname Itsusu$$powexecname Temporal Selection$$powexecname Smoke Flash"
alt+t "petselectname Itsutsu$$inspexecpettarget Break Free$$inspexecpettarget Emerge$$inspexecpettarget Escape$$inspexecpettarget Liberate$$em alakazam"
alt+y "petselectname Itsutsu$$inspexecpettarget Insight$$inspexecpettarget Keen Insight$$inspexecpettarget Uncanny Insight$$inspexecpettarget Sight Beyond Sight$$em alakazam"
alt+u "petselectname Itsutsu$$inspexecpettarget Enrage$$inspexecpettarget Focused Rage$$inspexecpettarget Righteous Rage$$inspexecpettarget Furious Rage$$em alakazam"
alt+h "petselectname Itsutsu$$inspexecpettarget Catch a Breath$$inspexecpettarget Take a Breather$$inspexecpettarget Second Wind$$inspexecpettarget Back in the Fight$$em alakazam"
alt+g "petselectname Itsutsu$$inspexecpettarget Respite$$inspexecpettarget Dramatic Improvement$$inspexecpettarget Resurgence$$em alakazam"
alt+v "petselectname Itsutsu$$inspexecpettarget Luck$$inspexecpettarget Good Luck$$inspexecpettarget Phenomenal Luck$$inspexecpettarget Amazing Luck$$em alakazam"
alt+b "petselectname Itsutsu$$inspexecpettarget Sturdy$$inspexecpettarget Rugged$$inspexecpettarget Robust$$inspexecpettarget Resistant$$em alakazam"
NinjaRoku.txtz "petcompow Roku attack$$em slash"
shift+z "petcompow Roku aggressive$$em bringit"
x "petcompow Roku goto$$em point"
shift+x "petcompow Roku passive$$em stop"
ctrl+x "petcompow Roku dismiss$$em buzzoff"
c "petcompow Roku follow$$em fireworksparkle"
shift+c "petcompow Roku defensive$$em kissit"
+v "petselectname Roku$$powexecname Temporal Selection$$powexecname Smoke Flash"
+shift+v "petselectname Roku$$powexecname Temporal Selection$$powexecname Smoke Flash"
alt+t "petselectname Roku$$inspexecpettarget Break Free$$inspexecpettarget Emerge$$inspexecpettarget Escape$$inspexecpettarget Liberate$$em alakazam"
alt+y "petselectname Roku$$inspexecpettarget Insight$$inspexecpettarget Keen Insight$$inspexecpettarget Uncanny Insight$$inspexecpettarget Sight Beyond Sight$$em alakazam"
alt+u "petselectname Roku$$inspexecpettarget Enrage$$inspexecpettarget Focused Rage$$inspexecpettarget Righteous Rage$$inspexecpettarget Furious Rage$$em alakazam"
alt+h "petselectname Roku$$inspexecpettarget Catch a Breath$$inspexecpettarget Take a Breather$$inspexecpettarget Second Wind$$inspexecpettarget Back in the Figh$$em alakazamt"
alt+g "petselectname Roku$$inspexecpettarget Respite$$inspexecpettarget Dramatic Improvement$$inspexecpettarget Resurgence$$em alakazam"
alt+v "petselectname Roku$$inspexecpettarget Luck$$inspexecpettarget Good Luck$$inspexecpettarget Phenomenal Luck$$inspexecpettarget Amazing Luck$$em alakazam"
alt+b "petselectname Roku$$inspexecpettarget Sturdy$$inspexecpettarget Rugged$$inspexecpettarget Robust$$inspexecpettarget Resistant$$em alakazam"
NinjaNana.txtz "petcompow Nana attack$$em slash"
shift+z "petcompow Nana aggressive$$em bringit"
x "petcompow Nana goto$$em point"
shift+x "petcompow Nana passive$$em stop"
ctrl+x "petcompow Nana dismiss$$em buzzoff"
c "petcompow Nana follow$$em throwconfetti"
shift+c "petcompow Nana defensive$$em kissit"
+v "petselectname Nana$$powexecname Temporal Selection$$powexecname Smoke Flash"
+shift+v "petselectname Nana$$powexecname Temporal Selection$$powexecname Smoke Flash"
alt+t "petselectname Nana$$inspexecpettarget Break Free$$inspexecpettarget Emerge$$inspexecpettarget Escape$$inspexecpettarget Liberate$$em alakazam"
alt+y "petselectname Nana$$inspexecpettarget Insight$$inspexecpettarget Keen Insight$$inspexecpettarget Uncanny Insight$$inspexecpettarget Sight Beyond Sight$$em alakazam"
alt+u "petselectname Nana$$inspexecpettarget Enrage$$inspexecpettarget Focused Rage$$inspexecpettarget Righteous Rage$$inspexecpettarget Furious Rage$$em alakazam"
alt+h "petselectname Nana$$inspexecpettarget Catch a Breath$$inspexecpettarget Take a Breather$$inspexecpettarget Second Wind$$inspexecpettarget Back in the Fight$$em alakazam"
alt+g "petselectname Nana$$inspexecpettarget Respite$$inspexecpettarget Dramatic Improvement$$inspexecpettarget Resurgence$$em alakazam"
alt+v "petselectname Nana$$inspexecpettarget Luck$$inspexecpettarget Good Luck$$inspexecpettarget Phenomenal Luck$$inspexecpettarget Amazing Luck$$em alakazam"
alt+b "petselectname Nana$$inspexecpettarget Sturdy$$inspexecpettarget Rugged$$inspexecpettarget Robust$$inspexecpettarget Resistant$$em alakazam"
NinjaHachi.txtz "petcompow Hachi attack$$em slash"
shift+z "petcompow Hachi aggressive$$em bringit"
x "petcompow Hachi goto$$em point"
shift+x "petcompow Hachi passive$$em stop"
ctrl+x "petcompow Hachi dismiss$$em buzzoff"
c "petcompow Hachi follow$$em throwconfetti"
shift+c "petcompow Hachi defensive$$em kissit"
+v "petselectname Hachi$$powexecname Temporal Selection$$powexecname Smoke Flash"
+shift+v "petselectname Hachi$$powexecname Temporal Selection$$powexecname Smoke Flash"
alt+t "petselectname Hachi$$inspexecpettarget Break Free$$inspexecpettarget Emerge$$inspexecpettarget Escape$$inspexecpettarget Liberate$$em alakazam"
alt+y "petselectname Hachi$$inspexecpettarget Insight$$inspexecpettarget Keen Insight$$inspexecpettarget Uncanny Insight$$inspexecpettarget Sight Beyond Sight$$em alakazam"
alt+u "petselectname Hachi$$inspexecpettarget Enrage$$inspexecpettarget Focused Rage$$inspexecpettarget Righteous Rage$$inspexecpettarget Furious Rage$$em alakazam"
alt+h "petselectname Hachi$$inspexecpettarget Catch a Breath$$inspexecpettarget Take a Breather$$inspexecpettarget Second Wind$$inspexecpettarget Back in the Fight$$em alakazam"
alt+g "petselectname Hachi$$inspexecpettarget Respite$$inspexecpettarget Dramatic Improvement$$inspexecpettarget Resurgence$$em alakazam"
alt+v "petselectname Hachi$$inspexecpettarget Luck$$inspexecpettarget Good Luck$$inspexecpettarget Phenomenal Luck$$inspexecpettarget Amazing Luck$$em alakazam"
alt+b "petselectname Hachi$$inspexecpettarget Sturdy$$inspexecpettarget Rugged$$inspexecpettarget Robust$$inspexecpettarget Resistant$$em alakazam"
Now ... if you're still reading this, there's a few things I wanted to point out as little bits of clever conveniences built into these bindloadfiles, and how they inter(re)act with the ergonomics of the keyboard setup I'm using.
So the first thing I've got is that if I've got the All, Genin or Jounin files loaded/active, because those files all address multiple Pets simultaneously, it's simply not possible to use a keybind to issue an inspiration to a specific Pet, because you need to have a $Target chosen to send the inspiration to THAT specific Pet. This is why I've got the Alt+(T/Y/U, G-H and V/B) keys doing this work of selecting the Pet and issuing the "largest" inspiration of that type available to that individual Pet automatically for me. All I need to do is use the Shift+(T/Y/U, G/H or B) key combination FIRST to pick the Pet I want to send the inspiration to ... and then use the Alt+(T/Y/U, G/H and V/B) to send the right inspiration TYPE to that Pet.
Alt+T = Break Free
Alt+Y = Accuracy
Alt+U = Damage
Alt+G = Endurance
Alt+H = Heal
Alt+V = Defense
Alt+B = Resistance
I set things up this way so that it's at least easier to remember "what goes where" by grouping categories together as a mnemonic aid.
Break Free / Accuracy / Damage
Endurance / Heal
Defense / Resistance
Another thing that some people may notice about my bindloadfiles is ... what's going on with that +v key in there?
Well, that's a trick stolen from the Kheldian keybinds.
By setting up +v the way I did here, it's going to try to activate Smoke Flash on the down press of the V key, and then when you release the V key (if you don't let go of it "too fast") it will queue up Temporal Selection to activate next ... all with a single keystroke.
The idea here is that in a lot of situations (not all, granted, but a lot of them) I'd want to be using Smoke Flash as either an opener for a Pet about to take an alpha strike for me ... or because that Pet is in trouble and their green bar is dropping fast and something needs to be done to save them. The Smoke Flash will Placate nearby $Targets and enable a critical hit on their next few attacks (for 10s) by a Ninja Pet, but I'm thinking that if I need to "rescue" them from too much aggro like that, they're almost certainly going to need more healing if I'm using Smoke Flash as an "Oh S***!" button. What the +v keybinding does for me then is allow me to cause Smoke Flash AND Temporal Selection to be used on the same Pet with "one" keystroke ... assuming I've got that specific Pet's bindloadfile active so as to issue the keybind combo to THAT specific Pet.
Now ... granted ... in this current v2.0 build
I skipped Smoke Flash completely in favor of other powers available ... but that might not always be the case for every build that wants to use these keybinds. So I've left the Smoke Flash "factor" in the binds
just in case it could become relevant in an alternate build ... of if someone else wants to use these bind files as the basis for their own Mastermind and they simply want to Find/Replace the Smoke Flash power with something else.
Another thing that I'm sure anyone else playing with these keybinds will notice is ... I've built in emotes for my Mastermind to "do" while directing traffic around the battlefield. I've even got a Throw Confetti emote (that actually throws sparkly bits up into the air) for telling my Ninjas to "heel" and follow me, so as to "signal" them from afar, if need be, on where the rally point is supposed to be.
Telling my Ninjas to attack involves a throat slashing emote from my Mastermind.
It took me a while to figure out what emotes I wanted to associate with what commands, but I eventually got it all worked out and tested (that took a long time!).
At any rate, I hope that this (updated) Mastermind Control Scheme of mine winds up being useful to other people besides myself, particularly since I've gotten a few PMs from people asking me for an update on the current state of play of my bindloadfiles for my Mastermind. Well ... here they are.
Enjoy.