Page 2 sur 4

Re: [WIP] - GOT#VR

Publié : 28 Oct 2018 21:26
par E3DStef
Thx DevAmat

C'est clairement le but, l'idée de ce "proto-game" est venu lors d'une discussion sur les anciens jeux et l'idée d'un jeu co-op me plaisait bien et était en rupture avec tous ces jeux actuels.

Là je bûche sur la partie réseau. Autant la partie réseau multijoueur chacun dans son char fût vite résolue, autant le fait de mettre plusieurs joueurs dans le mm véhicule (chacun interagissant avec une partie de ce véhicule) est plus complexe.

Dès que j'ai résolu mon petit bug je mettrai le tuto/soluce

Mon actuel problème est que j'arrive bien à connecter HOTE et CLIENT et que le mouvement de HOTE (le cannonier) est vu correctement par CLIENT mais quand CLIENT veut bouger le tank la rotation fonctionne et est vu par HOTE mais pas le déplacement. Il semblerai que HOTE "bloque" le déplacement ...

Une petite vidéo vaut mieux qu'un long discours :

https://www.youtube.com/watch?v=gwiNfdfu1Ks&feature=youtu.be

Si certains ont des pistes je prends ^^

Merci

A+

Stef

Re: [WIP] - GOT#VR

Publié : 29 Oct 2018 02:25
par Farstone
Salut Stef, j'ai un peu du mal a comprendre quand tu dit que le mouvement de hôte est bien vue par le client, tu parle de la tourelle ? Et le client lui peux affecter la rotation mais pas la location du tank c'est bien ça ? Malheureusement je ne peux pas regarder la vidéo, donc sa serrais sympas de préciser en texte, mais je pense que tu auras réglé ce petit problème lors de ta prochaine visite :-D

Re: [WIP] - GOT#VR

Publié : 30 Oct 2018 13:18
par E3DStef
Salut,

En fait non pas encore réglé car le pbm est bizarre lol.

J'explique en texte :

HOTE = Player Cannonier qui bouge la tourelle et la hausse du canon
CLIENT = Player Chauffeur qui fait au char ROTATION et TRANSLATE (pour avancer/reculer)

Aujourd'hui quand

> HOTE tourne la tourelle ou monte/descend le canon = OK c'est bien vu par le HOTE et le CLIENT

> CLIENT fait faire une ROTATION au char = OK c'est bien vu par le HOTE et le CLIENT

> CLIENT fait faire un TRANSLATE (avancer par exemple) = K.O. le char tremble mais ne bouge pas coté CLIENT et coté HOTE on ne voit rien qui se passe.

>>> CONCLUSION : Opposition d'infos network entre CLIENT et HOTE. Le CLIENT dit au char avance et le HOTE dit au char bouge pas (en gros)

Ce qui m'étonne grandement c'est que pour la ROTATION aucuns soucis ???

Re: [WIP] - GOT#VR

Publié : 30 Oct 2018 13:27
par djulio74
En effet c'est étonnant.
Tu n'aurais pas une assignation d'un transform.position du coté du HOTE, qui désignerais le transform du char au lieu d'un autre Transform?

Parce que si tu gère les info network pour translate et rotate de la même façon eds deux coté ça devrait tout marcher ou rien du tout.
Enfin je dis ça mais je n'y connais absolument rien en network. :lol:

Re: [WIP] - GOT#VR

Publié : 30 Oct 2018 15:37
par E3DStef
Non dans le script le ROTATE est identique au TRANSLATE

J'ai mm essayé de passer les commandes vers le serveur...

Ci dessous le code
> CHAUFFEURCHAR qui est avec ces commandes vers le serveur
> CANNONIERCHAR qui est avec des commandes directes (exécutés par chaque client)

Code : Tout sélectionner

	void Update () 
	{
		if (isLocalPlayer) 
		{
			if (MaPosition == "ChauffeurChar") 
			{
				if (Input.GetKey (KeyCode.UpArrow)) // Avance ton char ben
					CmdTranslateTonCharBen(Vector3.forward * moveSpeed * Time.deltaTime);

				if (Input.GetKey (KeyCode.DownArrow)) // Recule ton char ben
					CmdTranslateTonCharBen(-Vector3.forward * moveSpeed * Time.deltaTime);
						
				if (Input.GetKey (KeyCode.LeftArrow)) // Tourne ton char à gauche ben
					CmdRotateTonCharBen (Vector3.up, -turnSpeed * Time.deltaTime);
				
				if (Input.GetKey (KeyCode.RightArrow)) // Tourne ton char à drpite ben
					CmdRotateTonCharBen (Vector3.up, turnSpeed * Time.deltaTime);
			
			} // FIN IF CHAUFFEURCHAR

			if (MaPosition == "CannonierChar") 
			{
				if (Input.GetKey (KeyCode.PageUp)) // Hausse le canon ben
					MyPivotCanon.transform.Rotate(Vector3.right, -turnSpeed * Time.deltaTime);

				if (Input.GetKey (KeyCode.PageDown)) // Baisse le canon ben
					MyPivotCanon.transform.Rotate(Vector3.right, turnSpeed * Time.deltaTime);

				if(Input.GetKey(KeyCode.LeftArrow)) // Tourne la tourelle à gauche ben
					MyTourelle.transform.Rotate(Vector3.up, -turnSpeed * Time.deltaTime);

				if(Input.GetKey(KeyCode.RightArrow)) // Tourne la tourelle à droite ben
					MyTourelle.transform.Rotate(Vector3.up, turnSpeed * Time.deltaTime);

			} // FIN If CANNONIERCHAR
		
		} // FIN If LOCAL PLAYER

	} // Fin Update

	[Command]
	void CmdRotateTonCharBen (Vector3 VecteurRotateChar, float VitesseRotateChar)
	{
		MyTank.transform.Rotate (VecteurRotateChar, VitesseRotateChar);
	}
	void CmdTranslateTonCharBen (Vector3 VecteurTranslateChar)
	{
		MyTank.transform.Translate (VecteurTranslateChar);
	}
	void CmdRotateTaTourelleBen (Vector3 VecteurRotateChar, float VitesseRotateChar)
	{
		MyTank.transform.Rotate (VecteurRotateChar, VitesseRotateChar);
	}
	void CmdHausseTonCanonBen (Vector3 VecteurTranslateChar)
	{
		MyTank.transform.Translate (VecteurTranslateChar);
	}

Re: [WIP] - GOT#VR

Publié : 30 Oct 2018 16:41
par djulio74
Pourquoi ta cmdHausseTonCanonBen est un translate ? Ça devrait pas être un rotate ?
D'ailleurs qui lance cette void ?

Re: [WIP] - GOT#VR

Publié : 30 Oct 2018 17:23
par E3DStef
djulio74 a écrit :
30 Oct 2018 16:41
Pourquoi ta cmdHausseTonCanonBen est un translate ? Ça devrait pas être un rotate ?
D'ailleurs qui lance cette void ?
Non non c mon code en cours...Pour le moment personne n'appelle cette proc

Re: [WIP] - GOT#VR

Publié : 31 Oct 2018 11:46
par massaiTHEdog
Hello,
Tu n'aurais pas oublié de mettre l'attribut [Command] à tes autres méthodes?

Re: [WIP] - GOT#VR

Publié : 31 Oct 2018 13:16
par E3DStef
massaiTHEdog a écrit :
31 Oct 2018 11:46
Hello,
Tu n'aurais pas oublié de mettre l'attribut [Command] à tes autres méthodes?
Non pas oublié, en fait on n'est pas obligé de mettre [Command] devant chaque ligne du moment que la proc qui suit commence par Cmd, Unity comprends qu'il s'agit d'une commande réseau.

Merci en tout cas ^^

Je suis sûr qu'il s'agit d'un truc à la con mais bon là je vois plus pas :-)

Re: [WIP] - GOT#VR

Publié : 31 Oct 2018 13:21
par E3DStef
Folei a jeté un oeil sur mon écran et cela l'étonne aussi (ouf me sens moins seul lol)

Je lui ai envoyé le projet pour qu'il regarde sur son pc.

Je vous le mets donc à tous disponible ci dessous si certains d'entre vous veulent jeter un oeil de leur côté ^^

https://drive.google.com/file/d/1HZ5p8Q ... sp=sharing

Merci de votre bienveillante attention à tous :-)