Configurable level of difficulty of AI algorithm #389
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
A long-awaited feature will be added to the module!
Levels of difficulty of the AI 馃
As I don't know how to properly modify the minimax algorithm to make it less "intelligent", I use a random rate when the AI plays. Given that, sometimes it picks a random empty cell instead of running whole minimax algorithm. I think it's a good starting point to make the bot easier to beat, and I had to move on to a solution I could afford.
Changes
Add a new option called "aiDifficulty" which can take a level of difficulty as a string.
Possible values: (Easy, Medium, Hard, Unbeatable - as actual)
Set default difficulty to Unbeatable
Related Issues
Resolves #36
Resolves #333
Any feedbacks?