PréambuleCette technique n'est pas du hack, dans le sens où vous allez devoir faire tout vos mouvements vous-mêmes. Vous n'allez pas pouvoir donner plus de force, de vitesse ou de stabilité à vos Tori, donc, ça n'est pas de la triche. Par contre, bien utilisée elle peut faire gagner du temps. Mais pas tant que ça, car la manipulation des fichiers de replay peut s'avérer très longue (je bosse sur un script qui pourra faire accélérer les choses, mais c'est pas pour tout de suite). Si bouger deux Toris en même temps ne vous pose aucun problème, oubliez ce tuto, ça ne vaut vraiment pas le coup.
Dernière chose : cela ne fonctionne que lorsque vos Tori ne sont pas en contact. C'est donc très utile pour les doubles openers de type "course", mais totalement inefficace au corps à corps.
1. Commencer deux replays, l'un en bougeant Uke, l'autre en bougeant ToriLes 2 replays doivent avoir la même gravité ! Prenez une engage distance suffisamment grande (elle ne sera pas définitive).
2. Une fois vos deux replays sauvés, ouvrez les dans un bloc-noteL'idée est d'injecter les informations concernant Uke dans le replay où on ne bougeait que Tori. Pour ça, il faut connaître un minimum la structure d'un replay. Principalement, il faut savoir repérer les "blocs frame". Voici un exemple de "bloc frame" :
- Code:
-
FRAME 0; 0 0 0 0
JOINT 0; 0 3 1 3 2 3 3 3 4 3 5 3 6 3 7 3 8 3 9 3 10 3 11 3 12 3 13 3 14 1 15 1 16 3 17 3 18 3 19 3
POS 0; 1.00000000 2.69000000 2.59000009 1.00000000 2.73999995 2.14000005 1.00000000 2.73999995 1.89000005 1.00000000 2.78999996 1.69000000 1.00000000 2.83999997 1.48999995 0.75000000 2.73999995 2.09000009 0.44999999 2.73999995 2.23999995 0.05000000 2.73999995 2.23999995 1.25000000 2.73999995 2.09000009 1.54999995 2.73999995 2.23999995 1.95000005 2.73999995 2.23999995 -0.34999999 2.68999994 2.23999995 2.34999990 2.68999994 2.23999995 0.80000001 2.83999997 1.39000005 1.20000005 2.83999997 1.39000005 0.80000001 2.83999997 1.04000002 1.20000005 2.83999997 1.04000002 1.20000005 2.83999997 0.44000000 0.80000001 2.83999997 0.44000000 0.80000001 2.73999995 0.04000000 1.20000005 2.73999995 0.04000000
QAT 0; 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000
LINVEL 0; 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
ANGVEL 0; 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
JOINT 1; 0 3 1 3 2 3 3 3 4 3 5 3 6 3 7 3 8 3 9 3 10 3 11 3 12 3 13 3 14 3 15 3 16 3 17 3 18 3 19 3
POS 1; 1.00000000 -2.88999993 2.59000009 1.00000000 -2.93999988 2.14000005 1.00000000 -2.93999988 1.89000005 1.00000000 -2.98999989 1.69000000 1.00000000 -3.03999990 1.48999995 1.25000000 -2.93999988 2.09000009 1.55000001 -2.93999988 2.23999995 1.95000000 -2.93999988 2.23999995 0.75000000 -2.93999988 2.09000009 0.45000005 -2.93999988 2.23999995 0.04999995 -2.93999988 2.23999995 2.34999999 -2.88999987 2.23999995 -0.34999990 -2.88999987 2.23999995 1.19999999 -3.03999990 1.39000005 0.79999995 -3.03999990 1.39000005 1.19999999 -3.03999990 1.04000002 0.79999995 -3.03999990 1.04000002 0.79999995 -3.03999990 0.44000000 1.19999999 -3.03999990 0.44000000 1.19999999 -2.93999988 0.04000000 0.79999995 -2.93999988 0.04000000
QAT 1; 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000
LINVEL 1; 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
ANGVEL 1; 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
Les blocs frame commencent par le mot clés "FRAME" suivi du numéro de la frame. Il y ensuite un point virgule et plusieurs indications, dont les scores.
Ils comportent plusieurs lignes : "JOINT", "POS", "QAT", "LINVEL", "ANGVEL", dont vous n'avez pas à savoir la signification (je vous l'explique en privé si ça vous intéresse, mais bossez vos maths avant de me poser la question). Tout ce que vous avez à savoir, c'est ces lignes définissent l'état, la position et la vitesse des joints durant la frame considérée. Petite anecdote : les lignes POS sont inutiles, elles peuvent être supprimées car elles sont recalculées par TB lors du visionnage du replay (ça aussi, je peux vous l’expliquer en privé si vous vous sentez de perdre 1 heure de votre vie). A côté de ces mots clés, il y a un chiffre, "1" ou "0", indiquant à quel joueur l'information est appliquée.
Ainsi :
- Code:
-
JOINT 0; 0 3 1 3 2 3 3 3 4 3 5 3 6 3 7 3 8 3 9 3 10 3 11 3 12 3 13 3 14 1 15 1 16 3 17 3 18 3 19 3
Indique l'état des joints pour Tori (0 = Tori)
- Code:
-
LINVEL 1; 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
Indique la vitesse linéaire des joints pour Uke (1=Uke)
Vous commencez à le deviner : on va construire au bloc note un fichier texte fusionnant toutes les infos sur les joints de Tori et toutes celles concernant Uke.
3. Les différents cas possiblesPartons du principe que vous copier/coller les informations de Uke dans le replay où on ne bougeait que Tori.
Il faut garder à l'esprit que les blocs frame que vous allez obtenir doivent être cohérents et ordonnés.
Dans le cas de la frame 0, vous avez déjà des informations sur Uke (disant : Uke est immobile et hold all). Il va falloir les écraser avec vos véritables valeurs.
Ensuite, repérez le bloc frame suivant pour Uke et identifiez le numéro de la frame (nombre à côté du mot clé "FRAME")
Si cette frame n’apparaît pas côté Tori, recopier dans son intégralité tout le bloc frame, au bon endroit.
Si cette frame apparaît côté Tori, copier uniquement les informations des joints (sans la ligne "FRAME") et copier-la à la suite du bloc frame côté Tori.
Et ainsi de suite pour tous les blocs frame de Uke... bon courage !
4. Finition : coordination spatiale et temporellePour la coordination temporelle, pas de secret : c'est à vous de gérer. Commencez par bouger Tori, et repérer la frame où il donnera son coup. Quand vous bougerez Uke, il faudra imaginer qu'à cette frame là, Tori frappera. Si vous comptiez faire un "pied contre pied" (comme mon dernier sparring) et que Uke est encore au sol, c'est trop tard !
Pour la coordination spatiale, j'avais déjà expliqué : il faut effacer
toutes les lignes POS du fichier replay, sans exceptions. Ensuite, vous pourrez modifier la valeur de l'engage distance (ligne NEWGAME tout en haut du replay, 7ème valeur, comme on le voit ci dessous).
NEWGAME 0;500 10 15 0 0 2
558 0 0 classic 0 0 100 0 0 0 1 0 2 0 0 0 0 0 0 0.000000 0.000000 -20.000000 0 0
Vous savez tout.