Ah ! les petits trucs vite finis…

J’imaginais pouvoir utiliser la librairie de Bioware pour animer les domestiques dans les habitations, librairie assez bien fournie et dont les noms de fonctions correspondent exactement à ce dont j’ai besoin.
L’ennui, c’est que soit je suis trop con pour les faire fonctionner, ce qui est parfaitement possible, soit elles ne fonctionnent pas bien. Voire pas du tout.
J’ai bien essayé de placer des waypoints libellés exactement comme requis, rien ne se passe comme prévu, les PNJs marchent bêtement en rond, ou passent les portes sans les ouvrir, ou se retrouvent coincés entre deux transitions, par contre j’en ai qui ont réussi à se barrer de la zone et on ne les a plus jamais revus…

Bref, comme d’hab, je n’utilise rien du code de Bioware et j’écris le mien, ce qui n’est pas facile d’une part parce que je n’ai pas de bouquin de calcul vectoriel sur ma table de chevet et d’autre part parce que la programmation événementielle est ultra piégeuse : l’angle qu’aura le PNJ devant un objet correspond rarement à son orientation au moment où les commandes sont empilées, ce qui impose un subtil mélange entre Action_quelque_chose et DelayCommand(autre_chose).
Et surtout parce que je veux que ce soit parfait, les maisons sont sinistres si elles ne sont pas animées correctement ; c’est vrai, je pourrais y revenir plus tard, mais ce serait une fois de plus repousser une échéance.
J’ai considérablement baissé le prix de l’accès à la propriété parce que je considère que les maisons sont un des attraits majeurs d’un univers persistant, alors si le majordome doit passer une porte, je veux qu’il aille à la porte, qu’il s’arrête devant la porte un bref instant, ouvre la porte, passe la porte, referme la porte et s’éloigne, comme le ferait une personne normalement constituée et pas une IA écrite sur un bout de comptoir.

Le résultat sera très très cool, mais c’est du travail.
Je me demande quand même toujours qui est le plus nul, de moi ou du code de Bioware et, en toute franchise, le jury délibère toujours. J’aime autant ne pas savoir.