Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
Jogo MultiServer/Senha.txt Senha da aplicação: >>> Entre em contato com Luis Henrique Stormoski.<<< Caso necessite da aplicação para trabalho acadêmico ou estudos, vai ser liberado o código fonte. Wpp (46) 8814-3995 stormoski@alunos.utfpr.edu.br luishenrique101@hotmail.com Jogo MultiServer/Senha Senha da aplicação: >>> Entre em contato com Luis Henrique Stormoski.<<< Caso necessite da aplicação para trabalho acadêmico ou estudos, vai ser liberado o código fonte. Wpp (46) 8814-3995 stormoski@alunos.utfpr.edu.br luishenrique101@hotmail.com Jogo MultiServer/AplicacoesDistribuidasAPS.zip AplicacoesDistribuidasAPS/manifest.mf Jogo MultiServer/APS 2015-1.pdf Ministério da Educação Universidade Tecnológica Federal do Paraná - Campus Pato Branco Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Disciplina: Desenvolvimento de Aplicações Distribuídas Prof. Vinicius Pegorini 09/05/2014 Atividade Prática Supervisionada (APS) de Aplicações Distribuídas Tarefa: Desenvolver uma versão MultiPlayer do jogo Gomoku (também conhecido como Gobang ou Five in a row). Requisito básico: O jogo deve ser desenvolvido utilizando Java RMI. Avaliação: O trabalho pode ser desenvolvido em duplas. Ao final do desenvolvimento será realizada uma avaliação. Serão avaliados: Comunicação entre cliente e servidor; Criação das regras do jogo no servidor; Organização do projeto e código (boas práticas de programação); Também será realizada uma avaliação (entrevista) individal onde o aluno deverá explicar as funcionalidades do jogo. Mesmo sendo em dupla, cada aluno deve ser capaz de explicar todas as funcionalidades do jogo. A nota do trabalho está condicionada a explicação do código fonte do jogo, ou seja, caso o aluno não consiga responder as questões relacionadas ao desenvolvimento do trabalho a nota do trabalho será 0 (zero). O Gomoku, também conhecido como Gobang, é um jogo de tabuleiro estratégico tradicionalmente jogado com peças de Go (peças negras e brancas) em um tabuleiro de Go ligeiramente modificado (no mínimo 5x5 interseções). No entanto, ao contrário deste, uma vez que as peças são colocadas não podem ser movidas ou retiradas do tabuleiro. No início do jogo, as negras começam, e os jogadores alternam na colocação de uma pedra da sua cor em uma interseção vazia. O vencedor é o primeiro jogador a obter uma linha ininterrupta de cinco pedras na horizontal, vertical ou diagonal. (Fonte: http://pt.wikipedia.org/wiki/Gomoku) No trabalho proposto o jogo teve algumas modificações, que serão listadas no decorrer desse documento. Regras do jogo: A disputa do jogo acontece entre 2 usuários; Deve ser disponibilizado um tabuleiro com X linhas e Y colunas, um exemplo pode ser visualisado na Figura 1; Um dos usuários é sorteado aleatóriamente e inicia o jogo; O jogador da vez seleciona uma das posições do tabuleiro ( X , Y ), caso ele faça uma sequência de 5 pedras na horizontal, vertical ou diagonal ele é o vencedor. Caso contrário, a vez passa para o próximo usuário e assim sucessivamente até que todas as posições sejam preenchidas. O vencedor é o primeiro usuário a obter uma linha ininterrupta de cinco pedras na horizontal, vertical ou diagonal; Caso todas as posições do tabuleiro estejam preenchidas e nenhum dos usuário tenha feito uma sequência de 5 pedras, será considerado empate. ** Bonus: Em uma partida de Gomoku também pode ser apresentado o número de pedras já colocadas na mesa: 1. Um número aparece, indicando a quantidade de pedras já colocadas no tabuleiro após cada jogada; Observações: Todas as regras do jogo devem ficar no servidor, ou seja: As posições de cada pedra jogada; O número de pedras jodadas; A vez de cada jogador O envio de avisos a cada rodada, informando a vez e o número de pontos de cada jogador; Figura 1 - Gomoku Dicas: O chat por ser utilizado como base; public interface ICallback extends Remote { //CHAT public void registrarNovoUsuario(String nome, ICallback callback) throws RemoteException; public void removerUsuario(String nome) throws RemoteException; public void enviarMensagem(String de, String msg) throws RemoteException; //Base /*Método pode ser utilizado para o convite para iniciar um jogo, ou o jogo pode iniciar automaticamente quando o segundo jogador entrar no servidor. */ public boolean enviarConvite(String nome) throws RemoteException; // Atualiza informação textual avisando que é a vez do jogador public void atualizarInformacao(String message) throws RemoteException; /* Atualiza um Boolean que indica a vez do jogador, pode ser utilizado para evitar que o jogador tente jogar na vez do adversário */ public void setVez(boolean b) throws RemoteException; //Atualiza os pontos dos jogadores a cada jogada public void atualizarTabuleiro (int pedrasJogadas, int linha, int coluna) throws RemoteException; //Quando um dos jogadores vence, avisa sobre o final da partida public void avisarFinalPartida(int vencedor) throws RemoteException; // Atualiza o tabuleiro a cada jogada public void mostrarTabuleiro(String msg) throws RemoteException; }
Compartilhar