Jump to content
Sign in to follow this  
oof-will

SEGA PONG!

Recommended Posts

Voilà ma première rom Megadrive, codée par mes soins :D (Les musiques et bruitages ont étés implémentés par X-death, que je remercie au passage pour son aide!)

 

Téléchargement direct

 

Sega%20Pong%20Main%20Screen.png

 

Juste pour info, les seuls programmes que j'avais fait avant étaient des programmes de résolution d'équation du second degré sur TI-83 :D

 

Je vous présente donc ce SEGA PONG!

 

Volontairement les graphismes sont très simples, ce jeu c'était surtout pour me familiariser avec le kit de développement.

Du coup, pas de fioritures ^^

 

Petite notice d'utilisation :

Les options :

 

-Le niveau Normal correspond à une vitesse lente (convient pour des enfants)

-Le niveau Fast propose un challenge classique.

-Le niveau Diabolic propose un challenge accru dans lequel la balle atteint une vitesse difficilement contrôlable.

 

Plus le niveau est élevé et plus les points grimpent vite!

 

En cours de jeu :

 

-Le niveau Fast est automatiquement atteint à partir de 200 pts,

-Le niveau Diabolic est automatiquement atteint à partir de 500 pts,

-A partir de 1000 pts, la balle accélère encore pour atteindre une vitesse ahurissante! (lol on croirait une notice d???époque :P )

 

Les commandes :

 

-En cours de jeu, vous pouvez mettre en pause via la touche Start. Dans ce temps de pause, les sprites ne sont pas visibles (les manettes avec ralenti, DTC :) )

-Pour déplacer la batte, pressez simplement droite ou gauche sur le D-pad.

-à partir du niveau Diabolic, votre batte peut se déplacer en mode turbo. Pour l???utiliser, pressez A en plus de la direction dans laquelle vous voulez vous déplacer. Attention toutefois, la vitesse de déplacement élevée pourrait vous jouer des tours!

 

Merci à ceux qui auront la patience de le tester, et n'hésitez pas à commenter, ou même à proposer des améliorations (sachant que je ne pense pas faire de GRANDS changements sur ce jeu à l???heure actuelle car je bosse déjà sur un nouveau projet, mais de petites améliorations sont envisageables)

 

Et puis faites péter les scores :D

La je viens de faire 1620pts avec 3 vies :P

Share this post


Link to post
Share on other sites

Vraiment sympa ce petit jeu , bel essai Oof-Will :D

J'en profite pour apporter quelque petite précision pour l'audio.

La partie en phase de jeu est en PCM 8bit avec une musique récupérer de Arkanoid.

L'intro à été faite via TFM Music Maker ( donc via un Tracker) , La musique originale provient de pinball_wizard.

Voila et je pense que ça mérite de prendre 5min pour tester ça :)

Share this post


Link to post
Share on other sites

Merci :D

 

Pour le jeu du niveau de Pier Solar, je crois que l'attente va être... longue :?

 

Pour l'accélération, je ne sais pas vraiment comment faire. La balle se déplace d'un pixel à chaque fois, deux pixels en vitesse 2, 3 pixels en vitesse 3, donc je ne sais pas la faire aller à des vitesses intermédiaires.

 

à voir... je bosse sur un autre jeu sur lequel j'essaie d'améliorer cela justement :)

Share this post


Link to post
Share on other sites

Merci pour le retour :)

 

??a se joue bien à la manette? je ne l'ai pas encore monté en cartouche ^^

 

MonsieurL : vecteur? lol

Je suis novice, c'est du charabia pour moi :)

 

La je bosse sur un autre truc, et j'ai modifié les coefs de façon à ne pas avoir toujours le même angle, mais c'est un peu galère je trouve.

Le truc c'est que je ne travaille qu'avec des entiers car je n'ai pas encore trouvé de fonction pour arrondir ^^

Mais ça va venir :P

 

Il n'y a pas d'image de ton Pong 2004? les liens sont morts :?

 

Astuce : Pour avoir plus de vies dès le départ du jeu, placez vous sur le menu de choix des vies, maintenez A+B et pressez droite. Il est alors possible de mettre jusqu'a 9 vies :D

Share this post


Link to post
Share on other sites

Pour un "novice" c'est du bon boulot! (testé sous ému)

 

Bah c'est pourtant simple tu fais comment pour déplacer ta raquette?

un truc du genre :

Paddroite_pressé==1

{

fonction movetesfessesàdroite;

}

 

et dans ta fonction movetesfessesàdroite{

sprite(x,y);

x++;

}

 

Bah au lieu de faire x=x+1; tu fais x=(multiplicateur)x+1

un coef quoi :]

 

Nan j'ai plus rien pour le pong 2004, mais c'était très très sommaire, mes débuts en prog quoi :)

Share this post


Link to post
Share on other sites

Je pense que cette doc concernant la PAlib te sera utile pour certains points :)

 

Notamment les collisions et les sin() cos() qui ne sont pas sur 360° mais sur 512°!

 

La notion de point "fixe" aussi est intéressante, et je ne doute pas qu'elle te sera utile :oops:

 

Au fait sur MD il y a un HBL et un VBL ou pas?

Share this post


Link to post
Share on other sites

VBL -> Vertical Blank Line

HBL -> Horizontal Blank Line

 

Ces deux signaux servent à savoir où en est le balayage écran, pour te la faire simple, ça sert pour savoir a quel moment on redessine sur l'écran! le VBL sert souvent pour faire des compteurs :)

Share this post


Link to post
Share on other sites

Oui la Megadrive possède ces deux signaux qui sont lisibles en mattant les registres du VDP.

Enfait SGDK est bien foutu , car tu peut récupérer ces valeurs via la fonction :

VDP_getHIntCounter();

 

VBL -> Vertical Blank Line

HBL -> Horizontal Blank Line

 

Ces deux signaux servent à savoir où en est le balayage écran, pour te la faire simple, ça sert pour savoir a quel moment on redessine sur l'écran! le VBL sert souvent pour faire des compteurs :oops:

 

Tout à fait ! je vient de matter le fichier VDP.h est ça colle , bien vu :)

void VDP_waitVSync()
{
   vu16 *pw;
   u16 vdp_state;

   vdp_state = VDP_VBLANK_FLAG;
   pw = (u16 *) GFX_CTRL_PORT;

   while (vdp_state & VDP_VBLANK_FLAG) vdp_state = *pw;
   while (!(vdp_state & VDP_VBLANK_FLAG)) vdp_state = *pw;
}

Share this post


Link to post
Share on other sites
Sign in to follow this  

×
×
  • Create New...