Code Monkey home page Code Monkey logo

bugchess's People

Contributors

adambharris avatar nealwu avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar

bugchess's Issues

Don't rely on the socket ID; use the username instead

The socket ID isn't consistent; for example when the servers crashes and restarts, the socket ID changes client-side even though the user is able to reconnect.

The main place where this is used is io.js (specifically gameSeatToSocket), but there may be other places as well.

Change the alerts to be less annoying

Right now the alerts pop up and block all other actions, and they even come up before the chess boards are fully loaded and block the loading.

Might want some kind of space right above the boards for status.

Game sounds

  • Running out of time -- the timer can make an alerting noise
  • Check
  • Piece drop

Get all state saved into / loaded from the DB so that the site is immune to a server restart

For example, a server restart would currently lose seat information (not saved to DB) and chat history (not loaded from DB).

Things that need to be included here:

  • Who is sitting in which seat (currently only server-side)
  • Chat history (currently saved in the DB but not loaded from it)

To do these two things, just need to load the objects gameSeatToName and chatsForGame on server start.

Improve the lobby / matchmaking system

  • Lobby chat
  • Show a game in progress (if there is one?)
  • Something less ugly than a list of numbers
  • For each game show the user who started the game and the list of players who are currently sitting on each team
  • Need to track who started each game: on the first call to db.loadGame, need to add the game creator when calling saveGame

Make hidden gameplay elements more obvious

People might not be aware of the timer and the piece bank.

Could add some type of shaking effect when a player is using up a lot of time. Also might want to redesign the bank so that instead of designating a piece with ": 1", the bank starts out empty and adds a piece at a time.

Redesign the piece bank

Instead of designating a piece with ": 1", the bank starts out empty and adds a piece at a time, as an array.

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.