node package manager
Painless code sharing. npm Orgs help your team discover, share, and reuse code. Create a free org »

tris3d-ai

tris3d-ai

tris3d surrogate player

Installation | API | License

NPM version Dependency Status

js-standard-style

Installation

With npm do

npm install tris3d-ai --save

API

Every function exported represents a personality of a bot playing tris3d.

stupid

It choses randomly. It knows the center of the cube is the best choice, and that corners are a good choice.

var stupid = require('tris3d-ai').stupid
 
var choosen = []
 
var choice = stupid(choosen) // Some available random choice. 

smart

It understands when it can win, and tryes to block other players.

var smart = require('tris3d-ai').smart
 
// The combination [0, 1, 2] wins since they are alligned. 
smart([0, 10, 11, 1, 5, 6]) // 2 

bastard

It is like a smart but it tryes to block a target player first.

Here it blocks player 1.

const targetPlayer = 0 // Player 1 will be the target. 
const bastard = require('tris3d-ai').bastard(targetPlayer)
 
bastard([0, 7, 11, 1]) // 2 

Here it cannot block its target, but it will block next player.

const targetPlayer = 1 // Player 2 will be the target. 
const bastard = require('tris3d-ai').bastard(targetPlayer)
 
bastard([10, 0, 7, 4, 1, 8]) // 2 

It is a bastard ai, error messages will be aggressive: you have been warned. In particular, it complains if you ask it to target itself.

License

MIT