There is an Elise console application project ("eliseconsole") in the source code distribution. This version of the engine is driven by text commands. Here are the most useful commands in the console application and what they do; these explanations are fairly brief, please consult the source code for details:

Back to index page

game

Used to change the current game type. Select the desired game type from the menu.

state

Prints current game state information (such as the current board, the scores, and the number of tiles left in the bag.)

findmoves

Generates possible moves using the hi-leave algorithm. Will perform end game search if the bag is empty.

quit

Exits the program.

printboard

Prints the current game board.

move

Makes a move (will generate the possible moves, then you select the desired move from the menu.)

play

Makes a move -- this can include illegal or phony moves. You must type in the word, the square and the direction, with tiles represented by blanks in lowercase.

rack

Allows you to set the rack for the current player.

pass

Passes the turn.

tourney

Has Elise play many games against itself, using move generation and evaluation algorithms that you specify.

clearracks

Empty both players' racks.

newgame

Starts a new game of the same type as the current game.

isword

Check whether a specified word is in the current lexicon.

timetrial

Plays 100 quick games and reports the amount of time taken.

mirror

Toggles whether to generate down moves as well as across moves on the first turn.

printwell

Prints the current contents of the well (the tiles in the bag plus tiles on opponents' racks, if they are hidden in the current game type).

dict

Change the current lexicon.

lookup

Lookup a specified word in the DEFINITIONS file for the current language.

board

Allows you to manually set the entire board.

score

Set the players' scores.

turn

Set the current player's turn.

winprob

Toggle whether fastsim sorts moves by win probability or point spread.

mergedef

Merge two definitions files together.

racksimulate

Generate rack statistics for the current game type and lexicon.

findmovesxp

Works as findmoves, except it uses experimental strategy.

save

Saves the current position as an .elise file.

load

Loads a position from an .elise file.

wordfreq

Used to generate word-play frequency data for the current lexicon.

nodefs

Output words in the current lexicon with no definitions in the current definitions file.

mediandraw

Toggle on median rack draws.

fillrack

Fill the current rack from the bag.

rackinfo

Show info about the current rack and its possible rack leaves.

useguesstiles

Toggle opponent rack inferences in simulation.

guesstiles

Run the opponent rack inference code and print the results.

tilesknown

Set tiles that are known to be on opponent's rack (this overrules any tile inferences.)

setclock

Set the clock for the current player.

cpumove

Make a "clock move" -- a move is chosen with simulation settings according to the amount of time left on the current player's clock.

fastsim

Performs a simulation of a specified ply level.

outputprobtable

Generates a win probability table from a table of game outcomes (generated by simwinprob).

simwinprob

Play many games and generate a table of game outcomes; this table can be converted into a win probability table using outputprobtable.

rackleavescores

From the full-rack simulation data for the current game, generate a table of partial rack values.

endgameheuristics

Toggle the use of end game heuristics (in simulation) on or off.

calcwinprob

Calculate a win probability value based on the specified game state.

rackleave

Rate the current rack draw against all possible rack draws.

greedy

Toggles on or off the greedier end game search code.

outblanktrie

Outputs a blank trie (tribble) for the current lexicon.

multitimetrial

Runs timetrial 20 times.

staticendgame

Gives Elise's static end game evalution of the current position (if the bag is empty). Static end game evaluation generates all possible moves for both players and attempts to find a winning end game using only those moves -- that is, it does not re-generate moves during the search. This gives the same result (win/loss/draw) as an exhaustive search between 90% and 95% of the time, but is much faster than an exhaustive search.

playtoend

Auto-play a game until the bag is emptied (we reach the endgame). Useful for testing endgame changes.

loadgcg

Load a Scrabble® game saved as a .GGG file.

setmood

Set Elise's current "mood", where -3 is extremely pessimistic, 0 is serene and levelheaded, and 3 is extremely optimistic. Moods bias the set of opponent racks used in simulation.

simtileleave

Plays many games and outputs tile leaves after "small" moves. This data can be used to create a tile leave statistics (.tl) file for use with the tile inference code.

compiletl

Compiles a tile leave statistics (.tl) file from the tile leave simulation results.

fungames

Plays many games and outputs "fun" games in .GCG format. "Fun" games include come-from-behind games and games with long (10+ letter) moves.

rareracks

Outputs the "rare racks" in the currently loaded rack statistics -- all racks that make below a specified threshold number of appearances. Rare racks, if present, will be used in generating rack statistics.

sortpeg

Toggles rack sorting on or off during the pre-end game.

word

Another method of making a play: type the word you want to play, and Elise prints the possible locations for the word; select the desired move from the menu.

Back to index page