Le jeu en pure... ?
Le jeu en pure... ?
Salut'
J'ai vu que B-games sortait son premier jeu commercial, et je reste toujours aussi impressionné par leur travail.
Je me suis récemment mis à coder du jeu aussi, et jusqu'ici j'ai fait un moteur de maniac shooter vertical. Je ne peux malheureusement pas le diffuser puisse que les graphismes ne m'appartiennent pas T_T
Une seule chose me vient à l'esprit cependant: si je compare leurs productions à la miennes, j'ai clairement été fini à la pisse >.<
Alors bon, je me tâte sérieusement à acheter PureGDK puis ce que j'avais de meilleurs résultats en DBP qu'en pure pour la 2D (à, oui: la 3D j'en ai pour l'instant rien à taper). Cependant leur niveau me fait hésiter (y'a pas de mauvais outils, y'a que de mauvais ouvrier).
Auriez vous donc des exemples avancés (je suis pas noobs au point de reprendre toutes les bases) de code utilisant beaucoup de sprites? Des exemples de bidouilles avancées?
Merci d'avance.
J'ai vu que B-games sortait son premier jeu commercial, et je reste toujours aussi impressionné par leur travail.
Je me suis récemment mis à coder du jeu aussi, et jusqu'ici j'ai fait un moteur de maniac shooter vertical. Je ne peux malheureusement pas le diffuser puisse que les graphismes ne m'appartiennent pas T_T
Une seule chose me vient à l'esprit cependant: si je compare leurs productions à la miennes, j'ai clairement été fini à la pisse >.<
Alors bon, je me tâte sérieusement à acheter PureGDK puis ce que j'avais de meilleurs résultats en DBP qu'en pure pour la 2D (à, oui: la 3D j'en ai pour l'instant rien à taper). Cependant leur niveau me fait hésiter (y'a pas de mauvais outils, y'a que de mauvais ouvrier).
Auriez vous donc des exemples avancés (je suis pas noobs au point de reprendre toutes les bases) de code utilisant beaucoup de sprites? Des exemples de bidouilles avancées?
Merci d'avance.
Re: Le jeu en pure... ?
ce qui m'embete dans ta question c'est le "Avancée" ...poshu a écrit :de code utilisant beaucoup de sprites? Des exemples de bidouilles avancées?
Merci d'avance.
comment definis tu ce qui est avancée ??

j'imagine qu'en lisant ça beaucoup auront la même réaction que moi..
c'est a dire : "je vois pas comment je pourrai lui apporté un code Avancé"
puisque je ne considère pas ce que je fais comme "avancée"...
donc je ne peux t'aider Désolé

ps : Huitbit a fait recement un code de fleches avec beaucoup de Sprite a l'ecran...
Un petit effet que j'avais fait il y a quelques temps; rien d'extraordinaire. j'ai déjà dû le poster quelque part... Il faut une image 128x128, et jouer avec les boutons de la souris et la molette.
Code : Tout sélectionner
;Chess effect
;Djes 11/04/2005
;******************************************************************************************************
If InitSprite() And InitSprite3D() And InitKeyboard() And InitMouse()
Else
End
EndIf
OpenScreen(800, 600, 16, "3D Demos")
SetFrameRate(75)
RandomSeed(ElapsedMilliseconds())
CatchSprite(1,?sprite,#PB_Sprite_Texture)
CreateSprite3D(0, 1)
speed_x3.f=0
speed_y3.f=0
speed_x2.f=0
speed_y2.f=0
speed_x1.f=0
speed_y1.f=0
pos_x1.f=0
pos_y1.f=0
pos_x2.f=0
pos_y2.f=0
pos_x3.f=0
pos_y3.f=0
;******************************************************************************************************
Repeat
ExamineKeyboard()
ExamineMouse()
If MouseButton(1)
speed_x3+1
If speed_x3>16 : speed_x3=16 : EndIf
If speed_x3<-16 : speed_x3=-16 : EndIf
speed_x2=speed_x3*15/10
speed_x1=speed_x3*20/10
EndIf
If MouseButton(2)
speed_x3-1
If speed_x3>16 : speed_x3=16 : EndIf
If speed_x3<-16 : speed_x3=-16 : EndIf
speed_x2=speed_x3*15/10
speed_x1=speed_x3*20/10
EndIf
speed_y3+MouseWheel()
If speed_y3>16 : speed_y3=16 : EndIf
If speed_y3<-16 : speed_y3=-16 : EndIf
speed_y2=speed_y3*15/10
speed_y1=speed_y3*20/10
ClearScreen(0)
Start3D()
;***
Gosub damier
;***
Stop3D()
FlipBuffers(1)
Until KeyboardPushed(#PB_Key_Escape) Or Quit = 1
End
sprite:
IncludeBinary "Gfx/damier128x128.bmp"
;******************************************************************************************************
damier:
a.f+0.1
;pos_x1=(pos_x1+speed_x1)%128
;pos_y1=(pos_y1+speed_y1)%128
;pos_x2=(pos_x2+speed_x2)%100
;pos_y2=(pos_y2+speed_y2)%100
;pos_x3=(pos_x3+speed_x3)%72
;pos_y3=(pos_y3+speed_y3)%72
pos_x1=(pos_x1+speed_x1)
If pos_x1<0 : pos_x1+128 : EndIf
If pos_x1>128 : pos_x1-128 : EndIf
pos_y1=(pos_y1+speed_y1)
If pos_y1<0 : pos_y1+128 : EndIf
If pos_y1>128 : pos_y1-128 : EndIf
pos_x2=(pos_x2+speed_x2)
If pos_x2<0 : pos_x2+100 : EndIf
If pos_x2>100 : pos_x2-100 : EndIf
pos_y2=(pos_y2+speed_y2)
If pos_y2<0 : pos_y2+100 : EndIf
If pos_y2>100 : pos_y2-100 : EndIf
pos_x3=(pos_x3+speed_x3)
If pos_x3<0 : pos_x3+72 : EndIf
If pos_x3>72 : pos_x3-72 : EndIf
pos_y3=(pos_y3+speed_y3)
If pos_y3<0 : pos_y3+72 : EndIf
If pos_y3>72 : pos_y3-72 : EndIf
ZoomSprite3D(0,72,72)
For y=-72 To 672 Step 72
For x=-72 To 872 Step 72
dd.f=((x-pos_x3)+(y-pos_y3))/100
ZoomSprite3D(0,72+20*Sin(dd),72+20*Sin(dd))
DisplaySprite3D(0,x-pos_x3,y-pos_y3,100)
Next x
Next y
ZoomSprite3D(0,100,100)
For y=-100 To 700 Step 100
For x=-100 To 900 Step 100
dd.f=((x-pos_x2)+(y-pos_y2))/100
ZoomSprite3D(0,100+40*Sin(dd),100+40*Sin(dd))
DisplaySprite3D(0,x-pos_x2,y-pos_y2,200)
Next x
Next y
ZoomSprite3D(0,128,128)
For y=-128 To 728 Step 128
For x=-128 To 928 Step 128
dd.f=((x-pos_x1)+(y-pos_y1))/100
ZoomSprite3D(0,100+60*Sin(dd),100+60*Sin(dd))
DisplaySprite3D(0,x-pos_x1,y-pos_y1,255)
Next x
Next y
Return
Salut poshu , pour avoir fait partie de l'équipe B-games , il n'y a rien d'extraordinaire , c'est du code , point barre. la différence qu'il y a entre Polux , Djes & co et d'autres coders , c'est la motivation d'aller jusqu'au bout.
Dire que tu as de meilleurs perf avec DBP qu'avec pure , j'en doute , les resultat de Purebasic sont aussi bien qu'avec un code en c/c++. c'est pas le cas de dbp , je parle en connaissance de cause , j'ai codé sous les 3 langages.
Ensuite , pour le jeu , je serais ravi de t'aider à optimiser tes routines , donne nous un truc à croquer et on t'aidera , pour les médias proprio , fait en des pourris avec paint... on s'en fou ^^
Dire que tu as de meilleurs perf avec DBP qu'avec pure , j'en doute , les resultat de Purebasic sont aussi bien qu'avec un code en c/c++. c'est pas le cas de dbp , je parle en connaissance de cause , j'ai codé sous les 3 langages.
Ensuite , pour le jeu , je serais ravi de t'aider à optimiser tes routines , donne nous un truc à croquer et on t'aidera , pour les médias proprio , fait en des pourris avec paint... on s'en fou ^^
Mais c'est vrai, retourne bosser, en plus t'as un gosse, t'occupes pas des débutants >.<Dobro a écrit :occupe toi donc de Gears3D toiCpl.Bator a écrit : Ensuite , pour le jeu , je serais ravi de t'aider à optimiser tes routines
Merci djes.
Mon problème n'est pas vraiment la motivation: je veux avant tout me faire plaisir en codant, et pas spécialement finir un jeu. Cependant, me faire plaisir en codant passe par la réussite de mes objectifs. Et pour le moment, j'ai l'impression de patauger. Ca fait des années que j'ai pas codé de la 2D, ca vient peut etre de là, mais quelle misère pour le moment :/
y a quelques temps j'avais mis ça a dispo
c'est la base d'un petit jeu video
a noter que les Sprites on ete fait a l'aide de 3dsMax
http://michel.dobro.free.fr/Forum_PB/space_i.zip
il y a tout dedans,
le code est clair et commenté
le but du jeu ? rester en vie le plus longtemps possible
c'est la base d'un petit jeu video
a noter que les Sprites on ete fait a l'aide de 3dsMax
http://michel.dobro.free.fr/Forum_PB/space_i.zip
il y a tout dedans,
- multisprites animés,
collision
compteur de vie
compteur de score
musique
son FX
gellules de bonus
gestion joystick ou clavier
touches fleches + espace pour le tir
utilisation des timers pour l'arrivé des ennemis
le code est clair et commenté

le but du jeu ? rester en vie le plus longtemps possible

Peut-être aussi que tu n'utilises pas les bons outils?! Où bloques-tu? Au niveau du rendu de ton programme? Au niveau de tes graphismes? Au niveau du design général?poshu a écrit :Mais c'est vrai, retourne bosser, en plus t'as un gosse, t'occupes pas des débutants >.<Dobro a écrit :occupe toi donc de Gears3D toiCpl.Bator a écrit : Ensuite , pour le jeu , je serais ravi de t'aider à optimiser tes routines
Merci djes.
Mon problème n'est pas vraiment la motivation: je veux avant tout me faire plaisir en codant, et pas spécialement finir un jeu. Cependant, me faire plaisir en codant passe par la réussite de mes objectifs. Et pour le moment, j'ai l'impression de patauger. Ca fait des années que j'ai pas codé de la 2D, ca vient peut etre de là, mais quelle misère pour le moment :/
-
- Messages : 1307
- Inscription : dim. 08/juil./2007 18:32
- Localisation : Toulouse
Re: Le jeu en pure... ?
Ton post est bien sympathique, voir revigourant, donc je vais répondre avec enthousiasme
( mais au risque de manquer d'humilité, alors je tiens à m'excuser dès maintenant: pardon!
)
:
Coder, c'est pas facile, mais c'est de la rigolade comparer à la conception des images. Heureusement pour nous, il existe des modeleur/animateur3D. Modéliser, c'est sympa, surtout au début, et tu te rendra compte que modéliser un vaisseau spatial, et bien c'est plus facile qu'un dragon( tout ce qui est vivant est difficile à modéliser). L'apprentissage de 3dsmax ou tout autre modeleur va nécessiter du temps et pas mal d'effort, faut pas manquer de courage quoi( sacrifier tout ton temps libre).
Ou alors tu cherche un graphiste, ou un amateur qui se débrouille bien en pixel art( ton bel avatar en est peut être issu d'ailleur)...
google-> peur basique
1er code: jeu peur basique en mode graphique
2eme code: un programme de test collision et utilisation sprite3D
3eme code: jeu peur basique en mode fenêtre
google-> editeur de niveau 64
pour un jeu cette commande est à oublier.
Maintenant, il faudrait peut être te poser la question sur ton objectif, à savoir concevoir un manic shooter: est ce une bonne idée ? As-tu testé tout les manic shooter sortis ? Les joueurs aimant cette catégorie de jeu sont de moins en moins nombreux( au fur et à mesure que le rectangle de collision du vaisseau dirigé par le joueur se réduit comme peau de chagrin d'ailleur...) Par contre, les joueurs ayant appréciés r-type, gradius, view point ou même raystorm sont plus nombreux. J'ai l'impression que dans un manic, un vaisseau alien descend légèrement, stoppe puis balance des boulettes par centaines. Et pis voilà.
Alors que dans les shoot à l'ancienne, la mise en scène des vaisseaux ennemis, leurs capacités( vitesse/comportement/résistance/ la façon dont ils tirent...) étant autrement plus élaborés( d'où leurs charmes).


ah ! je ne savais pas, merci pour l'info, j'ai du passer à côté d'une annonce sur ce forum parce que c'est quand même un évènement.poshu a écrit :Salut'
J'ai vu que B-games sortait son premier jeu commercial
Et là tout est dit, inutile de commenter. Bon aller, appuyons là où çà fait mal, mais c'est pour ton bienposhu a écrit :Je me suis récemment mis à coder du jeu aussi, et jusqu'ici j'ai fait un moteur de maniac shooter vertical. Je ne peux malheureusement pas le diffuser puisse que les graphismes ne m'appartiennent pas T_T

Code : Tout sélectionner
les graphismes ne m'appartiennent pas
Ou alors tu cherche un graphiste, ou un amateur qui se débrouille bien en pixel art( ton bel avatar en est peut être issu d'ailleur)...
je suis un noob dans bien des domaines, mais j'ai bien secoué notre petite communauté l'été dernier, pour comprendre le pourquoi du comment pour la gestion des images, et puis j'ai pondu, en grimaçant, 3 codes:Auriez vous donc des exemples avancés (je suis pas noobs au point de reprendre toutes les bases) de code utilisant beaucoup de sprites?
google-> peur basique
1er code: jeu peur basique en mode graphique
2eme code: un programme de test collision et utilisation sprite3D
3eme code: jeu peur basique en mode fenêtre
google-> editeur de niveau 64
Code : Tout sélectionner
Delay()
Maintenant, il faudrait peut être te poser la question sur ton objectif, à savoir concevoir un manic shooter: est ce une bonne idée ? As-tu testé tout les manic shooter sortis ? Les joueurs aimant cette catégorie de jeu sont de moins en moins nombreux( au fur et à mesure que le rectangle de collision du vaisseau dirigé par le joueur se réduit comme peau de chagrin d'ailleur...) Par contre, les joueurs ayant appréciés r-type, gradius, view point ou même raystorm sont plus nombreux. J'ai l'impression que dans un manic, un vaisseau alien descend légèrement, stoppe puis balance des boulettes par centaines. Et pis voilà.
Alors que dans les shoot à l'ancienne, la mise en scène des vaisseaux ennemis, leurs capacités( vitesse/comportement/résistance/ la façon dont ils tirent...) étant autrement plus élaborés( d'où leurs charmes).
Salut ^^;
J'ai vécu quelques années au japon et j'ai donc zonné dans des sales d'arcades; je suis un joueur régulier, et parmi mes grosses spécialité, y'a le maniac, sur mes quelques bornes d'arcades (j'en ai quatre) y'en a une qui est dédié au shmup vertical, surtout quand y'a plein de petites boulettes roses et bleues *O*
Le principe d'un maniac, c'est avant tout le 1 credit, on met 1 pièce dans la machine, et on va jusqu'au bout du titre sans perdre une vie, sans utiliser une bombe. En faisant le plus gros score possible. Le lever design de ces jeux est un petit exploit de complexité (bien plus que ce que tu appelle un shmup traditionnel, au contraire de ce que tu semble penser) tant il faut cacher LA possibilité de maximiser le score. C'est véritablement un sport, et que je sois le seul à le pratiquer ou qu'on soit des millions, j'm'en moque comme de l'an 40, j'aime ça, et y'a assez de jeux qui sortent pour me nourrir... Aaah, mon DodonPachi Dai Fukkatsu doit arriver sous peu par la poste *-*.
Bon, après cet encart un peu inintéressant sur le shmup, en voilà un autre sur mes motivations: je ne cherche pas (en tous cas pour l'instant) à créer des jeux. J'aime programmer, c'est un passe temps, autant que de jouer, le fait de coder est un plaisir et après quelques années à coder des applications plus ou moins débiles pour moi, que je n'ai pas distribués et que je ne souhaite pas distribuer, j'ai envie d'aller bidouiller du jeu pour moi, que je ne souhaite pas distribuer et que je ne distribuerais pas. A partir de là, le graphisme, je m'en fou, puis ce que la seule chose que je cherche, c'est de nouvelles situations de code. Un autre objectif: j'ai quelques idées qui me trainent dans la tête depuis des années, et qui n'apparaissent pas dans le jeu vidéo. N'étant pas plus génial que tout autre personne, je me doute que les game designer y ont déjà pensé, eux aussi, et qu'il doit y avoir une raison pour laquelle elles n'ont pas été implémentés. Et cette raison, j'aimerais la connaitre.
Dernier détail, ma patrie, c'est le jeu vidéo asiatique (japonais/coréen) 2D. Et naturellement je me dirige vers le mêmes techniques de dev, à savoir baser le temps passé dans le titre non pas sur un timer, mais sur le nombre de frame. Je sais que c'est une tradition étrange pour vous, mais c'est comme ça que je veux faire, et avec de bonne raisons.
Maintenant, je me suis rendu compte que ce topic que j'aurais aimé fourre-tout n'est pas assez précis. Je vais essayer de produire des codes simples pour illustrer mes problèmes et poser des questions plus adéquate.
Je reviendrais.
J'ai vécu quelques années au japon et j'ai donc zonné dans des sales d'arcades; je suis un joueur régulier, et parmi mes grosses spécialité, y'a le maniac, sur mes quelques bornes d'arcades (j'en ai quatre) y'en a une qui est dédié au shmup vertical, surtout quand y'a plein de petites boulettes roses et bleues *O*
Le principe d'un maniac, c'est avant tout le 1 credit, on met 1 pièce dans la machine, et on va jusqu'au bout du titre sans perdre une vie, sans utiliser une bombe. En faisant le plus gros score possible. Le lever design de ces jeux est un petit exploit de complexité (bien plus que ce que tu appelle un shmup traditionnel, au contraire de ce que tu semble penser) tant il faut cacher LA possibilité de maximiser le score. C'est véritablement un sport, et que je sois le seul à le pratiquer ou qu'on soit des millions, j'm'en moque comme de l'an 40, j'aime ça, et y'a assez de jeux qui sortent pour me nourrir... Aaah, mon DodonPachi Dai Fukkatsu doit arriver sous peu par la poste *-*.
Bon, après cet encart un peu inintéressant sur le shmup, en voilà un autre sur mes motivations: je ne cherche pas (en tous cas pour l'instant) à créer des jeux. J'aime programmer, c'est un passe temps, autant que de jouer, le fait de coder est un plaisir et après quelques années à coder des applications plus ou moins débiles pour moi, que je n'ai pas distribués et que je ne souhaite pas distribuer, j'ai envie d'aller bidouiller du jeu pour moi, que je ne souhaite pas distribuer et que je ne distribuerais pas. A partir de là, le graphisme, je m'en fou, puis ce que la seule chose que je cherche, c'est de nouvelles situations de code. Un autre objectif: j'ai quelques idées qui me trainent dans la tête depuis des années, et qui n'apparaissent pas dans le jeu vidéo. N'étant pas plus génial que tout autre personne, je me doute que les game designer y ont déjà pensé, eux aussi, et qu'il doit y avoir une raison pour laquelle elles n'ont pas été implémentés. Et cette raison, j'aimerais la connaitre.
Dernier détail, ma patrie, c'est le jeu vidéo asiatique (japonais/coréen) 2D. Et naturellement je me dirige vers le mêmes techniques de dev, à savoir baser le temps passé dans le titre non pas sur un timer, mais sur le nombre de frame. Je sais que c'est une tradition étrange pour vous, mais c'est comme ça que je veux faire, et avec de bonne raisons.
Maintenant, je me suis rendu compte que ce topic que j'aurais aimé fourre-tout n'est pas assez précis. Je vais essayer de produire des codes simples pour illustrer mes problèmes et poser des questions plus adéquate.
Je reviendrais.
Ah, la quête du saint graal! Sur PC, c'est une vraie gageüre, tant le nombre d'écrans, de cartes graphiques sont différents. Rien de plus moche qu'un jeu 2D au timer! Le problème c'est que du coup, on perd du monde en route, parce qu'avec les écrans TFT réglés au 60hz, si tu veux en afficher 85 le résultat n'est pas terrible... Et un écran crt classique à 60hz ça fait mal aux yeuxposhu a écrit :savoir baser le temps passé dans le titre non pas sur un timer, mais sur le nombre de frame

Personnellement, je n'ai toujours pas "la" solution miracle. Je bloque mes jeux sur un framerate, si la machine rame, tant pis. Si elle est rapide comme il faut c'est fluide, mais pas question pour l'instant que je fasse "sauter" mes sprites pour suivre le timer.