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

Persistance d'un Navire sans Propriétaire

Pause-Café

Dans un récent post du Spectrum, Fractal s'adresse aux développeurs afin d'évoquer un concept fort intéressant sur le fait de permettre à un joueur de réapparaitre dans un vaisseau dont il n'est pas le propriétaire, et cela même si le vaisseau en question n'est pas chargé sur le serveur.

Comme on le sait, actuellement on peut utiliser le lit d'un vaisseau pour se déconnecter du jeu, et la reconnection se fait dans le même lit à l'emplacement même où se trouvait le vaisseau avant la déconnection. Même si cette fonctionnalité fût quelque peu hasardeuse et ne fonctionnait pas toujours, il s'avère qu'en 3.8 elle devient de plus en plus fiable.

Seul détail évident, à ce jour, elle ne fonctionne que si l'on est bien évidemment le propriétaire du dit vaisseau, ou que ledit vaisseau soit initialement chargé par son propriétaire sur le serveur. Mais avec le concept même de persistance tel qu'il fut initialement présenté par Chris Roberts, on sait qu'à terme un vaisseau ne devrait pas disparaitra, physiquement parlant, du jeu une fois le joueur déconnecté. De ce fait, on peut en venir à se demander si la déconnection pourrait ne pas s'étendre à l'ensemble des vaisseaux tel que Fractal l'expose dans son message du Spectrum et Chad McKinney, Lead Gameplay Engineer chez CIG, lui répond.

Fractal s'interroge

La persistance telle que nous l'avons actuellement dans le Live 3.8 (et le Build 3.9 Evocati) est formidable, en particulier la façon dont la connexion et le retour au jeu par les lits de navire se fait.

Pouvez-vous nous laisser nous connecter à un navire d'une autre personne, même si elles ne sont pas encore connectées ?

Cela permettrait d'obtenir quelques résultats, à savoir :

Les membres de l'équipage vivraient une expérience plus cohérente et plus immersive.

En particulier pour les grands navires comme le 890j et le Carrack, un équipage est souvent constitué et mis en place pour la session de jeu. Actuellement, si tout le monde se déconnecte dans un lit, il doit attendre que le propriétaire du navire se connecte d'abord (pour faire naître le navire sur le serveur) puis les équipages suivants peuvent se connecter aux lits. Que se passe-t-il si le propriétaire est absent ? Ou si l'équipage est nombreux et a des horaires disparates ? Serait-il agréable de se connecter et de voir le navire se trouver à un endroit complètement différent parce que les membres de l'équipage effectuent des missions entre deux périodes ?

Donner une autre raison de voler des navires.

Actuellement, voler des navires est une poursuite à court terme. Il n'y a aucune possibilité de "flottes de pirates" ou d'acquisition de navires par conquête (ou sauvetage légitime). Il faut beaucoup d'efforts pour un résultat à très court terme, ce qui est décevant. À un moment donné, nous serons en mesure de vendre ou de mettre à la casse des navires volés pour l'UEC, et même plus tard, de légitimer des biens mal acquis par certains moyens de jeu (du moins, c'est ce que CR a expliqué il y a de nombreuses années).

Cohérence avec les règles de l'univers.

Il est incohérent qu'un vaisseau que je possède réapparaisse au milieu de l'espace lorsque je me connecte mais pas un vaisseau que je ne possède pas. Même cette phrase est difficile à comprendre.

Il devrait y avoir des comportements cohérents dans un bac à sable comme SC, imho.

De plus, je suppose que c'est le plan à long terme de toute façon, nous ne pouvons pas vraiment avoir 27 membres d'équipage qui attendent que le propriétaire de l'Idris rentre du travail avant de pouvoir commencer.

-- Fractal

Réponse de Chad McKinney

Pour l'instant, non, il y a trop de cas de Corner Cases (*) à prendre en compte et cela immobiliserait les ressources pour travailler sur les plus grandes fonctionnalités qui arrivent.

Une fois que nous aurons mis en place le SOCS, la persistance globale et, idéalement, le Server Meshing, nous pourrons revoir ce genre de choses pour voir quelles en seraient les ramifications.

En général, nous devons repenser certains comportements clés dans la version complète du jeu, persistance globale + Server Meshing, et la réapparition du joueur en jeu sera quelque chose qui aura certainement de nouvelles considérations.

Cela ne concerne pas seulement les vaisseaux, mais aussi les habitats, les cadavres, les objets et autres idées de "Death of a Spaceman".

-- Chad McKinney

Notes et Références

(*) Corner Case : Un corner case se dit d'un problème ou d'une situation qui ne se produit qu'hors du scénario type d'utilisation. -wiki-

Dernière mise à jour : 06/06/2023