I pretty much have three options here:
- Keep using taxicab geometry (every node has 4 neighbours, and a 'circle' is a sort of weird diamond shape. easy to program and neighbour overlap is easy to understand!)
- Switch to a hex grid (every node has 6 neighbours, and visually it's quite pretty -- if difficult to program in css)
- Stay on a square grid, but include diagonal neighbours (every node has 8 neighbours, and a 'circle' is basically a square. neighbours overlap a lot and this makes it very hard to make 'walls'.)