An Unusual Chinese Chess based on Java.
The main interface of Unusual Chinese Chess.
- Extensive Rule Customization: Break free from traditional gameplay with dozens of optional rules. Enable settings like "Piece Stacking," "Pawn Promotion," "Flying Generals," and many more.
- LAN Multiplayer: Challenge a friend over your local network. The game supports hosting and joining LAN games with real-time synchronization of moves and rule changes.
- Rule-Based Engine: The game is built on a flexible, rule-based engine that allows for easy addition of new, creative gameplay variations.
- Save & Load Games: Export your current game state, including all custom rules and board positions, to a JSON file. Import them later to resume your game or share interesting scenarios.
- Intuitive UI: A clean and straightforward interface that includes a move history panel, a dynamic rule settings panel, and real-time game status updates.
- Force Move: A unique feature allowing players to suggest and (if agreed upon) execute moves that may not be traditionally valid, adding another layer of strategic depth.
- Developer-Friendly: Designed with extensibility in mind. Adding new rules is a streamlined process. See How to Create New Rules for a guide.
I. Jar User
- Make sure that you have installed JRE 1.8 or above. If not, you can download HERE.
- Download the latest
.jarfile from the Releases page. - Double-click the jar file OR use cmd to run the application:
java -jar UnusualChineseChess.jar
II. Exe User
- Download the latest
.exefile from the Releases page. - Click to start! All environments are integrated into one
exefile!
This project is designed to be extensible. If you have an idea for a new, unusual rule, it is encouraged for you to contribute!
- How to Contribute: Please fork the repository, create a new branch for your feature, and submit a pull request.
- Adding New Rules: I've created a step-by-step guide for developers. Please see How to Create New Rules in 2.X.X for more details. Specifically, if you want to develop on 1.X.X version, please refer to How to Create New Rules in 1.X.X for more details.
For more up-to-date documents, you can refer to Samera2022/UnusualChineseChess | DeepWiki or just click the badge at the top of the article, which offers weekly-updated docs for this project.
Contributions are welcome! If you find a bug or have a feature request, please open an issue.
Developer: Samera2022
- GitHub: @Samera2022
This project is licensed under the GNU General Public License v3.0 License - see the LICENSE file for details.