S'exprimant à la GDC Europe, le designer de gameplay senior de The Witcher 3, Matthew Steinke, a révélé que l'un des systèmes centraux du jeu existait à peine quelques mois avant la sortie : l'économie, l'artisanat et l'inventaire étaient « fragmentés et incomplets » au point qu'« il ne restait plus de temps dans le projet pour tout accomplir avant la date limite ».

Steinke est parti d'un diagramme d'états du « cycle de la dépense » — le butin finance un meilleur équipement, un meilleur équipement débloque des combats plus difficiles et plus de butin. L'estimation manuelle des prix des herbes, des objets de rebut et des livres a rapidement échoué, il a donc construit une formule notant les attributs de combat de chaque objet en une note globale, organisé les objets en neuf catégories généralisées et utilisé les moindres carrés polynomiaux pour tracer la progression des prix de chaque catégorie en fonction de la qualité.

Les premières courbes étaient erronées pour le ton ancré du jeu : dans le bas de gamme, un petit gain de qualité faisait grimper le prix en flèche. Il a réajusté les courbes pour qu'elles croissent lentement jusqu'à la fin de partie, afin que l'épée relique finale représente une véritable fortune. Vint ensuite l'astuce pratique : en précalculant les coefficients et en les stockant dans des tables, les prix pouvaient être générés procéduralement à l'exécution — un ensemble infini de points épousant exactement la courbe, avec les valeurs codées en dur supprimées et toute une classe de bugs éliminée.

Tracer la progression des prix de chaque catégorie d'objets avec les moindres carrés polynomiaux, puis stocker les coefficients dans des tables afin que les prix se génèrent eux-mêmes à l'exécution.

Il ne restait plus de temps pour fixer à la main les prix de milliers d'objets dans un immense monde ouvert.

Des prix devinés produisaient des relations incohérentes entre les catégories d'objets.

Les courbes exprimaient directement l'intention de conception : rareté en début de partie, richesse en fin de partie.

La génération à l'exécution signifiait que les objets nouveaux ou moddés se voyaient attribuer des prix cohérents.

Lorsque vous ne pouvez pas ajuster un système à la main à temps, modélisez-le sous forme de courbe et livrez les coefficients — les mathématiques génèrent un contenu illimité et suppriment les valeurs codées en dur qui causent des bugs.

The Witcher 3 est sorti en mai 2015 avec l'économie pilotée par courbes reliant ses systèmes d'artisanat, d'inventaire et de butin, et la conférence de Steinke à la GDC Europe est devenue le récit public de la façon dont la panique de la date limite a produit la méthode.

VÉRIFIEZ LES SOURCES

Les sources

  1. How The Witcher 3's economy was saved by polynomial least squares Ars Technica · arstechnica.com ·