GithubHelp home page GithubHelp logo

mobiusww / sanguosha Goto Github PK

View Code? Open in Web Editor NEW

This project forked from kevinychen/sanguosha

0.0 1.0 0.0 54.21 MB

Online multiplayer version of the popular Chinese card game

Home Page: https://util.in:8098

HTML 0.50% CSS 5.54% JavaScript 93.97%

sanguosha's Introduction

San Guo Sha (三国杀)

San Guo Sha is a popular Chinese card game. This online multiplayer English version supports all the characters and cards in the base set, as well as the wind, fire, and wood expansions. Try it at https://util.in:8098.

Sanguosha

Translations of all characters and cards are easily accessible in-game.

Translations

See the debut trailer here.

How to use

This app allows players to perform all the possible actions in the base set and supported expansions, but does not enforce rules other than tracking turn order and end-of-turn discards. The goal is to make it possible to easily play the game online with friends.

To draw a card from the deck, click the deck or press 'C'. (Click the "hotkeys" button on the left to see all hotkeys.)

To play a card from hand normally, click on it or press the number corresponding to its position in your hand. The action will depend on the card; for example, equipment will be played on your character card, delay tool cards will prompt you to select a player to play it on, and most other cards will be sent to the discard pile in the middle of the screen. If you wish to send an equipment or delay tool card directly to the discard, then click "Dismantle" before selecting the card.

The buttons on the left allow you to perform other actions, such as Giving one of your cards to another player, Dismantling/Stealing another card, Revealing one of your cards to another player, Flipping a card/character card, performing a Judgment, displaying N cards for a Harvest, or passing the Lightning card to the next player.

To increase or decrease your health, click on the large health icons on your character card. If your health reaches 0, you reach "Brink of Death" and the game will prompt for whether you die. You can also toggle your chain status by clicking on the semi-transparent chain icon on your character card.

Finally, some characters have special abilities that might not be possible to perform with the above actions. In these cases, there will be a special button on the left. For example, Zhuge Liang can click "Astrology" to view N cards, put some on top of the deck, and send the remaining to the bottom of the deck.

To view English descriptions, click "Help" and then a card or character card to get its description.

Quickstart

Run:

yarn install
yarn build   # build assets
yarn server  # start the server

Then go to http://localhost:8098.

Development

  • First run yarn install once.
  • To run a game client-side only, run yarn start. To run with the server, run yarn server and yarn client in two different consoles.
  • Go to http://localhost:3000.

Credits

  • Sanguosha for the game
  • Becky Shi, for composing the original game background music and producing the debut trailer
  • boardgame.io, a very convenient framework for producing online multiplayer games
  • react-spring, an amazing library for easily producing animations
  • English Sanguosha, for rules, resources, and translations
  • Eva Yeung, Jeff Chen, Michael Wu, Natalle Yu, Tommy Zhang, and Yi-Shiuan Tung for playtesting

sanguosha's People

Contributors

kevinychen avatar

Watchers

James Cloos avatar

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.