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

Jeu Multijoueur, Solo et Instancié

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 une 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.

Chris Roberts and Multiplayer, Single Player and Instancing

Ce qui suit est une traduction libre de l'article « Chris Roberts on Multiplayer, Single Player and Instancing » parue le 11 novembre 2012, et explique globalement le point de vue de Chris Roberts sur ce que je viens d'évoquer précédemment.

Pour ceux qui ne connaissent pas l'historique de Chris Roberts, l'article fait référence à des jeux tels que Freelancer, qui est un jeu vidéo de 2003 mariant combat et commerce spatial, et Wing Commander : Privateer, de 1993, ainsi qu'à son passage chez Origin.

Multiplayer, Single Player and Instancing

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 ça continue à venir, j'ai pensé qu'il serait bon de vous donner à tous une description plus longue de la façon dont tout cela fonctionne et s'assemble.

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

Freelancer a été construit pour avoir jusqu'à 128 joueurs en multijoueur, mais comme certains d'entre vous le savent, c'était plus un maximum théorique que quelque chose de vraiment pratique, surtout en 2003. Quand j'ai commencé à construire Freelancer, en partie inspiré par le travail effectué sur Ultima Online (qui était en développement quand j'étais encore chez Origin), le plaisir que j'avais à jouer à des jeux multi-joueurs comme Command & Conquer et Diablo a fait que je voulais apporter 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 et ensuite de le faire suivre d'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 finalement, bien que Freelancer soit un bon jeu, il n'a pas atteint mon objectif.

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

Mais étant moi-même, je voulais combiner les choses que j'aime dans la promesse d'un MMO, mais éviter les aspects que je n'aime pas trop, comme les groupes de joueurs éclatés, le greifing et le grinding. J'ai aussi é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 m'a aidé à réfléchir sur la façon dont Star Citizen va équilibrer le difficile exercice d'équilibre entre le multijoueur et le joueur unique.

Tous les jeux multi-joueurs, qu'il s'agisse d'un MMO (jeu massivement multijoueur) persistant comme World of Warcraft ou simplement d'un jeu multijoueur en ligne comme Battlefield 3, ont une limite au nombre de joueurs qui peuvent être actifs dans n'importe quelle zone ou niveau. Ce nombre est généralement inversement proportionnel à la quantité de données qui doivent circuler 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 qui peuvent être actifs dans une instance est inférieur à celui d'un jeu avec moins de fidélité en 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 est de diviser la base de joueurs en groupes plus faciles à gérer appelés "shards", qui sont une instance permanente de l'univers qui s'occupe d'un certain nombre de joueurs.

Une chose que je n'aime pas dans la plupart des structures de MMO est la fragmentation de la base de joueurs entre ces "shards". Si vous aviez rejoint le MMO bien plus tard qu'un de vos amis, il n'y aurait peut-être plus de place sur son instance mondiale et vous devriez rejoindre une autre instance parallèle et donc ne pas pouvoir jouer ensemble. C'est l'un des avantages du design 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 existe. Ainsi, vous ne serez jamais séparés de vos amis, et si vous le souhaitez, vous pourrez vous rejoindre et partir à l'aventure ensemble. En raison de la fidélité du dogfight 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 aviez assez de bande passante Internet pour gérer les données qui vont et viennent et un super ordinateur pour le serveur, il n'y a pas de PC, même avec un quadruple SLI qui pourrait rendre autant de vaisseaux spatiaux avec la fidélité de Star Citizen.

La "magie" de la conception multijoueur de Star Citizen est donc la façon dont nous combinons un univers persistant avec une instance de "combat" multijoueur temporaire plus traditionnelle (et plus facile à mettre en œuvre).

La façon dont cela fonctionne est que le serveur d'univers persistant, que nous appelons le serveur de la galaxie, garde une trace de tous les actifs des joueurs, des relations de groupe et des emplacements au sein de l'univers de Star Citizen. Comme le serveur Galaxy ne gère aucune action en temps réel, il peut gérer notre base de joueurs complète, qui serait actuellement d'environ 45 000 joueurs, mais qui est conçue pour pouvoir s'étendre à des millions si nécessaire. L'autre chose importante que fait le serveur Galaxy est de placer dynamiquement les joueurs en fonction de leur emplacement, de leur niveau de compétence, de leur alignement et de leur préférence de joueur contre joueur (PvP) dans les instances de combat. Pensez à une instance de "bataille" comme une session multijoueur de Battlefield 3 ou une bataille de World of Tanks avec la différence essentielle que la sélection des joueurs se fait de manière transparente et est "dans la fiction".

Voici une illustration de la façon dont cela fonctionnerait :

Je commence sur le côté de la planète à New Pittsburg. Je décide d'acheter quelques tonnes d'acier pour voler vers les chantiers navals de Terra. Je suis actuellement entre les mains du serveur de la galaxie qui communique avec mon client et gère mes achats et mes interactions sur la planète car celles-ci ne sont pas en temps réel comme dans l'action spatiale. Nous les rendons à la manière des Freelancer, sous forme d'environnements 3D détaillés où nous voyons une vue de notre personnage à la troisième personne dans un endroit et où nous pouvons cliquer sur des Personnages Non-Joueurs (PNJ) ou des terminaux pour acheter/vendre, améliorer votre vaisseau, obtenir des ragots, entendre parler d'une mission et ainsi de suite. Vous pourrez également interagir avec d'autres joueurs via une interface de chat. Nous n'avons pas encore complètement mis au point l'avatar du joueur qui s'occupe du côté de la planète, mais le bar ou les clubs privés seront les endroits où vous pourrez rencontrer/discuter avec les autres joueurs. En plus de remplir le bar avec des PNJ, le jeu remplira également le bar avec d'autres joueurs. S'il y a plus de joueurs côté planète qu'il n'y a d'avatars dans la barre, ceux qui sont visibles pour vous seront basés sur votre liste d'amis, puis sur la pertinence pour vous, un joueur qui cherche un ailier, un joueur d'un groupe similaire, ou peut-être quelqu'un que vous avez reçu une mission pour trouver ou chasser. Vous pourrez également voir la liste complète des joueurs présents dans la salle s'il y a plus de joueurs que de créneaux. Par défaut, il y aurait une liste déroulante pour cela, mais comme je déteste tout ce qui brise l'immersion, nous allons probablement trouver une meilleure façon, dans la fiction, 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 portes du bar.

Ayant 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, alors je serai placé dans cette instance. Si elle est pleine, alors une nouvelle sera créée dynamiquement. Toutes les instances en 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 en orbite et que vous avez des amis déjà en orbite, vous devriez être placé dans cette instance. C'est aussi la dynamique qui sera appliquée si vous voulez suivre un autre joueur, vous pouvez le "tagger" comme POI et alors le jeu fera de son mieux pour vous placer dans la même instance que votre POI. Par exemple, si vous avez tagué quelqu'un côté planète et qu'il lance votre PDA avec sa future version de Siri, il vous avertira que votre POI part, vous donnant une fenêtre pour vous lancer dans l'espace aussi.

Une fois en orbite, je peux remonter mon ordinateur de navigation et mettre le cap sur ma destination. Si plusieurs systèmes sont éloignés comme Terra, l'ordinateur de navigation tracera une route à travers les points de saut correspondants. Vous pourrez ajuster cela comme sur Google maps, donc si vous cliquez sur un point de saut différent sur la carte du système, il vous redirigera alors sur le chemin le plus court vers votre destination avec ce point de saut comme premier "saut".

Une fois que j'ai tracé ma route, j'enclenche le pilote automatique et je me dirige vers mon premier point de "chemin" sur le chemin de ma destination (un point de saut, une caractéristique spatiale intermédiaire, comme une ceinture d'astéroïdes, etc.) À ce stade, je suis remis au serveur Galaxy, qui détermine si je vais rencontrer un ennemi, quelqu'un qui m'a marqué comme POI, ou une rencontre prédéterminée en chemin, ou si je vais croiser une instance de combat en cours qui me concerne (certains membres de l'instance sont alignés contre ou avec moi). Ces rencontres peuvent être avec un PNJ ou un/des joueur(s) vivant(s) et sont classées par niveau de compétence et aussi, ce qui est important pour tous ceux d'entre vous qui aiment une expérience de joueur unique et ne veulent pas avoir affaire à des griefers, en fonction de votre préférence de joueur contre joueur (JcJ). Ainsi, si vous avez réglé vos paramètres de jeu pour qu'ils soient bas JcJ et que vous vous trouvez dans une zone relativement sûre, vous aurez probablement une rencontre avec un PNJ (JcE) plutôt qu'un JcJ. Bien sûr, votre rang et votre réputation ne seront pas les mêmes avec une rencontre JcJ qu'avec une rencontre JcE. J'espère que cette dynamique permettra aux gens de jouer à Star Citizen dans un monde plus sûr et plus ouvert, mais à mesure qu'ils prendront confiance en eux et voudront se mesurer à d'autres joueurs réels, ils pourront s'entraîner et se battre avec de vrais joueurs. Il y aura également des zones de l'univers qui, quel que soit votre réglage JcJ, seront JcJ. Ce seront des systèmes qui sont en marge de la galaxie policée et qui seront connus pour leurs pirates et autres activités illégales. Ce seront aussi les zones les plus lucratives, si vous pouvez survivre.

Maintenant, si vous volez avec vos amis, auxquels vous pouvez vous connecter via le système de "taggage" des POI du jeu, ils seront avec vous lorsque vous serez amené 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 de la galaxie a déterminé que vous aurez une rencontre basée sur les critères ci-dessus, il crée dynamiquement une instance de combat, ou vous y place si une instance existe déjà au point de rencontre, et que cette instance a de la place pour de nouveaux joueurs. Pour sortir de cette instance, vous devez soit résoudre les hostilités en battant ceux qui vous ciblent, soit négocier une sortie, soit simplement les dépasser. Une fois dans une instance, vous pouvez lancer un appel de détresse à vos amis. Il y a deux façons pour les personnes sur votre liste d'amis (ou escadron comme nous allons l'appeler) d'aider. Dans tous les cas, nous gardons des emplacements pour que vos amis puissent se joindre à vous pour combattre. Pour ce faire, ils doivent être dans le même système. S'ils le sont, ils peuvent se mettre en pilote automatique pour vous sauver et seront déposés dans l'instance. S'ils ne sont pas dans le système stellaire, s'ils peuvent atteindre votre système avant la fin de la bataille, alors ils peuvent vous rejoindre (mais ne pourront le faire qu'une fois qu'ils auront atteint votre système). La seconde façon pour vos amis de vous aider est d'être "déposer" sur votre vaisseau. Cela ne fonctionne que si c'est un véhicule multi-personne comme la Constellation RSI. Dans ce scénario, ils n'ont pas besoin d'être dans votre système, ils vont juste se laisser tomber à l'intérieur de votre vaisseau et seront capables de se déplacer à la première personne, en grimpant dans une tourelle pour le piloter, ou en sautant dans votre P52 pour le piloter en combat pendant que vous pilotez le vaisseau principal (ou ils pourraient piloter votre vaisseau principal et vous pilotez le chasseur)

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

Vous quitterez toujours les points de saut et les 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 ferait descendre à la surface de la planète via une cinématique de moteur. Une fois sur la planète, je pourrai vendre ma cargaison, me réapprovisionner et chercher de nouvelles opportunités via l'interface côté planète à 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, co-op ou PvP complet. Il ne vous divise pas non plus en différentes versions parallèles de l'univers Star Citizen, car tout le monde est maintenu sur le serveur persistant. Parce que nos instances de combat ou d'orbite/espace sont temporaires, vous n'êtes jamais coincé avec un groupe sur le long terme et en raison de l'importance que nous accordons aux amis et au co-op, 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 PNJs.

Le même système d'instances est à la base de Squadron 42 solo. Si vous jouez hors ligne, votre ordinateur agira en tant que serveur et client, il n'y aura pas d'opportunités pour vos amis de vous rejoindre et tout le monde sera un PNJ. Mais si vous jouez à Squadron 42 par le biais du serveur de la galaxie, même si vos missions et vos zones spatiales sont prédéterminées (vous n'avez pas à choisir où dans la galaxie vous volez si vous êtes dans l'armée) nous permettrons à vos amis d'entrer/sortir pour prendre le contrôle des ailiers-PNJ et si vous voulez un classement de compétence supplémentaire, vous pouvez permettre à d'autres joueurs de passer et de prendre le contrôle des personnages ennemis. Ce système est assez similaire au système des Demon's Soul où les gens peuvent se rendre en tant que Blue Phantom pour vous aider à tuer un boss ou à combattre un autre joueur envahisseur, ou vous pouvez vous rendre en tant que Black Phantom dans le monde de quelqu'un d'autre et essayer de le tuer pour de l'XP et d'autres récompenses.

La clé de tout cela est de laisser le choix au joueur, vous voulez jouer seul, vous pouvez, vous voulez que vos amis vous rejoignent en co-op, nous le permettons et si vous voulez être défié par d'autres joueurs réels, vous pouvez le faire. La particularité, c'est que tout cela peut se produire 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.