Page 1 of 2

Try games alone before playing them with others

Posted: 15 September 2022, 12:00
by CaperuAzul
https://boardgamearena.com/bug?id=71402

What the title says. I explain it a little more in the link, but that's it: being able to play all the games alone to try them out and learn how they are played by practicing.

Re: Try games alone before playing them with others

Posted: 15 September 2022, 13:45
by Silene
Is the suggestion that they should develop an AI for every single game? That's a big task ^^

Re: Try games alone before playing them with others

Posted: 15 September 2022, 14:46
by Tisaac
CaperuAzul wrote: 15 September 2022, 12:00 https://boardgamearena.com/bug?id=71402

What the title says. I explain it a little more in the link, but that's it: being able to play all the games alone to try them out and learn how they are played by practicing.
You could use the hotspot feature for that, altough it's a bit unstable on some (many?) games

Re: Try games alone before playing them with others

Posted: 15 September 2022, 19:36
by CaperuAzul
Silene wrote: 15 September 2022, 13:45 Is the suggestion that they should develop an AI for every single game? That's a big task ^^
If you can play a game of chess against a computer, why not other board games too? :D

Re: Try games alone before playing them with others

Posted: 16 September 2022, 02:30
by MrBeardy
Wait, you want them to develop ai for every game? :lol: that is not a simple thing. Some of these games are incredibly complex in terms of not just the action options but the consequential and sequential variables that cascade from each decision. they can't even resource bug fixing all the games no way they have the resources to do that. Is there a particular game you're struggling with?

Re: Try games alone before playing them with others

Posted: 16 September 2022, 05:44
by Silene
CaperuAzul wrote: 15 September 2022, 19:36
If you can play a game of chess against a computer, why not other board games too? :D
It's possible for chess and go and a few more games because a lot of people have put a lot of effort for many years into developing just that for just these games.

There's probably some time in the future where a generic ai can learn and play games in no time. But we're not there yet.

Re: Try games alone before playing them with others

Posted: 16 September 2022, 05:52
by Silene
Of course on some games it would be easier to create a simple (bad) ai. How that would work out can be seen in can't stop bot. But even for that it is still a lot of work for that particular game. There is no way to implement this function for all games at once.

Re: Try games alone before playing them with others

Posted: 16 September 2022, 06:21
by Meeplelowda
CaperuAzul wrote: 15 September 2022, 19:36 If you can play a game of chess against a computer, why not other board games too? :D
This is the core of an AI I wrote for tic-tac-toe. TIC-TAC-TOE!!! And you want them to just whip up AIs for all games? These things do not just happen magically.

Code: Select all

def mm_move(board, player):
    """
    Make a move on the board.
    
    Returns a tuple with two elements.  The first element is the score
    of the given board and the second element is the desired move as a
    tuple, (row, col).
    """
    
    if board.check_win() != None:
        return 0, (-1, -1)
    
    if board.get_dim() == 2:
        return SCORES[player], (0, 0) 
    
    candidates = board.get_empty_squares()
    move_bucket = []
    for square in candidates: 
        board_copy = board.clone()
        board_copy.move(square[0], square[1], player)
        check_status = board_copy.check_win()
        if check_status != None:
            move_score = SCORES[check_status]
            move_bucket.append((move_score, square))
        else:
            swap = provided.switch_player(player)
            move_bucket.append(mm_move(board_copy, swap))
    
    provisional_score = -2
    for item in move_bucket:
        provisional_move = item[1]
        if item[0] == SCORES[player]:
            return item[0], item[1]
        else:
            if item[0] * SCORES[player] > provisional_score:
                provisional_score = item[0] * SCORES[player]
                provisional_move = item[1]
    return provisional_score, provisional_move 

Re: Try games alone before playing them with others

Posted: 18 September 2022, 16:07
by CaperuAzul
Ok, I understand from the answers that it would be very complicated, so I'll resign myself to hoping that one day more progress will be made on this topic. I guess I had too much faith in how far along we were with AI and video games xD
MrBeardy wrote: 16 September 2022, 02:30 Is there a particular game you're struggling with?
Not quite. There are several that I don't quite understand, but above all I wanted to have the option to practice as much as I wanted without having to wait to find a player or players who wanted to play that game. With some unpopular games it is very difficult to find players, at least the times that I have tried. Or that my acquaintances want to play.

In addition, to practice each board game for as long as you want, calmly, it is difficult or almost impossible to find players who are willing to extend a game. People want to spend X amount of time playing when they come in and they won't be there waiting for you that long.

In short, practicing alone I could adapt it to my schedules and spend as much time as I wanted calmly with each game I wanted to learn. The tutorials, when they exist, help a bit, but not always and often there is always something you don't quite understand even though you thought you did when you saw the tutorial xD

But well, I'm thinking of trying to make a suggestion that all games can be played in solo training mode, which I suppose is possible, right? There you don't play against an AI, you just play the normal game, but against nobody, without affecting the score or anything.

Thank you all for your answers.

Re: Try games alone before playing them with others

Posted: 18 September 2022, 18:12
by Spiegel428
Not all games have solo rules, and of those that do I'm not sure that all have solo mode implemented on BGA. (I get the impression that you're suggesting simply allowing a single player and expecting the interface to work, but that wouldn't necessarily be feasible - games could break in all sorts of ways if they aren't programmed to handle it).

I'd suggest playing turn-based. It's easier to find tables and there's enough time to look up rules. There are also some groups dedicated to learning games where you might be able to schedule something in real-time.

https://boardgamearena.com/group?id=1088438
https://boardgamearena.com/group?id=7553079
https://boardgamearena.com/group?id=10129965