Aller au contenu






Photo

Skippu, Un Mod Que Vous Ne Subirez Jamais

Posté par Cogite Stibon , 30 janvier 2012 · 1 938 visite(s)

game design morrowind Nostalgie
Comme beaucoup d'entre nous, je traine un vieux stocks de projets lancés il fut un temps, et qui n'aboutiront jamais. Alors, puisque j'ai un espace pour mes vieux radotages, je vais vous parler de l'un d'entre eux.

Le titre "Skippu" est un hommage au kangourou de Pratchett dans "Le dernier continent", mais l'idée m'est venue lors d'une des nombreuses discussion sur le réalisme et l'immersion  - vous avez remarqué comme on peut être fort en redondance cyclique sur wiwiland ?

Bref, l'idée de base était "Pourquoi ne doit-on pas se laver dans Morrowind ?" Il y a des mods qui imposent de manger ou de dormir, dès tas de gens râlent après le manque de réalisme de l'inventaire, de la fatigue, des effets du froid, de l'eau ou de la chaleur. Mais personne ne s'est jamais soucié de l'importance de l'hygiène corporelle dans un Jdr ! Est-ce que parce qu'elle ne fait pas partie des préoccupations du joueur moyen ? Ou parce que pousser le réalisme à ce point finit par nuire à l'immersion plutôt que la renforcer ? Mon âme de scientifique amateur m'imposait de valider ces hypothèses par une expérience...

Me voilà donc parti à concevoir le game design de mon mod....

Etape 1 : que se passe-t'il quand on ne se lave pas pendant un certain temps ?

On a l'air sale, on sent mauvais, on risque d'attraper des maladies. J'élimine rapidement la première solution, hors de mes compétences graphique, et la troisième, qui n'aurait pas d'impact sur tous les PJ ayant suffisamment avancé dans la quête principale. Reste la seconde, qui en plus se prête bien aux délires.

Etape 2 : Quelles sont les conséquences quand on sent mauvais ?

Les gens sont gênés, ils vous en font la remarque, ils évitent de vous de parler, voire, dans les cas extrêmes, ils vous fuient. Le panel de réaction est assez large, et il permet de gérer une bonne progressivité de la gêne amenée au joueur. Ça marche !

Etape 3 : Comment éviter de sentir mauvais ?

Se laver bien sûr, de préférence avec du savon plutôt qu'avec de l'eau seule. Mais on peut aussi porter un parfum qui masque l'odeur un certain temps, ou un déo qui, en évitant la transpiration, retarde le moment où l'on va se mettre à sentir.

Ça marche ! J'ai mon concept de game design, il faut maintenant décliner en terme de jeu :

Au fur et à mesure du temps qui passe, sans que le PJ ne soit allé dans l'eau ou ce soit "lavé", son "niveau de puanteur" augmente, pour passer 4 paliers :
- palier 1 : les PNJ le saluent avec des phrases du type "vous ne trouvez pas que ça sent bizarre par ici",  quand ils n'ont pas de choses plus importantes à lui dire
- palier 2 : les PNJ le saluent avec des phrases du type "vous devriez allez vous laver",  quand ils n'ont pas de choses plus importantes à lui dire. Ils perdent N points de disposition.
- palier 3 : les PNJ refusent de parler au PJ en lui disant qu'il sent trop mauvais.
- palier 4 : les PNJ non hostiles s'écartent de plusieurs mètres quand le PJ s'approche d'eux.
Je décide de ne pas compter le temps passé à attendre ou à dormir, histoire de ne pas être trop pénalisant. Les temps de passage d'un niveau à l'autre, et le nombre de point perdu sera à régler en fonction des tests. Je pars sur des valeur à priori de 1 niveau toutes les journées in game, et de 10 points de disposition.

Se baigner dans de l'eau fait baisser le niveau de puanteur  jusqu'au palier 1.
Se baigner dans de l'eau et utiliser un savon fait tomber baisser le niveau de puanteur à zéro
Utiliser un déodorant empêche le niveau de puanteur de progresser pendant toute sa durée d'effet (une journée en valeur de départ)
Utiliser un parfum "masque" le niveau de puanteur pendant toute sa durée d'effet, et ajoute des points de personnalité (une journée d'effet et 10 points de personnalité en valeur de départ)

Les marchands disposent de stock variable et renouvelable de parfums, savons et déodorants.

Il ne reste qu'un problème non résolu à ce stade : je n'ai pas prévu de moyen pour le joueur de connaître son niveau de puanteur sans s'adresser à un PNJ. Tant pis, on dira que le PJ s'habitue à sa propre odeur sans en être conscient.

Je suis finalement passé au codage, ce qui m'a permis de progresser en scripting.
- pour gérer le "niveau de puanteur", c'était facile : une variable qui augmente en fonction du "getsecondpassed" et du "timescale". Deux autres variables pour gérer la durée d'effet du parfum et du déo, et c'était bon
- Pour gérer le fait qu'on soit dans l'eau, c'était moins facile. Je me suis basé sur l'altitude du PJ dans les cellules extérieures. Pour les cellules intérieures, je ne sais plus si j'avais réussi à trouver comment récupérer la variable codant le niveau de l'eau, mais je ne crois pas.
- Pour les salutations et les points de dispositions, j'utilisait des greetings de niveau différent selon le niveau de puanteur. Simple et efficace. Je m'étais bien amusé à imaginer des répliques différentes en fonction de la race et de la classe du PJ et du PNJ...
- Pour ajouter des objets aux marchands sans créer d'incompatibilités, là aussi, j’utilisais des greetings en fonction de la classe du PNJ.
- Pour les PNJ qui s'enfuient, j'avais trouvé une super solution à base de "Hello" (les phrases que prononcent les PNJ quand vous passez à côté d'eux, du genre "Que voulez-vous ?"), et de "AI flee". Ça marchait impeccable, jusqu'à ce que je le teste avec Nova Magicka. Et là, catastrophe. Au lieu de fuir sur quelques mètres et de s'arrêter, comme dans le jeu de base, les PNJ se mettaient à attaquer avec des sorts de_la_mort_qui_tue ! Mon perso test s'est fait tué par Fargoth un nombre incalculable de fois.

J'ai cherché un moment une solution, et puis j'ai fini par laisser sombrer le mod dans mon cimetière des projets inachevés. Avec mes changements de PC et mes ré-installations successives, j'ai même fini par paumer l'esp... Dommage

L'expérience a été assez rigolote. Je pense que, si j'étais allé au bout, les gens l'auraient téléchargé par curiosité, mais personne n'aurait joué des parties complètes avec ce mod. Il présentait en effet un défaut majeur de de gameplay...

Cogite




Coucou, Cogite...

C'est amusant, ce problème d'hygiène doit être commun à beaucoup de gens, puisque j'ai moi-même commencé à modeler des installations sanitaires, comme des douches, des baignoires et autres lavabos, le tout pleinement fonctionnel, avec jet et sons d'eau...

La sortie du mod "Provincial Bath Shop" de Korana m'a poussée à me tourner vers d'autres travaux, mais j'ai gardé une salle de bain complète, installée dans ma maison personnelle...

Cogite Stibon
30 janv. 2012 - 16:01
Coucou Kira :sorcerer:

Ça fait du bien de voir que je ne suis pas le seul à me préoccuper de l'hygiène des aventuriers. Il faudrait qu'on lance un grande campagne d'action sanitaire dans les ES (et je ne parle même pas des Fallout...)

Tu aurais des screenshots de tes créations ? Te connaissant, je suis sûr qu'elles sont magnifiques.
Je vais essayer de retrouver la collection complète, mais pour le moment, je ne sais pas vraiment où je l'ai rangée...
En attendant, voici une image de la douche, reconstituée dans NifSkope, avec son eau et sa vapeur, parce qu'une douche bien chaude, c'est beaucoup plus agréable...
Image IPB

J'ai attaché un petit script au tout, et il suffit d'actionner le mélangeur pour que le jet d'eau apparaisse, l'eau monte légèrement dans le bac, tandis que la vapeur jaillit et qu'un bruit de cascade se fait entendre...
Les textures animées restituent bien l'aspect de l'eau, et le tout est étonnamment relaxant...

Cogite Stibon
30 janv. 2012 - 17:16
Magnifique !

J'avais pensé, dans mon mod, à "punir" les PJ qui ne se lavent pas. Mais ta solution est bien meilleure : les inciter à aller se laver, avec de l'eau chaude, un bruit de cascade, une belle cabine de douche, et tout le reste.

Il ne manque plus que la version masculine pour être sûr d'attirer tout le monde :sorcerer:
Je vais sans doute passer pour glauque, si j'explique que j'ai retourné un temps une idée quasiment inverse :green: :
Le caractère "remarquable" d'un PJ est proportionnel à son score en personnalité. Donc, pour éviter d'être remarqué usons de potions et autres moyens "enlaidissants" : atténuation de personnalité !

Les nobles ayant tendance à détourner les yeux de ce "clochard", les gardes étant peu soucieux de mettre les doigts "là-dedans"...etc. Le tout bien entendu dans une optique membre de la Guilde des Voleurs, fugitif, PJ ayant quelque-chose à se reprocher...

Sinon, pour revenir à l'aspect technique, Cogite, les problèmes que tu évoques étaient probablement contournables. Cependant tu en aurais trouvé un autre sur ta route : Compter sur la fuite qui s'arrête à quelques mètres, c'est compter sur un bug (d'ailleurs corrigé depuis). Mais je suppose que cela n'a plus trop d'importance :)

Enfin, la douche de style "intérieur hlaalu" de Kira m'amuse beaucoup :D

Cogite Stibon
30 janv. 2012 - 17:41
C'est intéressant aussi ton idée. Comme quoi, ce que l'on choisit de simuler dans un jeu ou un mod est d'abord un choix de design.

Pour les aspects techniques, je ne comptais pas sur la fuite qui s'arrête - je l’arrêtai moi-même, et bien plus près du PJ que si j'avais compté sur le bug du jeu de base. Bon, ça restait quand même passablement buggué, car, si je faisais fuir plusieurs PNJ d'un coup, je n’arrivais à arrêter la fuite que du dernier. J'aurais pu gérer ça avec un flag empêchant d'en faire fuir un deuxième avant que le premier ne soit arrêté, mais bon...

Comme tu le dis, ça n'a plus guère d'importance. Si, par miracle, j'arrive à remettre la main sur l'esp, je le posterais ici pour ceux que ça pourrait intéresser.
Coucou...
Relisant ton billet, il me vient à l'idée que le joueur pourrait se renseigner sur son apparence physique tout simplement en se regardant dans un miroir de poche, simple misc item placé dans l'inventaire qui pourrait, une fois équipé, donner toute évaluation physique désirée...
Il existe un exemple de ce genre d'objet dans le mod "Tocante dwemer"... Il donne l'heure et la date quand on le souhaite et peut même fonctionner en horloge parlante automatique... La fonction automatique pourrait fort bien simuler l'odorat du joueur... Une série de message box du type "j'ai trop transpiré", "Je mériterai vraiment un bon bain", jusqu'à "Je ne peux décemment pas approcher quelqu'un dans cet état" éviterait les fautes de bienséance...
On peut d'ailleurs prendre en compte le fait qu'un pêcheur de harengs de Khuul devra vraisemblablement être olfactivement moins pointilleux qu'un noble Rédoran de même qu'un parfum délicat et couteux vous fera à coup sûr remarquer et cataloguer comme intrus par les habitants des égouts de Vivec...

Derniers billets

Derniers commentaires