Skip to content

Instantly share code, notes, and snippets.

@Ehawk82
Last active December 9, 2019 18:26
Show Gist options
  • Save Ehawk82/11513b872f09d7388525906b078fd420 to your computer and use it in GitHub Desktop.
Save Ehawk82/11513b872f09d7388525906b078fd420 to your computer and use it in GitHub Desktop.

Languages: HTML5/CSS3/JS/nodeJS

Development Phases:

  • Repository on GitHub.
  • Node Modules; (see Node Options).
  • Game Design; (see Game Design).
  • Game Application; (see Game Application).
  • Code Phase; (See Code Specifications).

GitHub: https://github.com/Ehawk82/1v1_CHESS

Node Options:

  • Local modules for easy scripting.
  • Server engine.

Game Design:

-Pending meeting with staff-

Game Application:

  • Basic webpage layout.
  • UI and back end data needs met.
  • Game Board & menu to choose custom boards.
  • Slide-in menu for menu options like leaderboard, settings, user forfeiting.
  • Homepage; Login/Signup, Auto login, Account settings, matchmaker, settings, credits.

Code Specifications:

  • JavaScript.
  • CSS3.
  • HTML5.
  • NodeJS.

Features:

  • 1v1 only.
  • End turn after move.
  • Users have free accounts with two upgrades(Gold & Platinum).
  • Leaderboard button accessable from homepage.
  • Match maker widget --> Send match request --> matchup opponents --> Assign chess piece color --> Connect to server --> Play!
  • White goes first.
  • Option to rematch; winner can decline rematch at free will.
  • Simple animations using CSS3 transition.
  • Option for users to clear record.
  • Chat; Preset emotes and dialog ["Hurry up","Hello","Nice Try","Good Move!","PING","Bye",etc...].
  • Users can pick custom non-unique nicknames.
  • Slide-in div that shows captured and lost pieces.

Guilds(for platinum members only)

  • Platinum members that are in guilds can message each other.
  • Guild team colors: Yellow, Blue, Green, Red, Black, White.
  • Leaderboards show guild membership.
  • Guild page for users to join/leave guilds.

Account Requirements:

  • Email, Unsername, Password.
  • Biling; Use third-party billing utility.

Movement:

  • Select piece --> Select valid square
  • Standard chess rules; No weird shit.
  • Swift/linear/sharp moves. I like transition:666ms all;

Monetizing:

  • Freemium - with ads, 4 chat options
  • $3.00/year for Gold Membership.
  • Gold members get 2 of 4 boards, no ads, 8 chat options.
  • 1.00/month for Platinum.
  • Platinum member unlocks two bucket features.
  • Bucket features; Bucket 1 is long term beyond membership, bucket 2 is only for active members.
  • Bucket 1; All game boards, unlocks all(16) chat options, can join guilds.
  • Bucket 2; Can create guilds, guild icons visible on leaderboards, can message other guild members.

Random Ideas:

  • "Guild Day" Challenges; Guild face each other, highest ranking guild for that day wins new unlockables - Guild teams locked until challenge is over.

Settings Page:

  • No sound options.
  • Billing
  • Clear history button.
  • Toggle fullscreen mode.
  • Deactivate account buttom.

Design:

  • Colors; Black & White.
  • Borders: none.
  • No border radius on anything.
  • Responsive between landscape --> portrait.

Hosting:

  • VPS webpage (?)
  • Browsers: Chrome, FF, Safari, Edge (?)

Things to Expect:

  • Popup to display checkmate status.
  • Button for main menu options.
  • Warning popup for user/opponent "CHECK" status.
  • Display indicator to show active players turn.
  • Active piece is highlighted.

Cursor:

  • Default arrow; Most of the app
  • Pointer; Buttons, Nav, Popups.
  • Loading Screen; cursor hidden.
  • Hourglass; Waiting for opponent.(when hovering over board).

Rules:

Art:

  • RGBA32 pixelated
  • Transparent background.
  • Chess Piece Height; 125% of tile.
  • Tiles; 30px by 30px
  • Silver/Gold box shadow inset on tiles.

Main Menu Slide-in:

  • Matchmaker button.
  • Leaderboard.
  • Settings.
  • Exit current server session.

Homepage:

  • Leaderboard display on right side.
  • 1v1 private server connection.
  • Server names are numerical.
  • Login/Sign up button.

Sign up page:

  • Username. 8 Chsr MAX.
  • Password. 10 Char MAX.
  • email.
  • CATCHPA. (?)
  • SIGN UP! button.
  • Email verification, link sent to email.
  • Help buttun.

-TODO Early Development:

  • Homepage; 'Login/Sign Up' tab at the top right. Buttons for matchmaker, game store, leaderboards, settings, credits.
  • Server;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment