Aller au contenu
Leguedric

News mensuelle du 31 Août 2016

Messages recommandés

Bonjour,

 

Hey les gens, bonne fin d'Août à vous. J'espère que vous avez eu un mois fantastique! Cela à été un très bon mois ici pour travailler à City State Entertainment ™, à l'abri des jours ensoleillés dans la belle ville de Fairfax, en Virginie.


Comme vous l'avez vu dans nos User's Stories, nous avons fait beaucoup de progrès dans notre développement de Camelot Unchained ™ et vous pouvez en lire plus à ce sujet ci-dessous, dans la section Construction.
En bref, beaucoup de problèmes de stabilité ont été résolus et des améliorations sur la "réhabilitation" ont continuées à progresser à un rythme rapide. Vous pouvez en lire un peu plus à ce sujet et sur le processus de conception de Ben, dans la section design ci-dessous. 


Bien sûr, si vous recherchez des news semaine par semaine pour regarder nos progrès plus en détails, Mark a publié des articles dans la section News de notre site Web et Tyler a continué de mettre à jour nos User Stories.


Je vais aussi prendre un moment pour vous dire que ce week-end, Camelot Unchained retourne à la Dragon Con! Mark et Andrew seront là, avec Tyler, Michelle, et Dave, pour montrer quelques images et quelques échantillons! Il va y avoir quelques bons moments à Atlanta, en Géorgie et nous avons créé une vidéo montrant certains des trucs cool du build. Ne vous inquiétez pas si vous n'êtes pas là pour y assister, nous allons mettre cette vidéo en ligne, cela sera aussi bien !.


Au bureau, nous avons eu beaucoup de plaisir à évoluer avec vous et en développant le jeu avec les caméras lors du streaming ! Le Hot Summer Streamy a ainsi continué, avec de l'amusement sur notre chaîne Twitch. Nous avons vu Michelle montrer sa création artistique dans "Paint all the things", alors que Tyler nous a tous impressionnés par son travail sur l'art de l'environnement dans "la construction du monde avec Tyler".


Pendant ce temps, Jon a diffusé en continu sa modélisation 3D et Dionne sa création matérielle. Mike a montré son travail dans "Substance Designer" assez régulièrement. Tout ceci a été parsemé d'ingénierie sonore de dB, les flux de Andrew et de la programmation avec JB, et le flux d'animation occasionnel de Scott! De plus, le Backer Necromaniak a construit en streaming sur C.U.B.E. Et bien sûr, autant que possible, à la fin de la semaine, nous avons finis avec un Wrap Up et Q&A avec Mark.


En outre, mes humbles contributions dans Morning avec Max, Gauntlet of Deeaath et lire les traditionnelles histoires qui étaient incroyablement amusantes. Merci à tous ceux qui viennent et font de notre Twitch un endroit amusant!


Eh bien, avant que cette news ne se transforme en un roman, laissez-moi vous inviter à cliquer sur le bouton "Voir cet e-mail dans votre navigateur", pour voir le bulletin d'information complet.

 

Merci beaucoup à tous ceux qui ont participé au concours fan art de ce mois-ci! Les illustrations Hamadryad basées sur "the Becoming story" ont été étonnantes. Comme nous avions trois participations étonnantes, voici nos trois gagnants du concours de ce mois-ci: L'illustration d'un Hamadryad blindé et armé prêt à défendre son Grand Arbre Protecteur

 

Camelot Unchained Hamadryad blinde et arme.jpg

 

Voici l'image de Necromaniaks : la première apparition d'un Hamadryad de l'arbre, comme à la fin de l'histoire

 

Camelot Unchained Hamadryad de l'arbre.jpg

 

Et enfin, la participation de Elminster pour la même scène, avec le mystérieux qui a appelé l'Hamadryas pour sortir de l'arbre

 

Camelot Unchained Hamadryad.jpg

 

Pour notre prochain concours, il est temps de revenir à la fan fiction. Actuellement, l'une des choses pour laquelle nous sommes le plus excités dans Camelot Unchained est l'idée de vivre de bons gros sièges, avec un nombre massif de joueurs de chaque côté. 


Pour le concours du mois prochain, écrivez-nous une petite histoire sur un grand siège - mais si vous vous concentrez sur les grands événements ou les petits c'est à vous de voir ! Quel que soit le point de vue, le caractère ou le style que vous choisissez, restez sous 250 mots pour l'afficher dans le fil et vous le verrez apparaître dans la section Fan Fiction des forums de notre site. Nous sélectionnerons notre siège préféré et le publierons dans le prochain bulletin !

Une dose de Conception avec Ben Pielstick - Description détaillée de la création des capacités

(Note de traduction : Accrochez-vous c'est du lourd, beaucoup de termes techniques qu'il a été difficile de traduire, je m'excuse par avance pour les éventuelles erreurs de traduction mais cela vaut le coup de lire, les explications du talentueux Ben sont toujours passionnantes!.) 

Il s'est passé un certain temps depuis notre dernière discussion sur la façon dont les classes et leurs composants de compétences sont faites, mais comme la plupart d'entre vous le savent, notre processus de réhabilitation a changé beaucoup de choses en coulisses.

Mettre sur pied une compétence complète implique beaucoup plus que simplement de la conception. Cela inclut des effets, des modèles et des animations sonores et visuelles et bien sûr la programmation pour construire toutes les nouvelles fonctionnalités que le jeu ne supporte pas déjà. 
Bien qu'il y ait eu beaucoup de changements sur le plan technique, le processus pour moi est le suivant : dans la mesure où la conception va toujours commencer par l'histoire de la classe , les backstories et les visions des classes constituées par Mark et Max à partir desquelles je cherche à tirer un concept fondamental de la façon à jouer une classe donnée et le ressenti qui en découle.
Ce concept est ensuite consolidé dans la documentation qui identifie certains mots-clés importants à garder à l'esprit lorsque vous faites la conception additionnelle, ainsi qu'une liste des forces et faiblesses pour s'assurer que la nouvelle classe correspond bien avec les autres classes du même royaume, ainsi que contre les classes des deux royaumes opposés.

Quand vient le temps de réellement commencer la conception de composants de compétences, je pars avec un modèle de base composé des catégories de composants dont la classe aura besoin et comment ils finiront par se lier les uns aux autres au fil de la progression. Vient ensuite des noms et des descriptions pour chaque composant. Ceci est la partie la plus abstraite du processus et implique beaucoup de références croisées avec les composants d'autres classes, en examinant des parties de l'histoire, en faisant référence à des livres ou des documentaires ou des sites Web pour une base historique ou mythologique et essentiellement en essayant d'imaginer ce qui fera un personnage amusant et intéressant. Une grande partie de cette information est restée inchangée depuis le début de notre effort sur la réhabilitation car nous avons besoin de parcourir tout le chemin afin d'avoir un prototype fonctionnel d'un composant de capacité avant de décider, le cas échéant, des modifications à apporter.

Une fois que je l'ai résumé à un ensemble de composants, pour commencer, je vérifie quels autres composants seront impliqués dans le processus. De l'ensemble des composants que j'ai créé je prévois qu'il sera relativement facile d'en faire un prototype tout en fournissant suffisamment de gameplay de base à la classe pour avoir une idée de la façon dont elle se joue. En vérifiant avec les autres (concepteurs), nous vérifions pour être sûr que nous ne disposons pas déjà de toutes les caractéristiques et les actifs dont nous avons besoin, nous savons ainsi combien de travail chaque composant prendra. Ensuite, je fais une série de relecture. Parfois, j'ai besoin de changer légèrement les descriptions des composants pour les rendre plus faciles à mettre en œuvre, ou échanger quelques composants avec d'autres sur ma liste, ou même parcourir tout le chemin inverse à la planche à dessin et refaire entièrement la conception de nouveaux composants à remplacer pour ceux qui prendraient un temps excessif.

Après des allers-retours à plusieurs reprises et des validations (avec une certitude raisonnable) pour un ensemble de composants, je peux commencer à travailler. Je commence en écrivant le script et les valeurs qui seront les composants réels dans le jeu. Au cours de la réécriture sur notre système de capacité, les détails exacts de ce processus ont un peu changés. Avant je commençais toujours par la construction d'une feuille de calcul dans Excel, en utilisant des formules de base à des valeurs de référence pour des choses comme les dommages, les cooldowns et les coûts des sorts, que je pouvais ensuite entrer dans un éditeur ou j'obtenais l'aide d'un programmeur pour importer directement dans la base de données. À l'heure actuelle, étant donné que nous avons reconstruit notre système de capacité, mon processus a changé avec l'aide supplémentaire d'une combinaison de XML et script C # , qui fournit beaucoup plus de souplesse, mais il génère un peu plus d'erreurs et est difficile à utiliser syntaxiquement si tôt dans son développement. Heureusement, c'est juste temporaire pour nous permettre d'obtenir rapidement de nouvelles fonctionnalités et tests. Ces méthodes seront plus tard mieux rationalisées alors que nous essayons de nouvelles choses nous trouverons des façons de simplifier la manière dont elles sont mises en œuvre.

Dans un premier temps, je dispose ensemble les prototypes de composants de capacité qui utilisent un grand nombre d'informations d'espace réservé juste pour tester leurs caractéristiques de base et pour s'assurer qu'ils puissent travailler ensemble. Cela comprend un ensemble générique des actifs volontairement conçus pour être utilisés pour le test initial, tandis que les propriétés du composant de capacité sont toujours ajustées. Ils vont continuer à voir l'utilisation dans les capacités jusqu'à ce que tous les actifs uniques soient créés pour les nouveaux composants.

Les premières séries de tests des nouveaux composants concernent surtout les bots, les mannequins cibles, ou le loggin de multiples avatars sur un serveur interne pour lancer les capacités d'avant en arrière, ce qui tend à trouver la plupart des bugs et d'équilibrer ceux qui nécessitent de grands ajustements. En règle générale, les ajustements deviennent de plus en plus petits au fur et à mesure que les tests se poursuivent, ne nécessitant que de temps en temps de grands changements quand quelque chose d'inattendu se produit au cours de mélanges et assortissements de composants dans de nouvelles capacités intéressantes. Ceux d'entre vous qui ont pris part à des tests sur notre serveur Hatchery au cours des différentes étapes de l'essai ont été en mesure de voir un grand nombre de composants au cours de ce processus, et nous continuerons à le faire quand de plus en plus de classes sont ajoutées au jeu. 

Notre premier ensemble de classes est encore en train de se doter des composants de notre nouveau système pour jouer avec des choses comme des animations et des effets de particules déjà mis en place, ainsi que la capacité à rendre compte des statistiques des armes et armures, des différentes parties du corps et de la façon de les endommager séparément et de subir les blessures, et plus encore. Il y a encore beaucoup plus de fonctionnalités à venir, jour après jour, ce qui permettra, de plus en plus et au fil du temps d'obtenir des capacités intéressantes. Ce sera d'autant plus important car nous ajoutons quelques-unes des classes les plus complexes de Camelot Unchained.

Pour l'instant, l'accent est clairement mis sur l'ensemble des fonctionnalités dont nous avons besoin pour commencer notre première série de tests bêta. Il y a beaucoup à faire pour ce processus, mais beaucoup de grandes caractéristiques critiques à une Beta sont en voie d'achèvement, ce qui nous permet de finaliser tout ce que nous avons besoin pour tester le combat avec nos nouvelles classes pour la première fois. Tous ici sommes très impatients de voir le combat avec nos nouvelles classes pour la première fois, et nous sommes impatients de voir comment nos premiers tests de combat à grande échelle se comportent avec des centaines de joueurs.

Note du Développeur

Citation

"Aucun développeur de MMORPG ne peut honnêtement prétendre qu'il ne subit pas des contretemps / erreurs / etc, et nous avons réduit les nôtres au minimum. Espérons que cela va continuer. :) "- Mark Jacobs

Tech Central de Charles "Bull" Durham - Explications sur le fonctionnement du signaleur de bugs et son énorme utilité

Camelot Unchained Tech central.jpgSur le Robot Canard.
Camelot Unchained a un tas d'informations. Toutes ces choses sont censées travailler ensemble afin de créer tout ce que vous rencontrez dans le jeu. Cependant, parfois, ce genre de choses ne fonctionnent pas bien ensemble. Tab A est censé s'insérer dans le Slot A, mais la fente A est manquante. Dans le meilleur des cas, il manque quelque chose ... même pas perceptible. Dans le pire des cas, le serveur hurle d'arrêter. 

Quand je travaillais sur Star Wars: The Old Republic, j'ai fini par participer à un petit projet qui lit les données dans le jeu et cherche des choses qui ne fonctionnent pas bien. Par exemple, une planète pourrait avoir un trop grand nombre d'objets à l'origine de la zone, puisque le moteur a tendance à créer de nouveaux objets apparaissant là-bas, et il était très facile pour un accident au mauvais moment de faire perdre cet objet au concepteur. Parfois, une quête faisait référence à un monstre, et le monstre a été effacé. Cela pourrait (et fait) interrompre les quêtes. Vers le jour du lancement, il y avait même une politique qu'un code et le contenu implanté n'était pas autorisé à passer d'un environnement à l'autre jusqu'à ce que tous les problèmes soient résolus. Ce fut amusant d'être responsable de ce projet, mais il n'a pas été parfait. Il manquait de nombreuses fonctionnalités que je n'ai pas eu le temps ou l'expertise technique pour le finir.

Depuis mon arrivée à CSE, j'ai toujours voulu prendre cette idée et la rendre meilleure. Être responsable des outils et des pipelines en acquérant de l'expérience beaucoup plus variée et minutieuse a donné le jour à RoboDuck, un processus automatisé pour trouver des problèmes avec les données de notre jeu. Voici comment ça fonctionne:
RoboDuck est un processus / une application écrite en C #. Il fonctionne sur un serveur, ici, dans la back room, avec d'autres choses. Chaque heure (ou chaque fois que le fichier de configuration indique qu'il devrait le faire), il recherche les bibliothèques (une bibliothèque est une collection de code exécutable précompilé) qui contiennent des RoboTests. RoboDuck regarde à travers la bibliothèque tout les RoboTests, puis vérifie un attribut sur ces RoboTests pour voir si elle doit être exécutée sur RoboDuck. Après avoir recueilli les tests, il construit une image immuable de toutes les données actuellement utilisées par le jeu, puis passe cette liasse géante de données en lecture seule par chaque test.

Les RoboTests sont tous écrits à l'intérieur de cette bibliothèque, ainsi que les systèmes d'extension pour tous les types de données dans notre jeu. Les systèmes d'extension sont du code supplémentaire qui se traite par C # comme ils font partie de la classe régulière, mais seulement si les bibliothèques qui existent à l'intérieur sont utilisées. En faisant les tests et les systèmes d'extensions séparément à partir de RoboDuck, nous gagnons deux avantages majeurs.

Le premier avantage est que le code dans la bibliothèque peut être utilisé par tout autre outil .NET pour effectuer des tests. Ainsi, l'ajout d'une fonctionnalité à un éditeur pour tester des éléments devient trivial. Le Serveur de création - qui écrit tous les binaires que vous utilisez sur le client - est aussi un .NET, et pourrait ensuite utiliser cette bibliothèque. Le deuxième avantage est le remplacement à chaud (en direct). RoboDuck charge cette bibliothèque à chaque cycle, l'ajout d'un nouveau test est aussi simple que la suppression du fichier de bibliothèque dans le bon dossier. 

Quoi qu'il en soit, RoboDuck charge la bibliothèque qui contient les essais, regarde tous les tests, puis exécute chaque test qui a été étiqueté comme un test RoboDuck. Le test peut être quelque chose qui traite des données. Comme les données sont transmises par chaque fonction, les messages des tests sont recueillis. Une fois que les tests sont tous complets, RoboDuck se penche ensuite sur une liste d'utilisateurs qui ont un intérêt dans chaque test, qui est également configurable via les niveaux d'erreur qui les intéresse. Par exemple, Scott pourrait seulement être intéressé par une poignée de tests d'animation, et seulement à un niveau "d'erreur", tandis que Tyler pourrait être intéressé par des tests ayant à voir avec les zones, et je pourrais être intéressé par les résultats de tous les tests de niveau "Warning" ou mieux. 

RoboDuck trie les messages par test, vérifie le fichier de configuration, puis les courriels des utilisateurs individuellement basé sur les tests dont il se soucie, et seulement au niveau d'avertissement qu'ils se soucient. Tous les messages sont également rassemblés en un seul email. Le résultat final est que si vous recevez un email de RoboDuck, cela signifie qu'il ya un défaut dans les données, et que vous êtes en mesure de le réparer. Il est même assez poli pour ne pas envoyer des e-mails en dehors des heures normales de bureau, car beaucoup d'entre nous sont toujours à l'appel ... pas besoin d'être ennuyé par quelque chose en dehors du travail.

RoboDuck nous a déjà permis de fixer des centaines de bugs et d'autres tests sont écrits, je ne serai pas surpris de voir le nombre monter dans le millier. Pas mal pour un petit projet mis de côté !

Situation du Build de Cory Demerau - Contenu et améliorations implantés concrètement ce mois-ci

Salutations! Ce mois-ci, notre double focus est allé sur la stabilité du jeu (après tous les nouveaux ajouts de code de cet été) et revenir à notre rythme de test d'avant. Nous avons accompli ces deux objectifs, avec beaucoup d'Alpha, Beta 1 et IT tests au cours de la semaine et plusieurs week-ends complets de tests. Bien sûr, nous avons toujours réussi à travailler sur les avancées futur, aussi! Comme toujours, ceci est juste un échantillon de notre liste des User Stories. Débutons !

  • Capacités:
    • Nous soutenons maintenant la possibilité d'enchâiner des événements avec une seule capacité. Par exemple, nous pouvons maintenant créer un effet de «Siphon de vie", où le joueur est soigné sur la base du montant des dommages qu'une attaque inflige.
    • Les capacités peuvent désormais cibler différentes parties du corps. Comme balayer la jambe!
    • Ajout du support pour les plaies encore une fois, et la capacité de les guérir.
    • Les capacités supportent désormais les effets périodiques. Poisons, saignements et plus ont été ajoutés à notre boîte à outils.
    • Les resistances ont été introduites dans le système de capacité et peuvent être liées à la chaîne et aux parties du corps (de sorte que le bras portant des gants épais aura des résistances différentes par rapport aux jambes qui portent des pantalons de lumière).
    • Beaucoup de nouveaux noeuds de compétences pour le Tir à l'arc ont été ajoutées au jeu.
    • Se déplacer tout en lançant une capacité qui peut être perturbée applique désormais la perturbation sur la base de la distance parcourue.
    • Toutes les données visuelles pour une capacité sont maintenant envoyées plus efficacement du serveur au client.
    • Les ressources (Sang et Endurance) se régénèrent maintenant correctement.
  • Graphique :
    • Des variables supplémentaires pour les sources de lumière de l'environnement et l'auto-ombrage. Cela n'a aucun effet direct pour l'instant, mais il donne à nos artistes plus de boutons pour jouer avec afin de créer des effets d'éclairage intéressants dans l'avenir.
  • UI :
    • Il y a maintenant un bouton en bas à droite de votre écran qui vous permet de déplacer des éléments de l'interface utilisateur. A la longue, vous pourrez personnaliser vos emplacements de l'interface utilisateur!
    • L'interface utilisateur de création de batiments a reçu une mise à niveau visuelle.
    • Ajout d'une vérification à la création du personnage empêchant des caractères spéciaux dans les noms. Maintenant les noms ne pourront accepter que les lettres.
    • Le statut du joueur et le statut de la cible dans l'interface utilisateur ont reçu une mise à niveau visuelle, ainsi que plus d'informations à partir du serveur, en préparation pour les groupes du joueur.
  • C.U.B.E :
    • Ajout d'un outil "Paintbucket", vous permettant de changer tous les blocs connectés du même type à un autre type (liaison par défaut: la touche P).
    • Parcelles: le contrôle de la parcelle control / capture.
    • Moteurs de recherche: Les bots Loadtesting ont reçu des améliorations constantes pour les ramener à leur ancienne gloire. Ils ont passé beaucoup de temps à tirer des flèches comme des personnes sur Hatchery ...
  • Bugs :
    • Correction de plusieurs problèmes qui pourraient survenir pendant le chargement du jeu. Nous avions négligeant pendant trop longtemps, et grâce à un effort herculéen de la part de nos ingénieurs clients, la grande majorité des crashs de démarrage / freeze ont été résolus.
    • Correction d'une fuite de mémoire liée à un grand nombre de projectiles de feu.
    • Correction d'un problème qui a causé l'execution automatique d'arrêt du jeu si la fenêtre de jeu perdait le focus.
    • Correction d'un problème où le client du jeu semble parfois derrière d'autres fenêtres au démarrage.
    • Correction d'un problème avec le patcher qui affichait les serveurs en ligne alors qu'actuellement hors-ligne.

Image Bonus

Camelot Unchained C.U.B.E.jpg

 

Source : CamelotUnchained.fr

 

Cordialement,

Leguedric.

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour à vous tous  merci pour ce contenu de fin de mois d'août, toujours très intéressant de lire la conception d' un jeu de voir les problèmes ensuite les corrections. Quand je pense aux nombres de semaines mois pour arriver à sortir un jeu correcte. Une fois le jeu en ligne certains disent après deux mois, tiens j'ai joué à un tel jeu je l'ai fini et tout vu alors qu ils ne font parfois que 10% de leur contenu. Cela ma toujours fait bien rire mais bon chacun son idée là-dessus.Encore merci pour ce magnifique suivi.

amicalement vôtre

Yanis

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
    • 1 Messages
    • 4 Vues
    • 1 Messages
    • 12 Vues
    • 1 Messages
    • 24 Vues
    • 1 Messages
    • 18 Vues
    • 1 Messages
    • 20 Vues

×