Skip to content

Required custom viewer functionality? #108

@paulmelis

Description

@paulmelis

Hi, first of all, thanks for such a great package! With the recent changes to get it running on Linux it's quite a good way to play Hive against an AI.

I was pondering making a custom viewer application, but it seems it would need to keep track of quite a few things that I so far had assumed would be available from the engine. In particular it seems a viewer ...

  • needs to implicitly keep track of the board state, as it can't be requested from the engine, including piece positions and available pieces left to place for both sides
  • suggesting legal move placement/destinations when selecting a piece in the viewer is done by filtering the results of validmoves, i.e. there's no command to get valid moves for a particular piece

Am I correct in these assumptions? They're not biggies to implement, but if they are available from the engine would save some coding.

Also, is there a canonical destination string to use when moving a piece in case it is moved next to multiple existing pieces? Or will any of the available ones work? For example, if moving a white piece to the left of a black queen that's above a black ant and the white pieces ending up touching both black pieces would both b/Q and b\A1 work as destinations?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions