CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

[C]Jeu de labyrinthe

kikou81
kikou81
Niveau 9
02 juin 2006 à 20:04:52

Bonjour tous le monde,

Titre de jeu : HellFire

Genre : Labyrinthe en deux dimensions

Support : PC bien sur :)

Langage utilisé : J´utilise le langage C, que j´ai apris pendant 3 mois de dur labeur ^^, j´utilise egalement la bibliothèque "SDL" pour mes graphismes!

Matériel utilisé : Le logiciel paint shop pro 10, l´IDE code::blocks et un pc (config sur ma carte)

L´histoire : (je ne suis pas un tres bon scénariste)
Un jour, Jack, un jeune adolescent, était tranquilemment dans sa chambre, quand il visionnat une video que son pere lui avait interdit formellement de regarder.Soudain, il fut transporté dans un monde parrallele appelé "hellfire".

But du jeu : Le but du jeu est de faire sortir Jack de cet enfer par un labyrinthe avec des mur invisible ou visible dans certaines maps.

Images :

Voici deux images de mon jeu :
Voici un screnn in game
http://img172.imageshack..us/img172/626/hellfire0yd.png

Et voici un screnn de mon menu :
http://img172.imageshack.ack.us/img172/2007/menu3lh.png

A propos de l´avencemment du projet, Je crois que j´ai a peu defii toute mes variables, j´ai fais ma boucle principale et j´ai ma fonction de déplacemment(avec double buff pour ceux que ca interresse)j´avais un petit probleme pour le menu mais c´est résolu :) .Voussavez comme moi comme il est difficile d´estimer combien il nous reste pour finir mais au niveau de mon code j´ai bien fait 60%!

Comme vous avez pu le voir sur le premier screnn je suis un piètre infographiste donc eventuellement si quelqu´un pouvait m´aider(je suis tous les jours sur msn ==> kevinsahin@hotmail.fr).
Si vous voulez bien m´aider, yaura pas de recompense mais je mettrai biensur votre nom (si vous voulez ) dans les credits!Mais sachez que je peut tout faire tous seul(avec une moins bonne qualité graphique bien entendu).

J´attend vos commentaire et/ou vos réponse concernant un graphiste.

Bye bye;

Lapintade
Lapintade
Niveau 30
02 juin 2006 à 21:04:53

Kikoo Kikou (ouais c´etait facile desolé)

Ca a l´air bien sympa dis moi.
Malheureusement je suis pas graphiste.

Dis nous quand tu auras une version jouable telechargeable qu´on puisse essayer.

Bon courage

kikou81
kikou81
Niveau 9
02 juin 2006 à 21:07:12

Je vais y bosser ce week end(et oui pour moi les notes et le brevet blanc c´est fini :oui: ) mais bon pour mon premier jeu ne vous attendez pas a des merveilles!

@++

dynoplasmma
dynoplasmma
Niveau 9
02 juin 2006 à 22:29:36

Vraiment interressent :)
Je te souhaite bonne chance, moi je trouve que les graphismes sont sympas comme tout :)

Sinon pour le systeme de collision, tu fait ca a l´arrache des tests de colllisions pour chaque blocage (methode primitive deconseillée !) ou alors tu divises ton ecran en blocs, et tu met les 4 tests (gauche, bas, droite, haut) possible, avec certaines conditions (si pas numero 1 a la case de droite, on peut faire droite...) ?

kikou81
kikou81
Niveau 9
03 juin 2006 à 17:58:51

Non non je code tout a l´arrache lol...
Pour le systeme de collision je met dans ma fonction de deplacemment qu´il ne peut se deplacer que si certaine conditions sont remplies ex : Si jack est en x = 12 y = 33 tu peut te deplacer vers la droite ...Vous comprenez??C´est un systeme primitif je sais mais bon!

dynoplasmma
dynoplasmma
Niveau 9
03 juin 2006 à 18:33:36

Oulla, la tu vas devoir faire, si tu es en 1024 * 768 : 1024 * 768 = 786 432 tests.

Utilise au minimum des inegalités.

Mais le systeme de decouper l´ecran en blocs est une bien meilleure idee, pour parcourir les blocs, deux boucles for suffisent.

kikou81
kikou81
Niveau 9
03 juin 2006 à 19:32:02

Mais la j´ai un big big big probleme : C´est au nivau de mon menu et de mon jeu, en fait j´arive a faire passer du menju au jeu mais je n´arrive pas a faire passer de menu au jeu avec les deplacement vous voyez ce que je veux dire?Ca m´enerve trop j´y suis de puis ce matin je n´y arive pas!Pour les collision, je gere!

dynoplasmma
dynoplasmma
Niveau 9
03 juin 2006 à 20:17:12

tu fait un systeme :

int menu=0;
...
if(menu==0) affichage ecran presentation;
if(menu==1)le jeu en lui meme;

Comme ca, tout ce que tu affiches dans menu=0 n´est plus valable dans menu=1.

kikou81
kikou81
Niveau 9
04 juin 2006 à 08:33:23

A oui d´accord et apres je fais SDL_WaitEvent pour recuperer une touche au clavier genre "h" et puis apres je fais menu++ ^^ je vais tester cela!

kikou81
kikou81
Niveau 9
04 juin 2006 à 13:43:17

J´ai tester ta ùmethode je n´y arrive pas, voici ma methode qui ne marche pas car elle maffiche pas le menu(imageDeFond):

/*
Main.c
--------------
Commencé le 27/05/06
Par kikou81,
HELLFIRE

  • /
  1. include <stdlib.h>
  2. include <stdio.h>
  3. include <SDL/SDL.h>

int main(int argc, char *argv[])
{
SDL_Surface *ecran = NULL, *imageDeFond = NULL
, *imageDeFonddeux, *jack;//Declaration des surface
SDL_Event evenement;
int continuer = 1;
SDL_Rect positionDeFond;//Pour la position du
menu
positionDeFond.x = 0;
positionDeFond.y = 0;
SDL_Rect positionJack;//Position de Jack
positionJack.x = 25;
positionJack.y = 33;
SDL_Rect positionBackground;//Position de l´ar
riere plan
positionBackground.x = 0;
positionBackground.y = 0;
SDL_Init(SDL_INIT_VIDEO);//Inisialisation de l
a SDL
ecran = SDL_SetVideoMode(800, 600, 32, SDL_HWS
URFACE | SDL_DOUBLEBUF);//Double buffering pour optimisation du réalisme
SDL_WM_SetCaption("HellFire", NULL);//Titre de
la fenetre

/* Chargement d´une image Bitmap dans une surface( */
imageDeFond = SDL_LoadBMP("menu.bmp");//Menu d
u debut
imageDeFonddeux = SDL_LoadBMP("background.bmp"
);//Background fin
jack = SDL_LoadBMP("jack.bmp");
SDL_SetColorKey(jack, SDL_SRCCOLORKEY, SDL_MapRGB(jack->format, 255, 255, 255));

/* On blitte par-dessus l´écran */
SDL_BlitSurface(imageDeFond, NULL, ecran, &positionDeFond);
SDL_Flip(ecran);
//Pour le deplacemment
SDL_EnableKeyRepeat(10, 10);
//C´est un peu pour mettre en pause le program
me,
while (continuer)
{
SDL_WaitEvent(&evenement); /* Récupèration de l´évènement dans event */
switch(evenement.type) /* Test du type d´évènement */
{
case SDL_QUIT: /* Si c´est un évènement de type "Quitter" */
continuer = 0;
break;
case SDL_KEYDOWN:
switch(evenement.key.keysym.sym)
{
case SDLK_h :
SDL_BlitSurface(jack, NULL, ecran, &positionJack);
SDL_BlitSurface(imageDeFonddeux, NULL, ecran, &positionDeFond);

SDL_Flip(ecran);
break;
case SDLK_RIGHT :
positionJack.x++;
break;
case SDLK_LEFT :
positionJack.x--;
break;
case SDLK_UP :
positionJack.y--;
break;
case SDLK_DOWN:
positionJack.y++;

}

break;

}
SDL_FillRect(ecran, NULL, 0);
SDL_BlitSurface(imageDeFonddeux, NULL, ecran, &positionDeFond);
SDL_BlitSurface(jack, NULL, ecran, &positionJack);
SDL_Flip(ecran);
}
//On libere la memoire de toute les surface cr
éée
SDL_FreeSurface(ecran);
SDL_FreeSurface(imageDeFond);
SDL_FreeSurface(imageDeFonddeux);
SDL_FreeSurface(jack);
SDL_Quit();

return EXIT_SUCCESS;
}

Vous auriez pas une solution ?J e suis vraimment bloquer la et je ne comprend pas pourquoi?

kikou81
kikou81
Niveau 9
05 juin 2006 à 21:45:13

C´est bon je viens de réussir a enlever le probleme c´est super génial je peut continuer a develloper mon jeu, c´est le plus gros bug de toute ma vie!!!Pour la demo, je pense que d´ici 15 jours s´il n´y a pas de bug ce sera bon...;
:) :) :)

dynoplasmma
dynoplasmma
Niveau 9
05 juin 2006 à 21:50:11

Heureux pour toi :)
Car ces bugs la sont super lourds...
par exemple, j´ai mit une gestion des scores dans un progs, en le changeant, cette gestion (recopiée) est totalement defoncé et fonctionne a moitié, juste avant ce bug, un auter fermait la fenetre, a cause d´un free surface apres avoir passé une etape d´un menu.
Bref, T´as pas finit d´en voir des bugs de ce genre, m´enfin j´espere pour toi que t´en auras pas des masses !

kikou81
kikou81
Niveau 9
05 juin 2006 à 22:10:49

Merci merci, la je suis entrain de faire la gestion de collision aie aie aie pas de bug mais c´st chaud au niveau algorithmie :malade:

dynoplasmma
dynoplasmma
Niveau 9
05 juin 2006 à 22:37:25

Si tu utilises des carrés pour bloquer ton personnage, ta pas finit d´en faire, surtout si il y en a 10...

Divise ton ecran, trouve la solution, apres tu met 0 pour (on peut aller) et 1 pour (bloquer).
Avec :

enum {VIDE;BLOQUE};

Tu parcours a chaque fois, pour le deplacement, si a droite c´est bloque, tu paux pas te deplacer, sinon, tu bouges, etc...

Ca te sera beaucoup plus facile a gerer.

kikou81
kikou81
Niveau 9
06 juin 2006 à 19:02:07

Je ne comprend pas trop ce que tu es en train de dire...Tu peut expliquer, comment je fais pour diviser mon ecran??Merci beaucoup d´avance!!

dynoplasmma
dynoplasmma
Niveau 9
06 juin 2006 à 19:03:49

Lit ceci :
http://www.siteduzero.com/tuto-3-6062-1-tp-mario-sokoban.html

godrik
godrik
Niveau 30
06 juin 2006 à 23:26:50

En passant, je ne sais pas si tu sais, mais il existe déjà un jeu du nom de HellFire. il s´agit d´un shoot them up. Je l´ai connu sur megadrive, mais il existe peut etre d´autre version

kikou81
kikou81
Niveau 9
07 juin 2006 à 13:32:09

Je ne le savais pas du tout, mais c´est pas grave si??Sinon au pire je le changerai

kikou81
kikou81
Niveau 9
25 juillet 2006 à 14:00:45

Bon, petites news du projet,

Je ne sais pas si je vais continuer a programmé le jeu, parce que apres presque deux mois a ce crever la tete a trouver des solutions au nombreux bugs et autre resultats inatendu le jeu n´est pas fini.Pour le moment ca ce resume a deplacé un personnage sur un arriere plan.J´ai des problemes au niveau de ma boucle principale, les collisions bref, que des problemes.

Et puis la motivations n´est plus ce qu´elle était...Mais je vais essayer de continuer pendant ces vacances et puis si je n´arrive" pas a finir je laisserais tomber. :(

Voila a bientôt,

godrik
godrik
Niveau 30
25 juillet 2006 à 15:04:47

J´ai moi meme laisser tomber bien des projets en cours.
Il ne faut pas perdre espoir. Mais si ce projet t´ennuye, fais en un autre... :)

En passant, non ce n´est pas grave que ton jeu porte le meme nom qu´un autre déjà existant. (L´autre est vieux et le tiens n´est pas commercial)

Sous forums
  • Aide à l'achat Mac
  • Macintosh
  • Création de Jeux
  • Programmation
  • Création de sites web
  • Linux
  • Internet
  • Steam Deck
  • Hardware
La vidéo du moment