Russian AI Cup

Расширенный поиск  
Страницы: [1] 2

Автор Тема: Визуализатор для CodeWizards  (Прочитано 5636 раз)

JustAMan

  • Full Member
  • ***
  • Сообщений: 105
Визуализатор для CodeWizards
« : Ноября 08, 2016, 06:52:33 pm »

Налетай! :)
Новых фич по сравнению с прошлым годом пока нет, проверен только отладочный клиент для python...
Зато прямо щас и даже работает! :)

https://github.com/JustAMan/russian-ai-cup-visual/releases/tag/0.8
Записан

Stef

  • Full Member
  • ***
  • Сообщений: 96
Re: Визуализатор для CodeWizards
« Ответ #1 : Ноября 08, 2016, 06:55:48 pm »

О_о а я только хотел спрашивать людей которые знаю джаву :)
а то с прошлого года визуализатор остался, я его даже скомпилить в *.class смог, но как его в local-runner впихнуть так и не понял.

Расскажите за одно как это сделать? очень интересно.

Хм... или я чтото не то делаю, так как в архиве тоже только класс файлы.
« Последнее редактирование: Ноября 08, 2016, 06:59:52 pm от Stef »
Записан

JustAMan

  • Full Member
  • ***
  • Сообщений: 105
Re: Визуализатор для CodeWizards
« Ответ #2 : Ноября 08, 2016, 07:12:17 pm »

Хм, а нигде не написано?.. странно.

Сделать очень просто - надо положить эти .class файлы в папку plugins и в конфигурации от local runner поменять строчку
plugins-directory=на
plugins-directory=plugins
Потом включить в свою стратегию клиент (или разработать, если для Вашего языка его нет) и пользоваться.
Лично я тестирую (и использую) только python2, остальное кладут другие люди, кто хочет поделиться.

Вот пример моей питон-стратегии, которая рисует имена волшебникам:
from model.ActionType import ActionType
from model.Game import Game
from model.Move import Move
from model.Wizard import Wizard
from model.World import World

try:
    from debug_client import DebugClient
except:
    debug = None
else:
    debug = DebugClient()

class MyStrategy:
    def move(self, me, world, game, move):
        """
        @type me: Wizard
        @type world: World
        @type game: Game
        @type move: Move
        """
        move.speed = game.wizard_forward_speed
        move.strafe_speed = game.wizard_strafe_speed
        move.turn = game.wizard_max_turn_angle
        move.action = ActionType.MAGIC_MISSILE

        if debug:
            with debug.post() as dbg:
                for w in world.wizards:
                    dbg.text(w.x, w.y, '%s (%s)' % ([player.name for player in world.players if player.id == w.owner_player_id][0], w.level), (0, 1, 0))
Записан

Stef

  • Full Member
  • ***
  • Сообщений: 96
Re: Визуализатор для CodeWizards
« Ответ #3 : Ноября 08, 2016, 07:18:22 pm »

Час я убил час, и все из-за этого:
plugins-directory=на
plugins-directory=plugins

:(  :)

Большое спасибо :)
Записан

Adler

  • Jr. Member
  • **
  • Сообщений: 31
Re: Визуализатор для CodeWizards
« Ответ #4 : Ноября 08, 2016, 08:09:39 pm »

Вот пример моей питон-стратегии, которая рисует имена волшебникам:
Можно просто зажать ALT в local-runner`е
Записан

mortido

  • Full Member
  • ***
  • Сообщений: 79
Re: Визуализатор для CodeWizards
« Ответ #5 : Ноября 08, 2016, 11:57:03 pm »

Спасибо, похоже пригодиться. А то попытка создать свой с записью объектов для рисования в json была большой ошибкой - хром падает от полугиговых файлов (а ведь каждый из них сохранет только 4000 тиков игры...)
Записан

sominus

  • Newbie
  • *
  • Сообщений: 6
Re: Визуализатор для CodeWizards
« Ответ #6 : Ноября 09, 2016, 11:29:58 am »

Java клиент не работает, плагин подключен, на запуске стратегии вечное ожидание соединения, видимо проблема в подключении к сокету
Записан

sominus

  • Newbie
  • *
  • Сообщений: 6
Re: Визуализатор для CodeWizards
« Ответ #7 : Ноября 09, 2016, 12:52:27 pm »

уже решил проблему с подключением, но с отрисовкой ничего не происходит :)
Записан

JustAMan

  • Full Member
  • ***
  • Сообщений: 105
Re: Визуализатор для CodeWizards
« Ответ #8 : Ноября 09, 2016, 01:02:19 pm »

А я чаво - я ничаво, я тестировал только ру2 клиент :)
Можете починить java версию и сделать pull-request, сообщество будет вам благодарно. Или найдите того, кто это сделает за Вас :) У меня сейчас времени даже на своё участие пока нет, вот только визуализатор откопать несколько минут выкроил.
Записан

Galtran

  • Jr. Member
  • **
  • Сообщений: 19
Re: Визуализатор для CodeWizards
« Ответ #9 : Ноября 09, 2016, 07:28:57 pm »

Клиент VisualClient на C# завелся без проблем. Поправил только namespace на CodeWizards2016 и в коде установил CultureInfo("en-US")
Спасибо JustAMan'у за визуализатор и в этом году))
Записан

Minhir

  • Jr. Member
  • **
  • Сообщений: 18
Re: Визуализатор для CodeWizards
« Ответ #10 : Ноября 09, 2016, 07:34:23 pm »

Большое спасибо за визуализатор! Заменил пару строк и всё завелось на python3. Отправил реквест.
Записан

Sm1Le55

  • Newbie
  • *
  • Сообщений: 2
Re: Визуализатор для CodeWizards
« Ответ #11 : Ноября 09, 2016, 09:27:08 pm »

Java также запустилась, благодарю.

За одно подскажите - можно ли писать текст "поверх" всего, примерно туда где Speed/FPS или тики?
Т.е. чтобы он всегда на одном месте был независимо от того где камера.
Записан

Triman

  • Newbie
  • *
  • Сообщений: 4
Re: Визуализатор для CodeWizards
« Ответ #12 : Ноября 09, 2016, 11:03:31 pm »

Спасибо!

Когда задаю цыет элиментам, то он не отрисовывается. Кто нибудю еще сталкивался с этой проблемой?
« Последнее редактирование: Ноября 09, 2016, 11:10:06 pm от Triman »
Записан

olsh

  • Jr. Member
  • **
  • Сообщений: 21
Re: Визуализатор для CodeWizards
« Ответ #13 : Ноября 10, 2016, 12:03:43 am »

Спасибо!

Когда задаю цыет элиментам, то он не отрисовывается. Кто нибудю еще сталкивался с этой проблемой?

Надо задавать rgb не от 0 до 255, а от 0 до 1.

Color <color> is actually an r g b triple of floats where 0.0 0.0 0.0 will be black and 1.0 1.0 1.0 will be white.

По-хорошему, надо бы исключение кидать в таком случае в клиентах.
Записан

JustAMan

  • Full Member
  • ***
  • Сообщений: 105
Re: Визуализатор для CodeWizards
« Ответ #14 : Ноября 10, 2016, 01:50:18 am »

Java также запустилась, благодарю.

За одно подскажите - можно ли писать текст "поверх" всего, примерно туда где Speed/FPS или тики?
Т.е. чтобы он всегда на одном месте был независимо от того где камера.
Сейчас - нет, не реализовано. В самой системе плагина есть такая возможность, но надо доработать протокол.
Мысль интересная, будет время - попробую добавить.
Записан

hi4

  • Newbie
  • *
  • Сообщений: 1
Re: Визуализатор для CodeWizards
« Ответ #15 : Ноября 10, 2016, 03:22:36 pm »

Клиент VisualClient на C# завелся без проблем. Поправил только namespace на CodeWizards2016 и в коде установил CultureInfo("en-US")
Спасибо JustAMan'у за визуализатор и в этом году))

Можешь мини-гайд сделать для новичков?
Записан

Chaotic_Good

  • Jr. Member
  • **
  • Сообщений: 21
Re: Визуализатор для CodeWizards
« Ответ #16 : Ноября 10, 2016, 04:18:12 pm »

Тоже заинтересован, если честно. Сейчас в основном собираю статистику от стратегии, нужно визуализовать ГОРЫ информации!
Записан

JustAMan

  • Full Member
  • ***
  • Сообщений: 105
Re: Визуализатор для CodeWizards
« Ответ #17 : Ноября 10, 2016, 05:26:00 pm »

Большое спасибо за визуализатор! Заменил пару строк и всё завелось на python3. Отправил реквест.
Ваша версия нормально работает и на python2, так что я теперь склеил их в одну. Спасибо за починку :)
Записан

JustAMan

  • Full Member
  • ***
  • Сообщений: 105
Re: Визуализатор для CodeWizards
« Ответ #18 : Ноября 10, 2016, 05:59:09 pm »

https://github.com/JustAMan/russian-ai-cup-visual/releases/tag/0.9

Добавил возможность вывода по абсолютным координатам (т.е. по экранным пикселям).
Писать tutorial по использованию - не смогу, напряг со временем. Может, кто-то ещё возьмётся?
Записан

Sm1Le55

  • Newbie
  • *
  • Сообщений: 2
Re: Визуализатор для CodeWizards
« Ответ #19 : Ноября 10, 2016, 07:05:50 pm »

https://github.com/JustAMan/russian-ai-cup-visual/releases/tag/0.9

Добавил возможность вывода по абсолютным координатам (т.е. по экранным пикселям).
Писать tutorial по использованию - не смогу, напряг со временем. Может, кто-то ещё возьмётся?

Спасибо. Пара новых метода в Java-клиент и всё работает.
Записан

Magiq

  • Newbie
  • *
  • Сообщений: 2
Re: Визуализатор для CodeWizards
« Ответ #20 : Ноября 10, 2016, 07:22:03 pm »

Кто то может мне ответить, почему я в гугле должен искать хоть какуе-то крупицу информации, а официальный сайт, там даже нет упоминания о визуализаторе! Это нормальный подход к организации ???
Записан

Galtran

  • Jr. Member
  • **
  • Сообщений: 19
Re: Визуализатор для CodeWizards
« Ответ #21 : Ноября 10, 2016, 07:35:03 pm »

Клиент VisualClient на C# завелся без проблем. Поправил только namespace на CodeWizards2016 и в коде установил CultureInfo("en-US")
Спасибо JustAMan'у за визуализатор и в этом году))

Можешь мини-гайд сделать для новичков?

1. скачал визуализатор
2. собрал, запустив compile.bat.
3. Подкинул получившуюся папку plugins в local-runner
4. В local-runner-sync.default.properties проставил plugins-directory=plugins
5. В проект csharp-cgdk добавил файл VisualClient.cs
6. В классе MyStrategy завел переменную:
    private VisualClient vc = new VisualClient("127.0.0.1", 13579);
7. В конструкторе выставил локаль:
   Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US");
   Thread.CurrentThread.CurrentUICulture = new CultureInfo("en-US");

вроде все.. теперь в методе Move можно делать:
vc.BeginPost();
vc.Text(x, y, msg);
vc.EndPost();
Записан

Stef

  • Full Member
  • ***
  • Сообщений: 96
Re: Визуализатор для CodeWizards
« Ответ #22 : Ноября 10, 2016, 07:43:00 pm »

Добавил небольшой tutorial. Постарался расписать как можно более подробнее. Также проверьте по языкам python и scala - я их почти не знаю и мог чегото в 3 строчках нетого написать  :)

https://github.com/JustAMan/russian-ai-cup-visual/wiki/Tutorial

Также есть readme, написанный автором, в котором тоже можно прочитать, но уже про протокол общения:
https://github.com/JustAMan/russian-ai-cup-visual/blob/master/README.md
Записан

JustAMan

  • Full Member
  • ***
  • Сообщений: 105
Re: Визуализатор для CodeWizards
« Ответ #23 : Ноября 10, 2016, 07:48:59 pm »

Кто то может мне ответить, почему я в гугле должен искать хоть какуе-то крупицу информации, а официальный сайт, там даже нет упоминания о визуализаторе! Это нормальный подход к организации ???
Наверное потому, что визуализатор делает и выкладывает человек, не причастный к организаторам (т.е. я) :)

Добавил небольшой tutorial. Постарался расписать как можно более подробнее. Также проверьте по языкам python и scala - я их почти не знаю и мог чегото в 3 строчках нетого написать  :)
Спасибо! :) Проверю про Python.
Записан

mr.newman

  • Jr. Member
  • **
  • Сообщений: 15
Re: Визуализатор для CodeWizards
« Ответ #24 : Ноября 10, 2016, 07:50:17 pm »

Подскажите, как убрать socket.error: [Errno 32] Broken pipeСначала запускаем local-runner.jar, а потом Runner.py верно?
Записан

JustAMan

  • Full Member
  • ***
  • Сообщений: 105
Re: Визуализатор для CodeWizards
« Ответ #25 : Ноября 10, 2016, 07:55:47 pm »

1. Убедитесь, что визуализатор включен - см. свежесозданный учебник: https://github.com/JustAMan/russian-ai-cup-visual/wiki/Tutorial
2. Подождите секунду-две после запуска local runner'a перед запуском стратегии
Записан

mr.newman

  • Jr. Member
  • **
  • Сообщений: 15
Re: Визуализатор для CodeWizards
« Ответ #26 : Ноября 10, 2016, 09:05:54 pm »

Спасибо! А можно ли запилить сектор обстрела - закрашенный сектор круга? как это сделать?
Записан

Stef

  • Full Member
  • ***
  • Сообщений: 96
Re: Визуализатор для CodeWizards
« Ответ #27 : Ноября 10, 2016, 09:28:08 pm »

Спасибо! А можно ли запилить сектор обстрела - закрашенный сектор круга? как это сделать?

Боюсь что в текущей реализации нет, но всегда можно:
нарисловать не закрашенный круг + нарисовать две линии из центра, обозначающие сектор.
Записан

Stef

  • Full Member
  • ***
  • Сообщений: 96
Re: Визуализатор для CodeWizards
« Ответ #28 : Ноября 10, 2016, 09:34:43 pm »

Подскажите, как убрать socket.error: [Errno 32] Broken pipeСначала запускаем local-runner.jar, а потом Runner.py верно?
Не уверен что нужно запускать "local-runner.jar", ну точнее запускаеться то он, но с помощью скриптов local-runner.bat или local-runner.sh
Записан

Chaotic_Good

  • Jr. Member
  • **
  • Сообщений: 21
Re: Визуализатор для CodeWizards
« Ответ #29 : Ноября 10, 2016, 10:23:37 pm »

Could not get address пишет. C++14.
Записан

Stef

  • Full Member
  • ***
  • Сообщений: 96
Re: Визуализатор для CodeWizards
« Ответ #30 : Ноября 10, 2016, 10:42:51 pm »

Could not get address пишет. C++14.
Так сходу не скажу.
Открой Debug.cpp на 53 строчке: s = getaddrinfo(DEFAULT_HOST.c_str(), DEFAULT_PORT.c_str(), &hints, &result); посмотри значение s (или брейкпоинт или printf).
Потом найди что это за значение ошибки вот тут: http://man7.org/linux/man-pages/man3/getaddrinfo.3.html

У меня есть некоторые небольшое предположение, что тут постарался фаервол какой-нибудь, так как если программа не может найти сервер возникает другая ошибка и позже.
Записан

AlexeyN

  • Jr. Member
  • **
  • Сообщений: 10
Re: Визуализатор для CodeWizards
« Ответ #31 : Ноября 10, 2016, 11:26:08 pm »

Could not get address пишет. C++14.

Подозреваю 10093, вставьте этот код перед вызовом getaddrinfo

WSADATA wsaData;
if (WSAStartup(0x0202, &wsaData)){
   printf("winsock not bi initialized !\n");
   WSACleanup();
}
Записан

jfhs

  • Newbie
  • *
  • Сообщений: 1
Re: Визуализатор для CodeWizards
« Ответ #32 : Ноября 10, 2016, 11:59:41 pm »

Спасибо за визуализатор! Добавил синхронизацию в Java клиент, отправил pull request https://github.com/JustAMan/russian-ai-cup-visual/pull/10
Записан

randrewy

  • Newbie
  • *
  • Сообщений: 3
Re: Визуализатор для CodeWizards
« Ответ #33 : Ноября 11, 2016, 12:22:12 am »

А можно делать несколько "блоков" begin*/end*?
Если я пытаюсь в двух разных местах отрисовать что-то после ранера, выполняется только одна отрисовка.
Записан

JustAMan

  • Full Member
  • ***
  • Сообщений: 105
Re: Визуализатор для CodeWizards
« Ответ #34 : Ноября 11, 2016, 01:30:24 am »

Спасибо! А можно ли запилить сектор обстрела - закрашенный сектор круга? как это сделать?

Боюсь что в текущей реализации нет, но всегда можно:
нарисловать не закрашенный круг + нарисовать две линии из центра, обозначающие сектор.
Именно так.
Дуга (кусок окружности) не реализована в протоколе, хотя есть в коде самого рисователя. Если очень хочется - можно сделать по аналогии с остальным кодом.
Лично я в соревновании про хоккеистов сектор обстрела показывал просто двумя линиями из центра - он же узкий, там и так понятно, что внутри.

А можно делать несколько "блоков" begin*/end*?
Если я пытаюсь в двух разных местах отрисовать что-то после ранера, выполняется только одна отрисовка.
Пока нельзя. Команда "end что-то" переставляет местами буфера накопления и отображения (что-то типа двойной буферизации, чтобы не дрожало), соответственно текущее поведение - "не баг, а фича".
Правда, мне это ни разу пока не мешало - обычно "под" полем рисуется какая-то статическая информация, типа результата анализа самого поля, соответственно, это можно делать один раз. А вот "поверх" поля можно один раз начать рисование, потом всю функцию рисовать из разных мест, потом закончить рисование.
Записан

randrewy

  • Newbie
  • *
  • Сообщений: 3
Re: Визуализатор для CodeWizards
« Ответ #35 : Ноября 11, 2016, 01:37:46 am »

Правда, мне это ни разу пока не мешало - обычно "под" полем рисуется какая-то статическая информация, типа результата анализа самого поля, соответственно, это можно делать один раз. А вот "поверх" поля можно один раз начать рисование, потом всю функцию рисовать из разных мест, потом закончить рисование.
Действительно простое и логичное решение, спасибо :)
Записан

randrewy

  • Newbie
  • *
  • Сообщений: 3
Re: Визуализатор для CodeWizards
« Ответ #36 : Ноября 13, 2016, 04:56:46 pm »

Еще вопрос, при проигрывании реплея LocalRunner'ом, можно подключить свои стратегию и рисовать?
Записан

Chaotic_Good

  • Jr. Member
  • **
  • Сообщений: 21
Re: Визуализатор для CodeWizards
« Ответ #37 : Ноября 13, 2016, 06:29:16 pm »

beginAbs  в С++ нету в последнем релизе... пришлось вручную добавлять.
Записан

4way

  • Jr. Member
  • **
  • Сообщений: 24
Re: Визуализатор для CodeWizards
« Ответ #38 : Ноября 13, 2016, 07:48:41 pm »

Что я делаю не так?((
Exception in thread "main" java.lang.NullPointerException
   at VisualClient.sendCommand(VisualClient.java:41)
   at VisualClient.beginPre(VisualClient.java:52)
   at MyStrategy.move(MyStrategy.java:58)
   at Runner.run(Runner.java:46)
   at Runner.main(Runner.java:10)
Записан

Stef

  • Full Member
  • ***
  • Сообщений: 96
Re: Визуализатор для CodeWizards
« Ответ #39 : Ноября 13, 2016, 08:00:28 pm »

Что я делаю не так?((
Exception in thread "main" java.lang.NullPointerException
   at VisualClient.sendCommand(VisualClient.java:41)
   at VisualClient.beginPre(VisualClient.java:52)
   at MyStrategy.move(MyStrategy.java:58)
   at Runner.run(Runner.java:46)
   at Runner.main(Runner.java:10)

 :o Мне теперь тоже интересно, проверил код на java 0.9 версии. Единственное что там может быть null pointer в этой строке это outputStream, ну или строка, что былобы совсем странно.

Но его создание тоже проверяется исключениями... Либо код модифицировался (что возможно так как номера строк у меня не совпали), либо я плохо знаю java, так как такого быть не может в моем понимании...

Один только вопрос - этоже не сервер выдал, а локальная попытка запуска?
Записан

dilho

  • Newbie
  • *
  • Сообщений: 2
Re: Визуализатор для CodeWizards
« Ответ #40 : Ноября 13, 2016, 08:09:15 pm »

есть возможность как-то узнать из-за чего крашнулась стратегия?
Записан

4way

  • Jr. Member
  • **
  • Сообщений: 24
Re: Визуализатор для CodeWizards
« Ответ #41 : Ноября 13, 2016, 08:16:10 pm »

Что я делаю не так?((
Exception in thread "main" java.lang.NullPointerException
   at VisualClient.sendCommand(VisualClient.java:41)
   at VisualClient.beginPre(VisualClient.java:52)
   at MyStrategy.move(MyStrategy.java:58)
   at Runner.run(Runner.java:46)
   at Runner.main(Runner.java:10)

 :o Мне теперь тоже интересно, проверил код на java 0.9 версии. Единственное что там может быть null pointer в этой строке это outputStream, ну или строка, что былобы совсем странно.

Но его создание тоже проверяется исключениями... Либо код модифицировался (что возможно так как номера строк у меня не совпали), либо я плохо знаю java, так как такого быть не может в моем понимании...

Один только вопрос - этоже не сервер выдал, а локальная попытка запуска?


Локально, при чем на тике 50 где-то. В момент вызова beginPost. Модифицировал пуллом от jfhs. Думал поможет
Записан

aangairbender

  • Newbie
  • *
  • Сообщений: 9
Re: Визуализатор для CodeWizards
« Ответ #42 : Ноября 14, 2016, 10:46:27 am »

У меня клиент для С++ не работает. Пишет Could not connect, в чем может быть проблема? Файрвол проверил, антивирусников нету. (До этого на шарпе писал, все работало)
Записан

tankovod

  • Jr. Member
  • **
  • Сообщений: 14
Re: Визуализатор для CodeWizards
« Ответ #43 : Ноября 14, 2016, 10:59:47 am »

Что я делаю не так?((
Exception in thread "main" java.lang.NullPointerException
   at VisualClient.sendCommand(VisualClient.java:41)
   at VisualClient.beginPre(VisualClient.java:52)
   at MyStrategy.move(MyStrategy.java:58)
   at Runner.run(Runner.java:46)
   at Runner.main(Runner.java:10)

 :o Мне теперь тоже интересно, проверил код на java 0.9 версии. Единственное что там может быть null pointer в этой строке это outputStream, ну или строка, что былобы совсем странно.

Но его создание тоже проверяется исключениями... Либо код модифицировался (что возможно так как номера строк у меня не совпали), либо я плохо знаю java, так как такого быть не может в моем понимании...

Один только вопрос - этоже не сервер выдал, а локальная попытка запуска?

На локал рунере получил то же. Отключил firewall. Не помогло:\
Записан

Stef

  • Full Member
  • ***
  • Сообщений: 96
Re: Визуализатор для CodeWizards
« Ответ #44 : Ноября 14, 2016, 12:15:18 pm »

У меня клиент для С++ не работает. Пишет Could not connect, в чем может быть проблема? Файрвол проверил, антивирусников нету. (До этого на шарпе писал, все работало)

Есть пару вариантов:
1) Плагин вообще не запустился - проверьте что в папке с local-runner нету файла visualizer-plugin.err, и сам плагин подключен
2) Плагин и проект запускаются одновременно, или в обратном порядке - то есть сам плагин еще не открыл соединение (это около секунды может занять), а проект уже пытается получить соединение.
Записан

Chaotic_Good

  • Jr. Member
  • **
  • Сообщений: 21
Re: Визуализатор для CodeWizards
« Ответ #45 : Ноября 14, 2016, 12:53:04 pm »

У меня клиент для С++ не работает. Пишет Could not connect, в чем может быть проблема? Файрвол проверил, антивирусников нету. (До этого на шарпе писал, все работало)
Читайте выше. Мне эту проблему уже решили.
Записан

Stef

  • Full Member
  • ***
  • Сообщений: 96
Re: Визуализатор для CodeWizards
« Ответ #46 : Ноября 14, 2016, 01:16:23 pm »

У меня клиент для С++ не работает. Пишет Could not connect, в чем может быть проблема? Файрвол проверил, антивирусников нету. (До этого на шарпе писал, все работало)
Читайте выше. Мне эту проблему уже решили.

У тебя была "Could not get address", это другая ошибка :)
Записан

tankovod

  • Jr. Member
  • **
  • Сообщений: 14
Re: Визуализатор для CodeWizards
« Ответ #47 : Ноября 14, 2016, 01:35:01 pm »

Что я делаю не так?((
Exception in thread "main" java.lang.NullPointerException
   at VisualClient.sendCommand(VisualClient.java:41)
   at VisualClient.beginPre(VisualClient.java:52)
   at MyStrategy.move(MyStrategy.java:58)
   at Runner.run(Runner.java:46)
   at Runner.main(Runner.java:10)

 :o Мне теперь тоже интересно, проверил код на java 0.9 версии. Единственное что там может быть null pointer в этой строке это outputStream, ну или строка, что былобы совсем странно.

Но его создание тоже проверяется исключениями... Либо код модифицировался (что возможно так как номера строк у меня не совпали), либо я плохо знаю java, так как такого быть не может в моем понимании...

Один только вопрос - этоже не сервер выдал, а локальная попытка запуска?

На локал рунере получил то же. Отключил firewall. Не помогло:\

Оутпут при ошибке..
java.net.ConnectException: Connection refused: connect
at java.net.DualStackPlainSocketImpl.connect0(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:79)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:589)
at java.net.Socket.connect(Socket.java:538)
at java.net.Socket.<init>(Socket.java:434)
at java.net.Socket.<init>(Socket.java:211)
at VisualClient.<init>(VisualClient.java:29)
at MyStrategy.move(MyStrategy.java:54)
at Runner.run(Runner.java:46)
at Runner.main(Runner.java:10)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:147)
Exception in thread "main" java.lang.NullPointerException
at VisualClient.sendCommand(VisualClient.java:38)
at VisualClient.beginPost(VisualClient.java:56)
at MyStrategy.move(MyStrategy.java:56)
at Runner.run(Runner.java:46)
at Runner.main(Runner.java:10)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:147)
Записан

JustAMan

  • Full Member
  • ***
  • Сообщений: 105
Re: Визуализатор для CodeWizards
« Ответ #48 : Ноября 14, 2016, 02:11:40 pm »

beginAbs  в С++ нету в последнем релизе... пришлось вручную добавлять.
Добавили - поделитесь с общественностью! ;) github -> pull request -> новый релиз, где плюсоводы чуть более счастливы :)

tankovod и другие, у кого не подключается:
Скорее всего, сервер визуализатора ещё не поднялся, а стратегия уже пытается подключиться.
Посмотрите, как сделано в клиенте для питона (там делается 20 попыток подключения с интервалом в 0.1 секунды), и попробуйте переделать в своём клиенте по аналогии.
Записан

JustAMan

  • Full Member
  • ***
  • Сообщений: 105
Re: Визуализатор для CodeWizards
« Ответ #49 : Ноября 14, 2016, 02:32:49 pm »

Свежачок-с: https://github.com/JustAMan/russian-ai-cup-visual/releases/tag/0.10
Добавлены рисования арки и сектора (доступны в java и python клиентах), добавлено абсолютное позиционирование в java-клиенте, обновлены модели из последнего local runner'a.

Спасибо приславшим pull request'ы :)
Записан
Страницы: [1] 2