Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

time_left + visio fix #326

Open
wants to merge 3 commits into
base: master
Choose a base branch
from
Open

time_left + visio fix #326

wants to merge 3 commits into from

Conversation

alex3d
Copy link
Contributor

@alex3d alex3d commented Aug 9, 2019

@0x0badc0de
Copy link

0x0badc0de commented Aug 9, 2019

В visio direction теперь сохраняется не предыдущая, а текущая команда

Это означает, что теперь в тике N будет храниться direction, т.е. команда отправленная в тик N, а не до него? Сервак разве так делает и может ли? Если роботу приходит тик, там же не может быть информации о ходах других роботов в этот самый тик. Или я что-то не так понял?

@alex3d
Copy link
Contributor Author

alex3d commented Aug 9, 2019

Это означает, что теперь в тике N будет храниться direction, т.е. команда отправленная в тик N, а не до него?

В visio.gz - да (для последнего тика жизни игрока в текущем visio команду узнать нельзя).
В стратегию конечно по прежнему будет приходить предыдущая команда.

@0x0badc0de
Copy link

В end_game же пишется?

{"type": "end_game", "events": [{"tick_num": 648, "event": "line crossed by other player", "player": {"id": 3, "direction": "up", "lines_length": 18, "position": [645, 695]}, "other": {"id": 6, "direction": "right", "lines_length": 0, "position": [675, 645]}}]}

А предложенные изменения получается делают бесполезным visio для тестов, т.к. там уже не те тики, что получает робот.

@xammi xammi added the invalid This doesn't seem right label Aug 9, 2019
@xammi
Copy link
Contributor

xammi commented Aug 9, 2019

Может ломать пользовательские решения на статически-типизированных языках (unmarshal в go). + к этому, нам бы не хотелось увеличивать объём хранимых логов на серверах.

@alex3d
Copy link
Contributor Author

alex3d commented Aug 9, 2019

нам бы не хотелось увеличивать объём хранимых логов на серверах

Размер логов не меняется:

  1. time_left в логи не попадает, только в стратегии отправляется
  2. direction в логи и сейчас добавляется, только сейчас добавляется не текущий, а предыдущий direction, что нелогично и не позволяет нормально сделать replay visio

Может ломать пользовательские решения на статически-типизированных языках (unmarshal в go)

Звучит крайне сомнительно.
Unmarshal в go без проблем десериализует json с дополнительными полями не описанными в структуре. Любая адекватная json-библиотека должна по-умолчанию игнорировать неизвестные поля.
Ладно, хрен с ним с time_limit, примите хотя бы 990c6d8 и 5702941, чтобы починить реплей который вы оставили в localrunner.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
invalid This doesn't seem right
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants