Git Product home page Git Product logo

go-server's People

Contributors

dependabot[bot] avatar yahiaetman avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

hadymaher311

go-server's Issues

Scoring is incorrect

Describe the bug
The scoring function is incorrect, it adds erroneous number of captured stones when an agent has passed and the other is still playing.

To Reproduce
Steps to reproduce the behavior:

  1. Make an agent pass
  2. Make the other agent play in one of his eyes (or any intersection surrounded by his stones)
  3. Watch the number of captured stones go up.

Expected behavior
These are not captures, and hence the total score is incorrect.

Video Evidence
https://youtu.be/HozIyyecLnY

Additional context
Sorry for bringing this up this late, but I hope this can be fixed before the competition.

Timing is not reconstructed correctly from the checkpoints

When the game is reconstructed from a checkpoint after a connection error, the timing is not always correctly reconstructed.

Steps to reproduce the behavior: (Non-deterministic)

  1. Let two clients play.
  2. Disconnect at least one client.
  3. Reconnect clients.
  4. Unpause the game.

Observation: Time will be incorrect.

  • OS: Windows 10 and Ubuntu.
  • Device: Multiple

This seems more to be more obvious when the disconnection happens after a player take a long time thinking.

SuperKo and/or Mercy Rule

With the current rules, the game could go on forever till a timeout happen which makes a rational agent prefer to keep the game till a timeout.

Two solutions were suggested by your colleague:

  1. SuperKo: this rule prevents board-turn pairs from repeating. So a board configuration can only appear twice, once with the turn being Black and once with the turn being White. This will force the game to end after some steps.
  2. Mercy Rule: This rule ends the game as soon as the absolute difference between the scores for the two players exceed a certain threshold. This rule is only applied after a certain number of moves have been applied. (Values: Mercy threshold = 50, Minimum number of moves = 100).

We can also apply both of them.
Please reply whether we should apply one of them, both of them or none as soon as possible.

Details:
The only changes needed from the client is as follows:

  • In the START message, the configuration will include 3 more fields: superko of type boolean, mercy and mercyStart of type number. All of them can be ignored since the rules will be fixed during the contest.
  • In the END message, reason will have one more possible value mercy.

EDIT: The server with superko and mercy is in this branch. It will not be used in the competition.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.