ButterDevelopChessEngine is a powerful and flexible chess engine developed in C# with a user-friendly graphical interface built using WinForms. Designed for both enthusiasts and developers, this open-source project offers robust AI capabilities, an intuitive UI, and a clean codebase for further enhancements and integrations.
- Advanced AI: Implements sophisticated algorithms for challenging gameplay.
- Intuitive GUI: User-friendly interface for seamless interaction.
- Modular Architecture: Clean separation of concerns with Controllers and Models.
- Cross-Platform Support: Built on .NET 6.0, ensuring compatibility across various platforms.
- Customizable Resources: Easily replaceable chess piece images and UI elements.
- .NET 6.0 SDK: Ensure you have the .NET 6.0 SDK installed. You can download it from here.
- Visual Studio 2022 or any other compatible IDE for C# development.
-
Clone the Repository
git clone https://github.com/YourUsername/ButterDevelopChessEngine.git
-
Navigate to the Project Directory
cd ButterDevelopChessEngine -
Build the Solution Open the solution file ButterDevelopChessEngine.sln in Visual Studio and build the project, or use the .NET CLI:
dotnet build
After building the project, you can run the chess engine with its graphical interface.
-
Navigate to the GUI Directory
cd GUI -
Run the Application
dotnet run
Alternatively, you can launch the GUI.exe found in the GUI/bin/Debug/net6.0-windows directory.
- Launch the application.
- Choose your preferred settings.
- Start playing against the AI or another player
ButterDevelopChessEngine/
├── bin/
│ └── Debug/
│ └── net6.0/
├── Controllers/
│ ├── AIController.cs
│ ├── BitCalculations.cs
│ ├── EvaluationController.cs
│ ├── MoveMaskController.cs
│ └── VerificationController.cs
├── Models/
│ ├── Board.cs
│ └── Move.cs
├── obj/
│ └── Debug/
│ └── net6.0/
└── GUI/
├── bin/
│ └── Debug/
│ └── net6.0-windows/
├── obj/
│ └── Debug/
│ └── net6.0-windows/
├── Properties/
└── Resources/
├── black_bishop.png
├── black_king.png
├── ...
└── white_rook.svg- ButterDevelopChessEngine: Core engine containing Controllers and Models.
- GUI: WinForms application for the graphical user interface.
- bin/ and obj/: Compiled binaries and object files.
- Resources/: Image assets for chess pieces and logos.
Contributions are welcome! Please follow these steps to contribute:
-
Fork the Repository
-
Create a Feature Branch
git checkout -b feature/YourFeature
-
Commit Your Changes
git commit -m "Add Your Feature" -
Push to the Branch
git push origin feature/YourFeature
-
Open a Pull Request
Please ensure your code follows the project's coding standards and includes relevant tests.
This project is licensed under the MIT License. You are free to use, modify, and distribute this software as per the license terms.
For any inquiries or feedback, please contact me here, on GitHub.
Happy Chess Playing! ♟️
