Star Citizen Ile Avalon Pilot Logbook
Carnet de Vol d'un Citoyen de l'Espace

Jeu Multijoueur, Solo et Instancié

Certains diront probablement que l'article qui suit est destiné à vous "vendre du rêve" et que Star Citizen n'atteindra jamais un tel niveau de cohabitation entre les deux mondes qui partagent la communauté que sont le PVE et le PVP. Pourtant, l'un des objectifs de Chris Roberts a toujours été de parvenir à regrouper l'ensemble des joueurs sur un seul et unique serveur, tout en permettant à chacun d'y trouver sa place, c'est ce qu'il expose dans l'article qui suit...

Pour ceux qui ont connu les débuts de World of Warcraft, à l'époque le joueur devait choisir un serveur PvP, PvE ou Jdr. Une fois ce choix effectué le personnage était lié au serveur sans possibilité de le quitter, il était impossible pour le joueur de rejoindre un groupe d'amis se trouvant sur un autre serveur sans devoir créer un nouveau personnage et tout recommencer à zéro.

C'est cela que Chris Roberts veut éviter !

Un joueur ne doit pas être lié à un serveur et doit être libre de pouvoir rejoindre ses amis ou d'autres joueurs à tous moments.

Depuis, World of Warcraft a évolué, et même si un personnage est toujours lié à son serveur de départ, actuellement le système inter-serveur permet à un joueur de passer librement d'un serveur à un autre, cela se fait de façon presque transparente et on pourrait dire que World of Warcraft n'est plus un bon exemple de ce que Star Citizen ne doit pas être.

Reste que dans le cadre de World of Warcraft, chaque serveur a sa propre économie. Lorsque vous allez sur un hôtel des ventes d'un serveur et qu'ensuite vous comparez les tarifs appliqués avec ceux d'un autre serveur, il est facile de constater que les tarifs diffèrent.

C'est là encore un élément de Chris Roberts veut éviter !

Quelle que soit votre préférence de jeu, ou "votre serveur", l'économies est la même pour tout le monde.

Mais ce n'est pas parce que serveur est "unique" que les joueurs vont forcément se croiser.
Un principe d'instanciation dynamique, ou server-meshing, sera implémenté.

Cette instanciation dépendra de la population de la zone sur laquelle vous vous trouvez, si une zone dépasse la capacité technique que peut supporter un serveur, elle sera éclatée pour répartir la charge sur deux serveurs ou plus.

Mais cela va plus loin !

Chris Roberts a toujours été clair sur un point concernant Star Citizen et l'expérience du joueur, à savoir que chacun peut trouver sa place dans l'Univers Persistant. Que vous soyez un joueur PVP acharné cherchant la moindre occasion pour en découdre, ou un joueur PVE préférant jouer en solo dans son coin, ou un joueur ne pouvant se passer de la compagnie des autres, Star Citizen devrait vous convenir.

L'instanciation prendra en considération vos préférences de jeu.

Ainsi, durant un trajet, un joueur aillant des préférences PVE aura plus de chance de croiser des adversaire PVE, alors qu'un joueur PVP aura plus de chance de croiser des joueurs PVP. Chaque joueur sera libre de définir ses préférences tout en partageant le même univers, et à tous moments le joueur pourra redéfinir ses préférences si l'envie lui vient. Bien évidemment, tout ne sera pas blanc ou noir, certaines zones seront naturellement PVP et y entrer sera à vos risques et périls, même si vous êtes joueurs PVE.

Enfin, même si deux joueurs ne sont pas dans la "même instance dynamique", ils auront toujours la possibilité de communiquer et de se retrouver.

Dernier point, pas des moindre, qui est de faire en sorte que des joueurs puisse se regrouper rapidement.

Sur ce point, Chris Roberts semble accorder beaucoup d'importance au système de Demon's Soul, où concrètement le joueur pourrait incarner un membre de votre groupe, voir même un adversaire (Dans le cadre de Squadron 42). L'idée serait alors de dire que si vous êtes en situation de détresse quelque par dans l'univers, vous aurez alors la possibilité d'appeler vos amis à l'aide, ces derniers pouvant venir à votre rencontre par leur propres moyens (vaisseau) au risque d'arriver trop tard, ou être "déposés" dans votre propre vaisseau.

Le second concept est un peu surprenant, car on imagine alors les joueurs se téléportant dans votre vaisseau comme par magie, et Chris Roberts est assez vague sur ce principe, mais c'est un concept qui a été évoqué dans l'article Multiple Package Clarification de 2013 (Cf. Jouer un Equipage) qui consisterai à dire que vos amis peuvent prendre le contrôle d'un membre PNJ de votre équipage. Je reste très hypothétique sur ce concept, car actuellement rien n'est implémenté, et le peu d'information que l'on a à notre disposition n'éclaire pas vraiment sur ce que l'on aura concrètement.

Le Multijoueur, le Joueur Solo et l'Instanciation

11 novembre 2012

Attention ! Gardez à l'esprit que cet article date de 2012, période où l'univers persistant de Star Citizen n'avait pas encore l'ampleur qu'on lui connait actuellement. Ne soyez donc pas surpris si Chris Roberts parle de certaines choses qui ne sont plus d'actualité ou qui ont fortement changées.

Le Multijoueur, le Joueur Solo et l'Instanciation, par Chris Roberts

Je reçois beaucoup de questions sur le fonctionnement de l'univers persistant et sur ce que je veux dire quand je parle d'instances de combat.

J'ai donné quelques réponses, mais comme la question revient sans cesse, j'ai pensé qu'il serait bon de vous donner à tous une description plus longue de la manière dont tout cela fonctionne et s'articule.

L'un de mes objectifs avec Star Citizen était de créer un immense monde ouvert dans lequel vous pourriez vous aventurer en solo, avec vos amis, en vous mêlant aux PNJ et à d'autres personnes réelles.

Freelancer a été conçu pour accueillir jusqu'à 128 joueurs en mode multijoueur, mais comme certains d'entre vous le savent, il s'agissait davantage d'un maximum théorique que de quelque chose de réellement pratique, surtout en 2003. Lorsque j'ai commencé à construire Freelancer, en partie inspiré par le travail effectué sur Ultima Online (qui était en cours de développement lorsque j'étais encore chez Origin), le plaisir que j'avais à jouer à des jeux multijoueurs comme Command & Conquer et Diablo, j'ai voulu transposer l'expérience de Privateer dans le nouveau monde audacieux du multijoueur. Ma vision originale pour Freelancer était de sortir d'abord un jeu solo, puis une version massivement multijoueur avec une économie dynamique et un monde qui réagissait et s'adaptait aux actions des joueurs.

Je n'ai pas eu l'occasion de concrétiser cette vision et, en fin de compte, même si Freelancer était un bon jeu, il n'a pas atteint les objectifs que je m'étais fixés.

Avec Star Citizen, j'étais déterminé à combiner ce que je voulais réaliser avec Freelancer, avec l'expérience personnelle qui, je pense, était si forte dans Wing Commander et Privateer.

Mais étant donné que je suis moi, je voulais combiner ce que j'aime dans la promesse d'un MMO, mais éviter les aspects que je n'aime pas trop, comme les groupes de joueurs divisés, le griefing et le grinding. J'ai également été très impressionné par la façon dont Demon's Souls a fusionné l'expérience solo avec le côté multijoueur.

Tout cela a contribué à former ma pensée sur la façon dont Star Citizen va équilibrer le difficile jeu d'équilibre entre le multijoueur et le joueur unique.

Tous les jeux multijoueurs - qu'il s'agisse d'un jeu massivement multijoueur à monde persistant (MMO) comme World of Warcraft ou d'un simple jeu multijoueur en ligne comme Battlefield 3 - ont une limite au nombre de joueurs pouvant être actifs dans une zone ou un niveau. Ce nombre est généralement inversement proportionnel à la quantité de données qui doivent transiter entre le client et le serveur. Pour un jeu avec une physique complexe et un terrain entièrement destructible, comme Battlefield 3, le nombre de joueurs pouvant être actifs dans une instance est inférieur à celui d'un jeu moins fidèle au temps réel comme WoW ou Eve on Line. Mais dans tous les cas, il y a toujours plus de joueurs que ce qu'une instance de serveur peut gérer. Pour un monde multijoueur persistant comme WoW, la solution consiste à diviser la base de joueurs en groupes plus faciles à gérer, appelés "shards", qui sont des instances permanentes de l'univers qui prennent en charge un certain nombre de joueurs.

Une chose que je n'aime pas dans la plupart des structures MMO est la fragmentation de la base de joueurs entre ces "shards". Si vous avez rejoint le jeu bien plus tard qu'un de vos amis, il se peut qu'il n'y ait plus de place dans son instance d'univers et que vous deviez rejoindre une autre instance parallèle, ce qui vous empêche de jouer ensemble. C'est l'un des aspects positifs de la conception d'Eve Online : tout le monde joue dans le même univers.

Dans Star Citizen, il y aura un serveur d'univers persistant sur lequel tout le monde existera. Vous ne serez donc jamais séparé de vos amis, et si vous le souhaitez, vous pourrez vous rejoindre et partir à l'aventure ensemble, vous le pourrez. En raison de la fidélité des dogfights et de la simulation physique, nous ne pouvons cependant pas gérer des milliers de joueurs dans la même zone de l'espace. Même si vous disposiez d'une bande passante Internet suffisante pour gérer les allers-retours de données et d'un super ordinateur pour le serveur, aucun PC, même avec un quadruple SLI, ne pourrait restituer autant de vaisseaux spatiaux avec la fidélité de Star Citizen.

La "magie" de la conception multijoueur de Star Citizen réside donc dans la manière dont nous combinons un univers persistant avec une instance de "bataille" multijoueur temporaire plus traditionnelle (et plus facile à mettre en œuvre).

Le serveur de l'univers persistant, que nous appelons le serveur Galaxy, conserve la trace de tous les actifs des joueurs, des relations de groupe et des emplacements dans l'univers de Star Citizen. Comme le serveur Galaxy ne gère aucune action en temps réel, il peut gérer l'ensemble de notre base de joueurs, soit environ 45 000 joueurs actuellement (2012), mais il est conçu pour pouvoir évoluer vers des millions de joueurs si nécessaire. L'autre fonction clé du serveur Galaxy est de placer dynamiquement les joueurs dans des instances de combat en fonction de leur emplacement, de leur niveau de compétence, de leur alignement et de leurs préférences en matière de JcJ (Joueur contre Joueur). Imaginez une instance de "bataille" comme une session multijoueur de Battlefield 3 ou une bataille de World of Tanks, à la différence près que la sélection des joueurs se fait de manière transparente et "dans la fiction".

Voici une illustration de la façon dont cela pourrait fonctionner :

Je commence à New Pittsburg, côté planète. Je décide d'acheter quelques tonnes d'acier pour les envoyer aux chantiers navals de Terra. Je suis actuellement entre les mains du serveur Galaxy qui communique avec mon client et gère mes achats et mes interactions sur la planète, car ils ne sont pas en temps réel comme l'est l'action spatiale. Nous les rendons à la manière de Freelancer, comme des environnements 3D détaillés où nous voyons une vue à la troisième personne de notre personnage dans un endroit et où nous pouvons cliquer sur des personnages non joueurs (PNJ) ou des terminaux pour acheter/vendre, améliorer notre vaisseau, obtenir des potins, entendre parler d'une mission, etc. Vous pourrez également interagir avec d'autres joueurs via une interface de chat. La gestion des avatars des joueurs sur la planète n'est pas encore totalement au point, mais le bar ou les clubs privés seront les endroits où vous pourrez rencontrer d'autres joueurs et discuter avec eux. En plus de peupler le bar de PNJ, le jeu le peuplera également d'autres joueurs. S'il y a plus de joueurs sur la planète qu'il n'y a d'emplacements pour les avatars dans le bar, ceux qui seront visibles pour vous seront basés sur votre liste d'amis, puis sur leur pertinence pour vous, un joueur à la recherche d'un ailier, un membre d'un groupe similaire, ou peut-être quelqu'un que vous avez reçu la mission de trouver ou de chasser. Vous pourrez également voir la liste complète des joueurs dans la salle s'il y a plus de joueurs que d'emplacements. Par défaut, il s'agira d'une liste déroulante, mais comme je déteste tout ce qui brise l'immersion, nous trouverons probablement un moyen plus fictif de voir la liste des joueurs, peut-être que vous direz au barman qui vous cherchez, peut-être que vous pourrez regarder la liste des occupants sur les portes du bar.

Après avoir acheté ma cargaison, je me lance dans l'espace. S'il y a des joueurs déjà en orbite, il y aura une instance d'orbite déjà créée. Si elle n'est pas pleine, je serai placé dans cette instance. Si elle est pleine, une nouvelle instance sera créée dynamiquement. Toutes les instances d'orbite (et de combat) réservent des emplacements pour les amis et les personnes d'intérêt (POI), qui peuvent être des PNJ ou d'autres joueurs, donc si vous avez lancé et qu'il y a plusieurs instances d'orbite et que vous avez des amis déjà en orbite, vous devriez être placé dans cette instance. C'est également la dynamique qui sera appliquée si vous voulez suivre un autre joueur, vous pouvez le "marquer" comme un POI et le jeu fera de son mieux pour vous placer dans la même instance que votre POI. Par exemple, si vous avez marqué quelqu'un sur la planète et qu'il se lance, votre PDA, avec sa future version de Siri, vous informera que votre POI s'en va, vous donnant ainsi la possibilité de vous lancer dans l'espace.

Une fois en orbite, je peux afficher mon ordinateur de navigation et définir une trajectoire vers ma destination. S'il s'agit d'un système éloigné de plusieurs systèmes, comme Terra, l'ordinateur de navigation tracera une route à travers les points de saut pertinents. Vous pourrez ajuster cette trajectoire comme sur Google Maps. Ainsi, si vous cliquez sur un autre point de saut sur la carte du système, il vous redirigera sur le chemin le plus court vers votre destination, avec ce point de saut comme premier "saut".

Une fois que j'ai tracé mon itinéraire de navigation, j'enclenche le pilote automatique et je me dirige vers le premier point de passage sur le chemin de ma destination (un point de saut, un élément spatial intermédiaire, comme une ceinture d'astéroïdes, etc.) À ce stade, j'ai été remis au serveur Galaxy, qui détermine si je vais rencontrer un hostile, quelqu'un qui m'a marqué comme un point d'intérêt, ou une rencontre prédéterminée sur le chemin, ou si je vais rencontrer une instance de combat en cours qui est pertinente pour moi (certains membres de l'instance sont alignés contre ou avec moi). Ces rencontres peuvent se faire avec un PNJ ou un ou plusieurs joueurs vivants et sont triées en fonction du niveau de compétence et aussi, ce qui est important pour tous ceux d'entre vous qui aiment une expérience plus solo et ne veulent pas avoir affaire à des griefers, en fonction de vos préférences en matière de joueur contre joueur (JcJ). Ainsi, si vous avez réglé vos paramètres de jeu sur un faible niveau de JcJ et que vous vous trouvez dans une zone relativement sûre, vous aurez probablement une rencontre avec un PNJ (JcE) plutôt qu'une rencontre JcJ. Bien sûr, votre classement et la réputation que vous gagnez ne seront pas les mêmes avec une rencontre PvE qu'avec une rencontre PvP. J'espère que cette dynamique permettra aux gens de jouer d'abord à Star Citizen dans un monde ouvert plus sûr et plus solo, mais qu'au fur et à mesure qu'ils prendront de l'assurance et voudront se mesurer à d'autres joueurs réels, ils pourront enlever les roues d'entraînement et se lancer dans des batailles avec de vrais joueurs. Il y aura également des zones de l'univers qui, quel que soit votre paramètre JcJ, seront JcJ. Il s'agira de systèmes qui se trouvent en marge de la galaxie contrôlée et qui seront connus pour leurs pirates et autres activités illégales. Ce seront également les zones les plus lucratives, si vous pouvez survivre.

Maintenant, si vous volez avec vos amis, que vous pouvez relier via le système de "marquage" des POI du jeu, ils seront avec vous lorsque vous serez entraîné dans une instance de combat, que ce soit contre des PNJ, des joueurs réels ou une combinaison des deux.

Une fois que le serveur Galaxy a déterminé que vous allez faire une rencontre en fonction des critères ci-dessus, il crée dynamiquement une instance de combat, ou vous place dans une instance s'il en existe déjà une au point de rencontre, et que cette instance peut accueillir de nouveaux joueurs. Pour sortir de cette instance, vous devez soit résoudre les hostilités en battant celui qui vous cible, en négociant une sortie ou simplement en le distançant. Une fois dans une instance, vous pouvez lancer un appel de détresse à vos amis. Les personnes de votre liste d'amis (ou de votre escadron, comme nous allons l'appeler) peuvent vous aider de deux manières. Nous réservons des créneaux dans toutes les instances pour que vos amis puissent se téléporter pour combattre. Pour ce faire, ils doivent se trouver dans le même système. S'ils le sont, ils peuvent se mettre en pilote automatique pour vous secourir et seront déposés dans l'instance. S'ils ne sont pas dans le système, s'ils peuvent atteindre votre système avant la fin de la bataille, ils peuvent se joindre à vous (mais ne pourront le faire qu'une fois qu'ils auront atteint votre système). La deuxième façon pour vos amis de vous aider est de se rendre sur votre vaisseau. Cela ne fonctionne que s'il s'agit d'un véhicule multi-personnes comme le RSI Constellation. Dans ce scénario, ils n'ont pas besoin d'être dans votre système, ils se déposeront simplement à l'intérieur de votre vaisseau et pourront se déplacer à la première personne, monter dans une tourelle pour la piloter, ou sauter dans votre P52 pour le piloter en combat pendant que vous pilotez le vaisseau principal (ou ils peuvent piloter votre vaisseau principal et vous pilotez le chasseur).

Une fois que les hostilités ou l'événement (vous pouvez parfois être entraîné dans une instance parce que vous avez trouvé un vaisseau ou une station spatiale abandonnée et nous voulons donner au joueur une chance d'explorer) qui a déclenché la sortie du pilote automatique a été résolu, vous pouvez à nouveau activer le pilote automatique, être remis au serveur Galaxy et poursuivre votre chemin sur la route de navigation que vous avez tracée.

Vous quitterez toujours le serveur Galaxy aux points de saut et aux planètes, où vous devrez soit faire un saut vers un autre système, soit atterrir.

Ce processus se poursuit jusqu'à ce que vous atteigniez votre destination finale, qui dans mon exemple serait Terra, où j'utiliserais mon système de communication pour négocier un créneau d'atterrissage, qui me conduirait à la surface de la planète via une cinématique dans le moteur. Une fois sur la planète, je pourrai vendre ma cargaison, me réapprovisionner et rechercher de nouvelles opportunités via l'interface à la troisième personne.

L'avantage de ce système est qu'il vous permet d'adapter votre expérience à vos préférences : solo, coopération ou JcJ. Il ne vous divise pas non plus en différentes versions parallèles de l'univers de Star Citizen, car tout le monde est sur le même serveur persistant. Comme nos instances de combat ou d'orbite/espace sont temporaires, vous n'êtes jamais coincé avec un seul groupe sur le long terme et, comme nous mettons l'accent sur les amis et la coopération, il y aura toujours de la place pour que vos amis vous rejoignent dans votre aventure, que ce soit contre d'autres joueurs ou des PNJ.

Le même système d'instance est à la base du jeu solo Squadron 42. Si vous jouez hors ligne, votre ordinateur fera office de serveur et de client, il n'y aura aucune possibilité pour vos amis de vous rejoindre et tout le monde sera un PNJ. Mais si vous jouez à Squadron 42 sur le serveur Galaxy, même si vos missions et vos zones spatiales sont prédéterminées (vous ne pouvez pas choisir l'endroit de la galaxie où vous volez si vous êtes dans l'armée), nous autoriserons vos amis à se joindre à vous ou à vous quitter pour prendre en charge des ailiers PNJ et, si vous voulez améliorer vos compétences, vous pouvez autoriser d'autres joueurs à se joindre à vous et à prendre en charge des as ennemis. Ce système est assez similaire à celui de Demon's Souls, où les gens peuvent entrer dans le jeu en tant que fantôme bleu pour vous aider à tuer un monstre ou à combattre un autre joueur envahisseur, ou vous pouvez entrer en tant que fantôme noir dans le monde de quelqu'un d'autre et essayer de le tuer pour obtenir de l'XP et d'autres récompenses.

La clé de tout cela est de laisser le choix aux joueurs : vous voulez jouer seul, vous le pouvez, vous voulez que vos amis vous rejoignent en co-op, nous le permettons, et si vous voulez être défié par d'autres vrais joueurs, vous pouvez le faire. La particularité est que tout cela peut se passer dans le même univers holistique.

J'espère que cela vous aidera à comprendre comment nous équilibrons les aspects du multijoueur tout en rendant le jeu amusant.

-- Chris Roberts, Multiplayer, Single Player and Instancing

Notes et Références

citizen-logbook.com est entièrement dédié à Star Citizen et Squadron 42. J'ai conçu ce site dans le but de partager mon expérience en jeu sans pour autant avoir la prétention de créer une encyclopédie dédiée au jeu, ni même un site d'information à grande échelle, bien qu'avec le temps le site prend de plus en plus d'ampleur. Il faut voir ce site comme étant un "Carnet de Notes" dans lequel j'ajouterai toutes sortes d'informations. Que cela soit un article, un vaisseau, un système ou même un coup de coeur, coup de gueule, etc. Le site évoluera en fonction de mes envies. Si mes articles vous donnent envie de vous lancer dans cette grande aventure qu'est Star Citizen, inscrivez-vous et recevez un bonus de 5000 UEC à la création de votre compte via mon referral : STAR-QP2M-YLS3.

-- ile-avalon