This is a big change with a *lot* of moving parts. The largest part of it is enabling scripts to `playAsWhite` as a parameter to many Go functions. In the implementation, this involved a significant rewrite of `opponentNextTurn` promise handling. A number of other changes and bugfixes are included: * Fixes the issue where handicap stones are added on game load. * Better typing for error callbacks. * Throw errors instead of deadlocking on bad cheat usage. * Return always-resolved gameOver promise after game end * Added a new `resetStats` api function. --------- Co-authored-by: David Walker <d0sboots@gmail.com>
1.7 KiB
Home > bitburner > GoCheat > playTwoMoves
GoCheat.playTwoMoves() method
Attempts to place two routers at once on empty nodes. Note that this ignores other move restrictions, so you can suicide your own routers if they have no access to empty ports and do not capture any enemy routers.
Success chance can be seen via ns.go.getCheatSuccessChance()
Warning: if you fail to play a cheat move, your turn will be skipped. After your first cheat attempt, if you fail, there is a small (~10%) chance you will instantly be ejected from the subnet.
Signature:
playTwoMoves(
x1: number,
y1: number,
x2: number,
y2: number,
playAsWhite = false,
): Promise<{
type: "move" | "pass" | "gameOver";
x: number | null;
y: number | null;
}>;
Parameters
| Parameter | Type | Description |
|---|---|---|
| x1 | number | x coordinate of first move to make |
| y1 | number | y coordinate of first move to make |
| x2 | number | x coordinate of second move to make |
| y2 | number | y coordinate of second move to make |
| playAsWhite | (not declared) | (Optional) Optional override for playing as white. Can only be used when playing on a 'No AI' board. |
Returns:
Promise<{ type: "move" | "pass" | "gameOver"; x: number | null; y: number | null; }>
a promise that contains the opponent move's x and y coordinates (or pass) in response, or an indication if the game has ended
Remarks
RAM cost: 8 GB Requires BitNode 14.2 to use