Making of de Battery Jam, un jeu d’étudiants

Comment le projet a commencé

Salut tout le monde, mon nom est Bran­don Swan et je suis le chef de pro­jet sur “Bat­tery Jam”, un jeu dévelop­pé pen­dant 20 semaines au Savan­nah Col­lege of Art and Design à Savan­nah. Notre équipe est com­posée d’un noy­au de 4 per­son­nes, et d’aide extérieure grâce à une équipe d’an­i­ma­tion et une équipe audio pour les effets sonores et la musique, ce qui porte l’équipe à 11 per­son­nes pour le moment. Notre équipe de base avait déjà tra­vail­lé sur la créa­tion d’un jeu de société qui devrait être sur Kick­starter cette année. Comme nous avons appré­cié de tra­vailler ensem­ble, nous avons mod­i­fié nos horaires de cours afin de faire notre classe “stu­dio” ensem­ble pour faire un jeu.

Avant toute chose, “Bat­tery Jam” fonc­tionne parce que nous avons tout choisi avec soin. Nous avons passé du temps à dis­cuter des options et fait en sorte d’avoir un style de jeu qui allait avec notre équipe et nos aspi­ra­tions. Puisque nous ne pou­vons pas vrai­ment vous don­ner beau­coup de con­tenu sur la façon de dis­cuter en équipe, nous allons vous par­ler de cer­taines de nos déci­sions de con­cep­tion, et un peu du tra­vail du moteur. Ce fut un sprint de 20 semaines qui nous a valu un voy­age à l’E3 2015 pour le con­cours de l’u­ni­ver­sité et le prix du jeu de l’an­née aux étu­di­ants Autodesk CG.

L’art

Le choix de notre langage visuel

Lorsque l’on regarde d’autres jeux d’é­tu­di­ants, l’un des fils com­muns que nous avons ressen­ti était que, mal­gré beau­coup de grandes idées artis­tiques, ils étaient man­quaient générale­ment de charme. Donc, nous avons décidé que nous voulions nous con­cen­tr­er sur l’ob­ten­tion d’une per­son­nal­ité. Je suis aus­si respon­s­able du con­cept artis­tique du jeu donc je vais pren­dre une minute pour par­ler des déci­sions que nous avons faites en ce qui con­cerne notre direc­tion artis­tique.

Comment nous avons vu nos Personnages

BatteryJamChars-451x254-1351806629Les per­son­nages étaient un défi intéres­sant et ont été défi­nis par les lim­ites du pro­jet. Quand nous avons com­mencé le pro­jet, nous avions un ani­ma­teur d’équipe, et nous savions qu’elle était capa­ble de rig­ger. Nous savions aus­si que nous voulions unique­ment 4 per­son­nages, nous avons donc dû trou­ver un moyen de garder le rigg et l’an­i­ma­tion sim­ple, tout en définis­sant leur esthé­tique.

Utilis­er des robots était une déci­sion facile à pren­dre parce que nous n’avions pas à détailler un mod­èle organique. Des rotules sim­ples sem­blaient la meilleure approche et la plus rapi­de. Nous savions que ce serait plus facile de partager la même plate-forme ain­si, et que nous pou­vions chang­er les com­posantes des per­son­nages pour faire des change­ments rapi­des au sein de notre cal­en­dri­er.

battery jam12

Il y a cer­taines lim­ites pour tra­vailler la con­cep­tion des per­son­nages. En plus des lim­i­ta­tions de plate-forme, nous savions que le jeu allait être joué en per­spec­tive de haut en bas. La meilleure façon de définir ces car­ac­tères serait donc les formes et les couleurs de leurs têtes. Je regar­dais la série de course Wipe­out pour l’in­spi­ra­tion sur cer­taines formes et les livrées des navires. Comme vous pou­vez le voir, l’at­ten­tion est portée sur ce qui les rend “sportifs” avec des pro­por­tions comiques et divers instru­ments pour ajouter un peu de bizarrerie. Leur per­son­nal­ité est poussée plus avant grâce à des ani­ma­tions comme la séquence d’in­tro et l’écran titre où les per­son­nages peu­vent être vus posant, dansant sur la musique.

En créant les per­son­nages, je les réal­i­sais avec des sil­hou­ettes dynamiques avec un esprit 2d. Les avant-bras et les tib­ias pren­nent une posi­tion plus dra­ma­tique. Lorsque Everett a mod­élisé notre pre­mier car­ac­tère, Tur­bo, il l’a illus­tré exacte­ment comme il fal­lait, et nous avons pen­sé qu’il avait l’air génial! Mais une fois que nous avons com­mencé l’an­i­ma­tion, nous avons réal­isé que ces join­tures pliées ont con­duit à quelques pos­es et mou­ve­ments très mal­adroits. Par exem­ple, tout mou­ve­ment de poussée avec les armes sem­ble extrême­ment étrange parce que l’a­vant-bras est trop plié. Ci-dessous, vous pou­vez voir un exem­ple sim­ple de la façon dont nous avons util­isé les courbes pour faire des pos­es plus dynamiques.

battery jam 13Sans les bends, ces pos­es n’au­raient pas la même flu­id­ité. Cela donne une qual­ité illus­tra­tive à leurs formes, ce qui a bien fonc­tion­né pour nous, mal­gré l’er­reur de départ.

battery jamVous pou­vez voir sur Rock­ets turn­around com­ment les coudes, les tib­ias sont raides en réal­ité. Cela a été essen­tielle­ment util­isé comme T‑pose. Au lieu de redessin­er la rota­tion des bras dans Pho­to­shop, nous avons pen­sé que les rotules ne présen­teraient pas de prob­lèmes si nous les mod­éli­sions sim­ple­ment comme posées.”

Conception

Bon­jour à tous, je suis Abra­ham Pla­ton, con­cep­teur pour Bat­tery Jam, je vais vous par­ler des moti­va­tions der­rière les choix de con­cep­tion que nous avons faites dans le jeu et com­ment ces choix ont évolué au fil du temps.

Combat

Pen­dant la phase de pré-pro­duc­tion, au début de “Bat­tery Jam” quand nous avons fini de nous dis­put­er et que nous sommes enfin tombés d’ac­cord, le game­play de bomber­man a pu être défi­ni, en par­ti­c­uli­er le mode mul­ti­joueur. Con­traire­ment à pra­tique­ment tous les jeux mul­ti­joueur de com­péti­tion, le jeu ne se con­cen­tre pas sur les attaques directes. Au lieu de cela, vous pou­vez plac­er des bombes dans des posi­tions stratégiques et essen­tielle­ment essay­er d’in­flu­encer les mou­ve­ments de votre adver­saire pour le piéger et le tuer avec une bombe habile­ment placée. Nous pen­sions que ce serait un moyen très amu­sant et unique pour ce style de com­bat.

Cet objec­tif de con­cep­tion, cou­plé avec l’esthé­tique comique du jeu a mené à la créa­tion de per­son­nages ressem­blant à des ven­ti­la­teurs géants, des aimants, des fusées avec gants de boxe et avec un mou­ve­ment dis­tinct de la spin­dash de Son­ic.

Au cours de leur pre­mière itéra­tion, nous avons pen­sé la plu­part de ces bonus comme des objets placés. Pour garder un sen­ti­ment d’én­ergie dans le jeu, nous pen­sions que ce serait amu­sant d’avoir le per­son­nage sauter en l’air, lancer l’ob­jet sur le sol, puis retourn­er au loin. Nous avons été con­fron­tés au fait que le joueur est resté enfer­mé à une ani­ma­tion “déploy­er” pen­dant deux sec­on­des pleines, ce qui est une grande durée de vie dans le game-time.

battery jam 14Nous avons réduit le temps pen­dant lequel le joueur était dans l’air à une frac­tion de sec­onde, ce qui rend l’ac­tion plus flu­ide pour les joueurs met­tant en place un piège et leur per­me­t­tant de con­tin­uer à courir. Les joueurs pensent et se dépla­cent beau­coup plus vite que le jeu pou­vait le per­me­t­tre. Si une action prend plus d’un quart de sec­onde, il vaut mieux qu’elle soit très impor­tante sinon le joueur va se lass­er ou se sen­tir coincé.

La nécessité crée l’invention

Nous avons adoré l’idée de créer un champ de bataille sur la base d’une grille que les joueurs pou­vaient mod­el­er avec tout ce dont ils ont besoin à un moment don­né. Met­tre en place des murs de pro­tec­tion, creuser des tranchées mortelles pour frap­per un adver­saire, ou peut-être juste met­tre une bar­rière entre vous et le joueur qui essaie de vous tuer. Le prob­lème avec cette con­cep­tion était que les joueurs pou­vaient rapi­de­ment se couper du reste du champ et être coincés loin de l’ac­tion. Nous voulions que les  joueurs aient un moyen fiable pour revenir dans la lutte, nous avons donc créé les capac­ités des joueurs.

Tout d’abord, l’ha­bileté “Slam”: En claquant au sol, les joueurs sur les tuiles adja­centes revi­en­nent au cen­tre. Pour garder les choses intéres­santes, nous avons égale­ment ajouté un effet de repousse­ment qui peut être utile aus­si pour effectuer une attaque. Le temps de recharge a été égale­ment réduit de 15 sec­on­des, à 10 et enfin à 6 pour que les joueurs n’at­ten­dent pas trop.

Nous avons ajouté d’autres “fonc­tions” afin de per­me­t­tre de pimenter le jeu.

Suspense

Il y a de grands moments sur tout diver­tisse­ment, quand notre sens de l’hu­mour est acéré parce qu’à un moment don­né, il y a un sen­ti­ment d’ur­gence ou de sus­pense. Cela peut arriv­er quand les choses sem­blent plus dif­fi­ciles, même si la seule chose qui change est le vol­ume d’un orgue à tuyaux. Nous avons conçu plusieurs mécan­ismes pour cela.

Shaft le Bot laser peut sem­bler assez inutile. Il n’a jamais sem­blé être en mesure de tuer quelqu’un parce que les joueurs pou­vaient facile­ment esquiver der­rière un car­reau soulevé. La solu­tion est venue en deux par­ties.

Nous avons d’abord changé le laser de sorte qu’il serait tou­jours dans le milieu de la scène puis à gauche ou à droite, cou­vrant ain­si la moitié de la scène. Ensuite, nous avons mis en place du hasard. Cela a créé des moments de haute ten­sion quand un joueur était acculé par le laser­bot, il ne savait pas s’il serait épargné.

Le kamikaze, a subi une tran­si­tion encore plus extrême et impor­tante. Au début, le bom­bardier mar­quait une tuile comme «armée et dan­gereuse». La ques­tion était qu’il n’y avait pas de dif­férence mécanique entre ces tuiles et la lave, les deux étaient tout sim­ple­ment des car­reaux mor­tels. Everett a pen­sé à aug­menter le punch du bom­bardier sur de nom­breux car­reaux à la fois sous forme de pluie sur tout le ter­rain. En réal­ité, c’est très facile pour un joueur à éviter car l’ef­fet ne dure que quelques sec­on­des.

BJ_gameplay4-451x254-2096413733Enfin, nous avons adop­té la «mort subite». Il peut être un excel­lent moyen pour décider du vain­queur dans un com­bat beau­coup plus rapi­de. Quand un match dure trop longtemps, les bagues extérieures des tuiles com­men­cent à som­br­er dans la lave une à la fois, avec un court inter­valle entre cha­cun. L’ef­fet le plus immé­di­at est que les joueurs ont un plus petit espace pour com­bat­tre ou fuir, ce qui force la con­fronta­tion con­stante, une accéléra­tion du game­play. Il crée égale­ment un sen­ti­ment de ten­sion.”

Technical Design

Bon­jour, je suis Everett Gun­ther, artiste chef 3D respon­s­able des envi­ron­nements, mod­èles de per­son­nages, des effets et de l’é­clairage. Je vais vous par­ler un peu de cer­taines méth­odes que nous avons util­isées pour ajouter rapi­de­ment de la vie et de la dynamique dans nos arènes.

Le ton et l’én­ergie du jeu sont con­joints avec le rythme de la musique et sont un objec­tif pri­mor­dial. Ces dynamiques sont obtenues en util­isant de sim­ples défor­ma­tions matérielles ani­mées. Par exem­ple, agiter des dra­peaux, du vent dans les plantes et les haut-par­leurs sont en con­cor­dance avec le rythme. Jetons un coup d’œil à la façon dont cela a été fait pour les arènes.

J’ai com­mencé avec la forme du cône du haut-par­leur mod­élisé en tant que sur­face plane, car je savais que la défor­ma­tion serait définie par les nor­males des som­mets. J’ai fait alors un sim­ple masque noir et blanc.BJ_speaker_textures-1424x798-1395031191

Dans UE4, je choisi l’as­set dans la scène et je me mets en mode Ver­tex Paint. J’im­porte le masque de couleur à l’aide de l’im­por­ta­tion option tar­ga de façon à alléger la tex­ture.

Le matéri­au util­isé pour la con­fig­u­ra­tion des haut-par­leurs utilise un noeud Sine linéaire, avec l’ef­fet des impul­sions obtenu par masquage.
BJ_speaker_material-1544x516-1024604933Ce résul­tat est ensuite mul­ti­plié par le ver­tex nor­mal, puis le ver­tex col­or data, puis une valeur en unités spa­tiales pour le mou­ve­ment. Nos défor­ma­teurs de matéri­aux utilisent cette con­fig­u­ra­tion de base de dif­férentes manières. Voici à quoi ressem­ble le résul­tat final.

BJ_speaker_final-400x390-1545011648Une autre façon d’u­tilis­er cette méth­ode, l’eau d’une riv­ière:

battery jam 19Un objec­tif pri­or­i­taire pour moi sont les envi­ron­nements de l’arène qui se dépla­cent et sem­blent aus­si vivants que pos­si­ble. Nous avons util­isé ces méth­odes pour ani­mer des choses comme l’herbe ondu­lant dans le vent, des plantes en rythme avec la musique, Hov­er­cars qui flot­tent et des dra­peaux flot­tant au vent, etc. Ils nous ont per­mis d’in­sér­er la dynamique au niveau matériel dans des tas d’en­droits, sans le besoin d’as­sets spé­ciale­ment ani­més, cela nous per­met d’é­conomiser beau­coup de temps et donne au jeu un look beau­coup plus uni.”

Blueprint

Bon­jour, je suis Esther Nho et j’ai fait la majorité de blue­prints sur le pro­jet. Tous les événe­ments et les inter­ac­tions que vous voyez dans le jeu ont été créés unique­ment avec les blue­print. Seuls 2 d’en­tre nous avaient quelques con­nais­sances de base en codage, de sorte que le sys­tème de blue­print­ing était vrai­ment utile dans la créa­tion de notre jeu. Cela nous a fourni tous les out­ils dont nous avions besoin pour ajouter de la var­iété dans le game­play.

Avoir la logique en face facilite la traque des bugs. Pour les bugs tenaces et per­sis­tants, nous avons été en mesure de déter­min­er des solu­tions de rechange pour faire ce que nous voulions. Si une méth­ode ne fonc­tionne pas, il y a tou­jours une autre option.

Par exem­ple, “Bat­tery Jam” est joué en util­isant une manette de jeu. Un des prob­lèmes que nous avons ren­con­trés était de faire col­la­bor­er le con­trôleur avec les wid­gets. Nous util­i­sions Unre­al 4.6 à l’époque, et plus tard 4.7, mais les wid­gets n’of­frent pas encore de ges­tion gamepad dans leur event­graph.

La solu­tion que nous avons util­isée était de créer un blue­print actor pour chaque wid­get. Chaque fois que le menu est appelé, il y a  val­i­da­tion pour tous les con­trollers.

battery jam 20battery jam 21Nos “bou­tons” sont des élé­ments d’im­age qui ont été définies à par­tir d’une tex­ture. Les ani­ma­tions ont été créées dans le UMG design­er et sont joués pen­dant l’ ”état sta­tion­naire”.

battery jam 22Nous avons eu deux images pour l’é­tat nor­mal et le sur­vol des bou­tons. Quand les joueurs nav­iguent à tra­vers le menu, l’im­age appro­priée est fixée.

battery jam 23 battery jam 24Aucun de nous n’é­tait expert sur le moteur avant le début du pro­jet. Avec seule­ment 20 semaines devant nous, notre prin­ci­pal objec­tif était d’obtenir un max­i­mum de fonc­tion­nal­ités avec un min­i­mum de bugs pos­si­ble. Quand je regarde les scripts aujour­d’hui, je sais qu’il y avait des moyens net­te­ment plus élé­gants d’abor­der cer­tains domaines. main­tenant que nous avons plus de temps, nous nous con­cen­trons main­tenant sur la refonte de beau­coup de nos scripts pour per­me­t­tre plus de flex­i­bil­ité à long terme. Oh, et si nous pou­vons ajouter d’autres explo­sions et des trucs.

Voir le blog de développe­ment sur le jeu, ain­si que le site offi­ciel.

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.