Witcher 3 : le bug des bébés abandonnés qui a choqué CDPR

Homme donnant des vêtements à un sans-abri la nuit

Des semaines entières pendant lesquelles des femmes abandonnaient leurs nourrissons dans les rues de The Witcher 3. Non, ce n’est pas un scénario de quête secondaire glauque : c’était un bug bien réel, révélé par Philipp Weber, designer de missions chez CD Projekt RED, lors d’une interview accordée au magazine EDGE. Un bug absurde, mais qui illustre parfaitement les défis colossaux du développement de RPG en monde ouvert.

Quand la simulation de vie quotidienne créait des situations absurdes

CD Projekt RED avait une ambition claire pour les PNJ de The Witcher 3 : leur faire vivre une vraie routine, pas juste les coller en décor. Weber l’explique sans détour : dans un village de huit maisons, le joueur va naturellement vérifier si les habitants ont l’air d’exister vraiment, ou si tout est du carton-pâte. Cette quête d’authenticité a coûté cher à l’équipe, qui s’est concentrée massivement sur la simulation jour/nuit au détriment d’autre chose.

Ce « autre chose », c’était la gestion des réactions contextuelles. Quand Geralt dégainait son épée et semait la panique, les PNJ déclenchaient leur comportement de fuite… sans vérifier ce qu’ils étaient en train de faire. Résultat : une mère portant son bébé lâchait tout et prenait ses jambes à son cou, laissant le nourrisson par terre. Pendant plusieurs semaines, personne ne l’avait remarqué. C’est exactement le genre de détail qui passe sous le radar quand une équipe est à fond sur un autre système.

Pour mieux saisir l’ampleur du chantier, voici les deux grandes priorités qui structuraient le développement des PNJ à cette période :

  • Simulation du cycle jour/nuit : chaque personnage devait dormir, travailler, manger selon des horaires crédibles.
  • Points d’intérêt dynamiques : plutôt que des routes scriptées fixes, les PNJ recevaient un ensemble de destinations possibles et choisissaient eux-mêmes leur chemin.

Ce système de points d’intérêt, c’est là que réside une bonne partie de l’intelligence du jeu. Pas de trajectoires rigides, mais des comportements émergents. Brillant sur le papier, mais risqué quand on n’a pas encore branché tous les paramètres contextuels.

Des correctifs qui ont affiné tout un système comportemental

Une fois le bug des bébés abandonnés identifié, l’équipe a dû reprendre la logique de réaction des PNJ. L’enjeu n’était pas juste de corriger un cas isolé, mais de s’assurer que chaque comportement de fuite tienne compte de l’état du personnage au moment précis où Geralt créait le chaos. Un parent avec un enfant, un marchand avec ses marchandises : le système devait intégrer ces variables.

Comportement avant correction Comportement après correction
Fuite immédiate, quelle que soit la situation du PNJ Fuite conditionnelle selon le contexte et l’état du personnage
Bébé laissé au sol si la mère prenait peur Réaction parentale préservée pendant la fuite
Aucune hiérarchie entre les actions en cours Priorité donnée aux interactions liées à un autre PNJ ou objet tenu

Ce genre d’ajustement, invisible une fois en place, c’est ce qui sépare un monde vivant d’un simple décor animé. Aujourd’hui, CD Projekt RED, en collaboration avec Fool’s Theory, prépare l’extension Songs of the Past pour The Witcher 3. Autant dire que les leçons de ces bugs de développement ont eu le temps d’être bien digérées. Si cette extension reprend la même philosophie de PNJ dynamiques, espérons que personne ne lâche son bébé cette fois.

Cecile
Retour en haut