G13 pour moi. Fiable et inusable. C'est le pad, je crois, qui dispose du plus grand nombre de touches. Capture a la volée et macro irréprochables. Mais le top, ce sont les scripts en lua. J'y connaissais rien ya une semaine et j'avoue, j'en ai bavé. Mais j'ai finalement pondu un script qui gère les terrans sous SC2 en utilisant qu'un seul bloc mémoire. Reste à adapter ce script pour les autres races en utilisant les M2 et M3 qu'on peut selectionner a la volée.
Sinon j'ai un clavier standard... J'ai tout fait pour pouvoir m'en passer et tout gérer sur le G13. L'intérêt de la bête étant d'en faire l'outil exclusif de la main gauche sans utiliser de clavier, a part pour chatter... Si on a le temps. Et sous Sc2, c'est pas gagné.
Bon. Cette config me convient mais ca sera pas le cas de tout le monde. Comme j'ai pas mal galéré et pour éviter a certains de passer par les prises de tête desquelles je sors, voici le script. Je rappelle qu'il n'est bon que pour les terrans. Je vais travailler sur la suite quand j'aurai dormi un peu ^^.
Pour essayer ce code, démarrez le profiler, faites un nouveau profil puis allez dans l'éditeur de scripts. Collez çà dedans. Assignez toutes les touches G au script. Les commandes principales sont détaillées directement sur le LCD. Pour bien piger la config, lisez les commentaires dans le code. J'espere que ca vous plaira.
----------------------------Sctipt By Zeoam------------------------------------
build=0;
unit=0;
x=0;
y=0;
----------------------------Début de partie------------------------------------
--En tout début de partie, un script spécial permet d'automatiser les actions--
--de base. Selectionnez d'abord votre centre de commandement, maintenez--------
--G22 et G19 en même temps puis appuyez sur G1. Il ne reste plus qu'à cliquer--
--droit sur le minerais. Les détails du scripts sont expliqués dans les--------
--commentaires de la touche G1 en mode normal.---------------------------------
function OnEvent(event, arg)
-- ---------------------G23 SWAP MODE BUILD--------------------------------
-- G24 propose le menu construction. Il n'appelle pas automatiquement------
-- les vcs. On peut les selectionner avant comme après avoir enfoncé-------
-- la touche. L'essentiel est de la laisser enfoncer pour donner-----------
-- l'ordre. Si vous vous êtes gourré, pas grave. Laissez la touche G24-----
-- enfoncée et selectionnez un autre batiment. Relâcher la touche----------
-- retourne au mode normal mais l'ordre ainsi doné est maintenu et---------
-- vous pouvez toujours shifter (g19) pour enchaîner les builds------------
-- ************************************************************************
-- Pour assigner les batiments de recherche a la bank 0, maintenez G23-----
-- (çà passe en mode Build) et pressez G22 (habituellement Ctrl).----------
if (event=="G_RELEASED" and arg==23) and build==1 then --Mode BUILD
unit=0;
build=0;
else if event=="G_PRESSED" and arg==23 and build==0 then --mode normal
build=1;
end
end
-- ---------------------FIN MODE BUILD-------------------------------------
-- ---------------------G24 SWAP MODE UNIT-------------------------------
-- Appuyée une fois, cette touche rappelle juste les batiments de--------
-- production qui doivent se situer dans la bank 8. Appuyée une seconde--
-- fois, elle déclenche TAB et vous permet de passer de barrack à usine--
-- par ex. Et ainsi de suite. -------------------------------------------
-- Là, il y a 2 méthodes : Soit vous laissez appuyé et vous selectionnez-
-- L'unité a lancer avec G1-G5, G8-G11, G15-G19, qui renvoient tous les--
-- commandes "azert", soit vous lachez la touche et vous utilisez la-----
-- commande azert du mode normal (G8-G12)--------------------------------
-- **********************************************************************
-- Pour assigner les batiments de prod a la bank 8, maintenez G24 (çà ---
-- passe en mode Unit) et pressez G22 (habituellement Ctrl).-------------
if (event=="G_RELEASED" and arg==24) and unit==1 then --Mode UNIT
--PressKey ("lctrl", "0" )
--ReleaseKey ("0", "lctrl" )
local t = GetRunningTime();
G24_rel=t;
if (t- (G24_pre or 0))<500 and (t- (G24_pre2 or 0))>100 then
PressAndReleaseKey("tab" );
end
unit=0;
build=0;
else if event=="G_PRESSED" and arg==24 and unit==0 then --mode normal
unit=1;
local u = GetRunningTime();
G24_pre=u;
if (u- (G24_rel or 0))>2500 then
PressAndReleaseKey("8" );
local v = GetRunningTime();
G24_pre2=v;
end
end
end
-- ---------------------FIN SWAP MODE UNIT---------------------------
-- ---------------------MODE NORMAL---------------------------
if build==0 and unit==0 then
if (event=="G_PRESSED" and arg==1) and IsModifierPressed("lctrl" ) and IsModifierPressed("lshift" ) then --debut de partie
ReleaseKey ("lshift", "lctrl" );--Comme shift et ctrl servent a appeler cette fonction, on les desactive avant de commencer
--crée drone
PressKey("q" );
--mise de la base en mémoire bank 9
PressKey("lctrl", "9" );
ReleaseKey("9", "lctrl" );
--select drones inactifs
PressKey("lctrl", "F1" );
ReleaseKey("F1", "lctrl" );
while not IsMouseButtonPressed(3) do
--Attente du clic droit sur le minerais
end
--rappel base en mémoire bank 9
PressAndReleaseKey("9" );
-- Clic droit automatique (pt de ralliement) sur le même minerais
PressAndReleaseMouseButton(3);
--cl de fin d'init
else if (event=="G_PRESSED" and arg==1) then --G1 bank 1 (G22=ctrl & G19=shiht)
PressAndReleaseKey("1" );
end
end
if (event=="G_PRESSED" and arg==2) then --G2 bank 2 (G22=ctrl & G19=shiht)
PressAndReleaseKey("2" );
end
if (event=="G_PRESSED" and arg==3) then --G3 bank 3 (G22=ctrl & G19=shiht)
PressAndReleaseKey("3" );
end
if (event=="G_PRESSED" and arg==4) then --G4 bank 4 (G22=ctrl & G19=shiht)
PressAndReleaseKey("4" );
end
if (event=="G_PRESSED" and arg==5) then --G5 bank 5 (G22=ctrl & G19=shiht)
PressAndReleaseKey("5" );
end
if (event=="G_PRESSED" and arg==6) then --G6 bank 6 (G22=ctrl & G19=shiht)
PressAndReleaseKey("6" );
end
if (event=="G_PRESSED" and arg==7) then --G7 bank 7 (G22=ctrl & G19=shiht)
PressAndReleaseKey("7" );
end
if (event=="G_PRESSED" and arg==8) then --G8 ordre a (production unité)(ou nuke pour fantom)
PressAndReleaseKey("a", "q" );
end
if (event=="G_PRESSED" and arg==9) then --G9 ordre z (ou cesser le feu pour fantom)
PressAndReleaseKey("d","w" );
end
if (event=="G_PRESSED" and arg==10) then --G10 ordre e (ou feu a volonté pour fantom)
PressAndReleaseKey("f","e" );
end
if (event=="G_PRESSED" and arg==11) then --G11 ordre r
PressAndReleaseKey("r" );
end
if (event=="G_PRESSED" and arg==12) then --G12 ordre t
PressAndReleaseKey("t" );
end
if (event=="G_PRESSED" and arg==13) then --G13 Autorepair (A mettre sur 1 ou plusieurs VCS)
PressKey("lalt", "a" );
ReleaseKey("lalt", "a" );
end
if (event=="G_RELEASED" and arg==14) then --G14 Select 1 VCS inactif (Tous les inactifs si laissé appuyé + 150ms)
local u = GetRunningTime()
if (u -(G14_enf or 0)>150) then
PressKey("lctrl", "F1" );
ReleaseKey("F1", "lctrl" );
end
else if event=="G_PRESSED" and arg==14 then
local t = GetRunningTime()
G14_enf= t;
PressAndReleaseKey("F1" );
end
end
if (event=="G_PRESSED" and arg==15) then --G15 ordre w (Stimulants pour marines maraudeurs, Mode siège pour tank, chasseur pour vicking, yamato, tourelle corbeau, tir de précision fantom, cloak banshee, etc.)
PressAndReleaseKey("z" );
end
if (event=="G_PRESSED" and arg==16) then --G16 ordre x (Mode tank pour char, Assaut pour vicking, drone corbeau, emp fantom, uncloak banshee, etc.)
PressAndReleaseKey("x" );
end
if (event=="G_PRESSED" and arg==17) then --G17 ordre c (Cloak fantom, missile corbeau, etc.)
PressAndReleaseKey("c" );
end
if (event=="G_PRESSED" and arg==18) then --G18 ordre v (uncloak fantom, etc.)
PressAndReleaseKey("v" );
end
if (event=="G_RELEASED" and arg==19) then --G19 ordre b (frappe rapide)(annuler prod, annulerconstruction pour le vcs, détruire la construction en cours, etc.) ou LSHIFT (maintenir)
ReleaseKey("lshift" )
local t = GetRunningTime();
if (t-(G22_push or 0))<200 then
PressAndReleaseKey("b" );
end
else if (event=="G_PRESSED" and arg==19) then
local u = GetRunningTime();
G22_push = u;
PressKey("lshift" );
end
end
if (event=="G_PRESSED" and arg==20) then -- Tabulation
PressAndReleaseKey("tab" );
end
if (event=="G_PRESSED" and arg==21) then -- ALT + Bouton du milieu (affiche les barres de vie + navigation)
PressKey("lalt" );
PressMouseButton(2);
else if (event=="G_RELEASED" and arg==21) then
ReleaseKey("lalt" );
ReleaseMouseButton(2);
end
end
if (event=="G_RELEASED" and arg==22) then --(maintenir) = lctrl
--(appui bref) Appelle bank 0 (recherche)
--(re appui bref) TAB dans bank 0.
--(Mode build) pour assigner la bank 0
ReleaseKey("lctrl" )
local t = GetRunningTime();
if (t-(G22_push or 0))<200 then
G22_1st = t;
if (G22_1st-(lasttime or 0))>1500 then
PressAndReleaseKey("0" );
lasttime=t;
else if (G22_1st-(lasttime or 0))<1500 then
PressAndReleaseKey("tab" );
lasttime=t;
end
end
end
else if (event=="G_PRESSED" and arg==22) then
local u = GetRunningTime();
G22_push = u;
PressKey("lctrl" );
end
end
end
-- ---------------------FIN MODE NORMAL-----------------------------
-- ---------------------MODE BUILD----------------------------------
-- Maintenir G23 enfoncé pour accéder a toutes les constructions----
-- SELECTIONNER SON/SES VCS avant de lancer l'ordre... C'est mieux--
if build==1 and unit==0 then
if (event=="G_PRESSED" and arg==1) then --G1 dépot
PressAndReleaseKey("escape" );
PressAndReleaseKey("z" );
PressAndReleaseKey("e" );
end
if (event=="G_PRESSED" and arg==2) then --G2 raffinerie
PressAndReleaseKey("escape" );
PressAndReleaseKey("z" );
PressAndReleaseKey("w" );
end
if (event=="G_PRESSED" and arg==3) then --G3 base
PressAndReleaseKey("escape" );
PressAndReleaseKey("z" );
PressAndReleaseKey("q" );
end
if (event=="G_PRESSED" and arg==4) then ---------inutilisé---------
end
if (event=="G_PRESSED" and arg==5) then --G5 radar
PressAndReleaseKey("escape" );
PressAndReleaseKey("z" );
PressAndReleaseKey("c" );
end
if (event=="G_PRESSED" and arg==6) then --G6 tourelle
PressAndReleaseKey("escape" );
PressAndReleaseKey("z" );
PressAndReleaseKey("x" );
end
if (event=="G_PRESSED" and arg==7) then --G7 bunker
PressAndReleaseKey("escape" );
PressAndReleaseKey("z" );
PressAndReleaseKey("z" );
end
if (event=="G_PRESSED" and arg==8) then --G8 barrack
PressAndReleaseKey("escape" );
PressAndReleaseKey("z" );
PressAndReleaseKey("a" );
end
if (event=="G_PRESSED" and arg==9) then --G9 centre tech
PressAndReleaseKey("escape" );
PressAndReleaseKey("z" );
PressAndReleaseKey("s" );
end
if (event=="G_PRESSED" and arg==10) then --G10 acad fantome
PressAndReleaseKey("escape" );
PressAndReleaseKey("x" );
PressAndReleaseKey("q" );
end
if (event=="G_PRESSED" and arg==11) then ---------inutilisé---------
end
if (event=="G_PRESSED" and arg==12) then ---------inutilisé---------
end
if (event=="G_PRESSED" and arg==13) then ---------inutilisé---------
end
if (event=="G_PRESSED" and arg==14) then ---------inutilisé---------
end
if (event=="G_PRESSED" and arg==15) then --G15 usine
PressAndReleaseKey("escape" );
PressAndReleaseKey("x" );
PressAndReleaseKey("a" );
end
if (event=="G_PRESSED" and arg==16) then --G16 armurerie
PressAndReleaseKey("escape" );
PressAndReleaseKey("x" );
PressAndReleaseKey("s" );
end
if (event=="G_PRESSED" and arg==17) then ---------inutilisé---------
end
if (event=="G_PRESSED" and arg==18) then ---------inutilisé---------
end
if (event=="G_PRESSED" and arg==19) then ---------inutilisé---------
end
if (event=="G_PRESSED" and arg==20) then --G20 Starport
PressAndReleaseKey("escape" );
PressAndReleaseKey("x" );
PressAndReleaseKey("z" );
end
if (event=="G_PRESSED" and arg==21) then --G21 Noyau de fusion
PressAndReleaseKey("escape" );
PressAndReleaseKey("x" );
PressAndReleaseKey("x" );
end
if (event=="G_PRESSED" and arg==22) then --Assigne les batiments de recherche a la bank 0.
PressKey("lctrl","0" );
else if (event=="G_RELEASED" and arg==22) then
ReleaseKey("0","lctrl" );
end
end
end
-- ---------------------FIN MODE BUILD--------------------------------------
-- ---------------------MODE UNIT-------------------------------------------
-- Ce mode déclenché par G24 va chercher les batiments de prod en bank 9----
-- Appuyer G24 plusieurs fois déclenche la touche TAB pour naviguer dans----
-- les différents batiments. Toutes les autres touches, si on reste --------
-- appuyé sur G24 sont mappées comme suit. Je rappelle que les raccourcis---
-- azert existent déjà par défaut sur les touches G8 à G12 dans le mode-----
-- normal. Il n'est donc pas nécessaire de laisser G24 appuyé mais bon...---
if build==0 and unit==1 then
if (event=="G_PRESSED" and arg==1) then --a
PressAndReleaseKey("q" );
end
if (event=="G_PRESSED" and arg==2) then --z
PressAndReleaseKey("w" );
end
if (event=="G_PRESSED" and arg==3) then --e
PressAndReleaseKey("e" );
end
if (event=="G_PRESSED" and arg==4) then --r
PressAndReleaseKey("r" );
end
if (event=="G_PRESSED" and arg==5) then --t
PressAndReleaseKey("t" );
end
if (event=="G_PRESSED" and arg==6) then------inutilisé------
end
if (event=="G_PRESSED" and arg==7) then------inutilisé------
end
if (event=="G_PRESSED" and arg==8) then --a
PressAndReleaseKey("q" );
end
if (event=="G_PRESSED" and arg==9) then --z
PressAndReleaseKey("w" );
end
if (event=="G_PRESSED" and arg==10) then --e
PressAndReleaseKey("e" );
end
if (event=="G_PRESSED" and arg==11) then --r
PressAndReleaseKey("r" );
end
if (event=="G_PRESSED" and arg==12) then --t
PressAndReleaseKey("t" );
end
if (event=="G_PRESSED" and arg==13) then------inutilisé------
end
if (event=="G_PRESSED" and arg==14) then------inutilisé------
end
if (event=="G_PRESSED" and arg==15) then --a
PressAndReleaseKey("q" );
end
if (event=="G_PRESSED" and arg==16) then --z
PressAndReleaseKey("w" );
end
if (event=="G_PRESSED" and arg==17) then --e
PressAndReleaseKey("e" );
end
if (event=="G_PRESSED" and arg==18) then --r
PressAndReleaseKey("r" );
end
if (event=="G_PRESSED" and arg==19) then --t
PressAndReleaseKey("t" );
end
if (event=="G_PRESSED" and arg==20) then------inutilisé------
end
if (event=="G_PRESSED" and arg==21) then------inutilisé------
end
if (event=="G_PRESSED" and arg==22) then --Assigne les batiments de prod a la bank 8.
PressKey("lctrl","8" );
else if (event=="G_RELEASED" and arg==22) then
ReleaseKey("8","lctrl" );
end
end
end
-- ---------------------FIN MODE UNIT---------------------------
-- ---------------------Routines de couleur---------------------------
-- ---------------------Mode BLEU Build---------------------------
if build==1 then
ClearLCD( );
SetBacklightColor(0, 255, 255);
OutputLCDMessage("(1)-Dépôt (2)-Raffinerie (3)-Base\n(5)-Radar (6)-Tourelle (7)-Bunker\n(8)-Barrack (9)Ctre Tech (10)Acad Fantom\n(15)Usine (16)Armur (20)Stport (21)Noyau\n", 600000);
end
-- ---------------------FIN MODE BLEU Build---------------------------
-- ---------------------FIN VERT Normal---------------------------
if build==0 and unit==0 then
ClearLCD( );
SetBacklightColor(0, 255, 0);
OutputLCDMessage("normal\nG1-G7 = Memory bank G13 = A-Repair\nG8-G12 = qwert & Nuke G14/+ = F1/All\nG15-G19 = Last line action +G19 = Shift\nG20 = TAB G21 = ALT+mdbtn G22 = Ctrl", 600000);
end
-- ---------------------FIN MODE VERT Normal---------------------------
-- ---------------------FIN MODE ORANGE Unit---------------------------
if unit==1 then
ClearLCD( );
SetBacklightColor(255, 255, 0);
OutputLCDMessage("Units Maker\nBuildings -->8 Press +Ctrl (G22) for assign\n(G8-G12) = qwert\nRetap(G24) for TAB", 30000);
end
-- ---------------------FIN MODE ORANGE Unit---------------------------
-- ---------------------FIN Routines de couleur---------------------------
end