Skip to content

ufjf-gamelab/apts

Repository files navigation

Quati: automatic play testing

This is Quati, an automatic play-testing system. It is intended to offer an interface for representing various types of games and to generate artificial intelligence (AI) agents to play them.

Dependencies

This project is written in Typescript, and runs on Node.js. To install the project, you must have the following dependencies installed:

Pnpm can be installed with the following command:

curl -fsSL https://get.pnpm.io/install.sh | sh -

We recommend using pnpm to install Node.js, which can be done as follows:

pnpm env use --global lts

Graphviz is used to generate visualizations of game trees. To install Graphviz, follow the instructions on the official website.

Optional Dependencies

If you use the Visual Studio Code editor, we recommend installing the following extensions:

What's inside?

This monorepo includes the following packages and apps. Each package and app is 100% TypeScript.

Packages

  • @repo/typescript_config: tsconfig.jsons used throughout the monorepo.
  • @repo/eslint_config: shared eslint configurations.
  • @repo/core: a functionality library shared by both node and web applications.
  • @repo/game: a library to represent abstract games and their rules.
  • @repo/games: a collection of game implementations using the @repo/game library.
  • @repo/search: a library implementing search algorithms using MCTS and ResNet.
  • @repo/interface: a library to export functionality for apps.

Apps

  • node: an environment for running the automatic play-testing system using Node.js.

Utilities

This monorepo has some additional tools already setup for you:

Installing

To install the project, run the following command:

pnpm i

Then, guarantee Tensorflow is correctly installed by running, on the root of the project:

cd packages/search
npm rebuild @tensorflow/tfjs-node --build-addon-from-source
cd ../../

Running

You can run the project in different modes:

Development

To run the project in development mode, use the following command:

pnpm run dev

You can run only the node or web apps with the following commands:

pnpm run dev --filter=node
pnpm run dev --filter=web

Building

To build the project, use the following command:

pnpm run build

You can also build only the node or web apps with the --filter flag:

pnpm run build --filter=node
pnpm run build --filter=web

Previewing

To preview the node app, use the preview script. You can pass the arguments at the end of the command.

pnpm run preview <args>

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors