Skip to content
This repository

An open source online version of the famous board game Sanguosha

Octocat-spinner-32 audio QModelIndex's include
Octocat-spinner-32 backdrop Change default background to iOS linen which is downloaded from:
Octocat-spinner-32 diy update diy image(By KenKic)
Octocat-spinner-32 doc Come on, baby!
Octocat-spinner-32 etc remove unuse etc
Octocat-spinner-32 extension-doc Lua document update
Octocat-spinner-32 extensions Update personal.lua
Octocat-spinner-32 font Update font and icon
Octocat-spinner-32 image Using lua code to display the acknowledgement content
Octocat-spinner-32 include Using libtomcrypt to replace libcrypto++ for audio file encryption/de…
Octocat-spinner-32 lang Add the third lines of Fuhun skill
Octocat-spinner-32 lib fix the err about getCard(QString) @todo
Octocat-spinner-32 lua require lua.Acknowledgement => lua.acknowledgement
Octocat-spinner-32 resource fix qaxcontainer in config.chatvoice
Octocat-spinner-32 scenarios remove unuse etc
Octocat-spinner-32 src fix err (add #include <algorithm>)
Octocat-spinner-32 swig Add new overloaded method isLocked for string parameter to avoid some…
Octocat-spinner-32 tools Fix a bug on bundling windows (Qt 4.8.5)
Octocat-spinner-32 .gitignore Make code portable to Linux (cryptopp will be added later)
Octocat-spinner-32 7zr.exe Fix the priority error for trigger skills
Octocat-spinner-32 Make build directory cleaner
Octocat-spinner-32 README.markdown add readme
Octocat-spinner-32 Remove which's -s option as some platform's which command does not su…
Octocat-spinner-32 fmodex.dll Replace the audio engine to fmod
Octocat-spinner-32 gpl-3.0.txt Add new Shen Cao Cao
Octocat-spinner-32 libluasqlite3.dll Add contest-specific features
Octocat-spinner-32 qt_zh_CN.qm Enable select multiple items without pressing Ctrl (thanks to stackov…
Octocat-spinner-32 sanguosha.qss update in vertical
Octocat-spinner-32 sanguosha.ts Using metro style window

Open Source Sanguosha


Sanguosha is both a popular board game and online game, this project try to clone the Sanguosha online version. The whole project is written in C++, using Qt's graphics view framework as the game engine. I've tried many other open source game engines, such as SDL, HGE, Clanlib and others, but many of them lack some important features. Although Qt is an application framework instead of a game engine, its graphics view framework is suitable for my game developing.

Our site:


  1. Framework

    • Open source with Qt graphics view framework
    • Use FMOD as sound engine
    • Use plib as joystick backend
    • Use Lua as AI script
  2. Operation experience

    • Full package (include all yoka extension package)
    • Drag card to target to use card
    • Keyboard shortcut
    • Cards sorting (by card type and card suit)
    • Multilayer display when cards are more than an upperlimit
  3. Extensible

    • Some MODs are available based on this game
Something went wrong with that request. Please try again.