Page 1 of 5

JEU: MetroSiberia un tunnel pas comme les autres

PostPosted: 21 Jan 2015, 18:43
by Plokki
Yop ! Voici mon nouveau projet:
MetroSiberia v1.gif


C'est une adaptation du jeu flash metro siberia où vous commandez un triangle avec la barre d'espace, simple mais rigolo.
http://www.zebest-3000.com/jeux/jeu-2456.html

Le vaisseau cherche à tomber en permanence, il faut donc l'en empêcher en le faisant pointer vers le haut.
Actuellement on peut modifier son comportement avec 3 paramètres: vitesse, délai de rotation entre chaque orientation et nombre d'orientations disponibles (en tout il y en a 7).
Ici le jeu n'en est qu'au tout début du développement, il manque pas mal de trucs que je voudrais implémenter comme des décors animés, des modificateurs de gravité, de vitesse... et aussi la gestion des collisions ! :p 3 pixel-test devraient suffir
Il y a quand même quelques problèmes durs à changer: le "flou" de l'écran à cause du scrolling et la taille de la map qui n'est pas générée aléatoirement (celle du screen fait 100 de long et prend déjà 1200 octets alors si j'en veux une de 1000 de long ça tape direct dans les 12 000 octets :~o , sans parler du temps pour la créer)

Re: JEU: MetroSiberia un tunnel pas comme les autres

PostPosted: 26 Jan 2015, 09:52
by matref
Hey, ça a l'air pas mal du tout :)

Pour le "flou" de l'écran (la rémanence), y'a rien à faire, l'écran est comme ça.
Pour générer le monde aléatoirement, vu ton screenshot (je suis sur téléphone donc je peux pas essayer le jeu), tu peux créer des petits bouts de tilemaps prédéfinis et les tirer aléatoirement pour les afficher les uns après les autres.

Re: JEU: MetroSiberia un tunnel pas comme les autres

PostPosted: 28 Jan 2015, 15:41
by Plokki
Merci ;)
Pour le flou de l'écran en effet y a pas grand chose à faire, par contre en jouant sur le contraste je pense qu'il y a moyen de créer des effets sympas comme des clignotement de néons ou autre.
Pour la map j'en ferais dans tous les cas une créée à l'avance mais l'idée de faire des bouts est intéressante. Par contre pour gérer la difficulté ça implique de devoir les classer et d'en faire un bon paquet pour éviter qu'ils ne réapparaissent trop souvent. J'y travaillerais bientôt mais je compte d'abord toucher au moteur 3D :D

Re: JEU: MetroSiberia un tunnel pas comme les autres

PostPosted: 28 Jan 2015, 18:48
by TheMachine02
tilt ! *moteur 3D
*TheMachine02 is rising from is home
Tu veux faire quoi avec la 3D ? :p

Sinon, ça m'a l'air d'un bon petit jeu, continue comme ça :D

Re: JEU: MetroSiberia un tunnel pas comme les autres

PostPosted: 05 Feb 2015, 18:58
by Plokki
bon en fait j'ai quand même avancé dans le jeu:
MetroSiberia v1.gif

Voilà une petite démo jouable ;) Les principaux éléments de décors y sont présentés sur une map relativement longue et plutôt difficile. J'espère que vous aurez au moins autant de mal que moi à la finir (en plus c'est super dur sur émulateur avec la fluidité bizarre).
A.8xp
MAPMETRO.8xv
PICS.8xv

Fourrez tout ça sur votre calto et faites asm(prgmA

Sinon voici le type de décor animé (celui-ci est le plus complexe, les autres ne seraient que des portes, des pics qui tombent, etc...) que je voudrais implanter:
Rect.gif

En gros c'est un rectangle de taille et de dimensions pas encore définies qui tourne sur lui même et qu'il faut éviter, le cercle ne sera pas présent bien sûr.
Malheureusement je le trace avec 4 lignes sauf que la détection de collision du vaisseau se fait avec 3 pixeltests et comme l'intérieur est creux il est peut être de possible de passer au travers (j'ai pas testé). Quelqu'un a une idée pour afficher un rectangle plein ?

Re: JEU: MetroSiberia un tunnel pas comme les autres

PostPosted: 05 Feb 2015, 19:03
by matref
Wow, en tout cas c'est super joli.

Pour ton rectangle, ce que j'ai fait dans IkarugaX c'est utiliser des équations cartésiennes. En gros, quand tu passes le X/Y de ton vaisseau dans l'équation cartésienne d'une droite (qui est de la forme ax + by + c = 0), ça donne 0 si le point est sur la droite, et tu peux savoir de quel côté il est avec le signe. Ce que je fais c'est que je teste les deux côtés du laser (c'est un laser chez moi) et je regarde si la hitbox du vaisseau est d'un côté pour l'un et de l'autre côté pour l'autre. Comme le vaisseau peut pas être en même temps à droite du côté droit et à gauche du côté gauche, c'est qu'il est à gauche du côté droit et à droite du côté gauche, c'est à dire dans le laser. Par contre toi si tu fais ça ça va faire beaucoup de tests.

Sinon teste quelques pixels de plus :P

Re: JEU: MetroSiberia un tunnel pas comme les autres

PostPosted: 05 Feb 2015, 19:15
by Plokki
Ah pas mal l'idée, mais t'as pas tort quelques pixels tests de plus c'est pas bête.Du moins à vitesse réduite parce que quand le vaisseau avance de 4px à chaque fois il fait presque des sauts du coup pour certains éléments fins tu peux passer au travers avec de la chance :? . Enfin bref je testerais les deux.
Sinon comment tu as fait dans Ikarugax pour tracer des laser épais ? tu fais plein de lignes plus ou moins parallèles ?

Heu tant que j'y suis j'aimerais faire une explosion un peu plus réaliste, une idée ?

Re: JEU: MetroSiberia un tunnel pas comme les autres

PostPosted: 07 Feb 2015, 21:16
by Plokki
MetroSiberia v2.gif

Tadam !!
Les décors animés sont implantés :D Et comme on peut le voir ça bouge ! Le pire c'est que c'était facile, j'en serais presque déçu si c'était pas aussi génial. En passant j'ai ajouté la trainée pour rester fidèle au jeu de départ. Vous préférez la quelle: la carrée ou la ronde ?
MetroSiberia v3.gif

Bon on peut aussi voir les petits problèmes de collision mais c'est du détail par contre les lignes qui ne se tracent pas en dehors de l'écran c'est problématique ! help me por favor ! :'(

Re: JEU: MetroSiberia un tunnel pas comme les autres

PostPosted: 07 Feb 2015, 22:35
by matref
Pour les lignes qui se dessinent pas quand un bout est hors de l'écran, c'est la routine Line de l'Axe qui est comme ça. Il faut que tu utilises un algorithme de line clipping si tu veux que ça marche, j'en ai fait un pour Axagon, tu peux l'utiliser, la source est là : http://www.ticalc.org/archives/files/fi ... 46268.html (c'est la routine CLine et la routine Region).

Perso je préfère les carrés :D

Re: JEU: MetroSiberia un tunnel pas comme les autres

PostPosted: 08 Feb 2015, 18:49
by Plokki
Alors si j'ai bien compris je fait Sub(Cline,X1,Y1,X2,Y2) pour tracer ma ligne ?
Tu pourrait m'expliquer vite fait comment ça marche parce que le code est un peu confus pour moi 0:]
J'espère juste que c'est suffisamment rapide pour que mon jeu reste en 6Mhz :)

MetroSiberia v4.gif
Voila les autres décors animés B-) sauf que... ça lag ! Va falloir optimiser tout ça !