Développer un jeu quand on ne connait rien
+7
F.L
ichigobankai
Tryphon
acton
drfloyd
grostonton
lucksouille
11 participants
Page 4 sur 5
Page 4 sur 5 • 1, 2, 3, 4, 5
Re: Développer un jeu quand on ne connait rien
drfloyd a écrit:Super ton lien ! Super bien fait ce guide
Merci, je l'ai trouvé quand je souhaitais réaliser des jeux en vrai programmation, le top c'est que ça traite directement du sujet qui nous interesse (faire un jeu).
Non mais sans rire, le C c'est peut être pas le plus facile à comprendre, mais c'est relativement ""facile"" à organiser et à relire comme code.TOUKO a écrit:Exact
Bon après c'est un coup à prendre .
Re: Développer un jeu quand on ne connait rien
Quasiment tout les langages ressemblent au CF.L a écrit:ça ressemble pas mal à du C quand meme le python !
Oui, si c'est bien organisé .Non mais sans rire, le C c'est peut être pas le plus facile à comprendre, mais c'est relativement ""facile"" à organiser et à relire comme code.
Après y'a pas de meilleurs langage, seulement 1 langage adapté à ce que tu veux faire .
Le souci du python, basic et cie, c'est que tu déclares pas grand chose, du coup ça peut vite devenir le bordel .
Mavariable=1, et mavariable=2
Et tu cherches pendant 2 heures pk ton code marche pas .
Invité- Invité
Re: Développer un jeu quand on ne connait rien
Ca c'est sur que le gros souci se situe en général entre la chaise et le clavier comme on dit
Si ton IDE est pas trop à chier, en tapant le debut de "mavar..." il devrait mettre/proposer la suite en autocompletion
(ce qui aide quand même pas mal à éviter les bourdes)
Si ton IDE est pas trop à chier, en tapant le debut de "mavar..." il devrait mettre/proposer la suite en autocompletion
(ce qui aide quand même pas mal à éviter les bourdes)
Re: Développer un jeu quand on ne connait rien
Ben moi j'adore autant le C que le Basic !! Qui l'eu cru !!!
Invité- Invité
Re: Développer un jeu quand on ne connait rien
DePouLe02 a écrit:Salut man ! ça m'a l'air interessant ton histoire de guide, pourrais tu me filer le lien pour le DL s'il te plait ? je pense m'y mettre à plus ou moins court terme aussi
Et voilà
https://www.raspberrypi.org/magpi/issues/essentials-games-vol1/
lucksouille- Patient en incubation
- Nombre de messages : 23
Age : 43
Localisation : Rennes
Date d'inscription : 02/03/2017
Re: Développer un jeu quand on ne connait rien
L'indentation, c'est certainement la meilleure idée de Python (en fait, ça vient d'un vieux langage inconnu des années 80 qui s'appelle ABC, lequel vient d'un plus vieux langage appelé ALGOL, qui est aussi l'ancêtre du BASIC). Ça oblige à rendre visuels les blocs d'instruction, ce que le C ne fait pas. C'est idéal pour les débutants, et pas qu'eux.
Un débutant ne sera pas vraiment gêné par un oubli d'indentation, à part au tout début mais c'est qu'il n'aura pas encore compris ce qu'est un bloc d'instruction (et je pense qu'on est tous d'accord pour dire que ça fait partie des fondamentaux).
Par contre il peut se faire planter par le fait qu'un bloc ne finit pas là où il le croit. Or en Python c'est très visuel, et donc difficile à faire.
Par exemple, en C, tu peux écrire ça :
ou ça
et c'est pas pareil...
Un débutant écrira même plutôt ça, en vertu du principe du "plus c'est court plus c'est simple" cher à F.L., et qui est un des pires conseils qui soit :
et ne saura pas où commence et où finit son bloc.
En python, on écrit ça, c'est sans ambiguité :
Remarquons que c'est plus court d'au moins une ligne que du C "correct" (pas d'accolades) et qu'il n'y a pas de ";" à la fin des lignes. Si tu veux un truc qui emmerde beaucoup le débutant Touko, le ";" de fin est un bon exemple. Et, à la différence des indentations / accolades qui indiquent un concept fondamental, le ";" est sans intérêt (c'est juste pour permettre plusieurs instructions sur la même ligne, ce qu'on ne fait quasiment jamais car c'est un des plus sûrs moyens d'écrire un truc illisible) (et je crois que la vraie raison est encore pire, il me semble que le lexeur du C ignore tout simplement les retours à la ligne, il faut donc un caractère pour signaler les fins d'instruction).
Sur la non-déclaration des variables, d'une part je pense que tu voulais parler du non-typage, parce qu'écrire
Ce qui est illégal en C c'est :
Bon, d'autre part je te rejoins un peu sur ce problème ; j'aimerais parfois que Python soit typé (pour les débutants, je pense que le typage est une notion importante, et pour les expérimentés, ben le typage faible de Python c'est ce qui oblige le langage à n'être qu'interprété).
Mais d'une part, c'est ce qui fait l'essence des langages "pour débutants" (ça raccourcit le code et on se prend moins la tête, du moins au début), d'autre part ça a des avantages quand tu fais de la POO (qui est assez différente en Python de ce qu'elle est en C-like).
Enfin pour la syntaxe, si vous trouvez que Python ressemble au C, ben... regardez mieux. C++ ressemble au C. Java ressemble au C. C lui-même tient sa syntaxe d'autres langages.
Python c'est quand même assez différent (comme le Basic d'ailleurs). Ou alors vous confondez avec le type de programmation : Python, comme C, est un langage impératif, tous les langages impératifs se ressemblent un peu. Si vous voulez du vraiment différent essayez un langage fonctionnel. Mais c'est pas l'idéal pour des jeux (mais qu'est ce que c'est beau).
Je précise que je parle pas dans le vide. J'ai enseigné le Python à des ados et le Caml à des taupins, j'ai vu ce qui bloquait.
Un débutant ne sera pas vraiment gêné par un oubli d'indentation, à part au tout début mais c'est qu'il n'aura pas encore compris ce qu'est un bloc d'instruction (et je pense qu'on est tous d'accord pour dire que ça fait partie des fondamentaux).
Par contre il peut se faire planter par le fait qu'un bloc ne finit pas là où il le croit. Or en Python c'est très visuel, et donc difficile à faire.
Par exemple, en C, tu peux écrire ça :
- Code:
if (condition) {
fais_truc_1();
fais_truc_2();
}
fais_truc_3();
ou ça
- Code:
if (condition)
fais_truc_1();
fais_truc_2();
fais_truc_3();
et c'est pas pareil...
Un débutant écrira même plutôt ça, en vertu du principe du "plus c'est court plus c'est simple" cher à F.L., et qui est un des pires conseils qui soit :
- Code:
if (condition) fais_truc_1(); fais_truc_2(); fais_truc_3();
et ne saura pas où commence et où finit son bloc.
En python, on écrit ça, c'est sans ambiguité :
- Code:
if condition:
fais_truc_1()
fais_truc_2()
fais_truc_3()
Remarquons que c'est plus court d'au moins une ligne que du C "correct" (pas d'accolades) et qu'il n'y a pas de ";" à la fin des lignes. Si tu veux un truc qui emmerde beaucoup le débutant Touko, le ";" de fin est un bon exemple. Et, à la différence des indentations / accolades qui indiquent un concept fondamental, le ";" est sans intérêt (c'est juste pour permettre plusieurs instructions sur la même ligne, ce qu'on ne fait quasiment jamais car c'est un des plus sûrs moyens d'écrire un truc illisible) (et je crois que la vraie raison est encore pire, il me semble que le lexeur du C ignore tout simplement les retours à la ligne, il faut donc un caractère pour signaler les fins d'instruction).
Sur la non-déclaration des variables, d'une part je pense que tu voulais parler du non-typage, parce qu'écrire
- Code:
ma_variable = 1 ;
ma_variable = 2 ;
Ce qui est illégal en C c'est :
- Code:
ma_variable = 1 ;
ma_variable = "toto" ;
Bon, d'autre part je te rejoins un peu sur ce problème ; j'aimerais parfois que Python soit typé (pour les débutants, je pense que le typage est une notion importante, et pour les expérimentés, ben le typage faible de Python c'est ce qui oblige le langage à n'être qu'interprété).
Mais d'une part, c'est ce qui fait l'essence des langages "pour débutants" (ça raccourcit le code et on se prend moins la tête, du moins au début), d'autre part ça a des avantages quand tu fais de la POO (qui est assez différente en Python de ce qu'elle est en C-like).
Enfin pour la syntaxe, si vous trouvez que Python ressemble au C, ben... regardez mieux. C++ ressemble au C. Java ressemble au C. C lui-même tient sa syntaxe d'autres langages.
Python c'est quand même assez différent (comme le Basic d'ailleurs). Ou alors vous confondez avec le type de programmation : Python, comme C, est un langage impératif, tous les langages impératifs se ressemblent un peu. Si vous voulez du vraiment différent essayez un langage fonctionnel. Mais c'est pas l'idéal pour des jeux (mais qu'est ce que c'est beau).
Je précise que je parle pas dans le vide. J'ai enseigné le Python à des ados et le Caml à des taupins, j'ai vu ce qui bloquait.
Tryphon- Docteur *
- Nombre de messages : 26166
Age : 47
Localisation : Un peu plus à l'Ouest
Date d'inscription : 23/07/2016
Re: Développer un jeu quand on ne connait rien
sympa d'avoir le point de vue d'un enseignant... et amoureux du Python
_______________________________________________________
Re: Développer un jeu quand on ne connait rien
Tryphon a écrit:Un débutant écrira même plutôt ça, en vertu du principe du "plus c'est court plus c'est simple" cher à F.L., et qui est un des pires conseils qui soit :
- Code:
if (condition) fais_truc_1(); fais_truc_2(); fais_truc_3();
et ne saura pas où commence et où finit son bloc.
et bien tu vois, pour moi c'est la ligne la plus lisible de tous les exemple que tu as donné.
mon cerveau est formaté par le basic, cherche pas
avec moi c'est tout sur la meme ligne, et aucune fonctions !
- Code:
if toicontent$ = "non" then cestpareil$ = "oui"
vas-y kendji, solo guitare
Re: Développer un jeu quand on ne connait rien
La lisibilité légendaire du basic
- Code:
p=CreateTimer(60):n=200:Type S
Field X#,Y#,D,A,B
End Type:Graphics 1024,768,16,2:Dim C#(71),E#(71):For i=0To 71:C#(i)=Cos(i*5):E#(i)=Sin(i*5):Next:F=CreateImage(99,99):SetBuffer ImageBuffer(F):Color n,n,n:Oval 0,0,99,99,0:G=CreateImage(75,75):SetBuffer ImageBuffer(G):Color n,99,n:Oval 0,0,75,75,0:H=CreateImage(40,40):SetBuffer ImageBuffer(H):Color n,n,9:Oval 0,0,40,40,0:L=CreateImage(40,40,72):For i=0To 71:SetBuffer ImageBuffer(L,i):Color 0,0,n:Oval 0,0,40,40,1:Color n,0,0:Oval 17+C#(i)*14,17+E#(i)*14,6,6:Next:M=CreateImage(9,9):SetBuffer ImageBuffer(M):Color n,0,0:Oval 0,0,8,8,1:Color 255,n,9:Oval 1,1,6,6,1:SetBuffer BackBuffer():Q=1:R=0:AA=0:O.S=New S:O\x#=492:O\y#=324:O\D=36:O\A=0:O\B=L:While Not KeyHit(1):If Q:AA=AA+1:For i=1To 2+AA*2:O.S=New S:O\x#=125+Rand(50):O\y#=40*i+Rand(30)-15:O\D=12+Rand(12):O\A=1:O\B=F:Next:Q=0:T=0:EndIf:Cls:For O.S=Each S:U=0:If O\B=L:U=O\D:EndIf:DrawImage O\B,O\X#,O\Y#,U:Next:If T:DrawImage M,W#,K#:EndIf:Text 0,0,"("+AA+") Sc."+R:WaitTimer(p):Flip 0:O.S=First S:PX#=O\x#:PY#=O\y#:DrawImage O\B,O\X#,O\Y#,O\D:O.S=After O:Q=O=Null:While O<>Null:DrawImage O\B,O\X#,O\Y#:If ImagesCollide(L,PX#,PY#,0,O\B,O\X#,O\Y#,0):Repeat Until KeyHit(1):End:EndIf:If T=1And ImagesCollide(M,W#,K#,0,O\B,O\X#,O\Y#,0):If O\B=H:Delete O:Else:V=G:J=2:If O\B=G:V=H:J=3:EndIf:W#=O\x:K#=O\y:D#=O\D:O\D=(D#+Rand(18))Mod 72:O\B=V:O\A=J:O.S=New S:O\x#=W#:O\y#=K#:O\D=(D#+Rand(18)+54)Mod 72:O\A=J:O\B=V:Insert O After First S:EndIf:R=R+AA:T=0:EndIf:O.S=After O:Wend:For O.S=Each S:O\x#=O\x#+C#(O\D)*O\A:O\y#=O\y#+E#(O\D)*O\A:If O\x#>1024And (O\D<18Or O\D>54):O\x#=-99:ElseIf O\x#<-99And O\D>18And O\D<54:O\x#=1124:EndIf:If O\y#<-99And O\D>36:O\y#=868:ElseIf O\y#>768And O\D<36:O\y#=-99:EndIf:Next:If T:W#=W#+C#(Z)*5:K#=K#+E#(Z)*5:If W#<0Or W#>1024Or K#<0Or K#>768:T=0:EndIf:EndIf:O.S=First S:If KeyDown(n):O\x#=O\x#+C#(O\D)*2:O\y#=O\y#+E#(O\D)*2:EndIf:If T=0And KeyDown(29):Z=O\D:W#=O\x#+20+C#(Z)*20:K#=O\y#+20+E#(Z)*20:T=1:EndIf:If KeyDown(205):O\D=(O\D+1)Mod 72:EndIf:If KeyDown(203):O\D=O\D-1:If O\D<0:O\D=71:EndIf:EndIf:Wend
Re: Développer un jeu quand on ne connait rien
Attention ça c'est le Basic Jedi façon Vingazole
Perso j'ai l'impression de voir du code JS minifier...
Perso j'ai l'impression de voir du code JS minifier...
Re: Développer un jeu quand on ne connait rien
Le Kendji Basic 1.0, par F.L.,
La méthode naturelle et évolutionnaire de FL pour devenir un programmeur culte en 3 mois ! Toi aussi devient developpeur PC ENGINE sans forcer !
Je suis moi meme adepte, ne faisant pas trop d'effort dans la structure de mon code.
La méthode naturelle et évolutionnaire de FL pour devenir un programmeur culte en 3 mois ! Toi aussi devient developpeur PC ENGINE sans forcer !
Je suis moi meme adepte, ne faisant pas trop d'effort dans la structure de mon code.
_______________________________________________________
Re: Développer un jeu quand on ne connait rien
ichigobankai a écrit:Attention ça c'est le Basic Jedi façon Vingazole
Perso j'ai l'impression de voir du code JS minifier...
C'est mon deukilos 2016, 2048 caractères compacts !
drfloyd a écrit:Je suis moi meme adepte, ne faisant pas trop d'effort dans la structure de mon code.
Les indentations c'est quand même la base pour un code lisible. Par contre, qu'elles influencent le résultat du code, je ne suis pas sûr que ça me plaise...
Re: Développer un jeu quand on ne connait rien
le Kendji Basic 1.0, ça c'est bien trouvé
au fait, j'ai commencé le tuto, j'ai fini le hello world et la compil. je le posterai bientot
au fait, j'ai commencé le tuto, j'ai fini le hello world et la compil. je le posterai bientot
Re: Développer un jeu quand on ne connait rien
Si tu as déjà fait du code avec des variables non déclarées, ne me dis pas que ça t'ai jamais arrivé !!, je te croirai pasCa c'est sur que le gros souci se situe en général entre la chaise et le clavier comme on dit
Si ton IDE est pas trop à chier, en tapant le debut de "mavar..." il devrait mettre/proposer la suite en autocompletion
(ce qui aide quand même pas mal à éviter les bourdes)
C'est l'erreur typique, bête mais typique .
Invité- Invité
Re: Développer un jeu quand on ne connait rien
Ca reste franchement rare le coup de la variable non déclarée, mais ne pas utiliser la bonne (car genre nom trop proche et que l'on ne s'en souvient plus ) ca oui
Et comme urbinou, l'indentation perso j'en mets ± dans tous les langages car ca rend quand même les choses "plus simple à lire". (enfin un peu moins inbuvable)
Et comme urbinou, l'indentation perso j'en mets ± dans tous les langages car ca rend quand même les choses "plus simple à lire". (enfin un peu moins inbuvable)
Re: Développer un jeu quand on ne connait rien
Je parlais des langages où tu n'es pas obligé de déclarer les variables .Ca reste franchement rare le coup de la variable non déclarée, mais ne pas utiliser la bonne (car genre nom trop proche et que l'on ne s'en souvient plus ) ca oui
Pour ceux là le type d'erreurs posté plus haut arrive facilement, en C non par exemple .
Invité- Invité
Re: Développer un jeu quand on ne connait rien
pour mes jeux en basic et en html5, je n'ai déclaré aucune variable
avec qb64 faut faire gaffe , il n'y a meme pas d'avertissement, si jamais tu te trompe en écrivant le nom d'une variable, il en crée une nouvelle. faut être super vigilant
exemple:
temps = 10
temps = temp + 1
donnera
temps = 1
avec qb64 faut faire gaffe , il n'y a meme pas d'avertissement, si jamais tu te trompe en écrivant le nom d'une variable, il en crée une nouvelle. faut être super vigilant
exemple:
temps = 10
temps = temp + 1
donnera
temps = 1
Re: Développer un jeu quand on ne connait rien
t'as qu'à faire
temps += 10
ca t'évitera d'éventuelles conneries
ok je sors ^^
temps += 10
ca t'évitera d'éventuelles conneries
ok je sors ^^
Re: Développer un jeu quand on ne connait rien
Bah ouai, c'est justement ça que je soulignais, le novice lui va en chier pour trouver le problème,remarque même le pro risque de se faire avoir, t'a beau relire 50 fois ton code, le maVariable tu la verras tjrs pareil que mavariableF.L a écrit:avec qb64 faut faire gaffe , il n'y a meme pas d'avertissement, si jamais tu te trompe en écrivant le nom d'une variable, il en crée une nouvelle. faut être super vigilant
exemple:
temps = 10
temps = temp + 1
donnera
temps = 1
EDIT: ton temps vs temp est un meilleurs exemple encore .
Invité- Invité
Re: Développer un jeu quand on ne connait rien
Touko, ton exemple est encore pire, je DETESTE les OS et langages case sensitive
Re: Développer un jeu quand on ne connait rien
je repose la question, personne a taté du arcade gamestudio?
j'ai un peu avancé j'ai
-ecran titre
-table des scores avec scrolling du background
-un level qu'on peut finir avec des plateformes qui fonctionnent, des sauts et des obstacles
sans rentrer une ligne de code...
prochaine étape :
-spawner des fruits
-créer des ennemis
j'ai un peu avancé j'ai
-ecran titre
-table des scores avec scrolling du background
-un level qu'on peut finir avec des plateformes qui fonctionnent, des sauts et des obstacles
sans rentrer une ligne de code...
prochaine étape :
-spawner des fruits
-créer des ennemis
Invité- Invité
Re: Développer un jeu quand on ne connait rien
Vetea en parlait il y a une ou deux pages.
C'est vrai que ça a l'air vachement puissant pour un maker.
C'est vrai que ça a l'air vachement puissant pour un maker.
Re: Développer un jeu quand on ne connait rien
J'ai fait quelques heures de Caml Light à la fac : ça changeait, c'était marrant !Tryphon a écrit:J'ai enseigné le Python à des ados et le Caml à des taupins, j'ai vu ce qui bloquait.
vingazole- Infirmier
- Nombre de messages : 4522
Age : 50
Localisation : Midian
Date d'inscription : 05/01/2012
Re: Développer un jeu quand on ne connait rien
Tout les langages de prog que je connais sont comme çaUrbinou a écrit:Touko, ton exemple est encore pire, je DETESTE les OS et langages case sensitive
Invité- Invité
Re: Développer un jeu quand on ne connait rien
Du coup, tu as remporté l'édition 2016 de ce concours ?Urbinou a écrit:C'est mon deukilos 2016, 2048 caractères compacts !
vingazole- Infirmier
- Nombre de messages : 4522
Age : 50
Localisation : Midian
Date d'inscription : 05/01/2012
Re: Développer un jeu quand on ne connait rien
Bah non, basic, pascal, asm, windev, powerbuilder par exemple. Professionnellement, j'ai jadis fait du clipper et aujourd'hui du Delphi (un pascal OO) exempts de cette aberration C'est une des raisons qui me font éviter le C ! Même si c'est un coup à prendre, c'est tout de même débile à la base d'être sensible à la casse. Tu ne trouves pas ?
Re: Développer un jeu quand on ne connait rien
vingazole a écrit:Du coup, tu as remporté l'édition 2016 de ce concours ?Urbinou a écrit:C'est mon deukilos 2016, 2048 caractères compacts !
Bin oui par la force des choses
Mais je suis humble, j'ai la victoire discrète !
Re: Développer un jeu quand on ne connait rien
C'est tout à ton honneur !
J'aimais bien le Pascal : la délimitation des blocs par "begin" et "end" ça me paraît plus pertinent que des accolades ou l'indentation.
J'aimais bien le Pascal : la délimitation des blocs par "begin" et "end" ça me paraît plus pertinent que des accolades ou l'indentation.
vingazole- Infirmier
- Nombre de messages : 4522
Age : 50
Localisation : Midian
Date d'inscription : 05/01/2012
Re: Développer un jeu quand on ne connait rien
C'était un des objectif du concepteur du langage de "forcer" à structurer son programme. Ce que je reproche principalement à l'accolade, c'est son accessibilité clavier et que visuellement on a vite fait de le confondre avec une parenthèse. Dans ce sens j'aimais bien le clipper où chaque élément avait son terminateur, IF / ENDIF, DO / ENDDO...
Page 4 sur 5 • 1, 2, 3, 4, 5
Sujets similaires
» developper pour la nes
» Développer en équipe, c'est possible ?
» Quand on a rien au flop ??
» question de débutant PS4 ou PS3 ou rien? quand on est Nintendo fan
» Développer sur un petit pc portable
» Développer en équipe, c'est possible ?
» Quand on a rien au flop ??
» question de débutant PS4 ou PS3 ou rien? quand on est Nintendo fan
» Développer sur un petit pc portable
Page 4 sur 5
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum