Voici mon ébauche de contribution aux Novendiales : Sablieriste (Windows seulement, nécessite .NET 3.5 et XNA 3.1)
Peu de gens savent que le temps ne s'écoule pas tout seul. Quelque part se trouve le Sablier, un objet fabuleux contenant le temps qui s'écoule et se diffuse alors dans l'univers... Et lorsque le Sablier a fini de se vider, il faut quelqu'un pour le retourner; c'est la mission du Sablieriste.
Mais le Grand Architecte a été très inventif dernièrement, à tel point que le Maître Sablieriste n'a plus le temps de s'occuper de tous ces nouveaux univers pas très au point que le créateur laisse dans son sillage. Il décide alors d'embaucher un stagiaire pour lui apprendre les rudiments du métier. Et contre toute attente c'est vous qu'il a choisi ! Vous aviez postulé sur Multivers Emploi sans trop y croire mais il semblerait que peu de monde se soit bousculé au portillon (1).
Pour votre premier jour, le Maître Sablieriste vous accueille plutôt froidement et vous fournit en guise de vaisseau un SAB-1000, un modèle obsolète. « Je n'ai pas envie de voir mon nouveau Super Blist détruit en quelques secondes par un incapable... » dit-il en grommelant. Puis il vous explique votre première tâche : il s'agit de retourner de temps en temps le Sablier d'un univers relativement simple (oui, tout est relatif). Bien entendu, pour que le temps s'écoule correctement il faut ce Sablier soit relativement vertical. « Il ne doit pas pencher plus de 45 degrés durant plus de 10 secondes, compris ? Et pense à le retourner dès qu'il s'est vidé. C'est un brouillon que le Grand Architecte a oublié de jeter à la poubelle mais ça ne te dispense pas de faire ton travail correctement ! ».
Vous vous lancez alors à l'assaut de ce Sablier géant...
(1) Il faut dire que le travail n'est pas très gratifiant... En effet les habitants d'un univers ne sont généralement pas conscients du travail effectué par le Sablieriste vu que tout se met en pause dès que le temps s'arrête. Enfin presque tout, il y a toujours des éléments qui ne dépendent pas du temps, ce qui ne manque pas de provoquer quelques incohérences lorsque le temps s'arrête trop longtemps. Certains peuples ont ainsi vu leurs théories scientifiques s'effondrer d'un coup à cause d'une observation inexplicable, mais ceci est une autre histoire...

Déplacez le vaisseau avec les flèches et tirez avec Espace. Il n'y a pas de but pour l'instant, on ne peut que faire tourner le Sablier...
Pour le le lancer il faut avoir préalablement installé .NET 3.5 si vous ne l'avez pas, ainsi que les redistribuables de XNA 3.1.
Pour cette édition j'ai choisi d'essayer XNA (en C#, donc) pour voir un peu à quoi ressemblait ce framework dont on entend parler depuis quelque temps. Comme j'ai mis du temps à trouver une idée et que j'ai eu une semaine chargée, je n'y ai travaillé que jeudi soir, samedi et dimanche... Et j'ai dû passer les deux tiers du temps à essayer d'implémenter des collisions satisfaisantes, sans jamais avoir réussi. Je connaissais très peu le C# mais ça n'a pas été trop difficile de s'y mettre avec un passif de C++ (à part quelques subtilités surprenantes notamment au niveau des struct). Quant au XNA il m'a fait une bonne impression mais je n'y ai rien trouvé de révolutionnaire. Un des principaux avantages réside dans le Content Pipeline mais je ne l'ai quasiment pas exploité, il faudrait voir ça dans un gros projet.
Le jeu ne paye pas de mine mais c'est pourtant le plus ambitieux que j'ai commencé à ce jour. Chaque niveau serait un monde aux propriétés et objectifs différents, et j'aimerais bien en faire quelque chose de joli pour une fois. Mais je ne vais pas tarder à ré-attaquer mes précédentes Novendiales, donc je serai de retour sur le Sablieriste très bientôt !