Pregunta Sockets C#

Iniciado por lamique, 18 Diciembre 2012, 18:18 PM

0 Miembros y 1 Visitante están viendo este tema.

lamique

Hola Gente, suelo ser una persona que posteo después de estar 3 días buscando en google, el tema es el siguiente, quiero realizar un servidor, que acepte múltiples clientes (se trata de un juego MMO)Esto no es problema, yo se algo de C++ y vb.net, en el motor que estoy trabajando se llama Unity 4, y yo tengo que pasar el codigo de un cliente a scripts, pero no tengo idea de como hacerlo, lo que pregunto es lo siguiente, como puedo hacer una conexión simple entre un servidor  y el engine Unity, es solo para guiarme, me falta el punto de partida, después de ahi voy probando y jugando con los sockets hasta obtener lo que realmente quiero, me gusta el tema de ir experimentando, pero me falta eso, el impulso, googleando encontre aplicaciones simples de cliente servidor en C# pero, como lo aplicaría al engine, tambien puedo incluir un pluguin(una dll cliente) y llamarla adentro del engine con scripts, bueno espero puedan ayudarme, o me tiren alguna idea, Saludos y Gracias de Antemano

Codigo Cliente (quiero pasarlo a un script, o a una dll, y llamarlo desde unity con un script)
Código (csharp) [Seleccionar]
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using System.Net.Sockets;

namespace TcpClient
{
    class MainClass
    {
        public static void Main(string[] args)
        {
            Console.WriteLine("Abriendo sockets...");
            try
            {
                IPEndPoint ep = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 1234);
                Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
                socket.Connect(ep);
                Console.WriteLine("Servidor Conectado...");
            }
            catch
            {
                Console.WriteLine("¡Error abriendo sockets!");
                Console.ReadKey();
            }
        }
    }
}



Servidor

Código (csharp) [Seleccionar]
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using System.Net.Sockets;

namespace TcpServer
{
        class MainClass
        {
                public static void Main (string[] args)
                {
                        Console.WriteLine ("Abriendo sockets...");
                        try{
                        IPEndPoint ep = new IPEndPoint(IPAddress.Any, 1234);
                        Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
                        socket.Bind(ep);
                        socket.Listen (25);
                                Console.WriteLine ("Esperando conexiones...");
                        socket.Accept();
                                Console.WriteLine ("Nueva conexion detectada...");
                        }catch{
                                Console.WriteLine ("¡Error abriendo sockets!");
                            Console.ReadKey();
                        }
                }
        }
}
Si quiero Cambiar el Mundo, Empiezo por mi!

Novlucker

Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein