Commit Graph

78 Commits

Author SHA1 Message Date
catloversg 9de9fbaf27 CODEBASE: Fix React warning in IPvGO scoring explanation popup (#2581) 2026-03-19 20:14:16 -07:00
Michael Ficocelli b9068ab328 DOCS: Fix some IPvGO docs that do not reflect winstreak rep converted to favor (#2463) 2026-02-03 04:55:38 -08:00
Michael Ficocelli ba1c6f3818 IPVGO: Fix scoring of very large open areas (#2464) 2026-02-03 04:52:40 -08:00
Michael Ficocelli 6073964768 DARKNET: Darkweb Expansion Project & Bitnode (#2139)
This is BN15. It is a really big change; see the PR for all the details.
2026-02-03 03:40:36 -08:00
Michael Ficocelli 4218b01dfb IPVGO: Do not update captures on passed analysis boards (#2415) 2025-12-21 13:44:24 -08:00
catloversg a47867c406 CODEBASE: Refactor code related to in-game documentation link (#2422)
Nice!
2025-12-17 13:39:44 -08:00
Michael Ficocelli 0d1f5f3eeb IPVGO: Consistently return error() calls to make sure it is obvious the function halts at that point (#2335) 2025-10-06 14:26:31 -07:00
Michael Ficocelli cad38f015c IPVGO: Prevent tiny islands surrounded by offline nodes during initial board generation (#2310) 2025-09-05 23:26:57 -07:00
Michael Ficocelli ef8cbc3e0c IPVGO: Ensure that player promises are changed to "gameOver" once the game is over (#2198) 2025-08-24 13:13:27 -07:00
Michael Ficocelli 02f2f1be74 IPVGO: Ensure getValidMoves correctly handles playing as white (#2292) 2025-08-22 13:12:09 -07:00
catloversg a2a4a2a0b4 BUGFIX: Loading code discards entire Go data due to missing migration code for favor/rep (#2252) 2025-07-19 14:55:49 -07:00
catloversg c02e985c07 BUGFIX: Go history page shows favor bonus instead of reputation bonus (#2251) 2025-07-19 14:51:07 -07:00
Michael Ficocelli fdb3452763 IPVGO: fix score modal styling (#2166) 2025-05-30 03:39:36 -07:00
Arjan-akkermans 551934ee25 IPVGO: Updated DocString for the gameState object to correctly state that a null move is returned when the opponent passes or when there is no previous move. (#2158) 2025-05-25 11:40:58 -07:00
catloversg 90555a64e6 MISC: Add achievements for BN14 (#2140) 2025-05-20 14:32:13 -07:00
catloversg 197e7f79cb CODEBASE: Fix typo of "CorruptableText" (#2144) 2025-05-19 20:07:09 -07:00
Michael Ficocelli 4749acdd4f IPVGO: Improve favor gain from wins to balance around the rep value of favor (#2131) 2025-05-17 02:36:58 -07:00
Michael Ficocelli fe1fc8ba14 IPVGO: Correctly end game & winstreak if a cheat attempt critically fails (#2130) 2025-05-11 12:02:56 -07:00
Michael Ficocelli 376b561fed BIGFIX: IPvGO tutorial was getting stuck if you left the tab and returned (#2071) 2025-04-11 13:57:42 -07:00
Michael Ficocelli ab0bacaf63 IPVGO: ensure offline nodes 2: electric boogaloo (#2072) 2025-04-07 13:54:21 -07:00
Michael Ficocelli f6e7ef082c IPVGO: Add support for highlighting nodes and adding small text (#1996) 2025-03-31 13:36:30 -07:00
Michael Ficocelli 5d486e3914 BUGFIX: fix exploit where favor limit from IPvGO was removed on augmentation (#2050)
* IPVGO: fix exploit where favor cap was reset on augmentation

* IPVGO: fix exploit where favor cap was reset on augmentation

* IPVGO: linting

* IPvGO: only reset No AI with ResetStats unless specified otherwise
2025-03-31 13:30:55 -07:00
Michael Ficocelli 12d18c21f1 IPVGO: Clarify how favor is gained from wins (#2051) 2025-03-29 20:21:05 -07:00
Michael Ficocelli 17ffabdfa5 IPVGO: Add new analysis method to set a custom testing board state (#2029) 2025-03-22 23:52:26 -07:00
Michael Ficocelli 19f859ae87 IPVGO: Ensure there is always at least one offline node (#2030) 2025-03-17 15:59:19 -07:00
Michael Ficocelli 47b34c8563 BUGFIX: Ensure that IPvGO promises are initialized correctly on a new save and on fluming (#2032) 2025-03-17 15:55:32 -07:00
wasniahC 76f614761d updated "getCornerMove" second "if" to correct coordinates for top left corner move (#2027) 2025-03-14 14:56:20 -07:00
David Walker db74fae2b7 Fix first-time Go initialization (#2012)
Fixes #2010
It was intended that all the various codepaths call `resetAI()` to
initialize the promise handling. However, when there is no savegame at
all, `loadGo()` is not even called, so this is skipped, and the promises
remain not-fully-initialized. This puts the initialization as part of
the static construction, guaranteeing a fix.

Tested all 3 scenarios in #2010, as well as two more:
* Delete save, immediately "Find new subnet".
* Play a move, save game, ensure IPvGO works on reload.
* Play a move, save game *before the AI moves*, ensure that the AI plays
  different random moves on reload.
2025-03-09 16:16:24 -07:00
Michael Ficocelli a611c842e2 IPVGO: correctly initialize board from save when there are no prior moves (#1995) 2025-03-06 11:30:12 -08:00
Michael Ficocelli c8d2c9f769 IPVGO: Support scripts playing against each other as each color on "No AI" boards (#1917)
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>
2025-02-02 20:47:16 -08:00
catloversg 97ca8c5f5e CODEBASE: Fix lint errors 4 (#1773)
Co-authored-by: Michael Ficocelli <ficocemt@gmail.com>
2024-11-14 07:47:35 -08:00
catloversg 36c143b687 CODEBASE: Fix lint errors 2 (#1756) 2024-11-06 23:09:11 -08:00
catloversg f6502dd490 CODEBASE: Fix lint errors 1 (#1732) 2024-11-03 22:35:14 -08:00
Michael Ficocelli 6df3dcdc82 IPVGO: Add optional board state argument to the go analysis functions (#1716) 2024-10-27 17:31:06 -07:00
Michael Ficocelli ecc2d92edb IPVGO: uncheck the 'show prior move' feature when a new game is started (#1728) 2024-10-27 17:25:04 -07:00
Michael Ficocelli 2a5b0ca4e9 IPVGO: Prevent issues caused by resetting the board while the go AI is in flight (#1608) 2024-09-07 18:33:49 -07:00
Michael Ficocelli e16ac34c15 IPVGO: add scoring rules explanations to how to play page and score modal (#1558) 2024-08-08 17:44:19 -07:00
catloversg 783120c886 FEATURE: BitNode options (#1411) 2024-07-14 14:30:30 -07:00
Michael Ficocelli 481938a2fb IPVGO: Balance and improvements for offline bonus time cycles (#1356) 2024-06-05 19:39:22 -07:00
Michael Ficocelli cf48d666f5 IPVGO: Add history, and details to status, to go API (#1348) 2024-06-05 18:24:48 -07:00
Michael Ficocelli eeab6df718 IPVGO: Use tss-react makeStyles on the IPvGO board and UI (#1351) 2024-06-05 21:09:16 -04:00
Michael Ficocelli fe3e8fb348 IPVGO: Fix crash caused by malformed previous move formatting (#1360) 2024-06-05 17:51:01 -07:00
Michael Ficocelli d9e8161a64 IPVGO: Fix mismatch in board size options on save loader [save corruption bugfix] (#1355) 2024-06-05 18:27:27 -04:00
Michael Ficocelli bd5c502f53 IPVGO: Support bonus cycles from offline time (#1345) 2024-06-04 18:43:29 -07:00
Michael Ficocelli 5f6a5c8785 IPVGO: Fix non-async promise-returning methods to be more consistent (#1327) 2024-06-04 18:37:00 -07:00
Michael Ficocelli d9f04203cf IPVGO: Record full history to avoid infinite ko capture loops on larger boards (#1299) 2024-06-02 20:19:26 -07:00
Michael Ficocelli a28bb4bd99 IPVGO: Support playing manually as white against your scripts using the No AI type board (#1296) 2024-06-02 17:41:31 -07:00
catloversg c2a56a6150 MISC: Refactor favor code (#1321) 2024-05-28 12:04:16 -07:00
catloversg 819e9f3448 MISC: Embed JetBrainsMono font (#1246) 2024-05-22 21:50:09 -04:00
gmcew 36e3dd73ac IPVGO: Tetrads do def (#1284) 2024-05-17 04:59:21 -07:00