[Novendiales 7] Robotime

Forum sur le concours/défi sans périodicité fixe et sans rien à gagner du GCN.

Robotime

Messagepar acieroid » 16 Juil 2010, 12:04

Voilà ma participation.

En gros, robotime est un jeu comme le vieux robots, sauf que vous avez la possibilitée de remonter le temps (les robots se déplacent alors en arrière, tandis que vous restez à votre place). Le but est de survivre le plus longtemps au robots et d'essayer de les tuer en les faisant entrer en collision. Pour faciliter la tâche vous pouvez donc contrôler le temps (revenir en arrière ou aller vers l'avant (ce qui revient simplement à attendre sur place)). Il y a aussi deux bonus: un pour gagner plus de puissance (quand vous remontez dans le temps vous perdez de la puissance) et un qui vous permettra de tuer instantanément les robots trop proches de vous.

Le jeu est fait en Common Lisp et c'est aussi ma participation pour le 2010 International Lisp Game Expo. Toutes les informations nécessaires pour l'installer et le lancer sont ici (en anglais).

Au niveau des graphismes, ils sont repris de opengameart.org, donc les robots ne sont pas des robots mais des espèces de créatures grises et le joueur ressemble un peu à un chevalier. Évidemment, une fois que les robots sont morts ils se transforment en tas de sable. Les bonus sont représentés par des sphères de couleur. Vous pouvez voir tout cela sur la screenshot en attachement.

Le jeu se joue avec les touches ertdgcvb pour les déplacements, espace pour tuer les ennemis à proximité si vous avez des blasts en réserve, f pour avancer dans le temps, y pour reculer dans le temps.

Je vais aussi essayer de fournir une version binaire pour simplifier l'installation. N'hésitez pas à me demander de l'aide si vous avez le moindre problème lors de l'installation de l'environnement lisp (l'implémentation et les libs).

Au niveau de l'avancement, excepté quelques corrections mineures, je pense pouvoir dire que le jeu est fini.

Tout retour est évidemment le bienvenu.
Fichiers joints
screenshot.png
acieroid
Hello World, I'm new !
 
Messages: 61
Inscription: 01 Juil 2006, 15:08

Messagepar Gavos » 19 Juil 2010, 03:28

Apparemment il faut également cl-openal...

debugger invoked on a ASDF:MISSING-DEPENDENCY in thread #<THREAD "initial thread" RUNNING {AA5EA51}>:
component #:CL-OPENAL not found, required by
#<SYSTEM "until-it-dies.sound" {AF72D39}>


Ainsi que cl-devil...

debugger invoked on a ASDF:MISSING-DEPENDENCY in thread #<THREAD "initial thread" RUNNING {AA5EA51}>:
component #:CL-DEVIL not found, required by
#<SYSTEM "until-it-dies.graphics" {AF036D9}>


J'ai réussi à installer cl-openal, mais pas cl-devil. C'est bien de là qu'il faut le récuperer ?
Gavos
 
Messages: 1076
Inscription: 19 Mar 2005, 13:00

Messagepar acieroid » 19 Juil 2010, 08:58

Effectivement, ce sont des dépendances de Until It Dies, toutes les deux disponibles sur github, avec une méthode d'installation identique à Until it Dies: cl-openal et cl-devil. Il faut bien entendu installer aussi les libs correspondantes (openal et devil).

Aussi, je viens de me rendre compte qu'un lien est mal passé sur le message initial, les informations sur robotime sont donc disponibles ici
acieroid
Hello World, I'm new !
 
Messages: 61
Inscription: 01 Juil 2006, 15:08

Messagepar tof » 20 Juil 2010, 21:55

J'ai fixé le lien du premier message, maintenant faut que j'essaie :)
tof
 
Messages: 1763
Inscription: 11 Avr 2005, 12:00

Messagepar Cygal » 21 Juil 2010, 07:18

Il faut aussi zpb-ttf et ftgl, peut-être que tu pourrais l'indiquer dans ta doc. J'ai quand même réussi à compiler mais au lancement j'ai :


... chargement de tous les .asd...
Unhandled X11 event: 21

debugger invoked on a CL-DEVIL:COULD-NOT-OPEN-FILE in thread #<THREAD
"initial thread" RUNNING
{AAD5B31}>:
Condition CL-DEVIL:COULD-NOT-OPEN-FILE was signalled.

Type HELP for debugger help, or (SB-EXT:QUIT) to exit from SBCL.

restarts (invokable by number or by possibly-abbreviated name):
0: [CONTINUE] Continue
1: Ignore runtime option --eval "(robotime:run)".
2: [ABORT ] Skip rest of --eval and --load options.
3: Skip to toplevel READ/EVAL/PRINT loop.
4: [QUIT ] Quit SBCL (calling #'QUIT, killing the process).

(CL-DEVIL:CHECK-ERROR)


J'ai installé les librairies dans /usr/lib/sbcl, pas ~/.sbcl, mais sinon j'ai suivi les instructions. Tu sais ce que ça veut dire ou quel fichier c'est ? (J'ai une fenêtre qui s'affiche et même si y'a quelques pixels de couleurs différentes ça ressemble pas du tout à ton screen).
Cygal
Hello World, I'm new !
 
Messages: 41
Inscription: 22 Juil 2009, 18:05

Messagepar acieroid » 21 Juil 2010, 11:10

Ok je vois d'où le problème vient, dès que j'ai adapté ça je mettrais aussi à jour la doc.

Edit: voilà, le dernier commit devrait corriger ça, et la doc a été mise à jour
acieroid
Hello World, I'm new !
 
Messages: 61
Inscription: 01 Juil 2006, 15:08

Messagepar Cygal » 21 Juil 2010, 12:05

Ça fait toujours pareil, par contre si j'hardcode le dossier comme tu avais fait avant ça fonctionne bien§

Il faudrait un guide des stratégies possibles parce que j'ai toujours crevé assez vite à ce genre de jeu :-° (j'ai pas encore trop remonté le temps c'est vrai). Et il faut un typematrix pour apprécier pleinement les touches, j'ai encore un peu de mal avec ça.
Cygal
Hello World, I'm new !
 
Messages: 41
Inscription: 22 Juil 2009, 18:05

Messagepar acieroid » 21 Juil 2010, 13:55

Normalement il recherche le dossier resources à partir du dossier dans lequel tu es quand tu lance le jeu, donc sauf si tu lance le jeu depuis un autre dossier, c'est bizarre que ça mette la même erreur :/

Sinon la technique qui marche plutôt bien, c'est de fuir pendant un moment, jusqu'à ce que deux robots rentrent en collision, et après tu t'arrange pour te positionner entre les débris et un/plusieurs autres robots (là tu remonte le temps quand c'est nécessaire pour être bien positionné), et tu avance en ligne droite.

Pour le typematrix effectivement je me suis rendu compte que le placement des touches était moins "logique" sur un clavier normal». J'aurais peut-être dû ajouter des déplacements à la souris (tu cliques dans la direction où tu souhaites aller), mais en isométrique c'est assez chiant à gérer donc je ne l'ai pas fait.

Il faudrait aussi que je regarde comment rendre ça plus facile à installer avec toutes les dépendances (mais je pense que tout pourra passer par asdf-install d'ici les prochaines novendiales, vu que les libs utilisées sont assez récentes pour le moment).
acieroid
Hello World, I'm new !
 
Messages: 61
Inscription: 01 Juil 2006, 15:08

Messagepar Gavos » 23 Juil 2010, 23:56

Voilà, après avoir installé cl-devil (et ajouté le symlink qui va bien...) et les libs qui manquaient sur mon système, ça marche pas mal.

J'ai à peu près compris comment ça fonctionnait (jamais joué à Robots), mais j'ai l'impression que les robots ne sont pas très aggressifs. Après certains déplacements je m'attends à être bouffé alors qu'en fait non. Par contre ils se tuent s'ils touchent une motte de terre, c'est normal ? Et quand on revient dans le temps en début de partie, ils meurent tous, c'est normal aussi ? :D

Ça manque un peu "d'enrobage" à mon avis, ce serait pas mal de remplir tout l'écran, par exemple avec un tile d'une autre couleur, ou bien par une falaise. Là le grand vide noir autour c'est dommage. Il faudrait aussi un peu d'écriture, notamment des scores (?) et une légende pour la jauge à droite. Deux trois sons à la con aussi seraient pas mal :)
Gavos
 
Messages: 1076
Inscription: 19 Mar 2005, 13:00

Messagepar acieroid » 29 Juil 2010, 20:18

Merci pour le retour.

j'ai l'impression que les robots ne sont pas très aggressifs. Après certains déplacements je m'attends à être bouffé alors qu'en fait non.

Effectivement j'ai eu quelques problèmes pour gérer le déplacement des robots avec l'isométrie, mais je vais essayer de corriger ça maintenant que j'ai pris un peu de recul par rapport au projet.

Par contre ils se tuent s'ils touchent une motte de terre, c'est normal ?

C'est normal (c'est présent dans le jeu original). Sans ça, terminer une partie où il ne resterait qu'un seul robot serait impossible (sauf ici avec le système de blast).

Et quand on revient dans le temps en début de partie, ils meurent tous, c'est normal aussi ? :D

Non ce n'est pas normal, Cygal m'avait déjà fait la même remarque. Je n'étais pas présent cette semaine et donc je n'ai pas pu corriger ce genre de petit bug, mais je vais essayer de le faire cette semaine.

Ça manque un peu "d'enrobage" à mon avis, ce serait pas mal de remplir tout l'écran, par exemple avec un tile d'une autre couleur, ou bien par une falaise. Là le grand vide noir autour c'est dommage. Il faudrait aussi un peu d'écriture, notamment des scores (?) et une légende pour la jauge à droite. Deux trois sons à la con aussi seraient pas mal :)


Merci pour les suggestions, j'essayerais aussi de faire ça durant la semaine. Pour les scores, je n'ai pas mis de système de score parce que je ne voyais pas trop l'intérêt vu qu'il y a déjà les niveaux qui peuvent être interprétés comme scores. Ceci dit je pourrais aussi rajouter un sxstème de score sans trop de difficulté je pense.
acieroid
Hello World, I'm new !
 
Messages: 61
Inscription: 01 Juil 2006, 15:08


Retourner vers Novendiales

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 6 invités

cron