{"id":15678680,"url":"https://github.com/gervinfung/simpleparallelchessai","last_synced_at":"2025-05-07T08:03:45.191Z","repository":{"id":41842126,"uuid":"318265720","full_name":"GervinFung/SimpleParallelChessAI","owner":"GervinFung","description":"A Parallel AI Chess Game from Level 1 to Level 10 made with Java Swing","archived":false,"fork":false,"pushed_at":"2022-04-27T03:48:50.000Z","size":3943,"stargazers_count":4,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-07T08:03:35.711Z","etag":null,"topics":["ai","alpha-beta-pruning","alphabeta-algorithm","alphabeta-minimax-search","chess","game","java","minimax-alpha-beta-pruning","multithread","multithreaded","multithreading","propertychangelistener","propertychangesupport"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/GervinFung.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-12-03T17:12:53.000Z","updated_at":"2023-12-22T10:00:06.000Z","dependencies_parsed_at":"2022-08-11T19:10:12.153Z","dependency_job_id":null,"html_url":"https://github.com/GervinFung/SimpleParallelChessAI","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GervinFung%2FSimpleParallelChessAI","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GervinFung%2FSimpleParallelChessAI/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GervinFung%2FSimpleParallelChessAI/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GervinFung%2FSimpleParallelChessAI/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/GervinFung","download_url":"https://codeload.github.com/GervinFung/SimpleParallelChessAI/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252839287,"owners_count":21812086,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","alpha-beta-pruning","alphabeta-algorithm","alphabeta-minimax-search","chess","game","java","minimax-alpha-beta-pruning","multithread","multithreaded","multithreading","propertychangelistener","propertychangesupport"],"created_at":"2024-10-03T16:23:54.731Z","updated_at":"2025-05-07T08:03:45.169Z","avatar_url":"https://github.com/GervinFung.png","language":"Java","readme":"## NOTE: **Archived this repo, for latest code, check out the link below** \n\nhttps://github.com/GervinFung/LibGDX-Chess-Game\n\n\nA simple 2 player chess AI that implemented minimax \u0026 alpha-beta pruning \u0026 move-ordering \u0026 pawn structure analysis to fully optimise the AI with a proper FEN file format\n\nI screwed up my previous chess game with bad design and without planning ahead\n\nI decided to make a chess game because my pc do not have one\n\nNOTE: **Credit to Christos-Kouros for timer function**\n\n## Folder Structure\n\nThe workspace contains two folders by default, where:\n\n- `src`: the folder to maintain sources\n- `res`: the folder to maintain resources like the images\n- `lib`: the folder to maintain external libraries like Guava\n\n## To play the Game\nNOTE: **The image dragged is a bit low quality as image of piece is added to cursor**\n\nNo. | Steps\n--- | ----\n1.| Open Intellij Project.jar program in out/artifacts/Intellij_Project_jar\n2.| User can choose to play as white/black\n3.| User can choose white/black as AI\n4.| Or, user can watch AI play against itself\n5.| Once the game started, left press the piece you wish to move, drag and drop to the square you wish to place it\n6.| OR, right click the piece you wish to move, and right click again to the square you wish to place it\n7.| User can reset the timer if they wish to do so\n8.| The piece will move as user drag\n\n## Game Features\n\nNOTE: **if AI move is undo, press its piece so AI can move again**\n\nNo. | Features\n--- | ----\n1.| Restart new game\n2.| Save game/ Load saved game\n3.| Exit game\n4.| Highlight legal moves\n5.| Show move history\n6.| Choose AI level from 1 to 5\n7.| Show captured piece\n8.| Show AI thinking progress bar\n9.| Undo previous move\n10.| Multithread feature depends on the number of cores of a pc, the greater the better/faster AI can think\n11.| Flip board\n12.| Enabled/disable a timer **(Credit to Christos-Kouros)**\n\n![Chess sample](chess.png)\n[SimpleParallelChessAI.jar](out/artifacts/Intellij_Project_jar/Intellij%20Project.jar)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgervinfung%2Fsimpleparallelchessai","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgervinfung%2Fsimpleparallelchessai","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgervinfung%2Fsimpleparallelchessai/lists"}