DÉBUT D'UN JEU EN 3D SUR VB.NET (RESSEMBLE À DOFUS)

cs_Kite37 Messages postés 242 Date d'inscription lundi 6 mars 2006 Statut Membre Dernière intervention 17 janvier 2018 - 16 mars 2008 à 09:56
Vagnewinner Messages postés 1 Date d'inscription jeudi 29 avril 2010 Statut Membre Dernière intervention 27 mars 2011 - 27 mars 2011 à 17:17
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/46068-debut-d-un-jeu-en-3d-sur-vb-net-ressemble-a-dofus

Vagnewinner Messages postés 1 Date d'inscription jeudi 29 avril 2010 Statut Membre Dernière intervention 27 mars 2011
27 mars 2011 à 17:17
Ça date, et je déterre ce topic ! Mais voilà je suis intéressé !
Je sais coder en VB.net et j'aime les autre langages !
tortue1993 Messages postés 1 Date d'inscription mardi 8 septembre 2009 Statut Membre Dernière intervention 8 septembre 2009
8 sept. 2009 à 14:48
Bonjour, je ne suis pas un programmeur, en revanche je joue sur dofus depuis assez longtemps maintenant, environ 4 ou 5 ans, et je crois connaître pas mal de choses à son sujet...

Moi aussi je voulais programmer un jeu qui ressemblerait quelque part à dofus, je trouve que le graphisme du jeu est assez agréable à regarder et que l'humour omniprésent donne encore plus envie de jouer.

Je pense que :
- un bon graphisme est un point essentiel pour que les joueurs restent longtemps accro au jeu !
- la taille de la carte doit être assez grande, pas trop grande tout de même...
- les combats doivent avoir un minimum de tactique (je trouve le système du tour par tour pas trop mauvais pour ça), pas comme Shayia (le jeu est assez simple, vous appuyez sur toutes les touches du clavier, le combat dur 2 secondes, et vous gagnez...super!!!).
- la multitude des objets de panoplies, c'est super agréable...
- un monde pas trop sombre, plutôt féérique dans les coins gentils, et sombre et "terrifiant" dans les coins méchant

Je connais vraiment pas grand chose à la programmation, ce sont donc peut-être des sujets secondaire que l'on aborde dans ce genre de chose...

Pour des renseignements concernant le jeu, si vous avez des questions...n'hésitez pas à m'écrire.
jordandm Messages postés 1 Date d'inscription mardi 18 août 2009 Statut Membre Dernière intervention 18 août 2009
18 août 2009 à 00:24
bonjour j'ai etais hacker et je ses par qui j'ai son pseudo j'avez son compte il y'a pa longtemp j'voudrer retrouver le passe svp
eragon_03_2 Messages postés 2 Date d'inscription vendredi 31 août 2007 Statut Membre Dernière intervention 10 juin 2008
10 juin 2008 à 18:16
PS : Dofus est en 2D
benji2000 Messages postés 78 Date d'inscription samedi 26 août 2006 Statut Membre Dernière intervention 25 novembre 2016
12 avril 2008 à 15:38
on je me retrouve face a un nouveau problème , il faudrait trouver un code qui permet de nommer les cases comme avant mais de différente disposition enfin C pas facile a expliquer ...
Voilà le positionnement de mes cellules :

C C C C
C C C C C
C C C C C -> C C C
C C C C C
C C C C

Vue de face -> Vue en 3D

Alors pour cette disposition j'y arrive mais le problème maintenant et qu'il faut tous leur donner un nom tel que :

C -> {0;0}
C C C -> {-1;1} , {0;1} , {1;1}
C C C C C -> {-2;2} , {-1;2} , {0;2} , {1;2} , {2;2}
C C C -> {-1;3} , {0;3} , {1;3}
C -> {0;4}

Ce qui nous donnerais en 3D :

C C C -> {0;0} , {1;1} , {2;2}
C C -> {0;1} , {1;2}
C C C -> {-1;1}, {0;2} , {1;3}
C C -> {-1;2}, {0;3}
C C C -> {-2;2}, {-1;3}, {0;4}

Voilà , je crées mes cellules sous la forme :
__________________________________________

Dim XX As Integer = 1

For Y = 0 To NbrY.Text - 1
If XX = 0 Then
XX = 1
Else
XX = 0
End If

For X = 0 To NbrX.Text - 1 - XX
ReDim Preserve NoCase(NbrCases)
NoCase(NbrCases) = New System.Windows.Forms.Label
With NoCase(NbrCases)
.Name = ? <- Le problème viens d'ici ou j'ai besoin de la formule
....
.Location = New Point(X * 40 + XX * 20, Y * 13) <- je les positionnes sous le format 3D
....
ToolTip1.SetToolTip(NoCase(NbrCases), .Name) <- Je donnes leur nompour que celui si soit visible
....
Me.Panel1.Controls.Add(NoCase(NbrCases)) <- Et pour finir j'ajoute la nouvelle cellule
....
End With
NbrCases += 1
Next
Next
__________________________________________

Donc si j'ai la chance de tomber sur un mathématicien super doué en logique, qu'il puisse me donner ses idées...

Merci pour votre attention.
guanyun Messages postés 1 Date d'inscription mercredi 6 décembre 2000 Statut Membre Dernière intervention 20 mars 2008
20 mars 2008 à 21:55
Bonsoir Benji2000, tout d'abort bonne chance pour ton jeu que tu veux crée. Je ne mit connais pas du tout pour crée des maps etc ... Mais j'avais une question a te poser.
Je joue moi aussi a Dofus mais ... j'ai envie de changer donc quend tu aura fini ton jeu ou bien avancer, me contacter pour me laisser "essayer" ton jeu. Merci
cs_Kite37 Messages postés 242 Date d'inscription lundi 6 mars 2006 Statut Membre Dernière intervention 17 janvier 2018
16 mars 2008 à 20:52
merci bien je m'y pencherais dès que possible :)
bizzard4 Messages postés 155 Date d'inscription vendredi 12 décembre 2003 Statut Membre Dernière intervention 15 février 2009
16 mars 2008 à 20:44
Voici un bon tutorial sur les matrices de transformations (pour openGl mais la théorie est présente)

http://www.siteduzero.com/tuto-3-23978-1-les-matrices.html
cs_Kite37 Messages postés 242 Date d'inscription lundi 6 mars 2006 Statut Membre Dernière intervention 17 janvier 2018
16 mars 2008 à 20:37
hum ça peut être une idée je ferais des tests. Je n'ai jamais touché a ce genre de chose et ne sais absolument pas comment ça marche :s
bizzard4 Messages postés 155 Date d'inscription vendredi 12 décembre 2003 Statut Membre Dernière intervention 15 février 2009
16 mars 2008 à 20:34
En fait tu pourrais peut être faire ton jeu en 2D normal puis ensuite le transformer en (diagonale) grâce à deux matrice de transformation (rotation et scale) tu fait une rotation de (je pense 45 degré) pour ensuite faire une scale pour donner l'effet oblique.

Ce n'est qu'une sugestion
benji2000 Messages postés 78 Date d'inscription samedi 26 août 2006 Statut Membre Dernière intervention 25 novembre 2016
16 mars 2008 à 16:53
Lu KITE37 je suis content que ma source te plais

En ce qui est du passage 2D/isométrique il n'y a pas trop de code vraiment incroyable...

Je demandes juste à toutes les cases créées de changer leur formes grâce à
Imports Systeme.Drawing.Drawing2D qui "coupe" les cases en losange (un effet 3D)

Pour le positionnement je me suis cassé la tête à trouver la formule :
.Location = New Point((NbrY.Text - 1) * 21 + X * 21 - Y * 21, Y * 13 + X * 13)

Après ce que je viens de dévoiller certaines personnes risqueraient de ne plus s'intéresser de ma sources...

Sinon peu tu m'envoyer l'adresse ou je pourais télécharger ta source merci.

Benji2000
cs_Kite37 Messages postés 242 Date d'inscription lundi 6 mars 2006 Statut Membre Dernière intervention 17 janvier 2018
16 mars 2008 à 09:56
Bonjour !
J'ai travaillé il y a quelques temps sur un éditeur de map pour jeu 2D (posté sur ce site, voir mes sources) qui pourrait peut être te donner quelques idées.
Pour ma part, je suis assez intrigué par ton passage isométrique/2D.

Pourrais-tu me l'expliquer plus en détail si possible? Je pourrais ainsi apporter des améliorations non négligeables a mon éditeur en proposant la création de carte ISO :)

Cordialement, KiTe
Rejoignez-nous