Hacker News new | past | comments | ask | show | jobs | submit login
Show HN: Influence, a Go-inspired 1-minute board game (cintrest.com)
379 points by jawslouis on June 15, 2021 | hide | past | favorite | 112 comments



I really like the idea of this. Some thoughts:

1. It's difficult for me to tell which spaces are open for play and which aren't -- the border is hard to parse. (Is that this cell's border, or the adjacent cell?) This isn't really an issue during placement, but it is an issue for signalling that a cell has been "captured," which is hard for me to tell.

2. Hexagon grid is absolutely the right call. :)

3. The influence mechanic is very opaque: it's very hard for me to predict what will happen next, which makes me feel like I'm playing a little "intuitively," instead of planning out my moves with intention. Some way to see "this is the current state and this will be the next state" would help with that, but I think as long as influence is a continuous quantity it's going to be difficult to visualize and predict.

4. Making the board itself hexagonal (ala Hexxagon) will give you an odd number of cells, preventing ties. Might also be nice to smooth out cell-strength discontinuities around the top and bottom edges.

5. Balancing the first-player advantage by making the first move a "weak stone" was very confusing to me, because an adjacent move by player two will "capture" my initial stone with a single stone of theirs. I didn't understand this until I saw your comment about it here. I think the pie rule would work well in this game, but it's hard for me to reason about since edge moves are offensively weaker but defensively stronger... I'm not sure how well it would shake out, if you haven't tried it already.

https://en.wikipedia.org/wiki/Pie_rule


Thanks for the feedback :) I appreciate it!

1. I can try experimenting with the border thickness. Selectable tiles would have a light gray border, instead of the dark green/blue border.

3. I'm planning to add a way to view the 'next state' in the next version of the game. But still trying to figure out a good way to visualize the 'influence' of each tile, besides the color.

4. Yes, also will try out the hexagonal board shape. And give players more options for the board size too. I think it's the right size for smaller screens like a mobile phone, but desktop users might want to play with more tiles.

5. Thanks for suggesting the pie rule. I looked into it, but think it'll be too confusing, especially for 1st time players. The 'weak stone' would be easier to understand for new players - perhaps except for those with a Go background :)


It never occurred to me that the first stone might be a weaker stone. I spent a few minutes trying to figure out why the computer could play next to my first stone, and if I played next to the computer, the computer could then take my first stone. It was very counter intuitive and frustrating, like the computer had an advantage somehow.


I agree, I actually got the impression that the computer in hard mode had an advantage unfairly beyond just the first move.


> I looked into it, but think it'll be too confusing, especially for 1st time players.

I think the current weak stone is already very confusing, judging by my experience and some other comments, but I have not done any real playtesting.

But I would argue that first time players shouldn't play with the pie rule: they should just get the first-player advantage. It's a nice way to handicap the AI while the player learns the rules -- by the time someone knows the game well enough to play the balanced version, they have to learn a new rule. Just like new Go players start with extra stones on the board -- the game is the most fun when the two players are equally balanced, not necessarily on equal footing.

I think there's an implementation that makes it pretty intuitive: the first stone played doesn't get a border (or a more clear visual indicator that it's not capturable :). So the second player can choose to capture it, or to play elsewhere. If they play elsewhere, the first stone then becomes "locked." I think that's clearer than like switching colors or something.

The strategy for first-move play seems easier to grok than the strategy for a 55% weak stone, but I have to caveat that with: I play Hex, so it's familiar to me.


I've updated the UI of the game, so that it's more obvious that the 1st stone is weaker than the subsequent ones. Hopefully that will help with some of the confusion.

I agree that a 55% weak stone is not ideal, but it seems to be the easiest way to balance the game for now. Having the 1st stone become "locked" if it doesn't get captured, would also be surprising for new players.

I also did think about just letting players enjoy the 1st-player advantage, but on hard AI, green wins 43-7. That was what made me think of a way to balance the game in the 1st place.


A mode where tile colors are displayed as numbers would help with understanding the rules.


Just indicate which stones will become capturable next turn.


Agree with other commentors that the 'weak stone' is difficult to understand for new players


As a counterpoint to 3, learning how influence works by playing is much more fun than analyzing well defined rules in the abstract :)


People playing go for over 4000 years might disagree.

The rules are extremely simple and well defined, and yet the result is a very abstract game.

Interestingly, there is a concept called influence in go. And it is fun to learn what influence is, and how to use it. You could spend years and still have much to learn about influence in go, but it's not mentioned anywhere in the rules.


Slightly related, here's a site where one can learn playing go with assisted visuals regarding influence: https://colorgoserver.com/en


Very interesting. This is pretty much the opposite of the idea I've had for making Go more beginner-friendly.

I think some beginners could benefit from see the more complex nature of Go, by letting them focus on large scale matters, and ignore the tactics of battle. The way to do this would be to let the player choose which general region of the board they want to play in, but have their stone snap to the locally best intersection as their cursor moves across the board. (The snapping, I suppose, could vary in distance depending on how much stronger the strongest move is. A very strong/important move could snap from across a quarter of the board, but if it's a less important move they'd effectively have to hover on one of its neighbours for it to be suggested.)

So effectively the player would get unassisted practise at spotting which groups of stones are weak, and where influence needs to be strengthened, but simultaneously have AI assist in dealing with local battles and making life.

I suspect this would make Go play more like a traditional RTS video game: at lower levels, the player bosses over more general goals, and individual units make local decisions on when to shoot and how to move places through a primitive AI. At higher levels, the human player takes over more of the local decision making in improving their "micro".


That sounds like an exciting idea!

Though, personally I'm not sure how far one could get and staying true to the spirit, or the deliciousness of go, namely the interweaving quality of different ever-status-changing groups and also considering that stones have somewhat global effects (ladder). Perhaps the AI could also make helpful annotations to player why the move was important. Or suggest that this and that group should be strengthened. Or if player makes a move that first selects a region, then give some options to choose from.

I love abstract aspects of go (e.g. reading attack and defence, direction of play) but often situations involve local context that are too interesting to ignore, and thus tesujis. It would definitely would be fun to see how a game like you are suggesting would feel like.

One thing I really liked about go is that learning from a book, or trying out puzzles, is much easier than for example in Chess due to much less destructive change in the board.

(I'm ranked online perhaps 3-5 kyu, so take my take with a grain of salt).

Wrt. teaching absolute beginners, here's a nice but not that experimentally-minded blog post by a European player that became professional in Japan: https://www.nordicgodojo.eu/post/9/how-should-we-teach-go-to...


I like the idea you linked to, too. In fact, the first version of that "have more stones on the board" is exactly how I explain the rules of the game to beginners. They pretty quickly realise the tediousness of filling in what's effectively already owned intersections, at which point they're ready to hear that "normally, experienced players don't actually go through the trouble of filling it in, they just count it as theirs. If there is any dispute about whose it is, play resumes until it becomes clear again."


Hi, a couple of comments.

First, I understand you were trying to make an approachable presentation, but the rules as you presented them are incomplete (how does influence work? what is a "threshold"?), and I think for a board game that's a big mistake. What makes games like those cool is that rules work deterministically, even for games that involve randomness. Having to guess the rules is something I actively dislike.

Second, have you considered a square board instead of an hexagonal one? Using Go terminology, it feels like the groups have too many liberties.

Other than that, the game is pretty good. I feel it captures the attack/defense territory-based gameplay of Go perfectly.

Have you tried to measure the first move advantage?

edit: Wow this thing is a drug. Hard AI is deceptively good, I managed to tie a game 25-25 after several attempts, but you definitely can't afford to be sloppy if you want to stay afloat!


Thanks for the comments! I appreciate the thought put into it.

1. My original thinking was to keep the game simple for casual players. But now I see that there are many who want to get into more depth :) Will work on it to make the rules of the game clearer and give an option for more visual indicators.

For now, here are some explanations (which might beg more questions):

influence - at the end of each turn, the average color of a tile's neighbors is calculated, and the tile gets 30% of that color (retaining 70% of its original color)

threshold - once a tile gets 50% of the way to max-blue or max-green, it gets a dark border and is not selectable. 0% is white.

2. I originally thought about square tiles, but then it would be more complicated to figure out the 'influence' on diagonally adjacent tiles. Hex tiles eliminates that issue.

3. There is a strong 1st mover advantage in this game. To compensate, the 1st green tile is actually at 55% color. I tried to balance the game so that hard AIs on both colors would roughly capture equal number of tiles.

Glad you're enjoying the game!


It would be useful to know how many shades of a color there are in the game. It can be known by observing the board for a few games but from your description there are probably 100 of them, or an infinite number (infinite as in a Float.) This makes it hard to read ahead and know for example if an invasion can survive. Maybe it's a game that's inherently easier for an AI than for a person. Not a problem with that.

A few notes.

1. I won twice 30-20 against Easy blue AI and tied against Medium blue by playing goish tactics (start at 3-4 from corners, knights moves, keep blue hexes separate.)

2. The UI lets me move before the colors on the board fully update. Maybe it's my phone that's slow, maybe it's an async implementation.

3. The game is quite fast because there seems to be little to think about. Of course I played only three games, if I played 100 of them I might start to notice patterns and foresee them even if I might still be unable to read the exact values. Even more so after 100 games.

4. Hexes are OK.

5. The overall first impression is good with that undeterministic feeling which in my case is also a bit too much unsatisfactory.


Been playing go for a while now and this is the first I've heard of goish tactics. What exactly does goish mean?


It's playing in the corners, knight's moves, shape, connections, playing towards the edges, life and death, liberties, etc. As if you tried to map go tactics to this game.

I tried that too at first but didn't do very well against the hard AI. (Easy seems pretty random and easy to beat with anything). It took me a while to realize you need to throw out Go and find the tactics inherent to this game. I've found success counting adjacent colors and making moves so that I maximize the opponent's exposure to my color. The other thing to think about is what stuff you will automatically capture without needing a move. Some moves are completely unnecessary.


I assume they mean Go-ish; i.e. tactics that that work in the game of Go.


> influence - at the end of each turn, the average color of a tile's neighbors is calculated, and the tile gets 30% of that color

Ah, so there's a temporal aspect! That makes it very different from go and any other board game I know.

I guess it only works on a computer, since everything is changing every turn, and not just the local area of your last stone.

I wonder if humans are able to grog it, or it becomes too complex to predict anything. Very cool!


I appreciated the rules as you wrote them. The important thing is to get started and see how it works. Thank you for keeping it simple.


I actually prefer the sparse rules. Reminded me of figuring out a video game when I was a kid without looking at any instructions.


My thoughts exactly. It works as a board game-style video game. It's not meant to be played on a board with a rule book. Make educated guesses as to how much influence your move is going to add.


Same here. It's simple enough to figure out on your own. I find full rules rather intimidating actually.


At the end of every turn, each tile influences its neighbors and imparts some of its color. Tiles with a dark border can no longer be selected.

The rules are simple but it takes awhile to master. What is your best score against the Hard AI? I got 27 (me on green) – 23 (AI).

Would you want to see some sort of match-making to play against others online?

See demo gameplay or view the source code at https://github.com/jawslouis/Influence-Game


Interesting. Instead of just using shades or green and blue, would you consider displaying numerical values too? I was confused about how close the tiles were to flipping to my color.

Side note: I’m working on a game that has some similarities that might interest you: https://simondorfman.com/volcanoes1


Looks like one of the consistent pieces of feedback is for numeric values :) Will think about how to implement that.

Checked out your site too. Looks interesting!


I tried it on Firefox mobile and when I lose in the second difficulty level I can't really see anything but the "game over restart" message.

I'd like to be able to see the score and the layout to analyze the game.

Really nice job, though! Fun concept.


Thanks! Will adjust the layout to make post-game analysis easier


Fun and addictive game - I’m also at 27-23 now :)

Uncertainty regarding piece state is also my number one feedback. Maybe rather than numeric, make that states visibly discrete in some other way?


37-13! Thinking about it a bit, I realize the main uncertainty is which parts are "in danger" - which will switch color or "hardness" next turn with no influence?


Or a tug-of-war like indicator showing the threshold. (Although not a sufferer, blue-green is a common colour blindness)


Update - I've updated the UI to have a clearer visual indicator of how close the tiles were to flipping, using the size of the colored area.


29 (me on gree) - 21 (hard AI). Took me many tries! I think I'm starting to understand though. Might be fun to have a "replay" system like on hateris - https://qntm.org/files/hatetris/hatetris.html


29-21 hard AI playing as green

Fun and interesting game - this has a lot of potential! Great mechanic, I would pay for an iOS app in the future.


30-20. My strategy tips:

* first stone is weak, it’s ok to play it near a corner so their response is not in a strong place

* Y-shape to kill and gain territory is much stronger than playing opposite to pincer

* Always be growing passively

* If you are growing passively faster than the opponent, start a fight. If you are not, don’t.


37-13 :-D

And 29-21 as blue. Fun game!


Suggestions:

* Visually show which tiles will lock or unlock next turn

* Show a total influence growth per player as a running score - useful to help beginners learn strategies


I got 29 vs 21 on Easy Blue AI on my first attempt.


Better than my wife's first attempt :)


38-12. Edit: 41-9. Nice game.


It seems like there's a bug if you drag your mouse from the board area, off the board, then back on; it will automatically select the first unclaimed tile the cursor hits. I just progressed the game to a 14-36 loss by just waving my mouse randomly without a single click.

It seems to require some fairly fast movement, but I did accidentally trigger it a few times when I was trying to play for real.

I've tested on Firefox 89 and Chrome 91.


Thanks for reporting the bug! I've managed to replicate it on my system too. Will look into a fix.


No problem. It's a fun game that I'm looking forward to playing more, I'll just have to be a bit more deliberate with my mouse movements in the future.

Thanks for posting it!


Update: bug has been fixed!


Love it! Got through easy AI pretty quickly, still working on medium, only a few rounds in.

Echoing/jumping off of a few comments:

- I love the hex grid. Hexagons are bestagons and I bemoan the fact we went decimal and dozenal.

- I actually don't mind the intuitive play style that much. It's kinda fun and mitigates overthinking

- however, more obvious visual indication when a cell is locked would be nice

- It might be interesting to see a more quantitative indicator of the influence of a cell. The shade alone is hard to parse. However I disagree with numbers (or maybe make it a setting toggle). I'd personally prefer a purely visual/geometric.

- One way to possibly indicate would be coloring sub-shapes inside the hexagon. Not sure if that would look too busy.

- This game is super addicting. Nice work all around!


Thanks for the comments! I was going for a more intuitive play style, glad you like it.

I also recognize the need to better see the 'influence' level of a cell, especially for players who want to get better at the game. Maybe scaling the size of the colored hexagon in each tile would work. So the colored hex would grow with 'influence', and once it reaches the border it would become locked


Or maybe even just a small dot in the center of locked tiles. Great game idea! :)


Update - I implemented your idea about a sub-shape inside the hexagon. So the colored area now grows/shrinks with the tile's 'influence'


The small board size and easy AI combo was too easy as a starting point. But I started to lose against the Medium AI. The animations are a bit lengthy. I think the ideal numeric indicator would show the number of turns (stone placements) before the space "locks" itself to a particular color.


Appreciate the feedback! The number of turns before lock is an interesting indicator. There are some corner cases that I'd have to think more about though - e.g. when a tile is almost at the threshold but at a deadlock (both colors are evenly surrounding it)


The countdown approach is a really good idea (if it can be implemented).


Observations:

1) Somehow I can actually play and enjoy it. I'm usually really bad at these sorts of games (Go, Viking Chess, etc.). But I find I win a good portion of medium games while not getting frustrated.

2) All animations need to be decoupled from the gameplay entirely. Don't remove them, but they have no place in the order of move execution. I can't actually play how fast I want to play because I still have to wait _a while_ for a previous animation to "finish".

3) If I quickly move my mouse cursor around and happen to move off the board (moving my mouse while thinking), it will actually select a random piece near the border without any click event ever happening.

All in all nice, but seeing how fast paced this game is (for me at least), it needs some major work to make it play snappy and predictable.


The animations are a bit sluggish. I kept missing clicks on tiles that were finishing animations from a previous turn. Maybe I was playing faster than I should have been but it made things somewhat confusing.


Yep, same here. The animations are way too slow. For whatever reason it seems to wait like a second after you move to pulse influence. There's no reason it should wait.


Now that you mention it, there does seem to be a bit of a lag before that animation starts. Will look into it.


Thanks for the feedback. What device are you on - mobile, tablet, desktop? I am wondering if the animation is taking longer on devices with less processing power.

I could also add an option in the settings to disable animations, for those who like to play fast.


Desktop -- an MBP that should have enough processing power. An option to disable animations would be ideal. But I was also just trying by doing without reading about the game at all so maybe not a huge priority (:


Thanks for letting me know!


See also the game of Hex. I was introduced to it by Martin Gardner's 1957 column in Scientific American[1]. As far as I know, these columns are not available free online from Scientific American. However, there is an excellent description of the game and its properties by Thomas Maarup available[2], his Thesis on it is at [3]. Like the cited game Influence, the rules of Hex are very simple and although it is easily proven that in Hex the first player has a winning strategy available, this strategy is unknown.

The game was first invented by Piet Hein in 1942 and was independently reinvented in 1949 by John Nash while a graduate student at Princeton University.

There is a recent book on Hex by Ryan B. Hayward and Bjarne Toft, published by CRC Press [4].

Before someone asks, I didn't read Martin Gardner's column in 1957, but I was old enough to read it in 1963 as a child. I became fascinated with Mathematical Recreations monthly columns that year, and at the library I eventually read every one of the Mathematical Recreations columns he wrote for the magazine (over 300).

[1] Martin Gardner. Mathematical Games—Concerning the game of Hex, which may be played on the tiles of the bathroom floor. Scientific American, 197:145–150, 1957

[2] https://maarup.net/thomas/hex/

[3] Thomas Maarup (2005 Thesis) https://maarup.net/thomas/hex/hex3.pdf

[4] https://www.routledge.com/Hex-The-Full-Story/Hayward-Toft/p/...


Fun game! It wasn't always immediately obvious where exactly I could play, but I imagine the more you play the more it clicks too.

I also agree with your decision to not use numerical indicators. It would definitely make things too complex and the graphical representation you have is pretty elegant as-is. Optional if at all.


Thanks! Yea I was trying to make the game's visuals as simple as possible. Especially for mobile players, where screen real estate is quite small.

But looks like there's demand for more indicators for the game's state. Will need to think more about how to have indicators without cluttering the visuals.


I did win the first game but noticed you mentioned difficulties, clicked hoping it wasn't on Easy. It was! ha

For people in this thread, if you're into abstract game design in the hex/table space, Nick Bentley creates some games I find very interesting, though haven't played. Bought some generic tiles once, hoping to eventually try out Circle of Life:

https://www.nickbentley.games/circle-of-life-an-ecosystem-si...

His "best" list:

https://www.nickbentley.games/category/my-best-games/


Wild, I made something extremely similar a couple years ago (also inspired by Go) called Quagen (https://quagen.io). I like your use of hex and the UX better than mine. Nice job!


Wow our ideas were really similar. I read your blog post - even how we came up with the idea was similar! I too played a lot of Hearthstone, and thought of adding a new digital element to a board game. Seems like Go was a natural fit :)


Really neat to see how ideas propagate.

My code is also up on Github. Feel free to directly take anything you like should you keep working on it! And if you ever want to brainstorm, you know how to find me.


Neat. While it would draw away from the visual elegance, the game would be bit more playable if it had numeric indicators, both for current level of influence and the change for next turn.


i agree that there is a "legibility" issue. the game doesn't communicate the state of unlocked hexes or the rules of how the threshold to lock hexes. It wouldn't necessarily need to be numeric indicator. it could be a visual indicator on a hex to communicate that a hex will lock to a particular colour next turn. For even more usability, the game UI could update these indicators for all hexes when the player hovers over a hex (if you place here, then this is the immediate result you will get..)


Thanks! I did think about numeric indicators but didn't want to introduce too much complexity. Would also take away from the fun if players had to check the numbers for many cells each turn.

Still trying to figure out the best way to show that information.


Maybe some kind of vertical line through the hex, say green on left, blue on the right, and as the line moves away from the middle it's obvious which side is gaining influence there? When it hits one side or the other, it's locked.


Maybe press-hold TAB view them, like the production markers on tiles in Civ 4


That's a good idea! For those on mobile though, perhaps a button to toggle the view?


Or something time based, pulsating perhaps every few seconds as very faint overlay text?


Yeah I agree, but maybe have also non-numbers as an extra option.

very nice game, will pass it around to fellow-go players


Super fun, and it's quite challenging at first to beat the blue hard AI. I've found my personal "joseki" that wins every time by a large margin: one of the two center points, then press blue's response on the other center point by playing one of the two points that attaches to both of your stones. When blue pincers this latest stone, pincer his original stone. Blue will pincer your latest stone again, and you then respond by pincering blue's second stone. From this position it seems like you can do almost anything and win--probably because blue is over-eager on pincering. I usually win with 30+ points this way.

Seems like blue is at a big disadvantage even with green's first stone being weak. I've only found one path to victory: play adjacent-towards-the-edge to green's first stone in the middle, and green will do what seems to be a bad move (a diagonal pincer even further into the edge). From there just capture green's first stone and things start to be more do-able.


Addictive, fun, quick, yet interesting and subtle if you're into strategy games. I think you have a potential winner on your hands. Some polish and tweak may be needed based on feedback here, but a mobile app could make a killing


Super fun! Is there a public repo for the code?



Have you considered adding an open source license? https://docs.github.com/en/communities/setting-up-your-proje...

I personally like the AGPLv3 for web-based projects, but any explicit license so people know where they stand would be beneficial.


Thanks, have added a license! Decided to go with MIT for its simplicity.


Whether a group will be captured or not often depends on whose turn a given space becomes playable or not, and if there are enough moves in the game left for the group to weaken sufficiently. Both of these are very hard to predict, which gives the game a somewhat random feel.


I like this game because it is a bit mysterious, but I seemed to quickly hit on a strategy - start towards the centre, make 3x3x3 triangles, ignore blue - which wins more or less every time. Blue could counter that but doesn't.


As other commenters said, it is not clear what the rules exactly are. I don’t understand when I can capture, or when I have an eye (in Go’s parlance).

It’d be cool if you could sort of similarly visualize your influence on a real goban.


A game with this UI and Voronoi diagram rules would be fun.

https://en.m.wikipedia.org/wiki/Voronoi_diagram


I would classify this as a variant of the Virus game (where you change all neighbouring enemy colours into your own). If I remember right the first version I played of that would have been in The 7th Guest.


Did you mean the game "Hexxagon"?


I played that as well, although I think it only came out after The 7th Guest.


go player here.

on first play throughs (on easy then medium AI), i thought that a lot of concepts transferred over and that i just had to consider that influence increases over time even if nothing else is played there later. the game seemed pretty easy.

then i tried hard and got stuck for a few games. i could be wrong about this, but i think the game might be easier as the second player? ive been able to win as blue on hard, but not green yet. i suspect theres something im not understanding about how the influence works, since this seems counter intuitive to me otherwise.

in any case, cool game :)


Huh, actually I was wondering if the AI needed to be improved. I haven't lost a game yet (three on easy, then two on hard, all as green) and I'm a pretty poor Go player.


sounds like im just bad at the game then :)


This was fun, I would really like a online-multiplayer version to play quick games against friends.

Create a "private" board, send the link to a friend and the game is on.


This is very cool and fun. My only issue is it's hard to know if a move is going to make a tile reach threshold, or even if a tile is already at threshold.


Great game! Thats something to bypass waiting times :D. I like the presentation and loading times are great.

The AI is hard enough, took a few games until I managed to beat it.


Nice, please make a random map generator, (good generation, not just 50% on off), then fog of war, and make an android app please, good job.


So basically https://hexxagon.com/.


Works well on Firefox on my phone. Good job. I, too, would like to understand the game mechanics better.


A good concept, though I think the game name need to be more unique.

Additional idea, make some variety of maps for fun.


Cool idea!

Observation: Undo (twice) seems to break the game. After blue places color, green does not get the turn.


Thanks for letting me know! I've fixed the bug now.


Fun game. CPU is off the charts maybe check the animation fired event


This is very good. Any way I can play 2 player against my wife?


In the settings you can disable the AI. I had a lot of fun playing against my girlfriend!


Thanks! Yes you can play 2-player - just disable both AIs in the setting.


Set the AI to None for both players in the settings, that should do it.


How do you represent a field of this geometry?


Seems fun but makes my fans spin, on Chrome.


This is fun. a bigger field maybe even more!


Nice! Gave me that old school Hexxagōn vibe


genius, great animations. would love the current score somewhere prominently. couldnt see it on a phone


Well done.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: