Dae pessoal…
Já sei como fazer comunicação entre 2 computadores via socket, porém estou precisando fazer um jogo de truco em até 4 jogadores em rede.
Minha dúvida é, como conectar 4 computadores via socket?
Obrigado a todos
Dae pessoal…
Já sei como fazer comunicação entre 2 computadores via socket, porém estou precisando fazer um jogo de truco em até 4 jogadores em rede.
Minha dúvida é, como conectar 4 computadores via socket?
Obrigado a todos
Comunicação via socket é sempre dois a dois (a menos que você faça um esquema de multicast e/ou broadcast).
Duas soluções:
no caso, criando um servidor que todos se conectam…
até onde eu sei, quando eu crio um serverSocket ele recebe 1 conexao, como eu faria pra receber mais d 1?
isso ainda ta muito estranho pra mim!!!
valew cara
no caso, criando um servidor que todos se conectam…até onde eu sei, quando eu crio um serverSocket ele recebe 1 conexao, como eu faria pra receber mais d 1?
isso ainda ta muito estranho pra mim!!!
valew cara
Não é bem assim, a classe ServerSocket aguarda uma conexão para cada chamada ao método “accept()” que for feita. Então, se tu quiser “receber” 4 conexões, basta chamar o método “accept()” 4 vezes e em todas as vezes guardar a referência para o objeto do tipo Socket que for retornado, que representa a conexão TCP com a máquina remota.
Inté.
legal
quando eu fiz um jogo em rede de 2 computadores, eu conseguia criar o servidor e me conectar como cliente usando a mesma maquina, por exemplo:
criei o servidor no pc X
no pc X abri o jogo novamente, conectei como cliente no ip 127.0.0.1
isso funciona perfeitamente, sera q com 4 programas diferentes (no caso) isso daria certo?
o problema é q nao tenho 4 computadores para testar o jogo, entao keria saber c tudo funcionaria executando na mesma maquina.
obrigado
4 clientes e um servidor na mesma máquina com certeza funciona… o que não pode ocorrer é mais de um servidor na mesma máquina… ocorre o erro de bind (porta já sendo usada).
no seu caso… uma primeira versão poderia ser do jeito que foi citado anteriormente… vc pega as referencias dos sockets e pronto… fechou.
legalquando eu fiz um jogo em rede de 2 computadores, eu conseguia criar o servidor e me conectar como cliente usando a mesma maquina, por exemplo:
criei o servidor no pc X
no pc X abri o jogo novamente, conectei como cliente no ip 127.0.0.1isso funciona perfeitamente, sera q com 4 programas diferentes (no caso) isso daria certo?
o problema é q nao tenho 4 computadores para testar o jogo, entao keria saber c tudo funcionaria executando na mesma maquina.
obrigado
Tu não precisa necessariamente de 4 computadores, tu precisa é de uma máquina que aguente as 4 instâncias diferentes do aplicativo “cliente” e depois é só usar o host de loopback “localhost” ou “127.0.0.1” para conectar os “clientes” ao “servidor”.
Inté.
resumindo:
eu posso fazer com q 4 programas sejam clientes de um servidor, tudo na mesma maquina…
isso eh a mesma coisa q ter cada 1 em 1 pc diferente…
certo?