Chat:Ru/2022-04-25
Chibikko: мне кажется (судя по рефери) если у монстра например 1 HP и три героя стоят на нём, они все его ударят, добавив 6 маны. Это так?
Uljahn: должно быть так
wlesavo: Chibikko в правилах тоже написано что мана дается даже если хп в минус ушло
Uljahn: Automaton2000: лень гуглить, спрошу в чате
Automaton2000: я пока не понял как его применить к csb. и будут ли там использоваться И и Д. ну и может ...
dbf: wlesavo как симуляторная версия - есть прирост над ифами?
wlesavo: dbf не, нападение пока почти не писал еще, отлаживал защиту, но защита удовлетворительно работает, как нападение заведется уже можно будет думать о приросте)
wlesavo: ну и я щиты и контроль пока не особо добавил в симу, надеюсь ближе к золоту хотя бы это закончить, и там остальные плюшки на штурм легенды пойдут
Uljahn: против бот-хайдинга защита будет работать? https://www.codingame.com/replay/624251262
wlesavo: Uljahn теоретически да, но еще не скоро, без трекинга мало шансов, у меня пока много других насущных проблем)
aangairbender: что такое бот хайдинг?
wlesavo: но у меня границы патрулируются нормально, я думаю что вайлд мана не так важна
wlesavo: чтобы базу без защиты оставлять и фармить идти
Uljahn: не сабмитить бота с крутыми фишками на арену (hide - прятать)
Uljahn: бластерпорд периодически реплеи из IDE вбрасывает в общак, но бота не сабмитит, подогревает интерес
Uljahn: соответственно, остальные не могут контр-стратегии тестировать
Uljahn: а там, глядишь, кто и нейронку под занавес выкатит
aangairbender: я слышал кг хотели сделать защиту от бот хайдинга
aangairbender: но как это возможно хз
Uljahn: я тоже слышал, но на уровне слухов, - кто-то что-то прочитал на французском канале
wlesavo: это какие-то проблемы белых людей)
dbf: ага, нечего прятать - нет проблем :grinning:
wlesavo: у меня тоже своего рода хайдинг скрываю позорную версию :grinning:
Jokero: если не сабмитить, так в бронзе и будешь висеть, а там и тренить своего бота не с кем.
Jokero: можно ведь добавлять в соперника в IDE ток из своей лиги
wlesavo: можно засабмить, пройти в легенду, и опять засабмитить дамми версию
Jokero: ну это сразу палевно будет
tutubalin: не, ну зашёл в легенду, начал улучшать, засабмитил с багой из-за которой таймауты, потерял мотивацию
tutubalin: потом в последний день поднапрягся и сделал нормальную версию
wlesavo: ye yf cfvjv ltkt vj;yj ghjcnj rbkkth abxe jnrk.xbnm
wlesavo: ну на самом деле можно просто киллер фичу отключить
Jokero: хз, но эт реально, какие то "проблемы белых людей", тут хотя бы просто бы в легу зайти, хоть на каком месте)))
Uljahn: "просто в легу зайти" :rolling_eyes:
kda: на ифах)
Uljahn: без заклинаний
a1.dk: без любви, без жалости...
Jokero: имхо, в данном контесте симы будут хуже выглядеть, чем ифы. уж больно много вариантов для симы
Uljahn: не обязательно все возможные варианты рассматривать, можно ограничиться
Uljahn: и что вместо симы использовать? потенциальные поля?
wlesavo: можно взять лучше от эвристик и совместить это с симой, так что это слишком сильное заявление
Uljahn: расчёт траектории паука - это уже сима
Jokero: не, для меня сима, это перебор вариантов на несколько шагов вперед.
Jokero: а доползет ли паук до базы, если его будут фигарить один или два война это не сима
Jokero: в подлодка была сима чистой воды. нужно было все варианты просчитывать и выбирать наилучший
Jokero: *подлодках(и деревьях)
aangairbender: ну тот чел что 2умя героями побеждает за 80 ходов использует симу на глубину 6
Uljahn: предсказание возможных будущих состояний - это и есть симуляция, т.е. моделирование на основе текущих данных и истории, при этом у моделей может быть разная точность и детализация
Uljahn: можно конечно использовать 100% точный аналог рефери, но быстродействие может быть важнее точности
Uljahn: aangairbender: не всех за 80 ходов побеждает, некоторые упираются https://www.codingame.com/replay/624283053
Uljahn: тут видно нереализованный потенциал в защите
Uljahn: один защитник в углу пасётся, другие контролем в один и тот же угол засылают пауков
Uljahn: но и так уже почти получается двух форвардов изолировать от пауков
Xyze: а кто нибудь понял как работает округление от половин карты в итоге
Khao: x = x < world.x / 2 ? Math.floor(x) : Math.ceil(x), не?
Xyze: координаты независимо округляются?
Khao: кажется да
CyberEcho: В качестве origin передается центр карты.
Xyze: тогда у меня какая-то другая проблема
Xyze: у меня при пуше в правой верхней части получается координата на 1 больше чем говорит рефери
Xyze: по х только
Xyze: я грешил на округление, но я залез в дебаг уже
Xyze: и у меня правильное округление, но тогда какого фига в рефери там меньше
Xyze: мб в игре координаты float внутри?
Xyze: как в CSB было
CyberEcho: >>> мб в игре координаты float внутри?
Да, во float
Xyze: эээээээээ, а как
Xyze: а зачем
Xyze: а как я буду следить за этим
Xyze: а я тут страдаю, пытаюсь понять что не так
CyberEcho: Там при спавне монстров, скорость округляется: https://github.com/CodinGame/SpringChallenge2022/blob/63fe14ffec6931b374e6b32c1112fd7975d672a0/src/main/java/com/codingame/game/MobSpawner.java#L68
AntonBlockchain: карта и мобы c координатами во флоат)
CyberEcho: Но вот после WIND уже нет: https://github.com/CodinGame/SpringChallenge2022/blob/63fe14ffec6931b374e6b32c1112fd7975d672a0/src/main/java/com/codingame/game/Referee.java#L339
Xyze: дичь, спасибо
Xyze: ну придется опять колдовать с 2199 радиусами и прочую магию
Xyze: wlesavo сколько сим получилось?
wlesavo: 100-150к ходов
Xyze: я тут против тебя пару сыграл, не оставляешь маны на ветер, и иногда теряешь хп из-за этого
Xyze: и таймауты бывают
Sinkat: А это норм что у меня 3 босс ломается когда запускаю симуляцию?
wlesavo: да, знаю, контроль маны пока вообще плохой и таймаутов много, не разобрался еще
wlesavo: только вот сабмитнул глянуть куда приземлится вообще
Xyze: я играю на 10 мс
Xyze: у меня 40-50к в среднем сим
Xyze: но я еще ничего умного не делаю
Xyze: надо больше времени
wlesavo: у меня иногда одиночнык странно пауки игнорируются которых можно убить и они доходят до базы, хотя оценка в этом месте уже выкручена специально
wlesavo: и не понятно что такое
wlesavo: короче надо баги чистить, глядишь и заиграет
wlesavo: но кстати на сабмите не так уж и плохо, при том что отключил симуляцию нападения на меня, и игнорирую нападающего
wlesavo: мне кажется там либо баг, либо симуляция слишком хорошего мнения о сопернике :smiley:
wlesavo: у кови прикольная тактика) https://www.codingame.com/replay/624440326
Xyze: и не понятно что такое -> выведи себе в cerr результат проигрывания текущего хода
Xyze: и проверь что он реально видит, что ему щас пол кабины снесет
Xyze: у меня просто помогло, бот думал что ему ничего не будет за то, что паук просто у базы будет стоять
Xyze: а я тоже не понимал, оценка выкручена, а он бегает ману фармит
Xyze: ну а дальше только мб не хватает глубины
wlesavo: Xyze да я проверял, там именно с действиями противника свзяано похоже, с отключенным нападающим таких приколов вроде нет
wlesavo: о, проверки на ману были косячные, в правильных местах добавил гораздо чище играть стало https://www.codingame.com/replay/624467885
wlesavo: но с противником все еще плохо взаимодействует
aangairbender: wlesavo а ты в симе еще и валидацию делаешь?
wlesavo: ага, приходится, я представляю как без этого сделать, но там архитектуру менять немного придется
aangairbender: я так понимаю есть 2 варианта: валидация внутри симы или валидация во время генерации ходов
aangairbender: просто второй вариант работает как отсечение невалидных по сути
aangairbender: блин все равно смотрится классно, аж мотивация поднимация себе написать
aangairbender: а у тебя что за поиск там если не секрет?
aangairbender: у меня блин 8 действий прописаны, каждое под ифом, выбирается первое которое прошло иф. И это уже топ100
wlesavo: aangairbender я валидирую при генерации, но у меня там сделано так что сначаала все генерируются а потом выбираются, но если ману так еще можно завлидировать, то с расстояниями проблемнее
wlesavo: поиск у меня просто раздельный MC, сначала ищу защиту противника, потом с учетом действий защиты свое нападение, потом нападение на себя и потом на оставшееся время свою защиту
Xyze: зря ты до легенды пошел противника симулировать
Xyze: ну или до топ 20 золота
wlesavo: ну вот я пока и отключил его, без этого лучше играет
Xyze: я пока собираюсь оценкой прикрыть отсутствие симы противника
Xyze: а потом как пойдет
wlesavo: но щиты придется видимо захардкодить
Xyze: а что с ними не так?
wlesavo: ну если я полностью игнорирую соперника тяжело от контроля защититься
wlesavo: так то в симе они нормально вешаются
wlesavo: я думаю ближе к золоту с этим разбираться, пока еще много идей более действенных и нужных
Xyze: я собираюсь доделать полную симу, потом отправить одного чела в угол, и играть только на 2
Xyze: как проверка на эффективность защиты
Xyze: ну и разрешу все скилы, соответственно
wlesavo: я так и делал тоже, одним просто ману фармил
AntonBlockchain: Количество маны в ручную надо считать?
wlesavo: приходит, но если ты про вайлд ману то да, только самому тречить пытаться
aropan: А зачем ее считать?
wlesavo: тоже не знаю
aropan: Чем больше тем лучше пока не проигрываешь по жизням.
aropan: А про соперника все равно инфа нет (про вайлд ману).
a1.dk: @wlesavo https://www.codingame.com/share-replay/624642995 чтобы меня по мане переехать XD
tutubalin: я вот кстати тоже думал, что вражеского пушера надо себе на базу загонять, чтоб он тоже дефил
aangairbender: вот только как только у тебя спадет щит он кинет ветер
aangairbender: герой улетит, а пауки с щитом останутся
Uljahn: https://www.codingame.com/replay/624663242 лол
input.txt: он его из-за края карты закинул?
Uljahn: угу
input.txt: читы
input.txt: забанить
Uljahn: в принципе, логично, что ушедшего паука можно задуть или законтролить обратно на поле
mihei: какая-то ленивая релизация, по идее вышедшие за карту должны исчезать сразу же
input.txt: прикол в том что мобы за картой в инпуты не приходят
Uljahn: но пауки же появляются вне пределов, там какая-то зона спауна
input.txt: (мем про пауков под зельем невидимости)
mihei: и threatFor же все еще срабатывает если пересечение с базой происходит за границей карты?
tutubalin: When targeting a base, a monster will move directly towards that base and can no longer leave the map.
Uljahn: надо issue на гитхабе проверить
tutubalin: У меня была мысль - выталкивать пауков за карту, но в области 5000 от вражеской базы
input.txt: * Players are not given the coordinates of monsters outside the map.
mihei: из-за этой фигни придется threatFor игнорировать и пересчитывать точку пересечения, аштрисет
Anto_Gl: Что если вывести паука за пределы карты, а после направить его контролем на базу оппонента?
tutubalin: если он не в области базы, то исчезнет
Uljahn: https://www.codingame.com/replay/624615524
Anto_Gl: If a monster comes within 300 units of a base at the end of a turn, as long as it has not been killed on this turn, it will disappear and deal the base 1 point of damage.
Uljahn: с 26 фрейма внизу за границей
Anto_Gl: Да, значит их нужно постоянно направлять
Uljahn: в дискорде зарепортили, админы обещают завтра посмотреть, что можно сделать
CyberEcho: Там же границы 800 единиц вокруг видимой области карты, поэтому ничего удивительного.
Uljahn: костыли наносят ответный удар
BorisZ: https://www.codingame.com/replay/624679266
BorisZ: с 71 хода красная база
input.txt: этот контест называется "война с багами"
Uljahn: а чё там? ветром прижало к границе?
BorisZ: я честно говоря думал что за границу базы он выйти не может - значит будет скользить
wlesavo: BorisZ 156 ход, тоже словил https://www.codingame.com/share-replay/624658280
Uljahn: пауки к границы базы прилипают, а не скользят
Uljahn: *к границе
BorisZ: игрек координата в максимум а икс будет меняться
wlesavo: а можно поподробнее это баг или фича?
Uljahn: хм, а тут не граница базы
Anto_Gl: Видимо нужно не на саму базу дуть, а с отступом в 1 например в (1, 1)
Uljahn: сыроват контест, и это после минимум двух закрытых бета-тестов (хакатонов)
Anto_Gl: А бывали контесты без багов?
BorisZ: wlesavo у тебя то всяко баг - явно написано что вышел за границу == пропал
BorisZ: а внутри базы написано что не пропал )
Uljahn: с такими багами я помню только один контест - Botters of the Galaxy
input.txt: раньше было лучше..
Uljahn: надо репортить, пока админы настроены разбираться и фиксить
BorisZ: совсем без багов наверное не бывает программ
BorisZ: здоровых людей не бывает, есть только недообследованные
wlesavo: вообще про прилипание это бред конечно, я на 100% был уверен что скользить должен
Uljahn: наверное, так можно дальнобойные задувания ломать: сдувать перпендикулярно к ближайшей границе, чтобы суммарный вектор вызывал прилипание
aangairbender: там в рефери специально if чтоб если моб за картой пришел к базе, то чтоб он ушел
aangairbender: на счет прилипания, то моб не двигается если в этот ход на него применялся ветер
aangairbender: все логично и по правилам
aangairbender: просто видимо паук сам выйти за границу может, а вот ветер толкает только до границы и все
Uljahn: я думал, ветром за границу не выталкивает только на базе
aangairbender: https://github.com/CodinGame/SpringChallenge2022/blob/main/src/main/java/com/codingame/game/Referee.java#L502
aangairbender: там кусочек обработки ветра, никаких условий о гранце нету
aangairbender: аа baseWallIntersection наверное должен как раз это проверять
aangairbender: хмм, он это и делает, странно
aangairbender: наверное баг вот в этой строчке https://github.com/CodinGame/SpringChallenge2022/blob/main/src/main/java/com/codingame/game/Referee.java#L507
aangairbender: там незвасимо от база или нет итоговый destination делается snapToGameZone
BorisZ: может быть действительно фича а не баг
BorisZ: проще поправить у себя
BorisZ: немножко векторной алгебры и мешочек ифов
BorisZ: или забить
wlesavo: я пока думаю забить)
aropan: Я threatFor сам пересчитываю после того как вот этот баг словил https://github.com/CodinGame/SpringChallenge2022/issues/7. Но пока его не пофиксят не знаю правильно ли я считаю или нет. )
tutubalin: в связи с ивентом похоже и рейтинг клешей обнулили
tutubalin: типа новый сезон
tutubalin: а, не :) это у меня фильтр по стране был включен
FeZar97: агрессивные стратегии с кумулятивным задуванием паук+союзный юнит на вражескую базу это конечно жестко)
wlesavo: ага
Xanrum: "After a hero's move phase, any monsters within 800 units will suffer 2 points of damage." А это правило точно работает? иду рядом с пауком - пересчитываю на калькуляторе - 780, 3 хода рядом прошел - не бьет
Xanrum: https://www.codingame.com/replay/624922076 130 ход
Xanrum: https://www.codingame.com/share-replay/624927373 146 ход
MrKIP: 130 ход 6 хп 131 2, ударили оба, не?
MrKIP: начиная со 129 по 4 хз сносит
Xanrum: монстр 96, справа снизу
Xanrum: там пару ходов рядом прошел и не ударил
FeZar97: Action order for one turn: http://chat.codingame.com/pastebin/d6d734a2-eeca-4dac-8efc-70129fff68ce
FeZar97: может в этом дело?
FeZar97: у тебя получается после всех мувов расстояние около 780, а надо чтобы на 5 шаге было <= 800, не?
Xanrum: я думал сначала все ходят, а потом урон рассчитывается : (
MrKIP: мда...
Xanrum: теперь понятно почему если два паука бегут друг за другом, герой вроде ближе к заднему, а урон получает только передний
Xanrum: а зачем нужно правило дикой маны? почему нельзя было судить по количству оставшейся маны?
FeZar97: надо заставлять игроков выходить с базы, а то не будет взаимодействия)
Xanrum: так и без этого правила будешь выходить с базы - что б больше маны получить. Но кто меньше тратил маны - у того больше очков
Xanrum: а так трата маны на очки не влияет
FeZar97: было бы прикольно, если бы количество фармящейся wild маны еще зависело от расстояния от союзной базы, типо чем дальше от базы ты фармишь, тем больше очков получаешь, но при этом ты не должен делать медвежью услугу врагу и защищать его базу от пауков
FeZar97: твой сценарий больше про игру от дефа, а тут интерес и сложность в взаимодействии на поле
Valdemar: Xanrum тогда бы выигрывали стратегии глухой оборны, которые тратят минимум и сидят на базе