| FS 03 /HOW MAKE IT: very shortly PICTORIAL GUIDE after GOMOKU ENGINE code | |||||
| go on: | < previous page
|
next page > | |||
![]() game board summary sumx and sumo sumx to xmap xmap between x add xmap between x less xmap more samples zeroX and zeroO xmap editing x_plus and middx x_plus and zeroX x_away and o_away xRCboard and liftx xRCboard add & less xmap to lagx lagx 5000 & x_away lagx 100 & x_away lagx 10 and lagx 1 lagx to x_tack xRCboard allways flagx allways delayx dilayx pred_x pred_x to xmap choose from flagx more delay more delay samples three crossmix more delay use flag to RCboard summary |
This sample: first layer of values in arrays "xRCboard" and oRCboard" (all directions). How make this values here? About edits "RCboard" arrays: see page 12 and page 18 First layer of "RCboard" values is independent: values unswayed, if engine are first (X) or second (O) player.
Resultant values in arrays "flagx" and "flago" after all previous editing (all directions). Inside box with red borders isn't "flagx" value (100), but value (194) from array "xmap". That array contains "predict" values. More about "predict" see page 21 and page 22 Certain edits of "flag" values is depend on "who". Values is changed, if engine are first or second player. See on previous pages: "more delay use" and "crossmix".
Any values inside "RCboard" arrays is now transform. Transformation depend on contents in arrays "flag" and "who" is engine. Here is engine first player (X). Resultant values in arrays "xRCboard" and oRCboard after update. On this case have engine (first player) two best (defensive) moves: value 84 in array "oRCboard".
And here is engine second player (O). Resultant values in arrays "xRCboard" and oRCboard after update. On this case have engine (second player) two best (offensive) moves: value 94 in array "oRCboard".
More about "who" im007 HTML document How engine (subprogram) choose best move (dMove) for sending to pixoria (main program): At the end of the algorithm ... im007 HTML document With one difference: maximum "RCboard" value for this engine (FS03) is 100. |
||||
|
examples in C++
Filter for transformation values in array "xRCboard" and "oRCboard": //table for transformation, if engine are first player(X):
//int this_are_x[34] = {0, 0, 48, 48, 0, 53, 0, 0, 0, ... };
//////int o_flat[34] = {0, 0, 0, 0, 0, 49, 49, 0, 52, ... };
//table for transformation, if engine are second player (O):
//int this_are_o[34] = {0, 0, 49, 49, 0, 51, 52, 0, 53, ... };
//////int x_flat[34] = {0, 0, 0, 0, 0, 48, 49, 0, 51, ... };
|
|||||
| go on: | < previous page | next page > | |||
| FREE SECTOR, 2014 (free alliance of developers Pixoria gomoku plug-in engines) | page 29/30 | ||||