Skip to content

samarthdave/connectfourkt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

connect four kotlin (connectfourkt)

  • just found this brilliant blog post
  • i'll also need to move my todos from main.kt to here

todos

[x] get all Java files converted to Kotlin [x] then, implement simple functionality against a human player (ConnectFourGameMode.TWO_PLAYER) [x] and after that, against a random robot [x] we're not done yet - implement Minimax! [x] clean up printing of board [x] add unit testing for minimax [x] and after all that, make a test helper: board.readFromAscii(...)

[x] fix player 1 & 2 win condition bug [x] and finally, alpha beta pruning [x] improve scoring function for minimax [x] fix numbering for the integer drop column lol [x] Column Ordering (put good moves first in the alpha/beta search!) [x] profile the program - I probably need to cache the bitboard [x] fix bit manipulation code [x] nope, we don't have a bit board [ ] Store board state as Long and not grid array [ ] fix canDropInColumn to use a bitboard [ ] include & enforce a style guide [ ] read the blog above & start implementing

  • one anti-pattern i introduced is having multiple score mechanisms for grading...

misc

[ ] TODO change drop piece to not accept "colors" remove the concept of colors and just drop Player Pieces "colors" can be determined at render time with a mapping PlayerToColor

About

my connect-four repo but in kotlin this time

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages