 |
 |
 |
| Autor |
Mensagem |
kleiton157
Usuário


Registrado: 06/05/11 Mensagens: 1008 Localização: Nycolle minha vida!!! |
|
Problema no host da uma ajudinha |
|
bem é o seguinte
eu e meu colega alisson, criamos um projeto,
nesse projeto colocamos os dois objetos da aba comunicacao,e dois botoes,
um com o comando TCPClientConnect() - (Função utilizada para conectar o cliente ao servidor definido em host.) np client colocamos o IP do dedicado dele(hospedagem de um antigo game)
e outro com o comando TCPServerActivate para criar o servidor
e a porta dos nossos ta 7002, sendo que o game dele é uma copia do meu que eu passei para ele...
então ele abriu o dedicado, e clicou em criar, e eu cliquei em conectar e ele do pc dele também clicou em conectar, talz
conectou!!!(porque antes dava error)
soke eu não vejo ele no meu game, e não é de não procurar porque o mapa é um cubo esticado, itaum daria para ver ele
pode me ajuadr?
_________________
 |
|
| Qui Jan 05, 2012 3:35 pm |
|
 |
kleiton157
Usuário


Registrado: 06/05/11 Mensagens: 1008 Localização: Nycolle minha vida!!! |
|
|
|
euu esqueci de dizer
no tutorial dizia:
"Bem aventurado aquele que tem paciencia, pois ele banharar seu corpo, nas aguas do eufrates"
zuera, dizia assim:
"o conceito é o mesmo do jogo de xadrez, mas dessa vez vai ser necessário envia a nova posição do jogador (x, y e z) para os outros clientes ou servidor sempre que o jogador se mover, ou então simplesmente o movimento que o personagem precisa executar."
tabom, eu intendi que eu devo ter algo no onloop que fique mandando sempre minha posição pro cara, mais como e o que usar?
la dizia:
" A maneira como será feita troca de mensagens entre o servidor e os clientes depende muito do tipo de jogo, por exemplo, em um jogo de xadrez toda vez que um jogador mover uma das peças ele deve enviar uma mensagem para o oponente passando todas as informações daquela jogada, para isso deve-se criar um protocolo próprio para o formato dessa mensagem para que ela possa ser criada e interpretada.
No exemplo do jogo de xadrez podemos pensar em um protocolo assim:
Mensagem = IDPeça|Destino
onde:
ID : É um código identificador definido para cada peça.
Destino : É um código identificador definido para todos os locais do tabuleiro.
| : Separador.
Quando um dos jogadores mover uma peça podemos identificá-la pelo seu código identificador e também o local para onde a peça foi movida pelo código identificador do local no tabuleiro, assim podemos facilmente montar a nossa mensagem. Por exemplo:
Mensagem: “2|16?
Ou seja, moveu a peça com o ID 2 para o local de ID 16. Montamos a nossa mensagem em uma string e enviamos para o outro oponente (cliente ou servidor). O separador | é usado para conseguirmos separa os dados depois.
Ao receber a mensagem o oponente deve ler esta mensagem separando os dados para que eles possam ser interpretados. Isso pode ser feito facilmente percorrendo a string procurando pelo caracter separador (|) e guardando o resto em variáveis auxiliares."
então ele vai sim mandar a mensagem de protocolo, soke como eu enviaria isso, na pratica, qual comando usaria talz
_________________
 |
|
| Qui Jan 05, 2012 3:47 pm |
|
 |
Edirlei
Administrador


Registrado: 15/03/08 Mensagens: 758
|
|
|
|
No cliente:
TCPClientWrite("Mensagem")
Ou no servidor:
TCPServerWrite("IP do Cliente", "Mensagem")
E para ler a mensagem no servidor:
TCPServerRead():String
E no cliente:
TCPClientRead():String
|
|
| Qui Jan 05, 2012 4:07 pm |
|
 |
kleiton157
Usuário


Registrado: 06/05/11 Mensagens: 1008 Localização: Nycolle minha vida!!! |
|
|
|
bem eu não intendi muito não
você poderia me dar um exemplo, tipo usando o player
bem até onde eu vi seria mais ou menos assim:
o game que entrase como cliente, teria no Onloop algo tipo TCPClientWrite(getobjectpositionx('Player'),getobjectpositionY('Player'),getobjectpositionZ('Player'));
e no cara que criou a rede('no caso a hospedagem'), teria algo do tipo TCPClientRead(getTCPClientWrite):String
eu não intendi muito não, se puder me da um exemplo do comando pronto
_________________
 |
|
| Qui Jan 05, 2012 7:35 pm |
|
 |
kleiton157
Usuário


Registrado: 06/05/11 Mensagens: 1008 Localização: Nycolle minha vida!!! |
|
|
|
outra pergunta, não averia um conflito no sistema, quando dois players entracem no game, primeiro pelo fato de ter 2 objetos com o mesmo nome, e depois pelos eventos, assim, se tem um evento que leva o objeto perto do player, não daria uma confusão no sistema, tipo para qual player ir?
e também a vida do player, será que todos os players assumiriam a mesma variavel?, então se um morrer todos morrem?
_________________
 |
|
| Sex Jan 06, 2012 6:11 pm |
|
 |
Viciadao
Usuário


Registrado: 27/11/11 Mensagens: 166 Localização: No msn |
|
|
|
uma solução para isso é criar variáveis ramdom com letras e numeros exemplo:
5454545
9236045723
0214523402
jsflsdhgj450985
ghff67dfjkdf988
Assim toda vez que um jogador entrar sera criado uma variável diferente para ele!
|
|
| Sex Jan 06, 2012 8:11 pm |
|
 |
kleiton157
Usuário


Registrado: 06/05/11 Mensagens: 1008 Localização: Nycolle minha vida!!! |
|
|
|
hm...
mais tipo, qual nome receberá o proximo player quando ele entrar no game, tipo, o primeiro vai ser o player é claro
mais o segundo não podera receber o nome de player porque já tem, então qual ele recebera?
_________________
 |
|
| Sex Jan 06, 2012 9:43 pm |
|
 |
kleiton157
Usuário


Registrado: 06/05/11 Mensagens: 1008 Localização: Nycolle minha vida!!! |
|
|
|
mais ainda quero saber, como fica o comando e onde eu coloco ele?
_________________
 |
|
| Sex Jan 06, 2012 9:47 pm |
|
 |
|
|
Você não pode enviar mensagens novas neste fórum Você não pode responder mensagens neste fórum você não pode editar suas mensagens neste fórum Você não pode excluir suas mensagens neste fórum Você não pode votar em enquetes neste fórum
|
|
 |
 |
 |
|