# The Coolest Chess

## The Coolest Chess

- [The Chess Documentation](https://freedom-developer.gitbook.io/the-chess/the-chess-documentation.md)
- [Chess Game Introduction](https://freedom-developer.gitbook.io/the-chess/the-chess-documentation/chess-game-introduction.md): Chess mechanism are restrictive in the way each different type of available pieces in the game can move.
- [Essential Prefabs](https://freedom-developer.gitbook.io/the-chess/the-chess-documentation/essential-prefabs.md): Introduction to prefabs that's running the game
- [Components](https://freedom-developer.gitbook.io/the-chess/the-chess-documentation/components.md)
- [Importing Stockfish AI](https://freedom-developer.gitbook.io/the-chess/importing-stockfish-ai.md): This section is for people who own The Coolest Chess Unity Asset Store asset who wish to introduced Stockfish AI into it.
- [Controller](https://freedom-developer.gitbook.io/the-chess/controller.md)
- [Base Controller](https://freedom-developer.gitbook.io/the-chess/controller/base-controller.md): There are two type of mouse action the base controller accept, click and drag. The legality of piece movement are all up to game logic.
- [Two Player Controller](https://freedom-developer.gitbook.io/the-chess/controller/two-player-controller.md): This mobile only controller support two player touching the screen while playing face to face on a single device. Made for kids.
- [The UIs](https://freedom-developer.gitbook.io/the-chess/the-uis.md)
- [Button Prefabs](https://freedom-developer.gitbook.io/the-chess/the-uis/button-prefabs.md): This page is to summarize UI button prefabs that had been created.
- [UI Events](https://freedom-developer.gitbook.io/the-chess/the-uis/ui-events.md): Communicate from UI to GUIs
- [Enquiry](https://freedom-developer.gitbook.io/the-chess/the-uis/enquiry.md): Here is how you can enquiry UI information. The below example is trying to get a dropdown options count info from a dropdown UI.
- [Replacing UI](https://freedom-developer.gitbook.io/the-chess/the-uis/replacing-ui.md)
- [Others](https://freedom-developer.gitbook.io/the-chess/the-uis/others.md)
- [Scenes Details](https://freedom-developer.gitbook.io/the-chess/scenes-details.md)
- [ChessPGN](https://freedom-developer.gitbook.io/the-chess/scenes-details/chesspgn.md): Some Important information for this scene
- [ChessPuzzleEditor](https://freedom-developer.gitbook.io/the-chess/scenes-details/chesspuzzleeditor.md): Details of this scene
- [ChessPuzzle](https://freedom-developer.gitbook.io/the-chess/scenes-details/chesspuzzle.md)
- [ChessAI](https://freedom-developer.gitbook.io/the-chess/scenes-details/chessai.md)
- [Honorable Mentioned](https://freedom-developer.gitbook.io/the-chess/honorable-mentioned.md): Introduction to classes that's worth mentioning
- [ChessBoard class](https://freedom-developer.gitbook.io/the-chess/honorable-mentioned/chessboard-class.md): This is the class that hold all the position information for pieces on the board.
- [GUI Classes](https://freedom-developer.gitbook.io/the-chess/honorable-mentioned/gui-classes.md): Scripts that contain GUI at the end of their name are monobehaviour classes that contains all the functionality needed to kick start a playable chess game scene.
- [Game Logic Classes](https://freedom-developer.gitbook.io/the-chess/honorable-mentioned/game-logic-classes.md): Game logic are classes that manages all the computation and chess game states
- [The Architecture Notice](https://freedom-developer.gitbook.io/the-chess/honorable-mentioned/the-architecture-notice.md)
- [Customization](https://freedom-developer.gitbook.io/the-chess/customization.md)
- [Time AI](https://freedom-developer.gitbook.io/the-chess/customization/time-ai.md)
- [AI Draw Game](https://freedom-developer.gitbook.io/the-chess/customization/ai-draw-game.md): This page shows the potential of customizing AI to respond to draw game offer and also their own draw and resign game offering.
- [TypeI AI](https://freedom-developer.gitbook.io/the-chess/customization/typei-ai.md): This page shows what can be and how to customize for TypeI AI.
- [TypeII AI](https://freedom-developer.gitbook.io/the-chess/customization/typeii-ai.md): This page shows what can be and how to customize for TypeII AI.
- [Event Based Functions](https://freedom-developer.gitbook.io/the-chess/customization/event-based-functions.md): The following events are prepared for easy code customizations. These events should be first considered when wanting to implement something.
- [Chess Game Finishing Rule](https://freedom-developer.gitbook.io/the-chess/customization/chess-game-finishing-rule.md): Chess game finishing rules are being set on game logic, ChessGame class. However, they can be modified for specific needs independently.
- [Unit Tests](https://freedom-developer.gitbook.io/the-chess/unit-tests.md): Unit tests are automation tests that are prepared for when making changes to the application can increase awareness to the unexpected change of application behaviour and most importantly, prevent bug


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information, you can query the documentation dynamically by asking a question.
Perform an HTTP GET request on a page URL with the `ask` query parameter:
```
GET https://freedom-developer.gitbook.io/the-chess/the-chess-documentation.md?ask=<question>
```
The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.
Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
