• Announcements

    • khawk

      Download the Game Design and Indie Game Marketing Freebook   07/19/17

      GameDev.net and CRC Press have teamed up to bring a free ebook of content curated from top titles published by CRC Press. The freebook, Practices of Game Design & Indie Game Marketing, includes chapters from The Art of Game Design: A Book of Lenses, A Practical Guide to Indie Game Marketing, and An Architectural Approach to Level Design. The GameDev.net FreeBook is relevant to game designers, developers, and those interested in learning more about the challenges in game development. We know game development can be a tough discipline and business, so we picked several chapters from CRC Press titles that we thought would be of interest to you, the GameDev.net audience, in your journey to design, develop, and market your next game. The free ebook is available through CRC Press by clicking here. The Curated Books The Art of Game Design: A Book of Lenses, Second Edition, by Jesse Schell Presents 100+ sets of questions, or different lenses, for viewing a game’s design, encompassing diverse fields such as psychology, architecture, music, film, software engineering, theme park design, mathematics, anthropology, and more. Written by one of the world's top game designers, this book describes the deepest and most fundamental principles of game design, demonstrating how tactics used in board, card, and athletic games also work in video games. It provides practical instruction on creating world-class games that will be played again and again. View it here. A Practical Guide to Indie Game Marketing, by Joel Dreskin Marketing is an essential but too frequently overlooked or minimized component of the release plan for indie games. A Practical Guide to Indie Game Marketing provides you with the tools needed to build visibility and sell your indie games. With special focus on those developers with small budgets and limited staff and resources, this book is packed with tangible recommendations and techniques that you can put to use immediately. As a seasoned professional of the indie game arena, author Joel Dreskin gives you insight into practical, real-world experiences of marketing numerous successful games and also provides stories of the failures. View it here. An Architectural Approach to Level Design This is one of the first books to integrate architectural and spatial design theory with the field of level design. The book presents architectural techniques and theories for level designers to use in their own work. It connects architecture and level design in different ways that address the practical elements of how designers construct space and the experiential elements of how and why humans interact with this space. Throughout the text, readers learn skills for spatial layout, evoking emotion through gamespaces, and creating better levels through architectural theory. View it here. Learn more and download the ebook by clicking here. Did you know? GameDev.net and CRC Press also recently teamed up to bring GDNet+ Members up to a 20% discount on all CRC Press books. Learn more about this and other benefits here.
Sign in to follow this  
Followers 0
  • entries
    15
  • comments
    2
  • views
    12627

About this blog

Articles traduits ou originaux sur la conception de jeux vidéo

Entries in this blog

yahiko00

D

Introduction au langage TypeScript



Prerequis :


  • Connaissance des principes de bases de la programmation orientee objet
  • Connaissance des principes de bases de Javascript
  • Compilateur TypeScript installe

    (0.1)

    Sommaire :


    • Introduction
    • Typage
    • Classe
    • Fonction anonyme flechee
    • Modularite
    • Conclusion

      (0.2)

      1. Introduction


      Cet article est une presentation succincte des principaux apports de TypeScript que sont le typage, les classes, les fonctions anonymes "flechees" et la modularite. L'installation proprement dite du compilateur TypeScript est decrite dans l'article suivant : Developper son premier jeu Web (partie 1).

      Il convient egalement de rappeler que le langage TypeScript est avant tout du Javascript ameliore ce qui permet la reutilisation de ses connaissances en Javascript. Il faut en effet avoir conscience que les limitations intrinseques de Javascript se refletent egalement dans TypeScript. Par exemple, la notion d'attributs prives d'une classe qui existe dans la plupart des langages orientes objets, bien que syntaxiquement presente dans TypeScript, n'est pas restrictive mais uniquement indicative dans la mesure ou un attribut prive pourra malgre tout etre utilise en dehors de sa classe.

      La specification complete du langage TypeScript est disponible sur le site officiel.


      2. Typage



      Le principal apport du langage TypeScript, celui qui justifie le nom meme du langage, est la possibilite d'associer, facultativement, un type a une donnee.






      var pi: number;var message: string;var flag: boolean;var joker: any;

      (2.1)

      Dans l'exemple ci-dessus, quatre variables sont declarees sans etre initialisees a l'aide d'un type dont la signification est explicite.

      • La variable pi a pour type number, un nombre entier ou flottant.
      • La variable message a pour type string, une chaine de caracteres.
      • La variable flag a pour type boolean, un booleen qui peut prendre la valeur true ou false.
      • La variable joker a pour type any, qui est le type par defaut qu'attribut TypeScript a une variable s'il ne parvient pas a determiner son type lors de sa declaration.

        (2.2)

        Bien entendu, il est possible d'initialiser une variable au moment de sa declaration comme on peut le voir ci-dessous.

        var pi: number = 3.14;var message: string = "Bonjour !";var flag: boolean = true;var joker: any = null;

        (2.3)

        Bien que la mention explicite du type soit recommandee, en l'absence de celui-ci lors de la premiere initialisation d'une variable, TypeScript en infere automatiquement le type.

        A noter que TypeScript, contrairement a Javascript, peut ainsi etre considere comme un langage a typage statique.


        3. Classe



        La notion de classe introduite dans TypeScript anticipe la prochaine evolution de Javascript (ECMAScript 6).
        class Greeter { element: HTMLElement; span: HTMLElement; timerToken: number; constructor(element: HTMLElement) { this.element = element; this.element.innerHTML += "The time is: "; this.span = document.createElement('span'); this.element.appendChild(this.span); this.span.innerText = new Date().toUTCString(); } start() { this.timerToken = setInterval(() => this.span.innerHTML = new Date().toUTCString(), 500); } stop() { clearTimeout(this.timerToken); }}window.onload = () => { var el = document.getElementById('content'); var greeter = new Greeter(el); greeter.start();};

        (3.1)

        Comme on peut le voir dans l'exemple ci-dessus, une classe Greeter y est definie d'une facon proche de la plupart des langages orientes objet.

        La classe Greeter possede ici trois attributs (element, span et timerToken), defini un constructeur (constructor) et deux methodes (start et stop). Son instanciation se fait a l'aide de l'operateur new comme on peut le voir a la fin de l'exemple precedent.
        var greeter = new Greeter(el);

        (3.2)

        De pair avec la notion de classe, TypeScript implemente la notion d'heritage simple par l'utilisation du mot-cle extends.
        L'extension de la classe Greeter de l'exemple precedent pourrait se faire ainsi :
        class GreeterId extends Greeter { id: string; constructor(element: HTMLElement, id: string) { super(element); this.id = id; }}

        (3.3)

        Cette nouvelle classe GreeterId se contente d'ajouter un nouvel attribut id a la classe Greeter.

        Toutes les classes definies dans TypeScript peuvent ensuite etre considerees comme des nouveaux types.


        4. Fonction anonyme flechee



        Un autre apport notable de TypeScript a Javascript est sa nouvelle maniere de definir une fonction anonyme. Comme celle presente a l'interieur de la methode start en parametre a l'appel de setInterval et qui peut etre denommee ici notation "flechee" (arrow function).
        this.timerToken = setInterval(() => this.span.innerHTML = new Date().toUTCString(), 500);

        (4.1)

        L'avantage par rapport a l'actuelle norme de Javascript (ECMAScript 5), est que la notation flechee ne change pas la valeur de contexte du mot-cle this a l'interieur de la fonction anonyme. Cela evite donc l'utilisation d'une variable intermediaire servant a propager la valeur de this a l'interieur de la fonction anonyme. Par exemple, la ligne de code precedente aurait pu etre transcrite ainsi en Javascript actuel :
        var _this = this;this.timerToken = setInterval(function () { return _this.span.innerHTML = new Date().toUTCString();}, 500);

        (4.2)

        Cette la nouvelle notation plus concise sera utile en particulier pour les fonctions callback.


        5. Modularite



        TypeScript introduit de nouvelles techniques de modularisation devenues necessaires par le typage statique et par l'heritage de classes.
        Parmi ces techniques de modularisation, le referencement d'un fichier TypeScript externe est peut-etre la plus simple.
        Elle consiste a ajouter en tout debut de fichier, le source TypeScript externe contenant des declarations necessaire au compilateur afin qu'il en deduise entre autre les types et les heritages.
        ///

        (5.1)

        A noter que cela ressemble un peu aux #include des langages C/C++.


        6. Conclusion



        Cette presentation est evidemment loin d'etre complete. Pour se familiariser avec TypeScript, il peut etre utile d'utiliser la page de test afin de voir instantanement la conversion d'un code TypeScript en un code Javascript. Sinon, la specification, malheureusement non traduite en francais, reste indispensable pour approfondir le sujet.

        En esperant que cet article vous aura ete utile.
yahiko00
Cet article est une traduction autorisee de la troisieme partie de celui-ci : Formalists and Zinesters: Why Formalism Is Not The Enemy (Tadhg Kelly)

Zines



Je pense qu'il y a une solution a cette problematique, une solution formaliste rien de moins. Je pense aussi que beaucoup de Zinesters ne vont pas aimer cela. Peut-etre avec le temps.

Dans son livre, Anna decrit une categorie de createurs analogues aux createurs de fanzines de ces dernieres annees. Ces personnes sont generalement considerees comme etant en dehors du courant dominant, travaillant a l'ecart sur des projets personnels et cherchant leur public sans etre aides. Les Zinesters ne sont generalement pas des programmeurs (categorises par les premiers comme des mecs blancs de la classe moyenne, etc.) et ils utilisent des outils comme GameMaker ou Twine pour creer leur art.

Plutot que d'appeler ceci un "jeu" artistique, une "experience ludique", un "non-jeu" ou d'entrer dans des debats quant a savoir dans quelle proportion c'est ou non un jeu, ou s'enliser dans le concept flou qu'est le "divertissement interactif", Anna (peut-etre par inadvertance) nous fournit un terme excellent. "Zine" me semble un terme tout a fait approprie pour decrire une intention politique et critique, une description de la maniere dont une chose doit etre abordee plutot qu'une classification de ce qu'il est.

Certains zines peuvent etre des jeux, par exemple. Certains zines peuvent etre des experiences ludiques, mais pas des jeux. Certains zines peuvent etre des jouets. Certains zines peuvent etre des mondes a explorer sans but precis. Certains peuvent etre des promenades numeriques. Certains peuvent raconter des histoires. Certains peuvent deliberement ne pas le faire. Certains zines peuvent etre rien de ce qui precede, ou integrer tous ces aspects. Certains zines peuvent etre numeriques. Certains zines peuvent etre analogiques.

Le "zine" est une appellation qui amene a considerer une oeuvre selon ses propres regles, un peu comme c'est le cas pour "l'art moderne", au lieu de le decrire en tant que format, comme pour une "statue". Le terme zine permet au debat de depasser les questions sur l'appartenance a telle ou telle categorie. Dys4ia et WarioWare, par exemple, pourraient etre consideres comme une opposition contrastee en un zine et un non-zine, independamment du probleme si ce sont des jeux. Les principales differences entre eux sont les suivantes :

  • La facon dont ils traitent la notion de defi
  • S'ils sont destines a etre rejoues
  • La facon dont ils traitent la question de l'apprentissage
  • Si l'echec est possible
  • Si l'emergence est souhaitee
    WarioWare teste les competences du joueur en augmentant progressivement la difficulte. Il est destine a etre rejoue, souvent sur des durees longues. Il est destine a etre maitrise. L'echec est possible, tout comme peuvent l'etre les effets emergents. A chaque partie multi-joueurs sur une Wii, des choses droles et inattendues se produisent. Tout cela fait de WarioWare un jeu, et non un zine. WarioWare est finalement un produit commercial destine a faire plaisir ou a divertir, et on ne trouve que peu de traces des intentions personnelles de l'auteur dans ce jeu, voire pas du tout.

    Dys4ia met a l'epreuve des idees preconcues des joueurs. Ses epreuves ne deviennent pas plus difficiles (en termes de competences), mais elles deviennent davantage explicites emotionnellement. Dys4ia est destine a etre rejoue un certain nombre de fois, mais pas beaucoup. Il n'est pas destine a etre maitrise, mais a s'en impregner, de sorte que le joueur parvienne a comprendre la profondeur de l'univers de son auteur. L'echec n'est pas vraiment possible, seuls des retards dans les succes le sont. Tout comme les effets emergents - dys4ia est deliberement une experience. C'est personnel, d'auteur, et vise a brosser un tableau dans le but d'evoquer un sentiment que son createur experimente (ce qui est la definition de l'art selon Tolstoi) chaque jour.

    Vu dans le contexte du "jeu", compte-tenu des principes des jeux, dys4ia n'a pas beaucoup en commun avec WarioWare, les echecs, le 100 metres haies, les flechettes, Tetris, le backgammon, Halo, le poker, Ridiculous Fishing, Snake, le jeu de Go, Horreur a Arkham, chat perche, Diablo ou les machines a sous. Ce n'est pas tres amusant, ni mecaniquement fascinant. Vous ne finissez pas vraiment victorieux ni ne devenez meilleur. Ceci sont pourtant des qualites qui decrivent generalement des jeux.

    Vu dans le contexte de "zine", cependant, la question de savoir si dys4ia est un jeu, ou a quel point, ou quelles parties pourraient en etre, n'est pas pertinent. Alors se pose la question de savoir si c'est amusant. En tant que zine, en tant que performance artistique qui eclaire le joueur sur ce que c'est d'etre transgenre, dys4ia est incroyable. En le pensant en tant que zine, je me dis que je peux faire abstraction de son caractere ludique ou plutot de son absence de celui-ci.


    Vers la Detente



    Tout cela fait sens selon moi, mais mon instinct me dit que ma definition de "zine" ne conviendra pas. Nous en arriverons peut-etre, tout comme le debat entre l'histoire et le gameplay, a la conclusion que tout cela repose sur des arguments sans fondement. Nous allons peut-etre nous retrouver a faire la distinction entre un "Jeu" et un "jeu" (comme "Art" et "art") ou aboutir a une convention reunissant le "jeu pour la performance" et un "gamezine" deformant ainsi les definitions du jeu pour englober les zinesters.

    Cependant, a ce stade, j'aurais plutot tendance a dire que c'est aux zinesters de decider qui ils veulent etre. En tant que formaliste je suis personnellement de plus en plus ennuye d'entendre l'argument facile qui amalgame tous les mecs blancs et proclame que toute opinion d'un mec blanc est suspecte et equivaut a une oppression sans discernement, complice et poussive. C'est en partie ce qui m'a motive a ecrire cet article pour expliquer d'une part pourquoi, malgre toutes ses vertus, je me lasse d'ecouter certains energumenes qui declament la meme diatribe encore et encore, et d'autre part la facon dont la nouvelle mode autour de cette diatribe va disparaitre, et la facon dont il me semble que les zines sont actuellement un begaiement de l'histoire.

    A l'heure actuelle les zinesters ne donnent pas beaucoup de credits aux gens qui ne sont pas deja d'accord avec eux. Ils semblent plus se satisfaire a crier et a obtenir la reconnaissance de leur propre tribu, mais cette energie finira par s'essouffler si elle ne se melange pas avec les autres. Les passions sur le zinesterisme ne sont pas a prendre a la legere ou ignorees, mais le risque que ce mouvement se marginalise de lui-meme est fort. Les diatribes sont violentes, mais apres un certain temps elles devraient s'estomper.

    Je ne peux pas m'empecher de penser que la lutte du mouvement zine a l'aide d'arguments specieux finira par le releguer a une sorte d'impasse pour aigris. Je ne peux pas m'empecher de penser que le mouvement finira par eclater, comme le mouvement sur les jeux narratifs l'a fait auparavant. Dans la chasse aux ennemis, je ne peux pas m'empecher de penser que le zinesterisme commencera par trouver des ennemis dans ses propres rangs et a se cannibaliser. Tout ce qu'il faut pour que le zinesterisme echoue, c'est que les gens l'ignorent, pour en arriver a la conclusion que tout cela ne concerne que des gens extremistes devenant toujours plus extremistes. Personnellement, je pense que si les zines se retrouvent dans cette situation, ce sera tragique.
yahiko00
Cet article est une traduction autorisee de la deuxieme partie de celui-ci : Formalists and Zinesters: Why Formalism Is Not The Enemy (Tadhg Kelly)

Dans quel domaine



Concernant les jeux de roles autour d'une table, l'idee de changer le sens du mot "jeu" en pensant que le reste du monde suivra et validera cette revolution, n'etait que de l'aveuglement. Le concept de "jeu" n'a pas change pour les non-inities, et au lieu de cela il a ete rattrape par son predecesseur, plus important et plus ancien. Sous une forme numerique, je crains que les Zinesters fassent exactement la meme erreur.

En tant que mec blanc souvent indecis a qui il arrive d'ecrire quelque peu sur les jeux, j'ai recemment rencontre beaucoup de resistances autour de l'idee de ce que sont les jeux. Ces arguments ont tendance a se resumer a "vous n'aimez pas ce jeu", "il n'est pas fait pour vous", "il s'est vendu a X exemplaires" ou encore "vous detestez secretement les jeux en general". Je suppose que je dois m'attendre a ce genre de reaction, etant donne que je suis assez franc. Je dis souvent que les manieres les plus efficaces pour mettre en valeur l'art des jeux (thauma) doivent provenir du langage meme des jeux, ce qui permet des choses au concepteur et en empeche d'autres d'une certaine facon. J'ai tendance a prendre le parti du joueur, concernant la necessite pour les jeux d'etre dynamiques afin de construire un univers credible.

Je suis aussi connu pour avoir dit que certaines oeuvres interactives ne sont pas des jeux. Je ne considere pas, par exemple, que Dear Esther soit un jeu, ni Proteus. Je ne pense pas que The Passage soit un jeu, ni The Stanley Parable et encore moins les realisations de Tale of Tales. Je les considere essentiellement des performances artistiques ludifiees.

Dans son propre domaine, l'art peut etre tres puissant. Cependant, vue a partir d'un autre domaine, l'art peut amener a des comparaisons malheureuses. Selon la facon dont vous la considerez, la Fontaine de Marcel Duchamp est soit une oeuvre incontournable de l'art moderne ou un exemple d'arnaque. De meme, en considerant l'art interactif sur la base d'un jeu, cela devalorise grandement ce dernier. "Proteus" est peut-etre interessant, pourrait-on dire, mais ce n'est pas tres amusant. L'art interactif comme "Proteus" tente par tous les moyens d'attirer l'attention (traction) au-dela du monde academique, de certaines sections de Steam, des publications pour intellos ou de conferences comme la GDC, parce que l'etiqueter en tant que "jeu" invite a la comparaison avec notre comprehension habituelle de jeu qui se base sur la pratique pour progresser.

Les Zinesters demandent a ce que leur travail soit considere sans distinction avec les jeux video occasionnels ou pour les passionnes hardcore, les puzzles, les mots croises, les sports, les Jeux Olympiques, la Coupe du Monde, les casinos de Las Vegas et ainsi de suite. En outre, le manque d'amusement issus de leur oeuvre conduit a des reactions negatives (comme cette revue satirique de Super PSTW), qui a son tour conduit leurs createurs a l'incomprehension ou a la defiance envers les "mecs d'un certain genre" qui les reduiraient au silence deliberement. Selon ces createurs, le "jeu" ne se transformera pas pour les accepter a cause d'un patriarcat effraye / incertain / resistant.

Et cela est vrai pour de nombreuses realisations artistiques ludifiees. Beaucoup d'entre elles sont difficiles, pertinentes ou interessantes, mais elles ne font au final que se mettre elles-memes a l'ecart en voulant etre considerees comme des jeux. Leur gameplay a tendance a etre limite. Elles ont tendance a etre soit unidirectionnel ("Ceci est mon message") ou sans direction ("juste se promener"). Elles ont tendance a avoir l'air interessantes en tant que concepts de hauts niveaux pour les discours de la GDC. Pourtant, ce ne sont pas des jeux.


Les formes et les appellations de l'interaction



Le fait que le livre La Couleur Pourpre d'Alice Walker existe signifie autant en tant que roman que ce qu'il raconte. Pour certains concepteurs c'est essentiellement la meme chose avec les jeux. "Rise of the Videogame Zinesters" avance l'argument que parce que les jeux sont faits pour la plupart par des geeks males et blancs pour des geeks males et blancs, ils ont tendance a etre mono-culturels. Des hommes muscles tirant sur d'autres hommes muscles est le plat de resistance, et les femmes ont tendance a etre soit des remplacantes d'hommes dans ce scenario, ou releguees. Il y a tres peu d'avatars de femmes homosexuels dans les jeux.

Je suis plutot d'accord. Les blockbusters ont tendance a etre mono-culturels et mettent en scene beaucoup de personnages masculins. Pourtant, dans le meme temps, repondre a ces questions sur "ce qu'est un jeu" - tout en exigeant que la moindre oeuvre interactive et artistiquement expressive soit consideree comme un jeu - n'est pas fondee.

Le roman est un format de recit, pas un sceau de legitimite. Le roman d'Alice Walker est autant un roman qu'un d'Honore de Balzac, car ils sont deux exemples du meme format general (une forme longue d'histoires en arcs narratifs avec differents niveaux de lecture, etc.). Le debat sur la reconnaissance d'un type de roman sur un autre est generalement separee du debat de si oui ou non il s'agit d'un roman (meme si, certes, quelques oeuvres modernistes et postmodernistes ont deliberement essaye de jouer avec le format) .

Le bateau ivre est un poeme. Un poeme a un format, un type de structure et une expression differents d'un roman. Nous pouvons facilement comprendre et accepter que la poesie et les romans soient deux types d'ecriture distincts, et afin de maintenir l'attention et l'interet du lecteur, chacune d'elles fonctionne selon ses propres regles. De meme, nous pouvons voir que la nouvelle, le scenario, la bande dessinee, la piece de theatre ou la chanson ont egalement leurs propres exigences. Aucun de ces formats n'est plus ou moins valable qu'un autre. Les romanciers ne passent pas tout leur temps a souhaiter que les poetes les acceptent parmi eux.

Ce que les Zinesters les plus revendicatifs semblent vouloir c'est comme si Rimbaud exigeait que Le "bateau ivre" soit reconnu comme un roman. Pour quelques raisons, ils estiment que "jeu" signifie "valide, legitime, etre accepte", comme quelque chose a reprendre de hautes luttes des mains des mecs blancs.

Ce qui me fascine, c'est combien cela est en soi une reconnaissance tacite que (malgre tous les arguments contraires) apparemment les etiquettes importent aux Zinesters. Si le Zinesterisme etait vraiment uniquement une expression de soi, ce que pensent les formalistes n'aurait pas d'importance. Bien que ce puisse etre un ideal d'exister dans un monde federe, libre a la publication ou l'on puisse faire ce que l'on veut, un monde au-dela des etiquettes et des categories, le Zinesterisme est obsede par l'obtention d'une appellation particuliere. Il semble tourner autour de la volonte d'avoir une legitimite accordee de gre ou de force, ce que je trouve contre-productif.

La question de la denomination est egalement celle qui existe uniquement dans le monde des Zinesters. En dehors de celui-la, tout le monde s'en contrefiche. Dans le monde de tous les jours, un "jeu" est un nom qui decrit une facon de jouer. Le "jeu" signifie sport, puzzle, tache, probleme et test. Les jeux peuvent etre gagnes ou perdus. Les jeux peuvent etre pratiques. Les jeux peuvent aider a la comprehension et a l'eveil emotionnel, peuvent engendrer des heros et des engouements culturels, mais ils le font a travers des constantes creatives. Ils doivent operer sous la satisfaction de gagner tout en maitrisant la dynamique du jeu equitable.

Sinon, en tant que jeux, ils ne fonctionnent pas vraiment. Et les criteres de jugement pour expliquer pourquoi il en est ainsi ne viennent pas du patriarcat ou de groupuscules obscurs, mais des joueurs. Si un jeu n'est pas amusant, il n'est tout simplement pas joue longuement, quel que soit son intention. Les jeux sont faits pour etre joue. Mais rien de tout cela n'est vrai concernant l'art de la performance interactive si le joueur sait que ce n'est pas destine a etre un jeu.

Mais alors comment transmettre cette intention ?

La troisieme partie en francais est disponible ici : Formalistes et Zinesters : Pourquoi le formalisme n'est pas l'ennemi (3/3)
yahiko00

D

Mise en place de l'environnement de travail



Prerequis :


  • Windows XP ou superieur
  • 2,5 Go d'espace disque dur

    (0.1)


    Sommaire :


    • Introduction
    • Choix du langage et de la plateforme
    • Visual Studio Express 2012 for Web
    • TypeScript
    • Creation du premier projet
    • jQuery
    • Git for Windows
    • Personnalisation de Visual Studio
    • L'alternative Notepad++
    • Conclusion

      (0.2)



      1. Introduction


      Quand on souhaite developper un jeu en tant qu'amateur, tout debute souvent par une idee originale ou simplement une envie venue a maturite qui nous pousse a franchir le pas et a nous lancer dans un projet de developpement. Cependant, passe cette premiere etape, la realite du concret reprend ses droits et on se pose fatalement de nombreuses questions : choix du langage, choix de la plateforme, choix des bibliotheques logicielles ou du moteur de jeux, etc. On peut se sentir assez facilement perdu, et a raison, tant ce n'est pas le manque d'innovations qui guettent l'industrie du logiciel de nos jours.

      C'est pourquoi, apres avoir moi-meme tatonne longtemps a chercher des outils et des solutions, cet article se veut une petite introduction pour partir sur des bases suffisamment stables dans un projet de developpement qui comportera suffisamment de problemes pour ne pas perdre inutilement du temps sur des questions de simple organisation mais qui ont leur importance si elles ne sont pas prises en compte.


      2. Choix du langage et de la plateforme


      Choisir une technologie plutot qu'une autre est toujours matiere a debats et a controverses. Ici, nous ne chercherons pas a justifier par A+B les choix faits, l'important etant d'obtenir au final un jeu qui fonctionne dans un delai raisonnable.

      Nous opterons dans le cadre de cette discussion pour la plateforme Web, a savoir les principaux navigateurs du marche. Cela aura l'avantage d'avoir un jeu qui pourra tourner sur de nombreuses architectures techniques (Windows, Linux, Mac, Android, iOs, etc.) sans retoucher a la moindre ligne de code. Concernant le langage de nombreux choix sont possibles comme les moteurs de jeu tel Unity ou Unreal Engine, mais meme si ces derniers sont reconnus actuellement dans le domaine des jeux video, il n'en est pas de meme dans l'industrie du logiciel prise dans son ensemble.

      Nous partirons du postulat que parmi les motivations a developper un jeu, on peut trouver celle de vouloir apprendre ou se perfectionner dans l'activite meme du developpement pour un usage generaliste. C'est la raison pour laquelle choisir un moteur de jeux proprietaire ne nous aidera pas forcement a acquerir des connaissances utiles dans le monde de l'entreprise, qui recherche plus des competences sur l'informatique de gestion.

      Pour un jeu Web, si nous excluons donc les moteurs de jeux (et a fortiori les outils de creation de jeux comme Game Maker ou RPG Maker) pour une raison de re employabilite des connaissances ainsi apprises a travers un tel projet, un langage comme Javascript vient immediatement a l'esprit, et a juste titre.

      Javascript qui a connu une montee en puissance ces dernieres annees grace aux travaux de normalisations du HTML et des CSS, est actuellement la pierre angulaire du Web dynamique. Tout ou presque est possible avec Javascript. Pour s'en convaincre, j'invite les lecteurs a consulter le projet Epic Citadel et ce qui se fait autour des technologies Emscripten et Asm.js.

      Neanmoins, malgre un Javascript pratiquement incontournable des qu'une application concerne le Web, traine encore l'heritage de son passe. Jadis concu pour apporter une petite dose d'intelligence a des sites Web sous la forme de quelques lignes de codes, ce sont aujourd'hui des applications de plusieurs dizaines, voire centaines de milliers de lignes qui sont ecrites en Javascript. Ce qui pose quelques problemes de debogage a cause entre autre de son typage dynamique et aussi des problemes d'architecture logicielle par l'absence de reelle notion de Programmation Orientee Objet, remplacee dans Javascript par la notion puissante de prototype, mais neanmoins differente.

      Ceci etant dit, meme si notre projet ne sera pas un monstre d'ingenierie logicielle, il y a fort a parier qu'il depassera la dizaine de milliers de ligne de code (en comptant les commentaires). Ce qui risque de poser un petit souci de confiance envers le code produit ainsi que des dizaines et des dizaines d'heures perdues a debugger une erreur qui aurait ete detectee a la compilation dans un langage de type C/C++.

      Il existe actuellement deux principales alternatives interessantes au Javascript pur qui sont CoffeScript et TypeScript. Ce sont tous deux des langages qui permettent de compiler le code source, type et oriente objet, vers du Javascript, permettant ainsi de retomber sur nos pieds avec un code resultant en Javascript, interpretable sur tous les navigateurs.

      Sans rentrer dans une guerre de religion pour l'un ou pour l'autre, nous choisirons ici le langage TypeScript qui est certain un peu moins mature que CoffeScript, mais a pour avantage d'etre un sur-ensemble de Javascript (autrement dit, du code Javascript natif est directement reconnu sous TypeScript, ce qui n'est pas le cas de CoffeScript), c'est un projet Open Source dont le code est accessible a tous, et a ete cree par le papa de C# qui travaille chez Microsoft ce qui est un gage de serieux quoiqu'on en dise.

      Le principal defaut de TypeScript est sa relative jeunesse, puisque le langage est toujours au stade de developpement, meme si une version de production est prevue d'ici la fin de l'annee, ce qui restreint a l'heure actuelle les outils prenant en charge ce nouveau langage qui reste neanmoins promis a se perenniser.

      Pour tirer pleinement parti des possibilites de ce langage, papa de C# oblige, il nous faudra installer Visual Studio si vous ne l'avez pas deja.


      3. Visual Studio Express 2012 for Web



      Visual Studio est un environnement de developpement integre (IDE) tres populaire mis au point par Microsoft qui supporte nativement les principaux langages de l'editeur (C#, ASP, J#) ainsi que le Javascript. Ce logiciel est payant et relativement onereux pour une activite en amateur, mais heureusement il existe une version gratuite, Visual Studio Express, qui est cependant bridee avec notamment une restriction a un seul langage et une limitation dans l'ajout de modules complementaires. Malgre tout, cela sera amplement suffisant pour nos besoins.

      Il est recommande de faire attention a bien telecharger la version anglaise et non pas francaise de Visual Studio, du fait d'un bug sur la localisation de la derniere version de TypeScript 0.9.1.

      Telechargez Visual Studio Express 2012 for Web - English

      Ceci telechargera l'image ISO de Visual Studio Express 2012 for Web - English, et pour lancer l'installation proprement dire, il vous faudra soit graver sur un CD ou bien utiliser un logiciel de virtualisation tel Virtual Clone Drive dont on pourra trouver des tutoriels sur la toile tel que celui-ci.

      A noter aussi que l'installation necessite plus de 2 Go d'espace libre sur votre disque dur.

      Laissez-vous guider par la procedure d'installation, simple mais assez longue, en restant sur les choix par defaut.


      4. TypeScript



      Une fois Visual Studio Express 2012 for Web installe, ainsi que les mises a jour de base et l'obtention d'une cle d'enregistrement pour usage prive, nous pouvons installer TypeScript.

      Pour rappel, TypeScript est un langage fortement type avec une syntaxe orientee-objet plus conventionnelle que celle du Javascript, et qui permet de generer au final du Javascript afin d'etre interprete par tous les navigateurs.

      L'avantage de ce langage reside en partie sur le fait que c'est un sur-ensemble du Javascript et ce qui lui permet d'accepter nativement n'importe quel code Javascript.

      Telechargez le plugin TypeScript 0.9.1 pour Visual Studio

      A noter que si vous avez installe une version differente que la version anglaise de Visual Studio Express 2012 for Web, alors le plugin de TypeScript ne fonctionnera pas.


      5. Creation du premier projet



      Armes desormais de Visual Studio et de son plugin TypeScript, nous voila pret pour creer notre projet dans l'outil de developpement.

      Il faut tout d'abord savoir que Visual Studio fait une distinction logique entre la notion globale de solution et celle de projets qui sont des composants d'une solution. Tout au long de ce guide, le mot projet en italique, designera la notion specifique a Visual Studio, tandis que le mot projet sans mise en forme en italique designera la definition du langage courant, a savoir developper un jeu video. La notion de solution est pour le moment facultative, car etant surtout necessaire dans le cadre de grandes applications d'entreprise.

      Pour creer un projet, cliquez sur le menu FILE > New Project, ou bien appuyez sur CTRL + MAJ + N. Une fenetre de dialogue telle que ci-dessous devrait apparaitre :

      76t5.png


      (5.1)


      Puis saisissez les informations necessaires dans les champs suivants :
      Projet : PremierJeuVideo
      Location : C:/Users/VotreCompte/Dev

      Si vous n'avez pas de sous-repertoire Dev dans votre repertoire utilisateur dedie, je suppose que vous ne vous etes pas connecte en Administrateur, alors Visual Studio le creera pour vous.

      Veillez aussi a ce que l'option Create directory for solution soit decoche afin d'eviter de rajouter un niveau d'arborescence inutile.

      Une fois la fenetre de creation de projet validee, vous pouvez ignorer la fenetre suivante a propos du Team Foundation Server. Cela peut etre eventuellement utile dans le cadre d'un projet en equipe, mais je suppose aussi que vous realisez votre projet en solo.

      Nous allons maintenant mettre en place une arborescence type qui nous permettra de ranger les multiples fichiers qui seront impliques pour ce projet. Le but est au final d'obtenir l'arborescence minimale suivante :
      PremierJeuVideo \-- art | \-- interface | \-- sounds +-- doc | \-- private | \-- public \-- lib \-- src \-- tools

      (5.2)


      Voici un rapide descriptif des repertoires de cette arborescence :

      • art : ensemble des elements artistiques du projet
      • art/interface : ensemble des elements d'interface utilisateur
      • art/sounds : musiques et bruitages
      • doc : documentation du projet
      • doc/private : documentation interne
      • doc/public : documentation utilisateur
      • lib : bibliotheques Javascript personnalisee
      • src : sous-projets contenant les fichiers sources
      • tools : utilitaires divers facilitant la gestion du projet

        (5.3)


        Il est entendu que cette arborescence n'est pas complete. Elle sera completee au fil des developpements, notamment le repertoire "src" pour le moment vide.

        La creation de cette arborescence peut se faire a travers le panneau Solution Explorer qui devrait apparaitre par defaut a droite.


        k7wu.png


        (5.4)


        A l'aide d'un clic droit sur l'element PremierJeuVideo designant la racine du projet, un menu contextuel devrait apparaitre ou vous pouvez choisir l'option Add > New Folder. De cette facon vous pourrez creer simplement l'arborescence du projet au sein de Visual Studio.


        6. jQuery



        S'il y a un framework incontournable pour qui veut developper en Javascript, c'est bien jQuery developpe et maintenu par Google.

        Neanmoins, pour l'integrer a nos developpements TypeScript, il convient de generer un fichier d'interfacage pour TypeScript afin que le compilateur puisse verifier le typage de votre code utilisant jQuery.

        Pour recuperer en local le framework jQuery ainsi que le fichier d'interfacage TypeScript, c'est tres simple, il suffit d'utiliser le module NuGet integre a Visual Studio. Pour cela, dans le panneau Solution Explorer comme dans le paragraphe precedent, cliquez droit sur l'element racine du projet PremierJeuVideo puis cliquez sur l'option Manage NuGet Packages.

        Apres une phase de chargement, voici le type d'ecran qui devrait s'afficher :


        ztfj.png


        (6.1)


        Le package jQuery devrait arriver en tete de liste. Si ce n'est pas le cas, vous pouvez le rechercher a l'aide de la zone de recherche en haut a droite. Cliquez sur le bouton Install.

        En l'etat, jQuery est operationnel pour qui veut programmer en Javascript, mais comme dit precedemment, il a besoin d'un complement pour que TypeScript puisse l'exploiter.

        Dans le champ de saisie de recherche en haut a droite, tapez : jquery.Typescript.DefinitelyTyped

        Puis cliquez sur le bouton Install sur l'element correspondant a notre recherche (en principe le premier) dans la zone principale de la fenetre

        A l'issue de cette etape, nous venons d'installer avec succes jQuery pour TypeScript.


        7. Git for Windows



        Un cycle de developpement n'est jamais lineaire et gerer manuellement les versions de ses fichiers sources quand ceux-ci se multiplient peut se reveler un veritable casse-tete.

        Pour repondre a ce probleme aussi ancien que la programmation, les developpeurs ont mis au point des outils pour gerer les modifications apportees aux fichiers sources. Il en existe de nombreux qui se regroupent sous l'appellation CVS (Control Version System). Nous utiliserons l'un d'entre eux qui se nomme Git for Windows qui a l'avantage d'etre simple a utiliser et compatible avec la solution d'hebergement de sources en ligne [color=#0000FF]GitHub[/color].

        Telechargez Git for Windows

        Lors de l'installation, il est recommande de laisser toutes les options par defaut.

        Une fois installe, nous allons indiquer a Git d'utiliser le repertoire de la solution precedemment creee avec Visual Studio en cliquant sur l'option Creer un nouveau depot.

        Dans la zone de saisie, tapez le repertoire du projet que vous avez cree avec Visual Studio precedemment : C:/Users/VotreCompte/Dev/PremierJeuVideo



        g4jo.png


        (7.1)


        Indiquons maintenant a Git de suivre les modifications de tous les fichiers du projet en les selectionnant tout d'abord :

        • mettre en surbrillance le tout premier element de la liste en haut a gauche,
        • faire defiler l'ascenseur pour parvenir tout en bas,
        • maintenir la touche MAJ et cliquer sur le dernier element.

          (7.2)


          Une fois tous les fichiers selectionnes, nous pouvons en demander l'indexation de trois facons :

          1. En selectionner dans le menu Commit > Indexer
          2. En cliquant sur le bouton Indexer modifs.
          3. En tapant sur CTRL + T.

          (7.3)


          Si une boite de dialogue apparait pour avertir qu'un nombre important de fichiers sont sur le point d'etre indexes
          Si une boite de dialogue apparait pour vous demander de realiser une conversion de retour chariot, accepter la conversion en cliquant sur le bouton Continuer.

          Desormais, tous les fichiers qui se trouvaient dans le panneau des Modifs non indexees en haut a gauche, devraient apparaitre maintenant dans le panneau des Modifs indexees (pour commit) en bas a gauche.

          Dans la zone de saisie inferieure, correspondant a la description de vos modifications, tapons le texte "Initialisation", et cliquons sur le bouton Commiter.

          Nous venons ainsi de creer le depot de suivi des changements de notre projet dans Git ce qui sera tres utile lorsque vous souhaiterez revenir sur une ou plusieurs modifications malencontreuses.

          Nous pouvons apporter un petit raffinement a notre suivi des changements dans la mesure ou certains fichiers sont generes et modifies automatiquement par Visual Studio comme les fichiers internes de Visual Studio pour gerer le projet, ou bien les fichiers de travail qui seront generes lors des compilations. A l'aide d'un editeur de texte, dans le repertoire du projet, ici en l'occurrence C:\Users\VotreCompte\Dev\PremierJeuVideo\, creez un fichier denomme .gitignore avec le contenu suivant :
          .gitignore:pakages.config*.csproj*.csproj.user*.sln*.suobin/obj/

          (7.4)



          8. Personnalisation de Visual Studio



          Visual Studio y compris dans son edition Express est un outil tres puissant. Neanmoins, cela ne l'exonere pas de quelques lacunes qu'il est possible de combler a l'aide d'outils externes.

          Il sera par exemple utile de pouvoir compiler independamment du reste du projet un seul fichier TypeScript, notamment pour des raisons de rapidite. Tout comme il peut etre interessant d'appeler Git for Windows sans quitter Visual Studio.

          On peut rajouter un appel a ces deux outils simplement en cliquant sur le menu TOOLS > External Tools.


          wnf.png


          (8.1)


          Si vous avez laisse les options par defaut durant l'installation de ces deux outils, voici les parametres a saisir pour ces deux outils.

          Parametres pour TypeScript


          • Title: TypeScript
          • Command: C:\Program Files\Microsoft SDKs\TypeScript\tsc.exe
          • Arguments: $(ItemPath)
          • Initial directory: $(ItemDir)

            (8.2)


            Parametres pour Git for Windows


            • Title: Git for Windows
            • Command: C:\Program Files\Git\bin\wish.exe
            • Arguments: "C:\Program Files\Git\libexec\git-core\git-gui"
            • Initial directory: $(SolutionDir)

              (8.3)



              9. L'alternative Notepad++



              Si vous etes allergique a Visual Studio et sa consommation de memoire vie de plusieurs centaines de Mo, vous pouvez vous rabattre sur des editeurs plus simples et moins gourmands en ressources machine.

              Si vous etes sur le systeme d'exploitation Windows, il existe une solution open source qui a fait ses preuves : Notepad++

              En plus d'etre a la base un editeur de texte tres puissant, il s'est vu rajouter de nombreuses fonctionnalites au fil du temps faisant de lui un outsider non negligeable par rapport a des solutions commerciales dans le domaine du developpement logiciel.

              Meme si vous ne comptez pas programmer votre jeu avec Notepad++, je vous recommande neanmoins de l'installer pour tous les services qu'il pourra vous rendre comme la conversion des fichiers en UTF8 et ses plugins de formatage de fichiers XML.

              Telechargez Notepad++

              Une fois Notepad++ installe puis lance, configurons-le pour en faire un environnement TypeScript friendly.

              Encodage


              Le compilateur TypeScript dans sa version 0.9 n'accepte plus que les fichiers encodes en UTF-8. Pour eviter de se retrouver devant de mysterieuses erreurs d'inclusion de fichiers, activons d'emblee le mode UTF-8 par defaut. Pour cela, cliquez sur le menu Parametrage > Preferences > Nouveau document. Selectionnez la troisieme option, UTF-8.

              Auto completion


              L'auto completion est une fonction dans un environnement de developpement qui permet d'accelerer sensiblement la saisie a partir des premiers caracteres en se basant sur l'ensemble des variables, des fonctions et autres identificateurs deja declares dans le projet, tout en filtrant les possibilites en fonction du contexte de la saisie (eg. seuls les attributs de l'objet courant seront pris en compte).

              Notepad ne permet pas d'aller jusqu'a ce raffinement, mais permet tout de meme de proposer une liste de l'ensemble des mots deja present dans un fichier source. Pour activer cette possibilite, il faut cliquer sur le menu Parametrage > Preferences > Auto completion, puis selectionnez les options suivantes :

              • Activer la completion automatique > Completion de mot
              • Parametres affiches durant la saisie
              • A partir du 2 e caractere

                (9.1)


                Coloration syntaxique
                Bien qu'il n'existe pas a ma connaissance de fichier de definition de coloration syntaxique pour TypeScript, nous pouvons utiliser une possibilite bien pratique offerte par Notepad++, a savoir la possibilite d'etendre la coloration syntaxique d'un langage deja defini.

                Pour cela cliquez sur le menu Parametrage > Configurateur de coloration syntaxique.


                sqo1.png


                (9.2)


                Tout d'abord, vous pouvez si vous le souhaitez changer ici le theme de votre editeur. Certains developpeurs preferent non sans raison un fond moins vif que le blanc brillant par defaut, mais cela reste avant tout une histoire de gouts personnels.

                Dans la premiere liste de gauche, recherchez et selectionnez l'element Javascript.
                Dans la deuxieme liste, selectionnez l'element KEYWORD.

                Dans la zone de saisie en bas denommee Ext. utilisateur, saisissez ts qui est l'extension des fichiers TypeScript.

                Enfin, dans la zone de saisie tout a droite denommee Mots-cles utilisateur, saisissez les uns a la suite des autres, les mots suivants :
                any boolean class constructor declare enum export extends implements import interface module number public private require static string super

                Il existe de nombreux plugins pour Notepad++. Parmi eux, deux seront indispensables a notre situation :

                • NppExec
                • XML Tools

                  (9.3)


                  Pour verifier si ces deux plugins sont installes ou non, il suffit de cliquer sur le menu Complements et de rechercher ces deux noms. Si au moins l'un des deux manque a l'appel, pas de souci, l'installation d'un plugin est tres simple grace a un autre plugin qui est livre par defaut avec l'outil, a savoir Plugin Manager qu'on peut retrouver egalement dans ce menu Complements.

                  Plugin Manager un petit module qui permet de rechercher l'ensemble des plugins disponibles et de les installer. C'est en quelque sorte l'equivalent de NuGet sous Visual Studio.

                  Une fois ces deux plugins d'installes, et surtout NppExec, nous pourrons definir les commandes predefinies suivantes :

                  • TypeScript
                  • Git for Windows

                    (9.4)


                    La procedure de definition est identique pour ces trois commandes, seule le script d'execution varie. Cette procedure est la suivante :
                    1. Cliquez sur le menu Complements > NppExec > Execute, ou appuyer sur la touche F6.
                    2. Dans la zone de saisie, tapez le script de la commande
                    3. Cliquer sur le bouton Save
                    4. Donner un nom a votre commande
                    5. Cliquez sur le menu Complements > NppExec > Advanced Options. Dans la boite de dialogue qui s'affiche, seule la zone Menu Item est vraiment importante.
                    6. Dans le champ de saisie Item name, taper le nom de votre commande.
                    7. Dans le menu deroulant Associated script qui se trouve juste en dessous, choisissez la commande souhaitee puis valider en cliquant sur le bouton OK.


                    j3lq.png


                    (9.5)


                    Script de commande TypeScript


                    cd "$(CURRENT_DIRECTORY)"
                    tsc.exe "$(FILE_NAME)"

                    Script de commande Git for Windows


                    "C:\Program Files\Git\bin\wish.exe" "C:\Program Files\Git\libexec\git-core\git-gui"

                    Apres, rien ne vous empeche d'ajouter les commandes de votre choix comme make/jake, node.js et bien d'autres, mais cela depasserait sans doute le cadre de ce guide.


                    10. Conclusion



                    Comme nous venons de le voir, l'installation d'un environnement de developpement en TypeScript n'est pas tres compliquee, mais n'est pas si triviale non plus lorsqu'on demarre de rien, ce qui est souvent le cas quand on debute dans le developpement.

                    Tout ce qui est decrit dans cet article est absolument facultatif. En effet, il est tout a fait possible de realiser un projet sans mettre en place toute cette logistique, mais tot ou tard, a mesure de la complexification de l'application, le besoin d'organisation se fera ressentir, et il sera plus difficile d'y remettre de l'ordre a posteriori que de partir sur de bonnes bases.

                    En esperant que cet article vous a ete utile.

                    ( Partie 2 )
yahiko00
Cet article est une traduction autorisee de la premiere partie de celui-ci : Formalists and Zinesters: Why Formalism Is Not The Enemy (Tadhg Kelly)

Avant-propos du traducteur
Ce qui suit est une critique d'un professionnel de longue date de l'industrie du jeu video, Tadhg Kelly, au sujet d'un recent mouvement de createurs amateurs d'oeuvres video ludiques. Ce mouvement prone une demarche a la fois artistique et non commerciale, voire meme militante, se faisant appeler les Zinesters, en reference a l'univers des fanzines, magazines de passionnes autoproduits. Le Zinesterisme, s'appuie notamment sur un livre en anglais, encore non traduit en francais, d'Anna Anthropy dont le titre est "Rise of the Videogame Zinesters" (L'avenement des Zinesters du jeu video). Dans ce livre qui est evoque dans la critique de Tadhg Kelly, Anna Anthropy traite de sa vision des jeux video en s'appuyant sur une de ses realisations appelee Dys4ia.


Avant d'emigrer, je me suis retrouve a defendre vigoureusement Raph Koster sur Twitter. Cela a commence en reaction a cet article, en particulier par cette citation d'Anna Anthropy :









[indent=1]"Les jeux video ont ete l'une des communautes les plus sectaires que j'ai jamais vu", m'a-t-elle dit par e-mail, "des mecs, comme Raph Koster, insistent sur le fait que dys4ia "n'est pas un jeu", ce n'est pas un jugement de valeur. Ce sont des foutaises. la tentative sur des jeux comme dys4ia de mettre les etiquettes de "non-jeux", "d'experiences interactives", c'est juste une tentative a travers le statu quo de maintenir la discussion autour des jeux centree sur le genre de jeux avec lequel on se sent a l'aise - car s'il y a bien une chose dont la culture du jeu video sait faire, c'est de mettre tres tres a l'aise des mecs d'un certain genre."
Recemment, j'ai remarque une recrudescence de l'argument "des mecs d'un certain genre". D'une part, cela concerne l'acceptation et le traitement des femmes, des minorites et d'autres groupes au sein de l'industrie du jeu - et a juste titre. D'autre part, cela concerne la perception du patriarcat. C'est affirmer que des "mecs d'un certain genre" oppriment les gens creatifs avec leur vision d'une industrie organisee a maintenir leur satisfaction, et manipulent la definition de "jeu" comme une demonstration de leur pouvoir.

Cette affirmation est beaucoup plus sujet a controverse parce qu'elle confond trois problematiques differentes. La premiere est politique et affirme que la passivite ou l'apathie sont en fait des formes de complicite. La seconde est en rapport avec la preference du marche, se demandant pourquoi est-ce que le segment des males blancs achete sans cesse certains types de jeu tout en ignorant une plus grande diversite. Ce point met en cause la responsabilite de l'industrie, tandis que l'industrie elle defend que les dynamiques de marche sont evolutives de telle facon que l'industrie suit le marche plutot que de lui imposer quoi que ce soit.

La troisieme problematique porte sur la critique. Pour beaucoup de formalistes (moi y compris), de nombreux nouveaux types d'art interactif ne sont pas des jeux, ou alors pas tres bons si on les considere comme des jeux. Beaucoup s'apparentant a des jeux, sont des systemes ludifies, des histoires interactives, personnelles, convaincantes et limitees. Certains sont des mondes virtuels. D'autres sont plus interessants conceptuellement parlant que jouable. Beaucoup reposent sur la connaissance des intentions de l'auteur.

En creant un "jeu" qui n'est pas destine a etre joue ou gagne, son createur dit quelque chose. Le fait ensuite d'appeler ce travail autre chose que "jeu" peut apparaitre comme une attaque dirigee contre son createur. En particulier pour le groupe de ceux qui peuvent en premiere approche etre qualifies de "Zinesters", le "jeu" est devenu un champ de bataille politico-artistique feroce qui doit etre gagne. De plus en plus de Zinesters en arrivent a melanger le formalisme avec le patriarcat, la complicite et les debats sur "des mecs d'un certain genre", en les denigrant sans faire la moindre distinction.

C'est non seulement encore une autre tentative pour remporter le debat sur les jeux en ayant recours a l'equivoque, mais cela a pour effet de dissuader certaines voix autrement plus interessantes de se faire entendre. Certains, comme Raph, continue d'essayer, notamment avec cette lettre ouverte dans laquelle il evoque le debat et les attaques personnelles (un developpeur independant qu'il respecte a change de trottoir pour eviter de le croiser a la GDC - Game Developper Conference) pour etre contraint au final a devoir crier une fois de plus sur Twitter. La question pour les Zinesters est la suivante : Hurler et insulter est-ce donc la tout ce dont vous etes capables ?

Parce que si c'est le cas, les Zines vont inevitablement finir par disparaitre.

Des ennemis inoffensifs



Les Zinesters se considerent comme une classe emergente d'artistes interactifs. Leur travail couvre tout, de leur histoire personnelle jusqu'aux observations sur l'univers et des experiences purement esthetiques, et que ce travail prend des milliers de formes. Dans son livre, "Rise of the Videogame Zinesters", Anna Anthropy depeint le mouvement comme apparente aux posteurs de videos sur YouTube ou a d'autres createurs agregeant divers medias, libres des entraves du mercantilisme ou de l'elitisme, et en mesure de faire ce qu'ils veulent. C'est assez vrai.

Et pourtant, contrairement aux posteurs de video sur Youtube, le Zinesterisme a aussi un cote combatif. Provocateurs comme a pu apparaitre Anna a la GDC en lisant des poemes sur leurs luttes, leurs combats, leurs victoires et leurs defaites dans la bataille pour l'egalite reelle. Parfois le Zinesterisme va au-dela meme de ca. Pour certains, la lutte est moins sur la confirmation de soi que sur l'infirmation des autres. Il s'agit de la possibilite de crier "Je suis furieux contre toi, espece de blanc de service". C'est-a-dire que vous voulez juste un ennemi.

Nous pouvons etre formalistes, mais ceux qui ecrivent comme Raph ou moi-meme sommes le mauvais type d'ennemi dans le cas ou votre intention est de defendre le droit des createurs de jeux a donner leur avis sur les jeux, parce que nous sommes d'accord avec vous. Parmi nos rangs, vous trouverez quelques-uns de vos plus fervents partisans, des defenseurs passionnes et des evangelistes affirmes. Vous rencontrerez un debat vif et des reponses argumentees puisque nous essayons d'aboutir a un stade ou notre cadre critique est a la fois le plus general et le plus clair possible. Mais pour ces raisons, vous trouverez peu de gens qui tenteront de prendre a defaut vos realisations sur la qualite (soit dit en passant, dans la course au jugement au cours des dernieres semaines sur l'ensemble de cette question, ou beaucoup se contentent d'affirmer que les jugements de valeur et autres sont au coeur de ce qu'est un jeu, aucun de ses partisans ont encore cite un exemple credible a ce propos.)

Ce que vous y trouverez aussi, cependant, ce sont des gens qui connaissent assez bien l'univers du jeu video. Des gens qui ont vu cette lutte sur "ce qu'est un jeu" se produire avant. Des gens pour qui l'idee d'un jeu qui a recours a la mort definitive n'est pas etonnamment originale. Des gens pour qui l'astuce de l'inversion de role et la notion de jouer avec le degout de soi, ou des jeux qui demandent a ne pas etre joues, sont des idees qu'ils ont deja vues. Des gens pour qui le debat n'a rien a voir ou presque avec leur propre sentiment de puissance et tout a voir avec le fait d'essayer d'arriver a une meilleure comprehension. Des gens qui considerent que les Zinesters semblent repeter une erreur tres ancienne.

Vers la fin des annees 80, un desir grandit parmi les jeunes rolistes sur table (moi y compris) pour repousser les limites des nombres. Nous commencions a parler de jeux de role en tant que jeux narratifs. Nous considerions plusieurs joueurs de la vieille garde qui parlaient de campagnes, de classes et de points de vie comme desuets. Nous etions convaincus qu'un jour le "jeu" aurait place pour des histoires, des epopees et des themes. Nous parlions sans cesse de narrations non scenarisees, de jeux sans regle et de depasser la notion de divertissement.

L'energie des debuts entourant ce mouvement a genere beaucoup de creativite. Les genres de jeux que nous avions crees etaient des concepts. Nous avons travaille sur des jeux dont le but etait d'explorer les themes de la mythologie, de l'identite et de la sexualite. Dans un premier temps, nous utilisions des trames, des scenarios ou des mecaniques traditionnelles, mais au fil du temps nous etions passes dans l'abstraction stylistique, l'equivalent en jeu de role des Six personnages en quete d'auteur de Pirandello. Nous etions plus ou moins les precurseurs des Zinesters d'aujourd'hui.

Pour nous, c'etait quelque chose de fascinant, mais cela n'a pas attire au-dela de nos rangs. Alors, au fil du temps nous sommes tombes dans un debat de plus en plus confidentiel. Alors que le reste de la communaute des joueurs ne s'en souciaient pas tellement, nous sommes devenus militants et obsedes par les broutilles, les affronts et les insultes percues. Nous sommes passes d'une tribu de passionnes a des groupuscules qui passaient leur temps a raler les uns sur les autres, et au fil du temps nous avons decline. Le "jeu" est reste tel qu'il etait, malgre toutes nos fanfaronnades, et vers la fin des annees 90, il etait retourne a ses racines avec la 3e edition de Donjons et Dragons.

Ceci, en grande partie, est le modele que semble suivre le Zinesterisme.

La deuxieme partie en francais est disponible ici : Formalistes et Zinesters : Pourquoi le formalisme n'est pas l'ennemi (2/3)
yahiko00

Personnages et cr

Cet article est une traduction autorisee de la quatrieme partie de celui-ci : Characters and Worldbuilding: Analyzing the Strength of Japanese Games (Zack Wood)
Toutes les illustrations qui ne sont pas celles de l'auteur relevent du droit a la courte citation (article L.122-5 du Code de propriete intellectuelle)

Un exemple concret : Cafe Murder



Bien que j'ai utilise des phrases comme "les personnages japonais" et "l'approche japonaise du developpement de jeux video", je ne veux pas dire que ces choses sont fondamentalement japonaises ou inaccessibles aux personnes en dehors du Japon. Au contraire, je pense que c'est parce que le Japon a developpe ces techniques et ces approches, que n'importe qui dans le monde peut en tirer des enseignements et les utiliser.

En fait, en tant qu'artiste et concepteur d'un prochain jeu iOS appele " Cafe Murder ", j'ai eu l'occasion d'essayer de mettre ces concepts en pratique tout au long de l'annee derniere.

Douze clients uniques



Cafe Murder, qui a demarre en tant que projet Kickstarter (NdT : plateforme participative de financement de projets), est un jeu de simulation de restaurant avec un cuistot attaquant les clients. J'ai construit chacun des douze personnages des clients autour d'un concept simple qui definit leur apparence et leur comportement, similaire a ce que Condry decrit avec " Dekoboko and Friends ". Visuellement, j'ai essaye de rendre chaque personnage haut en couleur et facilement reconnaissable, exprimant leurs emotions en accord avec a leur personnalite et a leur concept.

Frantic Fred, par exemple, est un "occupe", un homme d'affaires presse qui doit etre servi tout de suite. Sharkeeta, l'habituee riche et corpulente, represente la gourmandise, et Pincushion (NdT : litteralement "pelote d'epingle"), contrairement a tous les autres, peut survivre a un coup de couteau.


Fig5.jpg
Fig. 5 Frantic Fred



Fig6.jpg
Fig. 6 Sharkeeta



Fig7.jpg
Fig. 7 Pincushion


J'ai aussi essaye de maintenir au minimum les dialogues en face-a-face, tout en ajoutant un menu sur les retours clients pouvant etre consulte a loisir par le joueur s'il decide de le survoler pour mieux connaitre la personnalite de chaque client.

Sekaikan, le style Cafe Murder



J'ai commence a concevoir Cafe Murder dans le cours de conception de jeu a la Kyoto Seika, et a cette epoque j'avais choisi le theme " pour servir et proteger ". Bien que le gameplay de base consiste surtout a faire preuve de reflexes pour attraper des ingredients et assembler des sandwichs, pour bien reussir dans ce jeu, cela necessite de comprendre et de pourvoir aux besoins specifiques de chaque personnage dans le but de servir les sandwichs avec une efficacite et une satisfaction maximale.

Sachant, par exemple, que vous devriez servir un sandwich imparfait a Fred avant qu'il ne devienne trop impatient, tandis qu'il vaudra mieux prendre plus de temps pour faire le sandwich de Sharkeeta principalement a cause de son genereux pourboire - tout en les protegeant contre les crises de nerf dementielles du cuistot.

En termes de decisions concretes de conception liees au sekaikan, je m'en souviens d'une en particulier. Lors de la conception de la version amelioree des "chaussures de vitesse" pour la serveuse Rainy, j'ai d'abord commence a dessiner des baskets avec des ailes facon Hermes sur elles ; cependant, je me suis vite rendu compte que cela faisait trop mythologique, trop evocateur d'un jeu de plateforme comme Kid Icarus.

Fig8.jpg
Fig. 8 Chaussures de vitesse avec des coeurs


Je ne me sentais pas a l'aise d'avoir des chaussures de vitesse ailees dans l'univers de Cafe Murder, alors que des coeurs accelerateurs et mignons etaient nettement plus appropries. Cafe Murder, avec le recul, c'est un monde ou etre affectueux et attentionne envers les clients est plus efficace que des ailes magiques. Si vous voulez le verifier par vous-meme, Cafe Murder est maintenant disponible sur l'App Store.

En guise de conclusion ...



En considerant a la fois l'approche sur les personnages et l'utilisation du sekaikan, j'en deduis un concept plus general dans la conception des jeux japonais : la simplification et la stylisation en tant que methodes pour creer un sentiment de realite et d'exuberance.

Les personnages, a la fois en termes de personnalite et d'apparence, sont simplifies et exageres, expressif et facile a cerner. Les univers ludiques sont organises autour de concepts simples, et des objets dans un tel univers sont choisis ou rejetes avec beaucoup de minutie.

Neanmoins, ces considerations ont pour effet de creer ce sentiment qu'il y a plus que l'oeil nu ne peut voir ; les personnages apparaissent attachants et reels, et ceux qui sont populaires sont consommes presque a l'infini. De meme, les univers ludiques semblent vivants, et les joueurs veulent les revisiter encore et encore a travers differents medias.

J'espere avoir ete clair a propos de ce que j'ai appris pendant mes annees au Japon. Merci de m'avoir lu, et s'il vous plait, si vous avez des commentaires, des critiques ou des approfondissements sur les idees que j'ai presentees, faites-le-moi savoir. Si vous avez aime cet article, n'hesitez pas a consulter mon blog autour des univers crees par les jeux a gamemakeworld.wordpress.com
yahiko00

Personnages et cr

Cet article est une traduction autorisee de la troisieme partie de celui-ci : Characters and Worldbuilding: Analyzing the Strength of Japanese Games (Zack Wood)
Toutes les illustrations qui ne sont pas celles de l'auteur relevent du droit a la courte citation (article L.122-5 du Code de propriete intellectuelle)

Sekaikan : le developpement de la " vision du monde " de votre jeu.



En plus de la discussion sur les personnages, je souhaiterais egalement presenter le terme " sekaikan ", ce qui signifie grosso modo " vision du monde ". C'est a mon avis, le seul mot qui est vraiment important dans la comprehension du developpement des jeux japonais.

La premiere fois que j'ai rencontre le mot sekaikan ce fut sur le blog de Hidenori Shibao dans un article sur le developpement de Paladin's Quest, ou il expliquait que son but etait de faire en sorte que l'univers du jeu soit le personnage principal de la partie. A cette fin, il s'etait efforce de faire ressortir du nouveau et du neuf dans chaque chose, depuis les menus des combats, dont la navigation ne peut uniquement se faire qu'avec la croix directionnelle, jusqu'a la conception et aux esquisses des personnages imaginaires. Il a rassemble tous les elements du jeu, dit-il, avec l'objectif de creer un bon sekaikan.

J'ai vite decouvert que d'autres developpeurs et les joueurs au Japon utilisent souvent le terme de la meme facon. Mais, je me suis demande, qu'est-ce que cela signifie pour un jeu d'avoir un bon sekaikan ? A travers des entretiens, des recherches et mes experiences personnelles, j'ai elabore une definition du terme, qui peut etre decomposee en deux parties :

Tout d'abord, sekaikan peut faire reference a l'impression qu'il existe un monde au-dela de ce que vous voyez a l'ecran. Ceci est similaire au sonzaikan des personnages, le monde donne une impression de vie et de reel, bien qu'il ne puisse pas etre une simulation physiquement fidele de la realite.

A d'autres occasions, les gens utilisent le terme sekaikan pour parler de la vision du createur de l'univers du jeu, qui est la matrice de tout, depuis la conception visuelle, jusqu'aux regles, aux controles, et a l'histoire. Il s'agit de la " sensation " globale du monde, generee par l'interaction de tous ces elements.

Avoir un bon sekaikan signifie donc en premiere approche que le jeu semble reel, mais vu autrement, qu'il est egalement interessant et bien realise. Souvent, cela signifie que le joueur voudra revisiter l'univers, que ce soit en rejouant au jeu, en jouant a d'autres jeux de la serie, ou a travers d'autres medias.

Le Sekaikan dans le monde occidental



Compte-tenu de son utilisation frequente au Japon, il y a etonnamment peu de discussions sur le sekaikan dans le monde anglo-saxon (NdT : y compris dans le monde francophone). Je n'ai trouve que quelques mentions de celui-ci sur Internet au sens large, ici et ici.

Dans " Creativite Anime ", cependant, Ian Condry aborde le sekaikan et son role dans la creation de l'anime, ce qui indique d'une certaine facon son importance dans les jeux video.

Il y decrit ce que c'etait que d'assister a des discussions entre l'equipe de production d'une serie animee appelee " Zenmai Zamurai ". Ce qu'il a constate etait que, plutot que de penser a l'anime en termes d'histoire, qui est le principal sujet pour de nombreux fans et pour les critiques - les developpeurs ont utilise un modele " lieux + vision + personnages ". Comme Condry l'explique :






[indent=1]
Ce qui etait encore plus central que l'histoire elle-meme dans l'organisation du partage des taches pendant la production de l'anime etait... la conception des personnages, la mise en place des lieux en rapport avec les personnages, et les parametres definissant l'univers dans lequel les personnages pouvaient interagir. Cette combinaison de personnages (kyarakutaa), lieux (settei), et de parametres (sekaikan) precede en general l'ecriture de l'histoire.

Condry poursuit en mentionnant qu'un modele similaire pourrait etre utilise pour les jeux, et bien qu'il ne precise pas ce que cela pourrait donner, son etude montre le role crucial du sekaikan dans le developpement de la pop culture tels que les animes et les jeux video. Il est defini des le debut du processus, et il est la matrice d'elements secondaires comme l'histoire et les visuels.

En outre, bien que Kelly n'utilise jamais le terme sekaikan sur " Ce que sont les jeux ", il y souligne des aspects similaires a ceux que les developpeurs japonais prennent en compte en matiere de sekaikan. Pour commencer, il propose d'une certaine facon une definition du sekaikan dans son article intitule " Createurs de mondes " :


[indent=1]Nous extrapolons souvent davantage d'une experience de jeu que ce qui est reellement a l'ecran. Nous avons cette faculte a utiliser le jeu comme un tremplin imaginatif, en deduisant les traits de caracteres, la personnalite, les tendances de comportement et la perception d'un univers de jeu au-dela meme de ce que le developpeur avait prevu. Nous faisons des escapades cognitives, des petites observations et des associations qui sont la marque de l'empathie, et qui par consequent donnent le sentiment qu'il y a plus que ce qui est donne a voir a l'oeil nu.
Il poursuit en insistant sur le fait que les developpeurs de jeux sont des " createurs d'univers ", et que " l'art de la conception d'un jeu repose sur le lieu ", expliquant que :


[indent=1]Creer un monde est une tache complexe qui exige non seulement de l'imagination, mais de l'elegance, de l'esthetisme et de la mise en scene... Ce n'est pas seulement une question de geographie ou de style artistique, et cela a tres peu a voir avec l'histoire (NdT : dans le sens de scenario). C'est un savant melange d'elements dynamiques, audio-visuels, au rythme changeant, dont le tout vise a atteindre une sorte d'implication du joueur.

La creation d'univers est l'acte de creation d'une toile... Une grande partie de mon livre parle de l'art des jeux comme relevant de la creation d'univers parce que je crois que les univers sont la ou reside l'art veritable des jeux.

Pour moi, cela ressemble l'attention particuliere au Japon qui est portee a l'univers vecu a travers un jeu. Kelly est la seule personne dont j'ai connaissance dans le monde occidental a avoir une theorie des jeux qui en tient compte et qui explique le plaisir des jeux a la fois pour les jeux occidentaux et pour les jeux japonais, FPS et RPG, Les Sims et Harvest Moon.

Conception de Jeux a la Seika



Enfin, je voulais partager quelques lecons pratiques que j'ai apprises durant les cours de Kenichi Nishi de conception de jeux a l'Universite de Kyoto Seika.

Puisque chaque eleve etait venu avec leur propre idee, il nous a demande de definir un theme pour notre jeu, comme " grandir " ou " devenir amis ". Au debut, je pensais que c'etait ridicule de resumer un jeu entier d'une telle maniere, mais je me suis vite rendu compte que, en tant qu'expression simple de votre " vision du monde ", cela peut effectivement aider a donner au jeu une structure et de la coherence. Il a dit que dans Katamari Damacy (NdT : jeu d'action-reflexion sorti en 2004), par exemple, le theme de base serait " grandir ", et cela se reflete dans l'histoire, dans les visuels, et le gameplay.

En parallele, Nishi nous a encourages a considerer l'univers de notre jeu sous tous les angles : Quel est le systeme politique ? Quel temps fait-il ? Quelle est la source d'energie ? Quel type de vetements portent les gens ? Et ainsi de suite, meme si l'element en question n'a rien a voir avec le gameplay et n'apparaitra pas durant le jeu.

Dans le meme genre, il nous a encourages a reflechir soigneusement sur les objets a inclure dans l'univers du jeu. Lors d'un cours, nous avons debattu sur une idee d'une etudiante sur un jeu a propos d'un personnage mignon volant dans le ciel, collectant des coeurs, tout en evitant les obstacles comme des masques de nuit. Cependant, quand Nishi l'a interrogee sur l'inclusion des masques de nuit, elle n'a pas eu d'explication. Les masques de nuit, a-t-il dit, changent tout - puis le debat s'est oriente sur le mode de vie des etres humains qui utilisent un masque de nuit debouchant sur un champ entier d'associations.

Son argument etait que chaque objet modifie la comprehension de l'utilisateur et sa reaction envers l'univers du jeu, et de ce fait il est donc dangereux d'inclure sans reflechir quelque chose juste parce que cela aurait du sens dans la realite ou parce que d'autres jeux ont fait la meme chose. Chaque element doit correspondre au sekaikan de votre jeu afin que votre univers donne l'impression de reel et se justifie par lui-meme.

La quatrieme partie en francais est disponible ici : Personnages et creation d'univers : Analyse de la force des jeux japonais (4/4)
yahiko00

Personnages et cr

Cet article est une traduction autorisee de la deuxieme partie de celui-ci : Characters and Worldbuilding: Analyzing the Strength of Japanese Games (Zack Wood)
Toutes les illustrations qui ne sont pas celles de l'auteur relevent du droit a la courte citation (article L.122-5 du Code de propriete intellectuelle)

Les personnages japonais : plus que "mignon"



Quiconque a visite le Japon peut vous dire que les personnages apparaissent partout : sur les panneaux d'affichage, a la television, sur les vetements, sur les trains, dans l'alimentation (et pas seulement sur l'emballage, souvent a l'interieur aussi sur la nourriture) - a n'importe quel endroit imaginable. Vous pouvez meme les trouver dans des situations qui en Amerique pourrait etre considerees comme un peu inappropriees, comme sur un depliant qui invitait a quelque chose comme " Reduisons le nombre de suicides ! " avec un garcon et une charmante creature verte levant leurs poings avec determination tout en souriant.






Fig2.jpg
Fig. 2 Le Train Pokemon




Fig3.jpg
Fig. 3 Coffret repas a la sauce "Hello Kitty"


En Amerique, les personnages japonais comme Mario, Hello Kitty, et les nombreux Pokemon sont, bien que populaires, parfois denigres pour leur cote infantile ou simpliste. Personnellement, j'ai toujours eu un petit faible pour eux, mais je ne pensais pas qu'ils avaient davantage qu'une esthetique que j'avais ete amenee a apprecier. Je ne savais pas a l'epoque que ces personnages exercent une grande influence au Japon, a la fois economiquement et comme des acteurs incontournables des medias grand public tels que les jeux video.

La forte demande dans la production de personnages constituent ce qui est essentiellement une industrie du personnage ; les entreprises du jeu video, de l'anime, du manga, et des produits derives travaillent ensemble en etroite coordination pour creer des spin-offs (NdT : histoires alternatives), les croisements, et divers produits bases autour de ces personnages populaires. C'est ce qu'on appelle le " mix media " au Japon, ou parfois le " transmedia storytelling " (NdT : litteralement "la narration transmedia") en Occident. Grace a ces partenariats, un personnage de manga a succes, par exemple, peut au final generer beaucoup plus d'argent que les ventes meme du manga d'origine.

A la Kyoto Seika, mes camarades de classe etaient tres conscients que la creation de personnages populaires etait une partie essentielle du processus de decision dans un manga, et, comme vous pouvez l'imaginer, au Japon, les concepteurs de talent de personnages sont tres recherches. Il y a des artistes comme Kosuke Fujishima de la serie des RPG " Tales " (NdT : de " Tales of Phantasia " a " Tales of Vesperia ") et Yoji Shinkawa pour Metal Gear (un ancien de la Kyoto Seika), qui ont obtenu la renommee et la reconnaissance en grande partie grace a leur travail de conception de leurs personnages. Le travail de tels artistes est presente dans des expositions, ce qui permet aux interesses de pouvoir vendre d'onereux livres d'art de leurs esquisses et de leur dessins.

La Creation des personnages japonais



Quelle est alors la particularite de ces personnages ? Quelles sont les qualites, si elles existent, qu'ils partagent ? Certaines personnes peuvent etre familieres avec le terme " kawai ", qui est generalement traduit par " mignon ", et est souvent utilise pour decrire les personnages. En fait, cela ne se resume pas simplement au fait d'etre " mignon " ; Selon moi, les personnages kawai sont expressifs, attachants et "facile a lire". De grandes tetes et de grands yeux, des dessins simples et colores, et des reactions emotionnelles exagerees font partie de ces elements stylistiques recurrents des personnages kawai.

Un terme moins commun mais tout aussi important est " sonzaikan ", qui se traduit litteralement par "le sentiment que quelque chose existe". En termes de personnages, cela signifie qu'ils semblent reels, pas necessairement qu'ils sont uniquement semblables a de vraies personnes avec des personnalites complexes, mais plutot qu'ils donnent une impression d'etre plein de vie, et incitent le spectateur a avoir une reaction emotionnelle. De cette facon, les gens peuvent developper un lien personnel avec leurs personnages preferes, presque comme s'ils etaient de vrais amis.

Dans la pratique, comment les concepteurs font ce genre de personnages ? Ian Condry, un specialiste de la pop culture japonaise, decrit un exemple dans son article, " Anime Creativity: Characters and Premises in the Quest for Cool Japan " (NdT "Creativite Anime : Personnages et lieux a la recherche du Japon cool"). Il y interroge m&k, l'equipe de conception qui a cree les personnages d'une serie animee populaire appele " Dekoboko and Friends " (NdT : "Dekoboko et ses amis").

Ils ont developpe les personnages en "auditionnant" environ 60 d'entre eux, ce qui a consiste a en dessiner un large eventail puis a selectionner. "Nous avons ecarte les personnages qui etaient dans la moyenne, et avons vise a la place ceux qui etaient d'une certaine facon desequilibres", ont-ils explique... Les createurs n'ont egalement pas commence par l'image visuelle du personnage, mais ont raisonne en termes de saveur caracteristique d'un personnage (mochiaji) ou de competence speciale (tokugi) ... "La personnalite (Kyara) precede le personnage lui-meme, evoquant le sentiment d'une sorte d'existence (sonzaikan) ou force de vie (seimeikan)"... Quand m&k selectionnerent leurs personnages parmi les nombreux qu'ils avaient auditionnes, ils privilegierent les extremes : un personnage extremement timide, un autre tres rapide, un autre etant une femme elegante et plus agee chantant de grandiloquentes chansons traditionnelles, ou un autre si grand qu'il ne peut pas passer par la porte.

En d'autres termes, chaque personnage est defini par un concept simple, qui a son tour determine a la fois son caractere et son apparence. Le resultat est que, bien que simpliste, chaque personnage donne un sentiment de sympathie et de reel, comme en temoignait la popularite de l'emission.


Fig4.jpg
Fig. 4 "Dekoboko and Friends"


Ce que sont les personnages : Les personnages dans les jeux
Dans son blog de game design " What Games Are " (NdT : "Ce que sont les jeux"), Tadhg Kelly y explique le role et la fonction des personnages dans les jeux video, et en se basant sur son analyse, les personnages a la japonaise en sont de tres bons exemples.

Tout d'abord, cela permet de mieux comprendre son point de vue sur le role de la narration dans les jeux video. Dans son message " Des personnages jouables et de l'expression de soi ", Kelly explique ce qu'il appelle " le storysense " (NdT : litteralement "la perception de l'histoire"):






[indent=1]" Le storysense " est une approche narrative qui s'appuie sur la creation d'un univers interessant, sur un ensemble fait de fils et de bouts d'histoires qu'il est possible d'explorer, sur une approche minimaliste de la notion d'objectif, et se dispense donc d'une trame scenarisee et d'un developpement des personnages. Cette approche considere l'histoire comme une musique de fond durant jeu, de telle facon que le joueur peut ou non y participer, c'est comme il le souhaite. Il n'y a pas de temps de perdu a recompenser inutilement le joueur pour s'etre bien identifie a son personnage, et les seules recompenses sont celles au premier degre - a l'image du jeu. Il n'y a pas de creation elaboree de personnages, ni de tentative d'introduire du sens inutilement, ni de sentimentalisme pour emouvoir le joueur.

C'est la raison pour laquelle il explique dans " Creation de personnages " que les personnages dans les jeux n'ont pas besoin d'un developpement traditionnel a travers une histoire :


[indent=1]La modelisation d'un personnage n'est pas la meme chose que le developpement d'un personnage. Le developpement du personnage dans une sequence narrative est un processus long et complexe, mais dans un jeu c'est completement en contradiction avec qui est necessaire de realiser. L'art de modeliser des personnages est celui de donner une impression de ce qu'ils sont dans leur totalite, car ils ne sont qu'une partie d'un portrait.

Un personnage de jeu doit etre modelise dans les grandes lignes, de sorte que c'est au joueur d'aimer ou de detester a son propre rythme. Le lui retirer, ou imposer une orientation au joueur, alors sa sympathie de principe peut rapidement tourner a de l'antipathie ou a l'ennui.

Comme il le resume dans son message sur le " Developpement de personnages ", " c'est a l'univers du jeu de se developper et les personnages sont (pour la plupart) seulement des ressources qui s'y trouvent ".

Les personnages japonais, avec leur impression de reel (sonzaikan), et les personnalites simples mais charmantes (comme les personnages de Dekoboko et de bien d'autres), me semblent etre tout a fait adaptes pour ce genre de role. Davantage que des personnages physiquement et emotionnellement realistes, les personnages kawai simplifies et stylises contribuent a donner vie a l'univers du jeu pour le " cerveau artistique " sans pour autant detourner le " cerveau joueur " d'essayer de gagner a travers de trop nombreux dialogues ou cinematiques.

Prendre soin des personnages



Compte tenu de l'importance des personnages en termes de gameplay et d'interets financiers autrement plus importants, il ne faut donc pas s'etonner du plus grand soin qui est apporte a la gestion de l'image des personnages celebres et de leur utilisation. J'ai ete d'ailleurs personnellement surpris en decouvrant qu'il existe toute une societe, appelee Warpstar, consacree a la gestion de Kirby. Warpstar a collabore avec HAL Laboratory, par exemple, dans la fabrication de " Kirby's Epic Yarn " pour la Wii. Dans ce cas precis, les concepteurs, de facon assez surprenante, ont pu passer trois longs mois a perfectionner l'apparence de Kirby.

Cette attention particuliere aux personnages peut egalement etre vu dans des entretiens avec l'equipe qui a realise " Zelda : Skyward Sword ". Les concepteurs y debattent meme du travail pour faire les ennemis kawai, afin de leur donner " un peu d'humanite ", pour au final faire que vous les appreciez alors meme que vous voulez les vaincre.

Je tiens a souligner ici que kawai et sonzaikan ne sont pas inseparables, mais ils vont souvent de paire dans le cas du Japon. Kawai est certainement une part importante de ce qui donne l'impression aux personnages japonais d'etre vivant et reel, mais j'imagine qu'il existe d'autres approches pour rendre egalement vos personnages sonzaikan.

La troisieme partie en francais est disponible ici : Personnages et creation d'univers : Analyse de la force des jeux japonais (3/4)
yahiko00

Personnages et cr

Cet article est une traduction autorisee de la premiere partie de celui-ci : Characters and Worldbuilding: Analyzing the Strength of Japanese Games (Zack Wood)
Toutes les illustrations qui ne sont pas celles de l'auteur relevent du droit a la courte citation (article L.122-5 du Code de propriete intellectuelle)

Entre avril 2010 et mai 2011, j'ai eu la chance d'etudier les mangas (bandes dessinees japonaises) et la conception de jeux video a l'une des principales ecoles d'art du Japon, l'universite Kyoto Seika. Au total, j'ai vecu, travaille et etudie au Japon environ quatre ans, et dans cet article j'aimerai partager ce que j'ai appris la-bas sur la conception de jeux.

Tout a commence au lycee quand un ami m'a fait decouvrir les animes (films d'animation japonais) par le biais de " Princesse Mononoke " du Studio Ghibli. Les personnages et les creatures ne ressemblaient a rien de ce que j'avais pu voir auparavant, et rapidement j'ai commence a lui en emprunter davantage. De la, j'ai commence a jouer aux jeux video japonais, en particulier aux jeux de role (RPG) de l'epoque de la Super Nintendo.

Le premier auquel j'ai joue, choisi au hasard, etait curieusement intitule " Chrono Trigger ". Je ne savais pas que j'avais choisi l'un des jeux les plus veneres de tous les temps, et, bien sur, je suis devenu accro. Tout comme mon interet pour les films d'animation du Studio Ghibli, je fus enchante par le niveau d'imagination des RPG japonais.

Un Tresor Neglige



Au bout d'un moment, je suis tombe sur " Paladin's Quest ", l'un des RPG les moins connus de la Super Nintendo, sorti aux Etats-Unis en 1993. Cependant, j'ai presque failli passer a cote du jeu en raison de son nom generique. Je ne sais pas comment les traducteurs se sont arretes sur " Paladin's Quest " puisque le jeu n'a rien a voir avec les paladins ; au Japon, on parle de l'excitant et du mysterieux "Lennus : Memoire de la Machine Ancienne."

Paladin's Quest s'est avere etre, selon moi, le jeu le plus original et le plus inoubliable d'une epoque qui etait deja debordante d'innovations. La palette de couleurs pastel et le style visuel simplet semblent avoir refroidi beaucoup de joueurs, mais pour ma part cette nouveaute n'a fait qu'accroitre mon attirance ; la musique envoutante, la vie vegetale venue d'ailleurs et le schema narratif, le tout reunis pour creer une experience unique et tres attachante.







Fig1.png
Fig. 1 " L'Ecole de Magie ", premiere zone de Paladin's Quest

Pour l'Amour du Jeu



Quand j'ai appris que Paladin's Quest avait eu une suite, " Lennus II : Les Apotres des Sceaux ", j'avais hate d'y jouer ; mais le jeu n'a jamais ete publie en anglais, et avec une ignorance totale du japonais, je n'ai meme pas pu sortir de la premiere zone.

C'est pourquoi, en premiere annee de college, je me suis inscrit dans une classe de " japonais intensif " qui a debouche sur un voyage de quatre semaines a l'Universite de Kyoto Seika. (A l'epoque, la Kyoto Seika venait de faire les gros titres pour etre la premiere ecole au Japon a offrir un diplome specialise dans les mangas.)

J'y ai passe un tres bon moment, ce qui m'a amene a m'inscrire a l'Universite de Stanford afin de me specialiser dans les etudes sur l'Asie Orientale et a continuer a etudier le japonais. Des que j'ai obtenu mon diplome, j'ai demenage au Japon pour enseigner l'anglais avec le programme Japan Exchange Teaching (JET) (NdT : litteralement "programme japonais d'echange sur l'enseignement").

Ce fut l'epoque ou j'ai decouvert le blog de Hidenori Shibao, le realisateur de la serie Lennus (Paladin's Quest et sa suite), qui a egalement travaille sur Legend of Legaia, un RPG sur PlayStation. Apres avoir fait reverifier ma grammaire par un ami japonais, je lui ai envoye un message, et nous avons fini par echanger un certain nombre de courriels au sujet des jeux Lennus et de la conception des jeux en general.

Retour a la Kyoto Seika



Apres deux ans par le biais de JET, je voulais revenir a ce qui m'avait attire au Japon en premier lieu - la pop culture comme les jeux video et les animes. J'ai toujours aime dessiner, et je me suis souvenu de la Kyoto Seika et de leur programme de manga lors de mon voyage d'etude a l'etranger. C'est comme ca que j'ai fini par y retourner en 2010 en tant qu'etudiant-chercheur dans la section Manga. (en tant qu'etudiant-chercheur j'avais suivi des cours en tant etudiant regulier, mais sans possibilite de validation ou de diplome a la fin.)

Bien que les ecoles japonaises aient tendance a etre strictes sur le fait de suivre des cours en dehors de votre section, j'ai pu assister a quelques cours magistraux dans une classe de Game Design avec Kenichi Nishi, le directeur du culte et celebre " Chibi-Robo " ! (Il etait aussi un des concepteurs des environnements de Chrono Trigger.) Nishi nous a emmene tout au long des etapes du developpement de l'idee jusqu'a la realisation, et de cette facon les etudiants se sont constitues en groupes afin de creer leur propre jeu au cours d'un semestre.

Grace a tout cela, j'ai appris beaucoup de choses sur l'approche japonaise de la pop culture comme les mangas et les jeux video, et je tiens a partager ce que j'ai appris, en me concentrant sur deux points : les personnages dans le style japonais et leur fonction dans les jeux video, et le sekaikan, un terme souvent utilise en reference aux jeux video et d'autres medias.

La deuxieme partie en francais est disponible ici : Personnages et creation d'univers : Analyse de la force des jeux japonais (2/4)
yahiko00

Conseils g

Cet article est la traduction de la cinquieme partie de celui ci : General Tips on the Process of Solo Game Development (Macoy Madson)
La quatrieme partie en francais est disponible ici : Conseils generaux sur le processus de developpement solo d'un jeu (4/5)

Cinquieme etape: Finalisation !



Si vous en etes rendu a ce point, vous etes pret a terminer votre jeu ! Les derniers 10% de developpement ressemblent souvent a 90%, mais il ne faut pas abandonner ! N'oubliez pas que meme un jeu a "90% termine" est un jeu qui ne vaut rien ! La finition c'est avant tout vous pousser a travers le Mur et faire en sorte que tous ces bouts epars soient rattaches entre eux. Rappelez-vous jusqu'ou vous etes parvenu, et regardez la distance qu'il vous reste a parcourir. Ce n'est pas si loin que ca !

Pendant que vous apportez la touche finale et packagez le tout pour la premiere fois, testez sur autant de plateformes que possible. Vous devez tout tester, meme vos fichiers "lisezmoi" (une fois mon caractere de nouvelle ligne etait de type Unix et cela ne fonctionnait pas sur les ordinateurs Windows smile.png) !

Il est recommande que le cheminement qu'un joueur emprunte pour decouvrir votre jeu et pour ensuite y jouer soit le plus court et le plus direct possible. Abaissez toutes les barrieres que vous pouvez, et faites en sorte que votre jeu soit facile a juger. La praticite est essentielle a ce stade.

Si vous vous demandez pourquoi votre jeu ressemble toujours a un projet "amateur", c'est parce qu'il n'est pas assez fignole. De tres petites choses, comme les menus ou les ecrans de chargement, peuvent faire une grande difference sur les impressions du joueur envers votre jeu. Rappelez-vous, la premiere chose que le joueur verra sera l'une de ces choses, il est donc tres important de bien les faire. Etudiez les jeux " professionnels " et les raisons pour lesquelles ils ont l'air plus " professionnels ". Le fignolage est en grande partie une question de feeling, ce qui fait qu'il est juste necessaire de pratiquer pour y arriver, mais le temps supplementaire en vaut la peine.

Si vous etes extremement gene par la " qualite " de votre jeu ou si vous savez qu'elle a de serieuses lacunes, corriger autant que vous le pouvez et publiez-le quand meme. Terminez votre projet, apprenez de vos erreurs et faites mieux pour le prochain jeu.

Conclusion



Vous venez de faire un jeu ! Felicitations ! Maintenant, faites en a nouveau, evitez seulement les erreurs qui ont cause du tort a la qualite de votre dernier jeu.

J'ai couvert beaucoup d'aspects, donc je vais juste faire un bref rappel de chaque etape :

Idee

  • Le prototypage reste essentiel
  • Fixez-vous un objectif et des contraintes bien definies
  • Donnez-vous un peu de temps
  • Trouvez l'element central sur lequel repose votre idee
  • Vous allez mourir, alors faites en sorte qu'elle ait de l'importance !

    Prototypage

    • Soyez ouvert a l'echec
    • Faites-le aussi rapidement que possible, et rendez votre code le plus pratique possible
    • Utilisez les outils que vous connaissez deja
    • Ayez une question bien definie a resoudre

      Iteration

      • Faites du code de haute qualite
      • Allez des elements les plus importants au moins importants
      • Experimentez, mais ne perdez pas de vue l'element de base
      • KISS / Optimisez l'usage / PAS d'optimisation prematuree
      • Ajoutez le code reutilisable a votre bibliotheque
      • N'ajoutez que les fonctionnalites a votre bibliotheque qui rendent le developpement plus rapide ou qui ajoutent des possibilites (ne codez pas quelque chose pour ameliorer la vitesse, sauf si vous en avez besoin)
      • Ne pas abandonnez ou renoncez a un projet a ce niveau !

        Tests

        • Testez tot, testez souvent
        • Diversifiez vos les origines de nos testeurs
        • Remplacez vos testeurs trop utilises
        • Posez des questions

          Finalisation

          • Persistez
          • Testez, testez, testez !
          • Rendez facile la decouverte de votre jeu
          • Fignolez
          • Publiez-le et apprenez de vos erreurs

            Merci d'avoir pris le temps de lire ca ! J'espere que je vous ai aide !
yahiko00

Articles

http://www.gamasutra.com/blogs/PaulTozour/20130707/195718/Decision_Modeling_and_Optimization_in_Game_Design_Part_1_Introduction.php (permission OK)
http://www.gamasutra.com/blogs/PaulTozour/20130712/196167/Decision_Modeling_and_Optimization_in_Game_Design_Part_2_Tax_Rate_Example.php (permission OK)
http://www.gamasutra.com/blogs/PaulTozour/20130721/196680/Decision_Modeling_and_Optimization_in_Game_Design_Part_3_SuperTanks_and_Teleporters.php (permission OK)
http://www.gamasutra.com/blogs/PaulTozour/20130728/197119/Decision_Modeling_and_Optimization_in_Game_Design_Part_4_PlayervsPlayer_Class_Balancing.php (permission OK)

https://www.gamedev.net/page/resources/_/creative/game-design/crafting-a-2d-rpg-r3181
http://gamedev.tutsplus.com/articles/game-design-articles/balancing-turn-based-rpgs-the-big-picture

https://www.gamedev.net/page/resources/_/creative/game-design/non-linear-story-lines-r3106
https://www.gamedev.net/page/resources/_/creative/game-design/elements-of-video-game-style-r3296

https://www.gamedev.net/page/resources/_/business/production-and-management/lone-wolf-killers-r3177

https://www.gamedev.net/page/resources/_/creative/game-design/the-dark-side-of-iterative-design-r3163 (pas de confirmation)

http://www.gamasutra.com/view/feature/196009/the_scumm_diary_stories_behind_.php?page=3 (aucune reponse)
yahiko00

Conseils g

Cet article est la traduction de la quatrieme partie de celui ci : General Tips on the Process of Solo Game Development (Macoy Madson)
La troisieme partie en francais est disponible ici : Conseils generaux sur le processus de developpement solo d'un jeu (3/5)

Quatrieme etape: Tests



Je dois admettre, j'ai beaucoup de mal avec les tests. Il est assez difficile de les faire correctement, mais lorsque c'est fait correctement, cela abouti a ameliorer votre jeu considerablement. La phase de tests est assez simple, donc je vais vous presenter quelques regles de base que vous pourrez utiliser pour les faire plus efficacement.

Tout d'abord, testez tot, testez souvent ! Vous ne pouvez jamais trop tester ! Testez des le stade du prototypage, et pas plus tard que la publication. Vous verrez que certaines parties de votre jeu qui sont parfaitement claires pour vous seront completement confuses pour d'autres, par consequent, ne developpez pas dans le vide !

Ensuite, diversifiez ! Cela inclut les personnes et la technologie. Executer votre jeu sur autant d'appareils et de systemes d'exploitation que vous le pouvez. Un de mes jeux fonctionnait bien sur mes deux ordinateurs (avec des configurations tres differentes) et des systemes d'exploitation virtuels, mais avait des bugs de deplacement qui ruinaient mon jeu sur la plupart des autres ordinateurs ! Quand il s'agit de personnes, n'ecartez aucune categorie de gens. Laissez quiconque jouer a votre jeu, peu importe son sexe, son age, ou ses centres d'interets ! Plus vos testeurs seront divers, plus votre public sera divers, et moins votre jeu sera subjectif.

Ne gaspillez pas vos testeurs. Apres un certain temps, ils deviendront tres partiaux, notamment parce qu'ils auront vu les versions precedentes du jeu. Il est preferable que vos testeurs n'aient aucun prejuges et un esprit ouvert, alors assurez-vous de changer les gens souvent.

L'observation est la chose la plus importante que vous devez apprendre a faire lors d'une session de tests. Regardez quand les gens parlent, quand les gens arretent de parler, quand leur personnage meurt, quand ils reussissent, et quand ils arretent de jouer. Les probabilites sont que la plupart des gens vont faire la meme chose, malgre l'influence de votre simple presence. L'observation est aussi la seule chose que vous devez faire pendant une session de tests. Ne leur indiquez pas le contexte, ou expliquer quelque chose, ou les aider, ou quoi que ce soit. Il suffit de regarder et de prendre des notes.

Apres qu'ils aient fini de jouer, vous devriez leur poser les trois questions suivantes:

Qu'avez-vous aime ?
Qu'est-ce que vous detestez ?
Qu'est-ce qui vous a deroute ?


Cela vous donnera des retours tres precis sur ce dont vous avez besoin de mettre l'accent et ce que vous devez changer. Aussi, lorsque le joueur vous fait des suggestions pour ameliorer le jeu, ne vous focalisez pas sur la suggestion, mais sur les causes qui ont fait qu'il vous a fait cette suggestion.

La cinquieme partie en francais est disponible ici : Conseils generaux sur le processus de developpement solo d'un jeu (5/5)
yahiko00

Conseils g

Cet article est la traduction de la troisieme partie de celui ci : General Tips on the Process of Solo Game Development (Macoy Madson)
La seconde partie en francais est disponible ici : Conseils generaux sur le processus de developpement solo d'un jeu (2/5)

Troisieme etape: Iteration



A ce stade, vous avez fait suffisamment de prototypes pour demontrer le potentiel positif de votre idee. Vous avez egalement demontre la faisabilite technique de l'idee et la facon dont vous pourriez aborder sa mise en oeuvre dans le code de production. Vous avez aussi cerne ce que vous aimez le plus de cette l'idee et avez retire ce qui n'etait pas necessaire a l'experience du joueur. Si vous n'avez pas tout cela, revenez en arriere et faites plus de prototypes !

Quand je dis ici iteration, je veux parler du developpement et de l'amelioration du produit final. Vous devriez eviter d'utiliser un prototype pour votre code de production parce que ce prototype etait du sur-mesure pour repondre a une question donnee, et pas pour devenir un jeu complet. A ce stade du developpement, vous utilisez vos pratiques de codage les plus perennes pour construire la version finale du jeu. Il y a beaucoup d'articles qui traitent de ces pratiques, c'est donc desormais le moment d'utiliser ce que vous avez appris sur le codage de haute qualite. Le prototypage n'etait pas le moment d'utiliser ces pratiques, car les prototypes vont etre jetes de toute facon !

Les iterations doivent passer en revue les elements du plus important au moins important (tout comme les prototypes). Si vous codez un menu principal ou des fantaisies graphiques avant que vous n'ayez votre mecanique principale d'operationel, vous faites quelque chose de tres, tres mal ! Personne ne se soucie de vos details graphiques ou de vos menus, ils se soucient du gameplay ! Faites le " jouet " d'abord, et gardez les menus et le fignolage pour la fin.

Bien que vous travaillez maintenant sur le code "final", vous devriez toujours continuer a experimenter. Soyez tres prudent avec de telles experiences, car elles peuvent vous faire perdre votre vision de cet element de base sur lequel vous vous concentriez avant. Assurez-vous que vous savez pourquoi votre jeu est interessant. Neuf fois sur dix, ce n'est pas parce que vous avez une physique realiste pour un PNJ ou que vous pouvez extraire les metaux sous terre ! Vos experiences devraient etre separees de la production (si vous utilisez un gestionnaire de code source, c'est la ou la "ramification" devient utile) et facilement annulables. Vous devriez vous concentrer sur de telles experiences pour l'amelioration de l'element de base uniquement ! Si l'experience est trop divergente de l'element de base, vous devriez la specifier et la prototyper plus tard.

Ne jamais, en aucune circonstance, optimiser prematurement ! En tant que programmeur, vous avez probablement entendu parler de KISS, qui signifie "Keep It Simple, Stupid !" (NdT : Restez simple et stupide). Suivez ce principe autant que vous le pouvez ! Jonathan Blow parle d'algorithmes et de structures de donnees et comment elles sont optimisees pour des performances ou la memoire, mais ne sont pas "optimisees pour l'usage". Il est plus important de finir un jeu dans un mois qui tourne a 20 FPS que de finir dans un an pour 60 FPS !

Concernant le codage pendant le cycle iteratif, vous souhaitez identifier des composants qui peuvent facilement etre reutilises dans de futurs jeux et les ajouter a votre bibliotheque plutot que de les rendre specifiques a votre jeu. Cela permettra non seulement d'ameliorer votre bibliotheque, mais aussi de rendre chaque jeu suivant (et prototypes) plus rapide a developper. N'essayez pas de reutiliser des composants qui sont trop specifiques cependant !

Pendant que vous enrichissez par iteration votre bibliotheque de composants, concentrez-vous sur les fonctionnalites qui a) sont utiles non pour leur performance, mais pour ce qu'elles accomplissent et b) d'encourager la reutilisation du code et ainsi raccourcir les temps de developpement. Par exemple, la detection et la resolution des collisions est extremement utile et cela vaut la peine de prendre son temps a les implementer, mais la mise en oeuvre d'une routine de collision "optimisee" n'en vaut pas la peine. Rappelez-vous, ne faites pas quelque chose, sauf si vous en avez besoin ! Comme exemple de fonctionnalites (b), j'ai recemment mis en oeuvre mon propre systeme COM (ou CES) parce que j'ai vu combien la reutilisation du code devenait plus facile avec elle. Bien sur, cela impacte negativement les performances, mais l'idee de composants dynamiques, portables et reutilisables compense cet impact par l'optimisation de l'usage !

Si vous en etes a ce point, il n'y a aucune raison d'abandonner le projet ! Bien sur, vous avez beaucoup appris de vos erreurs de codage et un recodage complet rendrait probablement le projet meilleur, mais ne perdez pas votre temps ! Beaucoup de developpeurs debutants de jeux abandonnent sans cesse des projets en plein milieu du developpement. C'est la principale raison pour laquelle ils sont encore des developpeurs debutants ! Vous avez touche ce qui est communement connu comme " le Mur ", le point ou vous ne voulez plus continuer le developpement d'un projet. Il suffit de l'abattre et de persister, sinon tout le travail que vous avez realise ne vaudra plus rien (pour les joueurs, au moins) ! J'ai publie sept jeux, et deux d'entre eux se sont averes etre un enfer vers la fin. J'ai persiste, et j'ai appris de mes erreurs. Vous devez terminer completement vos projets ! N'abandonnez pas !

Cette etape de l'iteration sera fortement influencee par l'etape suivante, qui est ...

La quatrieme partie en francais est disponible ici : Conseils generaux sur le processus de developpement solo d'un jeu (4/5)
yahiko00

Conseils g

Cet article est la traduction de la deuxieme partie de celui ci : General Tips on the Process of Solo Game Development (Macoy Madson)
La premiere partie en francais est disponible ici : Conseils generaux sur le processus de developpement solo d'un jeu (1/5)

Deuxieme etape: Prototype



Si le chapitre Idee n'a pas ete suffisamment explicite, je vais le repeter : vous ne pouvez pas voir le potentiel (positif ou negatif) d'une idee tant que vous ne l'avez pas prototypee ! Heureusement, c'est souvent l'etape la plus amusante dans le developpement d'un jeu parce vous voyez votre idee prendre vie. Cependant, il est aussi important de prototyper correctement afin d'exploiter le resultat le plus efficacement possible.

Lorsque vous prototypez, vous devez etre ouvert a l'echec. Si vous craignez un echec, vous ne pourrez jamais sortir ce jeu. J'aime bien conserver mes prototypes hors de mon dossier de sources verifies et sur le bureau Windows (ou equivalent), juste parce que cela met l'accent sur l'aspect ludique et temporaire que cette phase de prototypage a besoin pour reussir. Si vous vous plantez sur un prototype, c'est important de vous dire que c'etait attendu et absolument normal !

Du fait de cette tolerance a l'echec, vous devez egalement developper vos prototypes rapidement, parce que les chances sont que vous ferez l'experience que l'echec de nombreuses fois avant de creer un prototype gagnant. Un gain important de vitesse peut etre obtenu par l'optimisation de votre code. Je ne veux pas dire l'optimisation de sa performance, mais l'optimisation de son usage. Vous souhaitez concevoir votre code pour une reutilisation et une simplicite maximale, ce qui implique la creation d'une bibliotheque complete de codes reutilisables et pertinents, et de faire un modele de jeu que vous pouvez copier et reutiliser. Ce modele de jeu devrait inclure une fenetre ouverte avec l'affichage d'un sprite, la gestion des entrees et un makefile de travail, etc. Recherchez le confort !

En outre, vous devriez eviter d'utiliser des outils soit-disant " plus faciles " pour le prototypage, mais plutot tenez-vous en a ce que vous savez et ce avec quoi vous avez le plus d'experience, parce que cela donnera le plus rapide des prototypes (et le plus utile). J'ecris la plupart de mes prototypes en C++ parce que j'ai quatre ans d'experience avec ce langage et sa bibliotheque.

Avant de rediger la moindre ligne de code, assurez-vous que vous avez une question bien definie a laquelle vous souhaitez que votre prototype reponde. Cette question devrait etre tres simple et devrait impliquer en priorite les parties les plus importantes et/ou " a risque " de votre idee de jeu. Idealement, vous devriez ecrire la question quelque part clairement et de facon visible et ainsi vous ne devriez pas faire de hors-piste. Des que le prototype repond a cette question et debroussaille un peu le terrain, vous devriez passer a un autre.

Une fois que vous avez fait le(s) prototype(s) qui demontre la puissance de votre idee, trouvez l'element de base qui le demontre et laisser de cote tout le reste. La simplicite est la cle d'une conception elegante !

La troisieme partie en francais est disponible ici : Conseils generaux sur le processus de developpement solo d'un jeu (3/5)
yahiko00

Conseils g

Cet article est la traduction de la premiere partie de celui ci : General Tips on the Process of Solo Game Development (Macoy Madson)

En tant que developpeur de jeu solo, il est important d'apprendre autant que possible sur tout ce que vous pouvez, y compris le processus que vous suivez en faisant des jeux. Le processus, je vais en parler comprend les etapes suivantes:

  1. l'Idee
  2. le Prototype
  3. l'Iteration
  4. le Test
  5. la Finalisation

J'espere vous fournir des conseils utiles sur chaque etape de ce processus de sorte que vous pourrez ameliorer la vitesse de developpement et la qualite de vos jeux.

Le processus, etape par etape



Tout d'abord, il est important de noter que ce n'est pas un processus en "cascade" lineaire. Il est tres organique. Alors que vous commencez toujours avec une idee, les etapes suivantes de prototypage, d'iteration, et de test se passeront de facon desordonnee. C'est une bonne chose, car il encourage l'experimentation et va a l'encontre de la rigidite de la conception d'un jeu, et ce qui permet l'evolution positive de l'ensemble. Au fil du temps, vous aurez une meilleure idee sur la facon dont vous suivez habituellement ce processus et comment vous pouvez l'ameliorer.

Premiere etape: l'Idee



Les developpeurs de jeux debutants pensent parfois que c'est l'etape la plus importante dans le processus, et que tout developpement doit etre a l'arret tant qu'une une idee n'est pas exploree a fond. Suite a cela, ils ont tendance a sur-concevoir (eg. d'indigestes documents de game design), voir trop grand par rapport a leurs competences, et a surestimer la valeur des idees. Cela fait egalement une conception beaucoup plus rigide, qui finit par affecter negativement le jeu sur le long terme.

Bien que l'idee soit importante, il est plus important de comprendre la fragilite de vos connaissances tant que vous n'aurez pas fait un prototype et tester cette idee. Vous verrez que les idees qui sont dans votre tete peuvent paraitre sympa, mais que jouer a un prototype de cette idee finit par etre vraiment ennuyeux. Vous verrez egalement qu'une idee "terne" peut donner un prototype vraiment amusant !

Au cours de cette etape, assurez-vous que votre objectif et vos contraintes soient bien definies. Par exemple, "faire un jeu fun" n'est pas un objectif tres clair, tandis que "faire un jeu dans un mois qui utilise le theme du jeu Flowers et utilise de preference le nouveau systeme COM" l'est. Le deuxieme exemple montre egalement de bonnes contraintes. Certaines contraintes tres immediates qui s'appliquent a la plupart des gens qui font un jeu dans un certain laps de temps ("avant la mort", meme) et de rester a l'interieur (voire tres legerement au dessus) de votre gamme de competences. Les contraintes peuvent vous aider a penser a d'autres idees, mais il est souvent bon de faire varier le niveau de degres de liberte que vous avez sur chaque projet de jeu.

L'inspiration est un mot qui revient souvent quand on parle des idees. N'oubliez pas que l'inspiration vient de partout, telle que de votre vie, d'autres medias, la theorie sur la conception de jeux, ou meme la generation aleatoire ! La chose la plus importante que vous devez savoir sur " l'inspiration " est de ne pas sauter sur la premiere idee venue ! Lorsque vous etes " inspire ", votre cerveau pompe ces substances chimiques associees a la recompense suite a cette production heureuse d'idee, ce qui vous rend tres peu objectif sur les defauts de cette idee ! Tout ce que vous avez a faire est de vous donner du temps. Peu importe a quel point l'idee vous semble bonne sur le coup, donnez vous au moins trois ou quatre jours avant de faire davantage que d'y penser et d'ecrire a son sujet.

A un niveau inferieur, il est important de se concentrer sur la/les mecanique/s de votre idee. Rappelez-vous, vous ecrivez un jeu, pas une histoire, donc vous avez besoin d'un gameplay ! Si vous ne pouvez pas penser a bon gameplay pour cette histoire, peut-etre que cette histoire serait mieux vehiculee sous une autre forme de media.

Lorsque vous avez une idee et que vous avez patiente un laps de temps suffisant (et qu'elle sonne toujours bien), la prochaine chose que vous devez faire est de la reduire a sa plus simple expression. Cherchez ce qui vous fait vraiment aimer cette idee. Vous devez trouver le(s) element(s) noyau(x) le(s) plus fondamenta(ux) qui font que cette idee est si attirante pour vous. C'est la premiere chose dont vous avez besoin pour faire le prototype puisque l'integralite de votre jeu reposera sur ces elements de base !

Sur une note plus sombre, rappelez-vous que vous allez mourir. Gardez cela a l'esprit, et faite votre jeu comme si c'etait le dernier.

La seconde partie en francais est disponible ici : Conseils generaux sur le processus de developpement solo d'un jeu (2/5)
Sign in to follow this  
Followers 0