PDF Documentation



Steam branches

Different versions of Yag are available on Steam, generally for test purposes. Those versions are called branches.

There is a complete video tutorial on how to switch between branches: check the tutorial video playlist in english or french (see the video section on this website to find it).

Very quickly: right click on the game, open properties, and go to the betas tab, where you can select the branch you want to use

Here are the branches currently available:

  • NONE: the default official version of the game.
  • Previous: the previous version of the game, so you can easily go back to it if something is wrong with the new version on your computer.
  • cedric: the private branch i use for my own tests, it’s password protected, you can’t access it.
  • alpha: unstable version for tests with several people. You never know what you’ll find here so don’t use it unless you were requested to do so.
  • beta: stable beta version. I will put here release candidates, for people to try and give feedbacks. When feedbacks will be ok it will go on the main branch. Use this branch permanently if you want to always be up to date (fixes, updates, new content…).

Feedbacks are welcome on:


Yag can run its own web server and be accessible from any web site.

It will respond to a specific set of available instructions, called a REST API.

The following documents explain how it works and describe the complete reference documentation for this API

LUA API documentation

One goal of Yag is to remains as general as possible about game rules.

This raises the need to customize it according to any specific game.

But Yag is coded in c++ and its guts are hidden from the player.

A common response to this problem is to embed in the host program (Yag) a scripting language such as LUA.

In order to exchange data, some of the internals of Yag must be exposed to LUA:

  • Some Yag functions and variables must be accessed by the players through LUA
  • Yag must be able to call some LUA functions

The following documents describe the set of tools currently available to do so.

The embedded version of LUA is v5.3.

Modules documentation

Yag allows to manage multiple different games by storing each game data in a separate directory that is called a module.

The following documents describe how to manage modules in YAG.