Russian AI Cup

Расширенный поиск  

Просмотр сообщений

В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.

Сообщения - CyberWo1f

Страницы: 1 [2] 3
51
У меня вообще cell_visibilities имеет тип тип str. а в отладчике одни квадраты вместо данных. Или я чего то не понимаю?

52
После того как залил новую версию стратегии, у меня сломался алгоритм оценки ситуации, и бойцы начали частенько подтупливать, постоянно тусуясь около командира, и не умирая поодиночке. Из за чего закончилась череда поражений, и даже небольшой подъем в рейтинге образовался =)

53
Russian AI Cup 2013: CodeTroopers / Re: Топ "360"
« : Ноября 27, 2013, 08:06:21 am »
Вот блин, даже не видел такой чудесной функции =) Круто, я пока попадаю по добору, главное так и держаться =)

54
Russian AI Cup 2013: CodeTroopers / Топ "360"
« : Ноября 27, 2013, 07:34:57 am »
Сейчас подсчитал, на текущий момент 256 человек прошедших во второй раунд, находятся в топ 300 песочницы. Соответственно, на текущий момент, чтобы попасть во второй раунд нужно быть в топ 256 + ~60 = 316 =) Конечно, я не учитывал того, что из тех 16 человек, который находятся в промежутке от 300 до 316 тоже будет находится человек, уже прошедший во второй раунд. Написал это просто так, может кому интересно =)

55
Russian AI Cup 2013: CodeTroopers / Re: CodeXXX 2014
« : Ноября 22, 2013, 01:04:40 pm »
Ну тут как раз наоборот =) И в армии танков не было, и сюда не попал, а вот побегал и пострелял и в армии и тут успел =)

56
Russian AI Cup 2013: CodeTroopers / Re: CodeXXX 2014
« : Ноября 22, 2013, 12:46:52 pm »
Ну да, что-нибудь интерактивное, как в этом году =) Интересно же =) Жаль я вот на танки не попал, в армии как раз был.

57
Russian AI Cup 2013: CodeTroopers / Re: Смерть бойца
« : Ноября 22, 2013, 12:38:39 pm »
В чем мучаетесь? Тоже не можете определить, умер он или нет?

58
Если посмотреть повнимательней, то видно что граната кидалась на клетку выше медика. Соответственно медик получил урок.

59
Russian AI Cup 2013: CodeTroopers / Re: Смерть бойца
« : Ноября 22, 2013, 06:30:03 am »
Чисто теоритически, если ты не обнуляешь где нибудь каждый ход localCom.х и localCom.у, то если твой командир умер, твои бойцы начинают идти в последние координаты твоего командира, и застревают там.

60
Russian AI Cup 2013: CodeTroopers / Новая карта
« : Ноября 20, 2013, 08:29:11 pm »
Мне показалось, или появилась новая карта? с логотипом codetanks.

http://russianaicup.ru/game/view/136109

61
Russian AI Cup 2013: CodeTroopers / Re: Запоминание данных
« : Ноября 20, 2013, 06:15:44 pm »
Спасибо, deepcopy помогло. Правда не сразу допер,что надо делать import copy =)
Я до этого и делал циклом копирование. Просто думал одной строкой получится, не допер что внутри скопированного списка все равно ссылки на списки остались =)

62
Russian AI Cup 2013: CodeTroopers / Re: бой рано завершился?
« : Ноября 20, 2013, 05:37:32 pm »
По поводу рано завершившегося боя, могу предположить что у соперника на этом ходу упала стратегия =)

63
Russian AI Cup 2013: CodeTroopers / Re: Гранаты!
« : Ноября 20, 2013, 01:32:53 pm »
Небольшой ньюанс в том, что у каждого игрока будет возможность собрать бонусы на своей части карты =) Но, да, если смотреть на будущее, то конечно, нужно все сожрать самому =)

64
Russian AI Cup 2013: CodeTroopers / Re: Гранаты!
« : Ноября 20, 2013, 01:07:27 pm »
Ну вообще, съедать весь сух пай сразу может пригодиться для того, чтобы он не достался врагу =)) но тогда можно и аптеки сразу кушать и подбирать следующую, и гранаты по возможности кидать в неизведанные точки в пределах радиуса броска =) авось попадут =)

65
Russian AI Cup 2013: CodeTroopers / Re: Гранаты!
« : Ноября 20, 2013, 12:52:20 pm »
Почему мало? Еще даже первый раунд не начался =) Как поется в той песне... "Ведь спешка нужна при пожаре и ловле блох - У нас будет целая ночь, чтобы сделать диплом." =))

66
Russian AI Cup 2013: CodeTroopers / Re: Гранаты!
« : Ноября 20, 2013, 12:36:56 pm »
Ну это да, но у меня пока только используется в связке с гранатой. Пока писал, подумал, что при обычной стрельбе ведь тоже можно юзать, если хп у противника осталось совсем чуть чуть =) Надо будет доработать стратегию. А вообще, в теории, можно использовать еще в том случае, если оторвался от своих,  и увидел врага, чтобы вернуться или еще для чего нибудь =)

67
Russian AI Cup 2013: CodeTroopers / Re: Отладка
« : Ноября 20, 2013, 12:34:58 pm »
Если запускаешь runner.exe, то о какой отладке идет речь? запускать надо свою стратегию из lazarus. Ищи кнопку Debug или чтото в этом роде. При этом, если ты расставил break points, то выполнение стратегии остановится на нужном тебе месте.

68
Russian AI Cup 2013: CodeTroopers / Re: Гранаты!
« : Ноября 20, 2013, 12:27:37 pm »
Ну ладно гранаты, а кто нибудь сухпай использует?

69
Russian AI Cup 2013: CodeTroopers / Re: Запоминание данных
« : Ноября 19, 2013, 08:54:06 pm »
Python 2.7
Не могу понять в чем проблема. Ситуация такая:

Пытаюсь world.cells в другую переменную таким образом:
map = list(world.cells)

После того, как я изменяю map, меняется и содержимое world.cells.

Вроде, метод list() должен копировать сами данные, а не ссылку на список. Кто нибудь направит меня на путь истинный?

70
Russian AI Cup 2013: CodeTroopers / Re: Стратегия упала
« : Ноября 19, 2013, 06:47:29 pm »
Ты хочешь, чтобы тебе помогли отладить твою стратегию? А может за тебя еще её написать? Тебе вроде как указали, где у тебя ошибка в коде. Если ты не знаешь принципов программирования, зачем взялся?

Дам последнюю подсказку по куску кода, который ты привел

Посмотри на код for i:=0 to length(troopers) do begin

И то, что тебе писали в прошлой тебе

Цитировать
в массиве индексы не от 1 до length, а от 0 до length-1!!!

71
Russian AI Cup 2013: CodeTroopers / Re: Стратегия упала
« : Ноября 19, 2013, 06:38:36 pm »
Могу утверждать на 90% что у тебя такая проблема:

Цитировать
3) При выходе за границы динамического массива обычно генерится ошибка "Index out of bound", но возможно и возникновение Access Violation, особенно когда не стоят опции компилляции по проверки границ массивов. Эта ошибка может быть очень сложна в отлаживании - дело в том что допустим у вас есть массив а длиной в 10 элементов, в пишете:

a[20] := something;
И эта строка может пройти как и надо, без всяких проблем, но её выполнение повредит какой-то другой код, причём каждый раз другой! Теперь самая безобидная операция типа i:=10 может вдруг внезапно дать Access Violation.

вот последний ответ на твой предпоследний пост, куда ты скопировал такую же ошибку
Цитировать
Вообще-то в массиве индексы не от 1 до length, а от 0 до length-1
Можно еще писать Low и High для уверенности, или использовать for ... in ...

Конечно, ваш код я не вижу, и утверждать не могу. Но это должно натолкнуть вас на размышления

72
Russian AI Cup 2013: CodeTroopers / Re: Стратегия упала
« : Ноября 19, 2013, 06:29:33 pm »
Ты сначала до конца прочитай, а потом еще раз подумай, прочитал ли ты до конца, перед тем как ответить в очередной раз. Кстати говоря, тебе на этот вопрос ответили еще в прошлой твоей теме.

73
Russian AI Cup 2013: CodeTroopers / Re: Стратегия упала
« : Ноября 19, 2013, 06:26:50 pm »
Ты статью до конца прочитал?

74
Russian AI Cup 2013: CodeTroopers / Re: Стратегия упала
« : Ноября 19, 2013, 06:18:05 pm »
Первая же ссылка в гугле, если поискать по фразе Access violation
http://www.delphisources.ru/pages/faq/base/access_violation.html

75
Я даже больше скажу, я даже не знаю как это сделать!!! так что я только за =) Хотелось бы на локальной машине запускать свои стратегии во множественном числе, так сказать =)

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

77
Ну да =) ну собственно и сказать можно по такому же принципу все что угодно =) Либо делать ограниченный набор фраз. А вообще, конечно, это только для красоты =)

78
У меня макс около 1400 было=) Вот красивый бой =) Моя команда осталась последней =)

79
Ну если осталось 1 очко действия, то вместо того, чтобы что то сказать, можно чтото нарисовать в клетке =) Ну типа как в контр-страйке =)

80
Russian AI Cup 2013: CodeTroopers / Re: Debug Python2.7
« : Ноября 19, 2013, 05:26:40 am »
Насчет local-runnera, думаю что да, нужно перезапускать. Если хотите не тратить на то время, а просто отладить стратегию, делайте это с помощью repeater. Его перезапускать не нужно. Работает примерно так же как runner, только проигрывает один и тот же бой, который вы выберете до этого, ну и без визуального оформления

81
Russian AI Cup 2013: CodeTroopers / Re: isTeammate()
« : Ноября 18, 2013, 02:57:50 pm »
Возможно ваша стратегия упала. Отправьте её в тестовом режиме на сайт. Посмотрите на результат. Если ваша стратегия пройдет, и в тестовом бою вы все равно стоите на месте, значит неправильно указываете действие

82
Russian AI Cup 2013: CodeTroopers / Re: isTeammate()
« : Ноября 18, 2013, 02:46:19 pm »
По идее - да =) Может не двигаются потому что врагов рядом нет? =)

83
Russian AI Cup 2013: CodeTroopers / Re: isTeammate()
« : Ноября 18, 2013, 02:31:31 pm »
в файле TrooperControl.pas

84
Russian AI Cup 2013: CodeTroopers / Re: isTeammate()
« : Ноября 18, 2013, 02:27:08 pm »
блин. Замените DO на THEN

85
Russian AI Cup 2013: CodeTroopers / Re: isTeammate()
« : Ноября 18, 2013, 02:22:18 pm »
ну тогда я не могу вам подсказать. Напишите хоть какую ошибку выдает

86
Russian AI Cup 2013: CodeTroopers / Re: isTeammate()
« : Ноября 18, 2013, 02:18:48 pm »
Вам на пальцах рассказать? замените строку if (canShoot) and (not (trooper.isTeammate())) do begin на строку
if (canShoot) and (not (trooper.GetTeammate())) do begin

А вообще первый ответ, наверно, был самым правильным
Цитировать
Файлы пакета смотрели?
Ответы могут там найтись.

87
Russian AI Cup 2013: CodeTroopers / Re: isTeammate()
« : Ноября 18, 2013, 02:12:56 pm »
Вы не читаете сообщений, которые вам пишут.

Вообще я могу ошибаться, но в паскале метод isTeammate() называется GetTeammate().
trooper это переменная с типом TTrooper. Что оно возвращает я уже писал

Почитайте листинг модулей хоть, что ли

88
Russian AI Cup 2013: CodeTroopers / Re: isTeammate()
« : Ноября 18, 2013, 02:07:06 pm »
Проанализируйте код, который скинули последним. Там, по-моему ясно, откуда ваша программа берет труперов. И все-таки уточните, как называется точно нужный вам метод

89
Russian AI Cup 2013: CodeTroopers / Re: isTeammate()
« : Ноября 18, 2013, 01:49:52 pm »
Вообще я могу ошибаться, но в паскале метод isTeammate() называется GetTeammate().
trooper это переменная с типом TTrooper. Что оно возвращает я уже писал

Почитайте листинг модулей хоть, что ли

90
Russian AI Cup 2013: CodeTroopers / Re: isTeammate()
« : Ноября 18, 2013, 01:44:18 pm »
trooper:=troopers;

что это? Присвоили переменной значение массива, а потом пытаетесь проверить весь массив на isTeammate? Может из за того, что некоторые моменты не вставил, оно и не работает?

Интересно, как он у вас до этого не ругался на строчку
canShoot:= world.isVisible(me.getShootingRange(), me.getX, me.getY, me.getStance(), trooper.getX(), trooper.getY(), trooper.getStance());

91
Расставьте breakpoint'ы, запустите отладку. В конце концов, отправьте тестовую загрузку на сайт. Там вам расскажут почему ваша стратегия упала =)

92
Russian AI Cup 2013: CodeTroopers / Re: isTeammate()
« : Ноября 18, 2013, 01:35:27 pm »
Если вы нашли метод isTeammate() в документации, то не могли не увидеть, что он принадлежит классу Trooper. Что вам непонятного? Trooper.isTeammate(). Метод возвращает истину, если trooper свой, и Ложь, если нет. Как получить список trooper'ов, найдете в документации =)

Upd. если у вас переменная canShoot - тип булево, и переменная trooper действительно класса TTrooper, то ошибки быть не должно

93
Конечно, можно проверять тип бойца, и если это снайпер считать дальность стрельбы по константам исходя из его положения. Но ведь для этого и был создан метод GetShootingRange, чтобы не писать все эти проверки, а получить текущую дальность. Лично мое мнение, метод вернет дальность уже с бонусом. Но, конечно, если организаторы не ответят, узнаем мы это только тогда, когда снайпера введут в игру =)

94
Вообщем, подытоживая вышесказанное - делайте return после того, как указали вид движения и куда двигаться. Иначе когда метод move завершится, ваш юнит будет делать то, что у вас последнее присовилось

95
Russian AI Cup 2013: CodeTroopers / Re: Как В C++
« : Ноября 17, 2013, 09:12:45 pm »
А теперь подскажите, как сделать так, чтобы моя стратегия зарулила все остальные =)

96
Russian AI Cup 2013: CodeTroopers / Re: Немного о рейтинге
« : Ноября 17, 2013, 02:38:48 pm »
Просто, наверно, система анализирует стратегию, и если с точки зрения системы твоя стратегия должна была проиграть в пух и прах, а ты выжил (хоть и получил 0 баллов), то рейтинг увеличивается. А если у тебя супер стратегия, и ты должен был всех победить, но заработал 0 баллов, то рейтинг падает =) имхо

97
Russian AI Cup 2013: CodeTroopers / Re: Немного о рейтинге
« : Ноября 17, 2013, 02:00:52 am »
Лично у меня был бой, когда все закончили бой с 0 очками. Кому то прибавили рейтинг, кому-то нет. И прибавка не зависила от места, определенного программой по результатам боя

98
Мне кажется, или вчера с вечера промежутки между боями уменьшились с часу до получаса?

99
Я лично так и не понял значения этого метода =) В описании как то странно написано Боец в клетке (objeсtX, objeсtY) является досягаемым для бойца в клетке (viewerX, viewerY), если и только если cellVisibilities[viewerX * height * width * height *
stanсeCount + viewerY * width * height * stanсeCount + objeсtX * height * stanсeCount + objeсtY * stanсeCount +
minStanсeIndex] равно true

100
Смотря какие методы тебя интересуют. Сам пишу на пайтоне, поначалу тоже были проблемы, так как языка не знал. Но потом выяснил, что то, что в документации написано как метод, в пайтоне может быть просто атрибутом. Например вместо World.GetCells() в каком - нибудь другом языке, в пайтоне это атрибут world.cells. Посмотри в файле world.py. Там эти классы описаны

Страницы: 1 [2] 3