Giter Club home page Giter Club logo

cpsc441_project's Introduction

CPSC 441 Mafia!

  1. Install Java

    • sudo apt-get update
    • java -version
    • sudo apt-get install default-jre
    • sudo apt-get install default-jdk
    • sudo apt-get install ant
  2. Extract assignment3.tar.gz

  3. Navigate to assignment3

  4. Build assignment3

    • ant
  5. How to run the game (server)

    • Navigate to bin
    • java server.SelectServer <port number>
  6. How to run the game (client(s))

    • Perform this step for as many clients as desired/wanted
      • java client.TCPClient <server public IP> <server port number>
  7. Commands that a user can use in the terminal

    • Following commands can be used when not logged in

      • /createaccount username password - allows user to create a new account
      • /login username password - lets player to login to the game and then they will be able to play games
      • /showstate - give up-to-date information about player's attributes
    • Following commands can be used when logged in but not yet in a game room

      • /createroom room# - create a game room that other players can join
      • /listrooms - lists already existing game rooms
      • /logout - end program
      • /listusers - shows all players that are currently online
      • /showstate - give up-to-date information about player's attributes
      • /setalias name - use a pseudonym to hide your identity
      • /observe room# - look in on a game in progress
      • /join room# - join a room that already exists
      • /accept - accept an invite to a game room
    • Following commands can be used when in a room before game starts

      • /ban username - kick user from the room
      • /leave - leave current room
      • /invite username - invite friend to game
      • /startgame - begin the game
      • /showstate - give up-to-date information about player's attributes
    • Following commands can be used when a game is in progress

      • /ban username - kick a user from game
      • /vote username - vote for who you want to lynch
      • /switchturn - switch state from day to night
      • /showstate - give up-to-date information about player's attributes

cpsc441_project's People

Contributors

fishwithshoes avatar fnoori avatar tylermelan avatar

Watchers

James Cloos avatar  avatar  avatar  avatar  avatar

cpsc441_project's Issues

TCPclient timeout

fix it so tcpclient can detect if server is stopped

jeremy says you have to close the socket

Starting a game

[ ] - Get a game running when enough people are in the the ready room
[ ] - update loop for the ready room

Logout not functioning

When logging into the game, it is not possible to logout. Typing /logout before joining a room will generate no response and further input will generate a broken pipe. /logout inside of the game will generate a broken pipe when further commands such as /setalias and /leave are executed.

separate chat channels

will probably need to modify the existing chat packet
and have nice func to send a message to a certain list of people

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.