Ok, c'est un peu compliqué à expliquer vu mon niveau très médiocre avec DOSBox.
Je teste actuellement la faisabilité de traduire les jeux Sierra AGI : ( Space Quest 1 et 2, Gold Rush, Manhunter 1 et 2, King's Quest 1, 2, 3 et 4 et The Black Cauldron).
J'ai ainsi découvert que les jeux AGI ne possèdent pas de font

! Ils utilisent la font de ScummVM ou celle de DOSBox. Pour ScummVM, j'ai la solution, avec Hrvg nous avons dessinés une font. Pour DOSBox c'est une autre histoire...Explications techniques :
Il y a deux modes de textes dans les jeux AGI. Mode texte : Blanc sur fond noir. Mode graphique : Noir sur fond blanc. Les jeux AGI ne sont pas conçus pour accepter les caractères en mode graphique, uniquement en mode texte, mais grâce à un hack, je suis parvenu à afficher les lettres accentuées en mode graphique et en mode texte. Mais il y a un hic !
Avec les paramètres par défaut de DOSBox, les accents sont vraiment moches :
Mais si je modifie dans les options DOSBox keyboardlayout=en par keyboardlayout=fr les accents sont en français et c'est beau objectivement :
Le problème est que le mode graphique semble utiliser une police différente du mode texte ! La police "FR" en mode texte a écrasé plusieurs caractères et déplacé d'un pixel vers le bas TOUTES les lettres accentuées SANS faire de même pour les caractères standard. Cela produit un effet de vague :
Avec ScummVM, nous sommes parvenus à inclure une police accentuée personnalisée sous forme de patch qui fonctionne avec les deux modes de texte. Ce n'est pas parfait, car il faut 6 pixels de haut et pas un de plus ! Mais je trouve que le résultat est très satisfaisant :
*Nous aimerions pouvoir faire la même chose dans DOSBox.
*Il ne semble pas possible d'importer une police dans le jeu afin que DOSBox la prenne en compte ???
Hypothèses et peut-être :
*Recompiler une version personnalisée de DOSBox avec une police modifiée pour le mode graphique ? De toute façon je ne sais pas faire ça.

*En parcourant le code source, il semble que les polices soient stockés dans dos_codepages.h au format .CPI / .CPX. N'étant pas programmeur, je ne suis pas qualifié.

*Si je pouvais déterminer laquelle des pages du code utilise le clavier français pour le mode graphique, puis modifier la police avec CPIadd, nous pourrions hypothétiquement compiler une version personnalisée qui s'installerait en même temps que le patch de traduction pour le joueur qui souhaiterait jouer via DOSBox. Mais ça semble hyper compliqué

*Dans l'idéal, je préférerais trouver un moyen simple de forcer DOSBox à utiliser en mode graphique la même police française que celle utilisée en mode texte ! Mais comment faire ça... mystère.

S'il y a des pros de DOSBox qui comprennent le problème ici, je suis ouvert à toutes vos suggestions les amis.
Moi, Hrvg et @Doomlaser ne savons pas trop quoi faire
. Hors je voudrais vraiment pour le côté puriste de la chose, que le jeu soit beau sous DOSBox également.Merci à vous !
Threepwang


mais c'est pas encore gagné
Nous venons de réaliser que selon le mode texte ou graphique DOSBox utilise une autre font qui lui est propre
Du coup c'est bizarre
Commentaire