Actualités

WildStar Wednesday: Oui, nous aurons des add-ons pour l'UI

Written by Loic "Atreid" Claveau on May 04, 2012

Bonjour, futurs joueurs et joueuses de WildStar ! Je m'appelle Jon Wiesman et je commence aujourd'hui un blog de développeur pour ceux et celles d'entre vous qui, un jour, créeront (ou utiliseront) des add-ons pour WildStar, mais aussi pour tous ceux qui souhaitent tout savoir sur notre jeu !

Avant d'entrer dans le vif du sujet, permettez-moi de me présenter. Je suis ingénieur en chef du programme client de WildStar. Je travaille dans l'industrie du jeu vidéo depuis maintenant 13 ans et j'ai fait mes débuts dans une petite entreprise, Verant, qui s'apprêtait, à l'époque, à lancer EverQuest. J'avais été engagé comme programmeur de l'interface utilisateur pour un nouveau MMO en cours de développement et Verant a ensuite été rapidement racheté par une grande société, avant d'intégrer Sony Online Entertainment. Même si le jeu pour lequel j'avais été engagé a été annulé (quelqu'un se souvient de Sovereign ? Personne ?), le moteur d'interface utilisateur au format XML que j'avais développé a par la suite été intégré dans EverQuest en 2002, sous le nom de SUITE (Sovereign Sony User Interface Template Engine).

Je travaille depuis 5 ans et demi sur Apollo, un moteur d'interface utilisateur pour WildStar, à la fois au format XML, ce qui permet de modifier son apparence et sa disposition, et au format Lua, afin de pouvoir y intégrer des fonctionnalités entièrement personnalisables. J'aurais bien plus de choses à dire sur les décisions prises au moment de la création d'Apollo au fil des articles, mais j'aimerais tout d'abord partager avec vous une histoire récente qui illustre très bien certains des choix que nous avons faits.

Il y a quelques semaines, j'ai créé un petit outil très pratique pour générer de jolis graphiques à partir de données croisées. C'est ce que je fais pour m'amuser, sur mon temps libre. Je sais, c'est génial !

Après avoir partagé certains de ces graphiques en ligne, j'ai reçu plusieurs demandes de personnes souhaitant obtenir une version qu'ils pourraient utiliser eux-mêmes. J'ai donc mis au point une application prête à la distribution. Étant donné ma formation de programmeur en code natif, j'ai utilisé la bibliothèque MFC et créé le code correspondant en quelques jours, sur mon temps libre. J'ai ensuite codé un programme d'installation et l'ai rendu accessible à tout le monde.

Puis j'ai commencé à réfléchir à la façon dont je pourrais transformer ma petite application en application web. Quel langage devrais-je utiliser ? Du HTML 5 avec Canvas et JavaScript ? J'ai demandé conseil autour de moi. Cela fait plus de 21 ans que je travaille dans la programmation, ce n'est donc pas à proprement parler un projet difficile (une fois encore, il m'a fallu plusieurs jours pour coder l'application en C++ uniquement parce que je voulais pouvoir la distribuer ; l'algorithme d'origine ne m'a pris que quelques heures). Je n'ai pourtant pas réussi à trouver de solution satisfaisante ou simple pour créer une version web de mon outil, que le public pourrait utiliser sur un navigateur.

(Encore un peu de patience, je vais vite vous expliquer ce que tout cela a à voir avec WildStar et Apollo, promis !)

L'un de mes amis, qui connaît bien le Ruby, m'a suggéré d'essayer ce langage de programmation. J'ai donc trouvé un didacticiel et je me suis lancé. J'ai passé bien 3 - 4 heures sans voir la moindre ligne de code. Il a fallu que je télécharge un logiciel de gestion des codes source sur un site, un éditeur sur un autre et pour cela, j'ai dû m'inscrire sur au moins trois sites différents, avant de devoir mettre en place un environnement en ligne de commande avec des variables d'environnement spécifiques. Autant dire que l'expérience a été fastidieuse et énervante...

Une fois les instructions du didacticiel suivies à la lettre, j'étais enfin prêt à "publier" mon premier projet en Ruby. J'ai saisi une ligne de commande et j'ai eu pour toute réponse un message du type "Erreur inconnue, bla bla bla...". Ce n'est pas exactement ce à quoi je m'attendais !

J'aime beaucoup la programmation. Rectification, j'ADORE la programmation. Je suis un geek, un vrai, j'adore apprendre de nouveaux langages, j'adore analyser un problème et créer un algorithme permettant de le résoudre. J'adore aussi tout ce qui entre dans la création de tableaux et la gestion d'événements, et le fait de réussir à obtenir des résultats. Mais je ne supporte pas d'avoir à passer des heures à bidouiller des paramètres de configuration et à jongler entre un éditeur de texte, des invites de commande et des portails de publication web pour pouvoir mettre au point autre chose que l'application "Hello world" que j'avais créée en BASIC sur un Commodore 64 à l'âge de 12 ans (eh oui, je suis vieux...).

Malheureusement, mes déboires avec le Ruby reflètent assez bien les difficultés que je rencontre pour développer des add-ons ou des fonctionnalités personnalisables pour des jeux vidéo. Les informations nécessaires sont souvent introuvables et les outils rudimentaires, voire inexistants. Bien qu'une poignée de gens soient capables de surmonter ces obstacles et de créer des fonctionnalités personnalisées utilisables, la majorité baisse les bras au bout de quelques heures extrêmement frustrantes.

Même avant d'avoir essayé de faire quoi que ce soit en Ruby, j'étais bien décidé à offrir aux joueurs de WildStar une expérience de développement d'add-ons vraiment différente. Dès le début, nous nous sommes mis d'accord sur plusieurs principes fondamentaux, le premier étant que le niveau nécessaire pour pouvoir accéder au développement d'add-ons devait être le plus bas possible.

Bien entendu, tous les joueurs ne vont pas vouloir programmer des add-ons, mais si vous savez un tant

soit peu programmer, je vous promets que vous serez capable d'en créer un pour notre jeu. Nous nous engageons à ce que le processus soit le plus facile d'accès, le mieux documenté et le plus clair possible.

Au cours des prochains mois, nous vous indiquerons plus précisément de quelle façon vous pourrez participer au programme d'add-ons de WildStar. Nous avons vraiment hâte de travailler avec vous ! Et ça va être super sympa* !

À bientôt !

* En tant que geek, tout ce que je trouve sympa est forcément... geek. Expérience non contractuelle.

Rénovation résidentielle : du 8 au 15 décembre

Par Team WildStar le 08 Décembre 2017

C'est l'heure du show ! Sara Conavius est en ville pour vous aider à rénover vos foyers dans le meilleur holoprogramme jamais diffusé !

La bonne fortune d'Arcterra de Madame Fay est de retour !

Par Team WildStar le 01 Décembre 2017

Elle a déniché de nombreux trésors provenant d'Arcterra qu'elle a ensuite placés dans de petits orbes dorés.

Les offres du Black Friday sont en ligne !

Par Team WildStar le 24 Novembre 2017

Ce ne sont pas ces promotions que vous recherchez. Celles-ci sont encore mieux !