Skip to content

A Unity3d game inspired by Chess and MtG. The playfield is a NxM board. Players take turns casting spells, which can summon a creature to the board, add an item to a creature, or do other special effects. Attacking and movement of the pieces are mostly Chess-based. Full rules are available on the extensive wiki pages.

License

facybenbook/Chess2

 
 

Repository files navigation

Card Chess

A Unity3d game inspired by TCGs and Chess.

Am taking the unusual option of using an architecture that largely ignores Unity.

Focusing on the gameplay and Rules, and only later will add interaction and visuals/audio.

Also, I intend to make all the art assets myself. Well, mostly. I'm using some free sound effects and music assets.

Building

I am currently using Unity3d 2018.1.4f1. YMMV for earlier or later releases of Unity3d. The game will always build on the latest version of Unity3d within a week or so of its release.

This source repo also uses a library I made called Flow. This is included as a Git submodule. To also clone this code into the repo for this game, use the following single commmand:

# git clone --recursive https://github.com/cschladetsch/Chess2.git

By default, the repo installs into a folder called Chess2. This is a temporary name and will change. Within this Readme and throughout the project documentation, the root folder of the repo will be referred to as $ROOT_DIR.

Or, if you cloned the base repo first (or use a version of git older than 1.9), then you have to 'manually' update the Flow library with:

# git clone https://github.com/cschladetsch/Chess2.git
# cd Chess2
# git submodule update --init --recursive

The main scene is in Scenes/Main.

Models

Some models are .fbx and will import directly into Unity3d with no further requirements. However, some models may be .blend files. These are native scene files for Blender. You will need to download Blender to import these .blend files.

Notes

If you get a bunch of errors about "namespace Flow" not named, etc, or problems to do with anything named Flow, then you have not got the Flow submodule that lives in Assets/External/Flow.

There are a number of ways to fix this. The easiest is to just:

# cd $ROOT_DIR
# git submodule update --init --recursive

Testing

There are tests in "App/Tests folder that uses mocked types in App/Mock.

Gameplay

At first, the game will be a 2-4 player hotseat desktop (maxOS and Windows) game.

The main GameLoop is documented in the wiki.

Later, if that all works out well, then networking layer will be added between Model and Agent. This has already been architected for via use of Futures for all interactions between Agents and Models.

About

A Unity3d game inspired by Chess and MtG. The playfield is a NxM board. Players take turns casting spells, which can summon a creature to the board, add an item to a creature, or do other special effects. Attacking and movement of the pieces are mostly Chess-based. Full rules are available on the extensive wiki pages.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C# 96.4%
  • ShaderLab 2.7%
  • Other 0.9%