Every now and then I find myself engaged in a 25x25 game. And the biggest surprise is that the star points are missing.
Does anyone think star points belong on non-standard boards? And if one did put star points on non-standard boards, where would they go? Can anyone think of a halfway-sane formula?
2 Likes
I thought about this when I created go software
Roughly, here are rules that I used (applicable to only rectangular, regular-grid boards):
- Tengen hoshi if the board is odd-by-odd
- Corner hoshi at 4-4 points if size >= 11, at 3-3 if size in 8-10, and none if smaller
- Side hoshi (on the same line as the corner hoshi) if the board is odd-by-odd and at least 17-by-17
Here is the code that I used
From: besogo/boardDisplay.js at gh-pages · yewang/besogo · GitHub
// Draws hoshi onto the board at procedurally generated locations
function drawHoshi() {
var cx, cy, // Center point calculation
pathStr = ""; // Path string for drawing star points
if (sizeX % 2 && sizeY % 2) { // Draw center hoshi if both dimensions are odd
cx = (sizeX - 1)/2 + 1; // Calculate the center of the board
cy = (sizeY - 1)/2 + 1;
drawStar(cx, cy);
if (sizeX >= 17 && sizeY >= 17) { // Draw side hoshi if at least 17x17 and odd
drawStar(4, cy);
drawStar(sizeX - 3, cy);
drawStar(cx, 4);
drawStar(cx, sizeY - 3);
}
}
if (sizeX >= 11 && sizeY >= 11) { // Corner hoshi at (4, 4) for larger sizes
drawStar(4, 4);
drawStar(4, sizeY - 3);
drawStar(sizeX - 3, 4);
drawStar(sizeX - 3, sizeY - 3);
} else if (sizeX >= 8 && sizeY >= 8) { // Corner hoshi at (3, 3) for medium sizes
drawStar(3, 3);
drawStar(3, sizeY - 2);
drawStar(sizeX - 2, 3);
drawStar(sizeX - 2, sizeY - 2);
} // No corner hoshi for smaller sizes
if (pathStr) { // Only need to add if hoshi drawn
svg.appendChild( besogo.svgEl('path', { // Drawing circles via path points
d: pathStr, // Hack to allow radius adjustment via stroke-width
'stroke-linecap': 'round', // Makes the points round
'class': 'besogo-svg-hoshi'
}) );
}
function drawStar(i, j) { // Extend path string to draw star point
pathStr += "M" + svgPos(i) + ',' + svgPos(j) + 'l0,0'; // Draws a point
}
}
5 Likes
Oh that’s cool. And looks surprisingly natural. At least on 17x19:
I do wonder if very large boards like 25x25 or 37x37 deserve more than one hoshi per side. I dunno!
1 Like
I’ve also tried to make something sensible when I made my multicolor goban. I added hoshi to these sizes, mostly based on it feeling regular and useful in dividing the board into areas, and visually pleasing.
5 Likes
Haha, that would be crazy! 4 or 5 star points along the side. But really, those board sizes are so big they’re crazy anyway, so anything goes really.
1 Like