Non vous ne rêvez pas, ce ne sont pas non plus des traductions inédites de Tads, mais il est possible maintenant de créer des jeux en français avec autre chose qu’Inform 6 ou Inform 7, ce qui offre de nouvelles perspectives pour les joueurs qui ne seraient pas séduits par les 2 systèmes francophones existants.
J’ai en effet traduit les bibliothèques existantes, et l’auteur (Stuart Allen), a gentiment fait les adaptions nécessaires pour que cela soit possible (passage en utf8, création de variables pour remplacer des chaînes alors codée directement en anglais dans le code originel + divers ajustements, comme la création de macro pour définir certaines terminaisons de conjugaisons, ou l’accord féminin et / ou pluriels des adjectifs)
Parmi les points forts de ce langage, citons:
-
Support dans gargoyle (pour le moment la dernière version de jacl n’est pas encore resynchronisée avec gargoyle, mais cela ne saurait tarder), ainsi que version console simple (via glk)
-
Logiciel inclus permettant de transformer son ordinateur en serveur pour faire jouer son jeu en ligne dans un navigateur (avec a priori possibilité d’inclure des images, et peut-être même du son)
-
Langage de script, pas de compilation nécessaire, et il est même possible, sous certains réserves, de débuter une partie dans le navigateur, de modifier des éléments du jeu, et de constater les modifications directement dans la partie sans la redémarrer.
-
Assez simple (pas de codage façon C d’Inform 6)
Par exemple, si on a un objet armoire :
object armoire: armoire cupboard (et autres synonymes)
has CONTAINER FEMALE LOCKED CLOSED CLOSABLE
short une "armoire"
definite l'
long "Une armoire se trouve contre le mur opposé à l'entrée de la cuisine.^"
quantity 1
capacity 20
mass 120
Si on veut dire que c’est un objet nommé « clef » précédemment défini qui l’ouvre, on utilise le verbe « unlock_with », et il suffit d’accoler le nom ensuite pour créer la condition :
{unlock_with_clef
write "Vous déverrouillez l'armoire avec votre clef.^"
ensure armoire hasnt LOCKED
}
(ensure c’est pour faire changer un attribut d’état)
- Simple mais puissant : On peut modéliser le monde avec de nombreux paramètres et détails que l’on n’a pas de base avec Inform : par exemple, on définit les objets avec une masse, éventuellement une contenance, et un container peut contenir autant de la somme des masses d’objets que sa contenance est grande. Cela prend également en compte de nombreux cas comme : sur l’eau, en extérieur, au dessus du vide, avec des réponses appropriées.
Bref, je ne vois pas ce que font Inform et Tads et que JACL ne ferait pas. Après, on aime ou pas la syntaxe, mais sa simplicité pourra convenir à pas mal d’auteurs.
-
Il est totalement libre (licence GPL v2)
-
Réactivité et sympathie du concepteur
La version 2.7 officielle ne devrait plus trop tarder, avec les binaires associés, mais vous pouvez déjà jeter un oeil sur un jeu / exemple que j’ai fait :
jacl.game-host.org:8080/fastcgi- … _game.jacl (oui, il y a une boussole et tout et tout…)
Ici on a la version Inform pour comparer :
ifiction.free.fr/index.php?id=jeu&j=051
J’ai mis le code des bibliothèques francophones sur le svn de tuxfamily (partie « jeux »). Le code source à compiler se trouve ici : code.google.com/p/jacl/ en attendant les binaires officiels.
Il reste sans doute des erreurs et imprécisions dans ces bibliothèques, mais le résultat est mieux que ce que je pensais pouvoir faire au départ (grâce aux ajustement et à l’aide de Stuart)