Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Various Improvements & Fixes #83

Open
wants to merge 102 commits into
base: main
Choose a base branch
from
Open

Conversation

yjf2002ghty
Copy link
Contributor

@yjf2002ghty yjf2002ghty commented Oct 28, 2024

#32 #62

After This Change

New features

Fog Of War

Added a dropdown to select fog of war mode, which applies to all variants. This is only a visual effect and does not change game logic. The player is only able to see the squares that they can move to and squares that have their own pieces on in their turn. When it's opponent's turn, the player is only able to see their own pieces. Wall squares are always visible.

UI Themes

Custom UI theme support. This loads CSS files from server into memory and apply them to the webpage to change the webpage content styles. Note that the browser needs to support AVIF format image to show the backgrounds of some themes.

Move Visualization

Now clicking the moves in the PGN division and the principal variations division can show a mini board that displays the board position after making that move, if "Move Visualization" checkbox is checked. This is disabled by default because generating these elements costs more time than generating plain text.

Improvements

GUI

  1. Made the evaluation value in PVs more noticeable.
  2. Added missing variant settings.
  3. Added tooltips for most inputs/buttons.
  4. Improved board coordinate display style to make them more noticeable and not be covered by pocket.
  5. Added a restart button which clears moves and set position to FEN.
  6. Timing system is more accurate and added a highlight during time excess.
  7. Added a start here button which allows to set current position to the position displayed on the board.
  8. Better principal variation display.
  9. Now the webpage will shorten the elements in the right panel and wrap elements in the top areas instead of scrolling sideward.
  10. Added a mini board to visualize the moves in move history and engine principal variations.
  11. Added a dropdown to change board coordinate.
  12. Added a button to allow users start playing at previously played positions.
  13. Now ATAXX and similar variants that can drop pieces without having a pocket are supported. Solves End users cannot make ATAXX drops #62
  14. Improved some slow functions.
  15. Updated ChessgroundX version.

Build & CI

  1. Added compression and mangling for HTML and JS files to reduce their size.
  2. Use 7ZIP-LZMA2 to upload artifacts which significantly reduces archive file size.
  3. Improved CI & release maker process. Now they will provide a script version, and CI will upload the source code that the push or pull request uses.
  4. The structure of this project has changed. See Fixes chapter.
  5. A script is added to custom the generations of the CSS of chessground board size, generic board styles, and letters theme, and the SVG of generic boards.

Vercel Online

Added caching policy for Vercel. This will reduce the loading time of the page and network flow.

Documentation

  1. Added attribution in COPYING.md. If there is no problem, Document source and license of graphics Document source and license of graphics #32 can be closed.
  2. Added a README for src folder which explains the files in it.

Fixes

  1. Fixed unexpected null move input when in review mode.
  2. Fixed half move display in "Half Move Number" dialog.
  3. Fixed PV display when reducing PV count without stopping engine thinking.
  4. Fixed some style issues.
  5. Fixed getFileFromServer not working in new browsers.
  6. Fixed check square highlight. Now checked pieces can be displayed correctly if there are multiple ones.
  7. Fixed board editor does not show the newly added pieces in pocket when adding piece to pocket.
  8. [Critical] Fixed page loading issue, when Fairy-Stockfish is loaded before variant settings, position variants and themes. Now the dropdowns can be loaded correctly in this case.
  9. [Critical] Fixed "Play against Fairy-Stockfish" page loading issue of fairy-stockfish.wasm on latest Firefox. This changes the source structure. All HTML files are moved to src/html/ and all JS files are moved to src/js/. A script that is used to make index.html is created.

Copy link

vercel bot commented Oct 28, 2024

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
fairyground ✅ Ready (Inspect) Visit Preview 💬 Add feedback Nov 22, 2024 2:30pm

@yjf2002ghty yjf2002ghty changed the title Fog Of War Implementation Fog Of War Implementation & Fixes Oct 29, 2024
Signed-off-by: yjf2002ghty <[email protected]>
Signed-off-by: yjf2002ghty <[email protected]>
Signed-off-by: yjf2002ghty <[email protected]>
Signed-off-by: yjf2002ghty <[email protected]>
@yjf2002ghty yjf2002ghty changed the title Fog Of War Implementation & UI Themes Feature & Fixes Various Improvements & Fixes Nov 21, 2024
@yjf2002ghty
Copy link
Contributor Author

yjf2002ghty commented Nov 21, 2024

@ianfab I've completed all the major features of this pull request, and you can review this PR now.
I've changed the content in vercel.json to add response headers for cache control, which can make the page load faster. I don't have permission to change your project settings on Vercel, you can view the one deployed in my project: https://github.com/yjf2002ghty/fairyground/deployments/Preview .

@yjf2002ghty yjf2002ghty marked this pull request as ready for review November 21, 2024 08:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant