Publié dans Blog - Informatique et Développement le 11 mai

Suite à mes articles sur les cartes de champions et de primes de match pour Blood Bowl, réalisées via Magic Set Editor, j’ai eu des retours me demandant comment je les avais réalisées. Voici donc un petit tutorial pour réaliser des cartes avec des éléments simples.

Penser la carte en amont

Première étape, il faut réfléchir à ce que l’on souhaite intégrer sur la carte. Le meilleur moyen est de "poser" la carte sur papier, ou d’en faire un design vierge dans un logiciel de dessin.

Pour ma part, histoire que ça puisse resservir, je vais partir sur une carte pour Song of Blades and Heroes. Il y aura plusieurs champs de types différents ainsi :

- un nom de carte (du texte simple)
- un descriptif avec les règles spéciales (du texte multi-lignes)
- un coût (un nombre)
- une valeur d’activation (liste de choix)
- une valeur de combat (un nombre)
- un type de carte (Personnalité / Troupe)
- une image

Quelques minutes sur Paint.Net me donnent ce premier dessin, simple, pas très beau, mais suffisant pour le tutorial.

Design vierge

Design vierge

Design vierge pour une carte Song Of Blades And Heroes, pour utilisation dans Magic Set Editor.

Créer le "jeu" dans Magic Set Editor

Dans le répertoire d’installation de Magic Set Editor (MSE), ouvrez le répertoire data. C’est ici que se trouvent tous les fichiers qui génèrent les différents templates. Trouvez un bon suffixe pour votre jeu. Pour le tutorial, je prendrais sobah. Créons un répertoire nommé sobah.mse-game. Dans ce répertoire, créons un fichier texte nommé game, sans extension.

Pour l’édition des fichiers textes, je vous conseille Notepad++. Pour commencer, il va falloir passer le fichier en UTF8 (Encodage / Encoder en UTF-8). Histoire de travailler plus facilement, allez dans Paramétrage / Préférences pour modifier comment fonctionnent les tabulations. Dans l’onglet Menu langage/tabulations, décocher l’option Insérer des espaces. Enfin, activez l’affichage des tabulations via le menu Affichage / Symboles Spéciaux / Afficher les blancs et les tabulations. Pourquoi ? Parce que Magic Set Editor fait une grande utilisation des tabulations, alors autant bien les afficher.

Quelques informations de description sur votre jeu sont ensuite nécessaires. On va remplir comme suit le fichier game :

Parmi les données inscrites, short name et full name servent à afficher votre set de cartes. icon permet d’associer une image à votre set. Ce sera celle affichée dans la liste supérieure lorsque vous choisissez le set de cartes. Une icône d’environ 70 pixel de large est demandée, à placer dans le même répertoire que le fichier game. Dernier élément d’importance, position hint indique à quel rang vous souhaitez voir votre jeu. Magic The Gathering est généralement en première position, mais vous pouvez décider de placer le vôtre en premier si vous ne souhaitez utiliser que celui-ci.

Variables de jeu

Nous allons maintenant continuer l’édition du fichier game par l’ajout des variables du jeu. Dans le jargon de MSE, cela s’appelle des fields. Ils peuvent être de plusieurs types (text, image, choice, ...) et seront ensuite réutilisés dans les styles.

La documentation est assez complète et permet de bien cerner les différentes options. Voici comment nous allons définir le nom et les règles spéciales :

Les espaces présents avant les lignes sont des tabulations. La hiérarchie est très importante ici, il ne faut surtout pas inclure d’espace inutile (d’où l’intérêt de les afficher). Le name est à utiliser avec précaution. Un nom sans caractères spéciaux, sans espace, est préférable. Il sera réutiliser dans les feuilles de style. C’est ici également qu’on définit si le texte est multiline ou pas. La doc permet de connaître les valeurs par défaut de nombreux champs, consultez-la.

Passons aux valeurs chiffrées :

Les informations sont pratiquement identiques, et on peut voir que le type de points_value et combat_value est encore text. Et oui, il n’y a pas de champs numériques. Pour rendre numérique ces champs, on va jouer avec les scripts. Il s’agit d’instructions qui permettent de réaliser des contrôles / modifications sur les données. Ici, indiquons que l’on souhaite uniquement des nombres, avec only_numbers(value). On reparlera des scripts un peu plus loin.

quality_value est de type choice. Cela signifie que l’utilisateur pourra sélectionner un élément parmi une liste. Nous indiquons une liste de choix avec tous les éléments choice : xxx. Parmi ces éléments, nous répétons la valeur de celui qui sera choisi par défaut, avec initial : 4+. Dans les faits, un field de type choice affichera un menu déroulant. card_type est du même acabit, proposant deux choix.

Pour en terminer avec les fields, nous allons rajouter deux champs image. Je reviendrais après le code sur le pourquoi de deux images.

Le premier field décrit l’image qui nous servira à illustrer la carte. On définit le type, on ne l’affiche pas dans les stats, rien de bien sorcier. Pour la seconde, c’est un peu plus compliqué. Le type image permet d’afficher une image "éditable". Or, nous allons avoir besoin d’une image de fond non-éditable. Nous allons pour cela prendre un choice, que l’on transformera via la feuille de style en image. Un seul choix possible (standard), mais plus tard, on pourrait définir plusieurs fonds (pour différentes factions, armées, ...).

Et voilà, le fichier game est terminé. Ou presque ...

Script

Les scripts sont des bouts de code qui permettent de réaliser presque tout et n’importe quoi sur les données. Pour ce tutorial, on va rester dans du simple, et uniquement réaliser un script pour s’assurer que les valeurs rentrées dans certains champs sont uniquement numériques.

Créons un autre fichier dans le répertoire du jeu, et nommons-le script. Toujours pas d’extension, et un encodage en UTF-8. Dedans, juste ce bout de code, qui à l’aide d’une expression régulière, s’assure que seuls les caractères numériques sont acceptés comme données :

On retrouve le only_numbers spécifié dans le fichier game. Retournons-y, d’ailleurs, dans ce fichier. Il faut lier le fichier script, pour que MSE puisse le retrouver. Avant la définition des fields, mais après les spécifications du jeu, insérons la ligne qui suit :

On a inclus notre fichier de script, qui peut maintenant correctement s’utiliser dans la définition des fields !

Feuille de style

Revenons dans le répertoire data de MSE, et créons-y un nouveau répertoire. Nommons-le sobah-standard.mse-style. C’est dans ce répertoire que nous allons définir le style de notre carte. Un même jeu peut avoir pleins de cartes de type différent, et autant de répertoire de style. Dans notre répertoire, on va créer un fichier de texte vide, en UTF-8, nommé style.

Comme pour le fichier game, ce fichier comporte des informations descriptives.

Pour le game, insérez le nom du répertoire contenant le fichier game, moins l’extension mse-game. L’icône sert à représenter le style, et doit faire environ 70 pixels de large. Là aussi, il faut placer le fichier dans le répertoire du fichier style. Le position hint sert à indiquer la position du style parmi tous les styles du jeu.

Pour les dimensions de la carte, prenez les informations du fichier image précédemment créé. Il va nous rester maintenant à définir le style de chaque élément pour l’intégrer sur la carte.

Définition du style

Comme précédemment, un coup d’oeil à la doc officielle est une très bonne aide pour connaître les différents champs.

Pour commencer, ouvrez votre image dans un éditeur / visualiseur d’image, qui vous permet de visualiser les coordonnées d’une sélection. Par exemple, avec Paint.Net, quand on sélectionne une zone, on voit les coordonnées apparaître dans la zone d’informations inférieures de l’écran.

Sélectionnez la zone dans laquelle vous souhaitez voir apparaître le titre. Cela vous donnera les coordonnées à renseigner pour le style du champ. A la suite des informations sur la taille de la carte, insérez ceci :

On réutilise ici comme définition de champ le name du field créé dans le fichier game. Les tabulations sont très importantes ! card_name doit être précédé d’une tabulation, left de deux, color de trois.

On définit ici la position de l’élément, à l’aide de left, top, width et height. Le z index est à 1. Il sert à ordonner la hauteur des éléments, qui peuvent se superposer. Un z index haut signifie que l’élément est au-dessus des autres (comme une pile de feuilles, par exemple).

On précise qu’on souhaite centrer le texte verticalement et horizontalement par l’alignment, et on définit la police utilisée. Pour cela, on peut remarquer qu’il y a un décalage en tabulations. MSE distingue ainsi les "groupes" d’éléments, ici l’ensemble de la définition de la font, soit un nom, une taille, une couleur et son poids (gras ou normal).

On va procéder de même pour les autres champs textes classiques :

points_value a vu son z index passer à 2, car sinon il serait masqué par special_rules. Voilà un des intérêts de cette fonctionnalité.

J’ai également inclus dans cette liste quality_value, qui est de type choice. Par défaut, ces éléments sont rendus au format texte. Ce qui signifie que le texte affiché dans le menu déroulant est celui qui sera affiché sur la carte. Ce que l’on souhaite, ici.

Passons maintenant aux images. Tout d’abord, les deux images éditables.

Le premier élément, img_description, est une image que l’utilisateur pourra charger dans chaque carte. C’est un champ qui s’active par un double-click, avec l’explorateur de fichiers qui s’ouvre ensuite. Il y aura du texte par-dessus cette image, nous mettons donc un z index de -1 (car il y a un petit truc à mettre au niveau 0 ensuite).

Le second est un élément de type choice. Par défaut, le render style est de type text. Nous souhaitons avoir une icône (un point dans une image 10*10) pour indiquer que la carte concerne une Personnalité. Pour cela, on modifie le render style, et on renseigne l’image à afficher pour chaque choix dans choice image. Cela peut servir, dans d’autres jeux, à gérer divers éléments par des icônes. Peu importe le nombre de choix, on peut leur affecter chacun une icône différente (ou la même pour plusieurs choix).

La carte est presque terminée, il nous reste le cadre de fond à intégrer via le field img_bg.

On a, si l’on s’en souvient, définit img_bg comme un choice. Comme pour l’icône de Personnalité, on va transformer le choix en image. Ici, un seul choix donc une seule image, et elle prend toute la carte. Le z index est à 0, pour que les champs éditables s’écrivent dessus.

Il reste la question du mask. On souhaite afficher une image dans la carte, mais certaines informations seront au-dessus de cette image (combat / qualité). Qui plus est, notre modèle vierge n’a pas de transparence pour laisser passer la carte. Il faut donc définir un masque. C’est une image toute simple, en noir et blanc, qui définit en noir les zones transparentes d’un élément. Ici, on colorie la zone où doit s’afficher l’image en noir, le reste en blanc.

Masque

Masque

Masque pour la carte

It’s Over !

On a une carte fonctionnelle, pas très belle, mais normalement vous devriez avoir compris le principe. Fouillez les templates existants à la recherche d’idées.

L’élément font peut être pas mal modifié. Trouvez les bonnes polices, les bons effets (shadow, color, ...), tout est dans la doc. On peut également jouer avec des rotations (propriétés angle). Bref, une fois le template de base réalisé, vos compétences de graphistes feront le reste.

Les fichiers du tutorial sont dispos en téléchargement.

Si vous avez des questions, posez-les en commentaires, ou par mail. De même, si vous trouvez des erreurs, ou des trucs pas clairs, signalez-les moi, que je les corrige / améliore.

Dernière version en date du 11 mai 2012


Publié dans Blog - Figs et jeux le 6 mai

Suite à mon précédent article sur les cartes de champions pour Blood Bowl, voici la suite de mes travaux.

Pour les champions, j’ai réalisé une version "Classic" qui reprend en partie le design de la v3. J’ai encore quelques trucs à corriger / améliorer dessus, mais je ne le ferais pas beaucoup évoluer.

Griff Oberwald

Griff Oberwald

Carte de Champion pour Blood Bowl

J’ai aussi revu ma copie concernant le template qui s’inspire de Blood Bowl Team Manager. De l’herbe, du sang, plus de contraste, je le préfère, tout simplement. Dans Magic Set Editor, un clic normal sur le fond de l’image, là où il n’y a pas de champ à remplir, permet de choisir entre le fond Standard et le Bloody.

J. Oreillefine

J. Oreillefine

Carte de Champion pour Blood Bowl

J’ai aussi revu l’affichage des notes complémentaires (pour Igor LeFou et Pet’Brik et Minab’). Et j’ai intégré les icônes d’équipe. Pas encore totalement satisfait du rendu, j’attends de voir quelques retours.

Igor LeFou

Igor LeFou

Carte de Champion pour Blood Bowl

En plus des champions, je me suis attaqué aux Primes de Match. Toutes les cartes sont dispos, mais pas totalement mises en forme. Comme pour les champions, il y a des champs "invisibles" qui permettent de gérer la taille de police de certains champs. Il faudra aussi un peu de relecture pour être sûr que toutes les cartes sont OK.

Casque Magique

Casque Magique

Carte de Prime de match pour Blood Bowl

En attendant une finalisation, j’ai mis à jour dans la section Téléchargements les fichiers.

Pour info, on en discute sur le forum de la Ligue du BN (avec plus de captures)


Publié dans Blog - Entre autres choses le 4 mai

Quelques toiles

Ce mois d’avril a été l’occasion d’aller visiter les salles obscures plusieurs fois. Pour du divertissement familial tout d’abord, avec Les Pirates et Sur la piste du Marsupilami. Le premier est une vraie réussite, avec un humour qui fait mouche à plusieurs niveaux, des clins d’oeil vraiment très sympas, une excellente bande-son, et puis une animation "pâte à modeler" qui m’a rappelé de très bons souvenirs. Pour le Marsu, je ne savais pas trop à quoi m’attendre, et j’avais même un peu peur du résultat. Et finalement, c’est très bien passé ! Des personnages hauts en couleur, de l’humour bête mais pas forcément méchant, et une très belle animation pour la bestiole.

Plus "adolescent", j’ai également découvert Projet X, bonne surprise bien déglinglée, qui n’avait peut être pas besoin de l’effet "caméra portée", mais bon, c’est une mode en ce moment. Et puis le plaisir du mois était la sortie de The Avengers. Excellent block-buster, belle réussite, aucun personnage ne met d’ombre aux autres, et même si la menace est au final légère, ça pète bien !

Dans mon salon

J’ai redécouvert avec mes yeux d’adulte le chef d’oeuvre Porco Rosso. Oui, chef d’oeuvre. La mise en scène est superbe, le dessin, même si un peu daté, possède un vrai cachet, et la musique est à tomber. J’ai découvert Jean Reno au doublage, sacrée surprise. Et puis je ne me rappelais plus trop de l’histoire, qui est vraiment belle et terrible.

Dans un tout autre style, j’ai été conquis par la troisième saison de Justified, avec ses personnages toujours aussi savoureux, les accents impayables du Kentucky, et la poursuite du retour au pays de Raylan Givens. C’est sans doute actuellement la série en cours de diffusion que je préfère. Et va falloir que je tente Elmore Leonard à la lecture.

A propos de lecture

Mes lectures du mois sont toujours dispos sur Goodreads. Une déception avec les Visages, de bons petits jeux de rôles (Fiasco, On Mighty Thews, Tranchons & Traquons), et quelques comics (All Star Batman, Zombies). Rien d’exceptionnel cependant.

Let’s Play !

Pas eu le temps de beaucoup joué, mais j’ai finalement craqué pour Dirt 3. D’abord réticent vis-à-vis du Gymkhana (j’ai vraiment pas accroché au drift dans Race Driver GRID), je me suis laissé prendre au jeu, et il améliore en fait vraiment le second opus. Manque à mon goût plus de longues courses de Trailblazer, mais comme on a moins de buggy, c’est tout bon !

Moins électronique, j’ai ressorti Flash Point, et j’ai toujours pas gagné ... en mode familial. Va falloir que je le teste en solo avec une équipe de 3/4 pompiers, pour voir. Mais mon comparse de 7 ans accroche et aime le matériel. J’ai ressorti des placards Les Mystères de Pékin. L’ambiance du plateau est toujours là, mais le système de jeu me semble, maintenant, bâclé. Trop de jet de dés pouvant pourrir la partie pour les déplacements. Mais les parties sont courtes, et c’est toujours mieux que le jeu de l’oie ou les petits chevaux !

Enfin, un retour rapide sur Bloody Ball, découvert via mes flux RSS. Le jeu est agréable, change de Blood Bowl, et permet des parties rapides pour des gens ne souhaitant pas se lancer dans Blood Bowl, mais tentés par les figurines et un jeu de foot américain fantastique. C’est plus tactique qu’on ne le pense au premier abord, et y a de la tension. A retester, avec peut-être un terrain custom ...

Au moins prochain pour d’autres rapides impressions ...


Publié dans Blog - Figs et jeux le 27 avril

Il y a quelques temps, j’ai découvert Magic Set Editor. Ce logiciel permet de générer des cartes pour divers jeux de cartes à collectionner, et de se les imprimer. On peut ainsi se faire un deck Magic pour pas cher, ou bien encore générer ses cartes personnalisées de Pokemon.

Il est bien sûr possible de créer ses propres templates, pour générer ses propres cartes. J’ai commencer à utiliser MSE pour générer des cartes pour Song of Blades and Heroes, en utilisant le template des jeux Versus. Mais celui-ci ne me plaisait pas totalement, et j’ai décidé de réaliser mon propre template. Il n’est pas encore terminé.

Par contre, j’ai eu l’idée de réaliser un template pour Blood Bowl, pour disposer d’un deck avec tous les champions du jeu. Je compte ensuite y rajouter les cartes de primes de matches, et faire imprimer le tout par Artscow. J’ai découvert ce site via Les Livres de l’Ours et Tranchons & Traquons, et la qualité semble au rendez-vous.

Voici donc un aperçu de mon template. J’ai repris l’idée des cartes de Blood Bowl Team Manager, mais je ne suis pas encore 100% convaincu du résultat (les textures notamment). Je compte reprendre la présentation des cartes d’Entraînement du jeu pour les Primes de match. Je vais aussi reproduire le format original des cartes du jeu pour les champions (carrée, avec le fond rouge).

Aperçu de quelques cartes

Aperçu de quelques cartes

Aperçu de cartes via Magic Set Editor, illustrations par le blog The Art of Fantasy Football

Direction cet article pour télécharger le template et le fichier du deck. Si vous avez des idées, d’autres champions, que vous souhaitez également revoir le design des cartes (les textures notamment), n’hésitez pas à me contacter.