[Novendiales 7] Scroll

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

Scroll

Messagepar Cygal » 16 Juil 2010, 09:01

Voici ma maigre participation aux Novendiales.

Histoire de faire aussi original que les autres, j'ai fait un .. jeu de plateforme.

Vous êtes un pauvre petit smiley qu'on a lâché dans ce jeu et qui essaie de survivre. Pour cela, il doit éviter les obstacles. Heureusement, notre petit smiley a une arme : le contrôle du temps. Il peut choisir la vitesse à laquelle les obstacles vont lui tomber dessus.

http://cygal.info/scroll/scroll-linux.zip
http://cygal.info/scroll/scroll-windows.zip (pas encore testé)

Je peux donner aussi pour Mac et Solaris (et en 64 bits mais y'a pas trop d'intérêt).

- Dézipper
- lancer Scroll.jar
- Linux en ligne de commande, cd dans le dossier, puis java -jar Scroll.jar
- Windows : double-clic dessus

Plus la vitesse est grande, plus c'est dur, et plus il a de points. Le nombre de points dépend de la distance parcourue, et de la hauteur atteinte (plus il est allé haut souvent, plus il a de points).

Ce qu'il reste à implémenter :
- Calcul des points
- Génération aléatoire plus correcte des obstacles
- Pause (pour montrer son score aux autres :).
- Une animation comme là lors du saut http://fc06.deviantart.net/fs71/f/2010/183/f/c/Trempoline_by_TeaR6446.gif (smiley créé par mon frère).

Ce jeu a été implémenté dans le peu de temps que j'ai eu, merci d'être indulgent pour les bugs et pour la qualité générale. :) C'est du Java avec http://code.google.com/p/sf-library/ que j'ai découvert en faisant ce jeu.

Pre-mortem : C'était intéressant de faire un jeu de A à Z, euh, B. J'ai contribué à des jeux existants mais les bases étaient déjà posées. Je n'avais jamais eu l'occasion de gérer les collisions par exemple.
Fichiers joints
2010-07-16-104620_512x384_scrot.png
2010-07-16-104612_512x384_scrot.png
Cygal
Hello World, I'm new !
 
Messages: 41
Inscription: 22 Juil 2009, 18:05

Messagepar roger » 16 Juil 2010, 13:09

Une question stupide : comment on fait pour sauter ?
Avatar de l’utilisateur
roger
Hello World, I'm new !
 
Messages: 117
Inscription: 30 Juin 2009, 19:19

Messagepar Cygal » 16 Juil 2010, 13:23

Désolé !

Sauter : espace
Accélerer : Entrée
Dëplacer : flèches ou wad (pas encore mis pour azerty :/)
Cygal
Hello World, I'm new !
 
Messages: 41
Inscription: 22 Juil 2009, 18:05

Messagepar roger » 16 Juil 2010, 13:41

marche pas :00000010:
Bon je peux démarrer le partie mais ça finit toujours pareil, au bout de 2 secondes :D
Avatar de l’utilisateur
roger
Hello World, I'm new !
 
Messages: 117
Inscription: 30 Juin 2009, 19:19

Messagepar Cygal » 16 Juil 2010, 13:53

Essaie de double-cliquer dans la fenêtre pour avoir le focus peut-être ?
Cygal
Hello World, I'm new !
 
Messages: 41
Inscription: 22 Juil 2009, 18:05

Messagepar Gavos » 16 Juil 2010, 16:34

Effectivement, après avoir cliqué dedans ça marche mieux. Mais il y a des problèmes de collisions, parfois en retombant je me retrouve sous le niveau du sol, et une fois je suis passé à travers d'un obstacle.

Sinon, on peut accélérer mais on ne peut pas ralentir ?
Gavos
 
Messages: 1089
Inscription: 19 Mar 2005, 13:00

Messagepar Cygal » 17 Juil 2010, 14:29

Effectivement y'a un problème grave avec les collisions que j'ai corrigé maintenant. Je peux pas envoyer la nouvelle archive n'étant pas sur ma machine, j'uploaderai dimanche soir dès que je rentre...

Je peux pas éditer mon premier message pour expliquer ça, en tout cas après les corrections et les derniers ajouts ça ressemble plus à un jeu. :)
Cygal
Hello World, I'm new !
 
Messages: 41
Inscription: 22 Juil 2009, 18:05

Messagepar Cygal » 18 Juil 2010, 19:41

Voilà, j'ai mis à jour les binaires. J'ai pu corriger ce week-end les gros problèmes qu'il y avait au niveau des collisions. J'ai implémenté aussi le reste des fonctionnalités que je voulais.

http://cygal.info/scroll/scroll-linux.zip
http://cygal.info/scroll/scroll-windows.zip
http://cygal.info/scroll/scroll-macosx-universal.zip


Le gameplay est simple : il faut éviter les obstacles pour ne pas mourir et gagner des points. Les points se gagnent en restant haut (sautez, vous verrez) et en augmentant la vitesse. On ne peut pas diminuer la vitesse, seulement l'augmenter. Si un obstacle vous bloque, il est possible de le supprimer, au maximum une fois par seconde, mais cela divise vos points par deux ! Attention, donc :)

Contrôles (si ça ne fait rien, cliquer dans la fenêtre.. :/) :

Direction : gauche, droite (a/d en qwerty, ou encore q/d en azerty)
Sauter : Espace, w ou z
Entrée : accélerer
Retour arrière (Backspace) : supprimer un obstacle

Have fun! Toutes les remarques seront les bienvenues.

Bugs connus :
- la gestion des collisions ne semble pas bien fonctionner sous Windows, je vais essayer de corriger dans les prochains jours (pas pu compiler le jeu sous Windows encore donc c'est dur à débugger).

Je vais essayer de fournir un applet aussi mais c'est dur à faire. :)
Cygal
Hello World, I'm new !
 
Messages: 41
Inscription: 22 Juil 2009, 18:05

Messagepar Gavos » 19 Juil 2010, 01:42

Effectivement, ça n'est pas jouable sous Windows. Déjà on ne peut pas sauter haut donc on bloque au premier obstacle, ensuite Entrée ne semble pas fonctionner (tout comme les flèches et la barre d'espace, d'ailleurs), et enfin les mauvaises collisions nous envoient 6 pieds sous terre (dans les deux sens du terme :p)

Mais j'essaierai ça sous Linux à un moment.

Edit : bon, sous Linux (Ubuntu 9.10 je crois) j'obtiens cette erreur
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1681)
at java.lang.Runtime.loadLibrary0(Runtime.java:840)
at java.lang.System.loadLibrary(System.java:1047)
at com.sun.gluegen.runtime.NativeLibLoader.loadLibraryInternal(NativeLibLoader.java:102)
at com.sun.gluegen.runtime.NativeLibLoader.access$000(NativeLibLoader.java:51)
at com.sun.gluegen.runtime.NativeLibLoader$1.run(NativeLibLoader.java:70)
at java.security.AccessController.doPrivileged(Native Method)
at com.sun.gluegen.runtime.NativeLibLoader.loadGlueGenRT(NativeLibLoader.java:68)
at com.sun.gluegen.runtime.NativeLibrary.ensureNativeLibLoaded(NativeLibrary.java:399)
at com.sun.gluegen.runtime.NativeLibrary.open(NativeLibrary.java:163)
at com.sun.gluegen.runtime.NativeLibrary.open(NativeLibrary.java:129)
at com.sun.opengl.impl.x11.DRIHack.begin(DRIHack.java:109)
at com.sun.opengl.impl.x11.X11GLDrawableFactory.<clinit>(X11GLDrawableFactory.java:99)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:186)
at javax.media.opengl.GLDrawableFactory.getFactory(GLDrawableFactory.java:111)
at javax.media.opengl.GLCanvas.chooseGraphicsConfiguration(GLCanvas.java:520)
at javax.media.opengl.GLCanvas.<init>(GLCanvas.java:131)
at javax.media.opengl.GLCanvas.<init>(GLCanvas.java:90)
at javax.media.opengl.GLCanvas.<init>(GLCanvas.java:83)
at com.studiofortress.sf.graphics.GraphicsCanvas.<clinit>(GraphicsCanvas.java:31)
at com.studiofortress.sf.graphics.display.GraphicsWrapper.<init>(GraphicsWrapper.java:49)
at com.studiofortress.sf.graphics.display.GraphicsApplet.<init>(GraphicsApplet.java:34)
at com.studiofortress.sf.graphics.display.GraphicsApplet.<init>(GraphicsApplet.java:22)
at com.studiofortress.sf.util.CommonStartupApplet.<init>(CommonStartupApplet.java:99)
at com.studiofortress.sf.util.CommonStartupApplet.<init>(CommonStartupApplet.java:83)
at org.eisti.Main.<init>(Main.java:20)
at org.eisti.Main.main(Main.java:28)


Je n'y connais rien à Java, il y a peut-être un truc évident que j'ai oublié ?
Gavos
 
Messages: 1089
Inscription: 19 Mar 2005, 13:00

Messagepar Cygal » 19 Juil 2010, 06:44

La vraie erreur c'est (enfin l'exception) c'est ce qui est au dessus de tout ça, ce que tu as posté, c'est la « backtrace ». Tu peux me la montrer ? Sinon tu as bien les drivers qu'il faut ? Parce que « at com.sun.opengl.impl.x11.DRIHack.begin(DRIHack.java:109) » c'est louche.

Est-ce que tu arrives à jouer à http://studiofortress.com/pip_the_pea/ ? Ça utilise la même librarie que moi.

Edit : Tu es en 64 bits ? Essaie http://cygal.info/scroll/scroll-linux-amd64.zip
Cygal
Hello World, I'm new !
 
Messages: 41
Inscription: 22 Juil 2009, 18:05

Messagepar KICK » 19 Juil 2010, 10:40

Bon pareil ici, quelques problèmes de collisions sous window.
KICK
Hello World, I'm new !
 
Messages: 533
Inscription: 19 Sep 2005, 15:22

Messagepar acieroid » 19 Juil 2010, 12:14

KICK a écrit:Bon pareil ici, quelques problèmes de collisions sous window.


Même chose ici, sous linux
acieroid
Hello World, I'm new !
 
Messages: 61
Inscription: 01 Juil 2006, 15:08

Messagepar Cygal » 19 Juil 2010, 12:19

Sous Linux je peux essayer de voir ce qui ne va pas. C'est triste parce que ça marche chez moi. :( C'est au début, ou une fois que les caisses sont apparues ? C'est en atterissant ou sur le côté que çe ne passe pas ?

acieroid, tu peux envoyer la sortie standard dans un fichier et me le paster/l'envoyer par mail ?
Cygal
Hello World, I'm new !
 
Messages: 41
Inscription: 22 Juil 2009, 18:05

Messagepar NicoL3AS » 19 Juil 2010, 14:35

Sous windows 64bit : Détection des collisions OK, accélération avec Entrée OK mais impossible de sauter avec espace (j'ai bien cliqué sur la fenêtre avant).
La Destinée du Feu
Action-RPG 2D gratuit
Avatar de l’utilisateur
NicoL3AS
Hello World, I'm new !
 
Messages: 490
Inscription: 12 Aoû 2005, 17:46

Messagepar Cygal » 19 Juil 2010, 14:43

Tu as essayé avec w ou z ? (a priori la détection des collisions est pas ok une fois que t'as commencé à sauter, mais j'arrive pas à reproduire jusque là..).
Cygal
Hello World, I'm new !
 
Messages: 41
Inscription: 22 Juil 2009, 18:05

Messagepar acieroid » 19 Juil 2010, 14:54

Cygal a écrit:Sous Linux je peux essayer de voir ce qui ne va pas. C'est triste parce que ça marche chez moi. :( C'est au début, ou une fois que les caisses sont apparues ? C'est en atterissant ou sur le côté que çe ne passe pas ?

acieroid, tu peux envoyer la sortie standard dans un fichier et me le paster/l'envoyer par mail ?


Dès que je saute, il passe à travers le sol et se retrouve bloqué en fait. Voilà pour la sortie standard: http://paste.awesom.eu/fsioxxybf
acieroid
Hello World, I'm new !
 
Messages: 61
Inscription: 01 Juil 2006, 15:08

Messagepar Cygal » 19 Juil 2010, 15:15

Cygal
Hello World, I'm new !
 
Messages: 41
Inscription: 22 Juil 2009, 18:05

Messagepar Cygal » 19 Juil 2010, 18:36

Voilà, j'ai mis à jour, ça devrait être plus facile à jouer. Have fun!

Je suis toujours là pour essayer de débugger si y'a des problèmes.
Cygal
Hello World, I'm new !
 
Messages: 41
Inscription: 22 Juil 2009, 18:05

Messagepar Bryce » 19 Juil 2010, 21:35

C'est très très très facile. En fait il suffit de rester appuyer sur Z et D et ça passe tous les obstacles :/
Y a un petit bug aussi, on peut passer entre les blocs quand ils se touchent uniquement sur un coin, comme ça par exemple:
[]
..[]
Bryce
Hello World, I'm new !
 
Messages: 9
Inscription: 14 Juil 2010, 09:43

Messagepar Cygal » 20 Juil 2010, 07:01

C'est facile de ne pas perdre, oui. Mais est-ce que tu as augmenté la vitesse (avec Entrée) et resté en hauteur pour gagner des points ? (Tout en bas tu gagnes un point de temps en temps, en haut c'est dix ou cent mille).

Quel est ton score ? :) J'envisage de rendre ça plus difficile au niveau des blocs mais à ça provoquerait des bloquages, et même si on peut supprimer un bloc, je sais pas trop si c'est une bonne idée. La dernière solution serait de faire "jouer" en accéléré une IA et supprimer quelques blocs qui la gênent mais c'est plus compliqué à implémenter déjà.

Ensuite oui, il reste des bugs (comme celui du coin) mais je sais pas si les corriger rendrait le tout plus fun (encore une fois rester sur z et d c'est pas la meilleure façon de jouer). Au début j'avais un saut plus réaliste avec une joli parabole et tout mais je trouve ça moins drôle.
Cygal
Hello World, I'm new !
 
Messages: 41
Inscription: 22 Juil 2009, 18:05


Retourner vers Novendiales

Qui est en ligne

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

cron