2012-09-25 8 views
0

J'ai un jeu qui fonctionne correctement en mode solo, je veux ajouter des IA bots en utilisant la programmation socket. Je veux envoyer une carte aux programmes AI bots avec socket et redonner leurs mouvements et faire des changements dans la carte. Les robots AI peuvent être écrits en C++ ou en Java. J'ai beaucoup cherché dans les forums et Google mais je ne trouve pas de solution bonne et facile. J'ai essayé le serveur photon mais c'est très compliqué pour mon but.Unity multijoueur avec programmation de sockets

Y a-t-il une meilleure solution? est Web Socket utile (javascript) dans ce cas?

+0

Websockets est pour la communication serveur-> navigateur, en dehors de laquelle il est basé sur TCP, alors pourquoi ne pas simplement utiliser TcpClient ou UdpClient de C#? D'ailleurs y a-t-il une raison pour laquelle vous n'utilisez pas le réseau d'Unity? – Jerdak

+0

J'ai essayé le réseau Unity .... vous voulez ajouter un corps réseau rigide et ... parce que les robots peuvent être écrits par d'autres langages comme C++ ou python et écrits par d'autres personnes. Je voulais avoir cette communication entre leur programme et le graphique puis synchroniser les graphiques en utilisant Unity Networking. Ma question concerne la communication entre les programmes de bot écrits par d'autres personnes et mes scripts Unity. – D3GAN

+0

Puis coller avec simple UdpClient ou TcpClient. Tout paquet AI qui s'exécute à l'extérieur d'Unity et qui nécessite une mise en réseau plus robuste que celles qui peuvent être fournies est, à mon avis, trop complexe pour être utilisé en tant que paquet autonome. Vous trouverez peut-être plus facile de simplement convertir ce code en un script dans Unity plutôt que d'écrire un encapsuleur réseau complexe. – Jerdak

Répondre

0

Utilisez C# SignarlR et dans Unity, vous pouvez facilement utiliser un client wrapper pour communiquer avec le serveur.

Il existe également un dossier de démonstration dans le projet d'encapsuleur client.