autre projet en commun , à définir ensemble
C'est pas idiot, ton truc.Julien a écrit :ça vous dirai pas de faire une application de téléphonnie via le net (Téléphonne de ip à ip) ?
Moi, je ne verrais pas ça pour de la téléphonie, mais plutôt pour faire une sorte de "chat vocal" qui pourrait être intégré dans un jeu.
Bon, pour le moment, il faut déjà savoir comment procéder pour créer le jeu en réseau, mais une fois que ce sera fait, je dis que ça pourrait être un bon complément du chat en mode texte
Chris

J'ai plus trop de temps pour coder en ce moment, mais l'idée du réseaux est pas mal ..
Cependant avec des copains on a codé un petit MSN histoire de rigoler, alors moi je vous porpose comme idée de faire un client de dialogue en ligne sophistiqué comme MSN
Sinon, pour votre jeu 2D par le résaux, envoyé un msg à Nells fu forum qui code un jeu en 2D par le réseau, et sa à l'air de bien marcher !
Bref voila cee que j'en pense !
Bye all
Cependant avec des copains on a codé un petit MSN histoire de rigoler, alors moi je vous porpose comme idée de faire un client de dialogue en ligne sophistiqué comme MSN
Sinon, pour votre jeu 2D par le résaux, envoyé un msg à Nells fu forum qui code un jeu en 2D par le réseau, et sa à l'air de bien marcher !
Bref voila cee que j'en pense !
Bye all
J'avais fait ça il y a 2-3mois je ne m'en rappelais plus, le code est pas très bien organisé mais l'idée est là. Contrairement au chat, plusieurs client sont gérés
Serveur
Client
Serveur
Code : Tout sélectionner
If InitNetwork() = 0 : MessageRequester("Erreur","Ne peut pas lancer les fonctions réseau",#MB_ICONError): End :EndIf
;- Declarations
; Structures
Structure Client
ID.l
EndStructure
; Listes
NewList Clients.Client()
; Buffer
*Recevoir.l = AllocateMemory(1500)
; Variables
Sortie.b : EID.b
Port.l = 6494 : CID.l
; Creation du serveur
If CreateNetworkServer(Port) = 0 : MessageRequester("Erreur","Ne peut pas lancer le serveur",#MB_ICONError) : End : EndIf
;Creation de la fenêtre
If OpenWindow(0,0,0,300,20,#PB_Window_WindowCentered | #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_TitleBar,"Serveur pour Olivréseau") = 0
MessageRequester("Erreur","Ne peut pas ouvrir une fenêtre",#MB_ICONError) : End
EndIf
;Creation de la SATUTSBAR
CreateStatusBar(0,WindowID(0))
AddStatusBarField(80)
AddStatusBarField(120)
AddStatusBarField(100)
StatusBarText(0,0,"Lancé")
StatusBarText(0,1,"0 Clients")
StatusBarText(0,2,"Pas de partie")
Repeat
EID = NetworkServerEvent()
CID = NetworkClientID()
Select EID
Case 1
Debug "Connection : " + Str(CID)
AddElement(Clients())
Clients()\ID = CID
StatusBarText(0,1,Str(CountList(Clients())) + " Clients")
For i = 0 To CountList(Clients())-1
SelectElement(Clients(),i)
SendNetworkString(Clients()\ID,"Il y a " + Str(CountList(Clients())) + " personne(s) connectée(s)")
Next i
Case 2
FreeMemory(*Recevoir)
*Recevoir = AllocateMemory(1500)
ReceiveNetworkData(CID,*Recevoir,1500)
Debug PeekS(*Recevoir)
Case 4
Debug "Deconnection"
For i = 0 To CountList(Clients())-1
SelectElement(Clients(),0)
If Clients()\ID = CID : DeleteElement(Clients()) : Debug "" : EndIf
Next i
StatusBarText(0,1,Str(CountList(Clients())) + " Clients")
EndSelect
Select WindowEvent()
Case #PB_EventCloseWindow
Sortie = 1
EndSelect
Until Sortie = 1
End
Client
Code : Tout sélectionner
; Initialise
If InitNetwork() = 0 Or InitSprite() = 0 : MessageRequester("Erreur","Ne peut pas lancer les fonctions réseau.",#MB_ICONError) : End : EndIf
;- Declarations
; Buffer
*Recevoir.l = AllocateMemory(1500)
; Variables
Sortie.b
ID.l
; Ouverture de la fenêtre
If OpenWindow(0,0,0,400,400,#PB_Window_WindowCentered | #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_TitleBar,"Client Olivreseau") = 0 Or OpenWindowedScreen(WindowID(0),0,0,400,400,1,0,0) = 0
MessageRequester("Erreur","Ne peut pas lancer la fenêtre et l'écran.",#MB_ICONError) : End
EndIf
Procedure Ecrire(R.w,G.w,B.w,Texte.s,X.w,Y.w)
StartDrawing(ScreenOutput())
FrontColor(R,G,B)
Locate(X,Y)
DrawingMode(1)
DrawText(Texte)
StopDrawing()
FlipBuffers()
EndProcedure
; Connection au serveur
ID = OpenNetworkConnection("192.168.0.1",6494)
If ID = 0
MessageRequester("Erreur","Ne peut pas connecter au serveur",#MB_ICONError) : End
EndIf
Repeat
Select WindowEvent()
Case #PB_EventCloseWindow
Sortie = 1
EndSelect
Select NetworkClientEvent(ID)
Case 2
FreeMemory(*Recevoir)
*Recevoir = AllocateMemory(1500)
ReceiveNetworkData(ID,*Recevoir,1500)
ClearScreen(0,0,0)
Ecrire(0,255,0,PeekS(*Recevoir),10,10)
EndSelect
FlipBuffers()
Until sortie = 1
en fait , je pensais que ça allait être compliqué , mais en y jetant un petit coup d'oeil , je m'aperçois que purebasic gère déjà très bien le réseau , il ne nous reste plus grand chose à faire 
Enfin je dis ça parce que je n'ai pas encore vraiment trempé dedans
Dès que j'ai un peu de temps , je ferai des tests , maintenant j'ai tout ce qu'il faut , j'ai deux pcs avec carte réseau ,et un cable de liaison .
pour le jeu , j'avais pensé à un jeu de dame , ou une bataille navale ?
ou alors un truc qui bouge plus ? on se tire dessus dans un labyrinthe ?
les autres idées sont les bienvenues

Enfin je dis ça parce que je n'ai pas encore vraiment trempé dedans

Dès que j'ai un peu de temps , je ferai des tests , maintenant j'ai tout ce qu'il faut , j'ai deux pcs avec carte réseau ,et un cable de liaison .
pour le jeu , j'avais pensé à un jeu de dame , ou une bataille navale ?
ou alors un truc qui bouge plus ? on se tire dessus dans un labyrinthe ?
les autres idées sont les bienvenues
bon on part sur un truc classique ?
un jeu à 2 ,3 ou 4 joueurs en réseau
un labyrinthe , un robot chacun , on peut s'associer pour en éliminer un , d'où l'intérêt du chat pour échanger des infos entre joueurs , mais sans que tout le monde puisse voir ,seulement ceux qui sont sélectionnés
la partie se termine quand il n'y a plus qu'un robot debout !
feu à volonté ? ou cartouches à ramasser ?
jeu en 3D ? ou 2D ?
Sinon , un simple jeu de bataille navale pour se faire la main ?
pour le jeu de dames ,j'avais l'intention d'en faire un , alors je vais commencer à l'occasion de préparer la trame , plateau , pions , et déplacement des pions . avec une version 2D et 3D .
un jeu à 2 ,3 ou 4 joueurs en réseau
un labyrinthe , un robot chacun , on peut s'associer pour en éliminer un , d'où l'intérêt du chat pour échanger des infos entre joueurs , mais sans que tout le monde puisse voir ,seulement ceux qui sont sélectionnés
la partie se termine quand il n'y a plus qu'un robot debout !
feu à volonté ? ou cartouches à ramasser ?
jeu en 3D ? ou 2D ?
Sinon , un simple jeu de bataille navale pour se faire la main ?
pour le jeu de dames ,j'avais l'intention d'en faire un , alors je vais commencer à l'occasion de préparer la trame , plateau , pions , et déplacement des pions . avec une version 2D et 3D .
Un jeu de dames, si c'est pour jouer à 2, c'est simple à faire, j'en avais fait un sur Atari.
La ou ça se complique, c'est quand il s'agit créer le jeu, pour jouer contre l'ordinateur.
J'avais trouvé un truc site, sur le net, qui parlait des stratégies au dames.
Ca ne parait pas, comme ça, mais c'est super compliqué.
Si ça t'interesse, voilà le site de la Fédération Française de Jeu de Dames. (FFJD).
Va faire un tour à la rubrique Jeu/Technique.
http://ffjd.free.fr/
Chris
La ou ça se complique, c'est quand il s'agit créer le jeu, pour jouer contre l'ordinateur.
J'avais trouvé un truc site, sur le net, qui parlait des stratégies au dames.
Ca ne parait pas, comme ça, mais c'est super compliqué.
Si ça t'interesse, voilà le site de la Fédération Française de Jeu de Dames. (FFJD).
Va faire un tour à la rubrique Jeu/Technique.
http://ffjd.free.fr/
Chris

oui je sais que ce n'est pas évident de faire l'IA , mais c'est justement pour ça que je voulais faire un jeu de dames ,ça pourrait être intéressant 
Il faut mettre en oeuvre des algos dont je ne connais le nom que depuis quelques semaines.
Voici ce que dit l'auteur du programme français actuellement numéro un mondial des logiciels de jeu de dames.
Pour les deux premiers ,ça me parait bien difficile , mais je vais quand même essayer , même si je n'y arrive pas , j'aurai toujours appris quelque chose
et ça me fera travailler sur les algos MinMax, AlphaBeta , ces fameux algos dont je ne connais que le nom .
mais là , on s'éloigne du projet en commun

Il faut mettre en oeuvre des algos dont je ne connais le nom que depuis quelques semaines.
Voici ce que dit l'auteur du programme français actuellement numéro un mondial des logiciels de jeu de dames.
donc il est clair que je ne peux pas m'attaquer au dernier point , c'est pour les spécialistes .Comme tous les logiciels de jeu, il repose sur 3 composantes :
- un algorithme de génération des coups légaux
- un algorithme de recherche qui permet de naviguer dans les variantes
-une fonction d'évaluation qui permet de donner une note à chaque position.
Lorsque les 2 premiers points sont correctement programmés, un logiciel atteint un niveau respectable, largement suffisant pour battre 99% de la population. En effet, le logiciel est déjà très fort en tactique (le court terme). Sa capacité de calcul énorme est son principal atout.
En revanche, pour atteindre le niveau des joueurs de club, voire celui des meilleurs joueurs mondiaux, le programme doit comprendre le jeu. Pour cela, il doit acquérir les connaissances liées au jeu, la théorie du jeu, ce que l'on appelle généralement la stratégie (par opposition à la tactique).
Pour les deux premiers ,ça me parait bien difficile , mais je vais quand même essayer , même si je n'y arrive pas , j'aurai toujours appris quelque chose

et ça me fera travailler sur les algos MinMax, AlphaBeta , ces fameux algos dont je ne connais que le nom .
mais là , on s'éloigne du projet en commun
