Chat:Ru/2020-04-02

From CG community
Jump to navigation Jump to search

miklla: хм, код с дерева, когда пофиксил краш от нераспознанных минах в инпутах, сразу попал в серебро

miklla: один с из самых длинных кодов для выхода из дерева, аж 500 строк :)

735487: miklla: это еще боссов понерфили. сначала в вуд 2 был босс который тебя вычислял и убивал

Uljahn: miklla, gratz. это код детекта противника по хп такой длинный, или как ты так быстро пробился?

amurushkin: печаль беда. добавил к каждой точке по массивчику с траекторией и код уже таймит когда их всего 400

WwW: ребят, спасибо огромное тем кто мне тогда помог! я немного пофиксил код и теперь я на 48 месте

wlesavo: мне тут вообще чуть помогли и я на первое попал)

wlesavo: сила чатика

WwW: ага))

Alex.swift: сакцесс стори) а я вчера пофиксил баги в коде и вот я на 150

amurushkin: а у меня наоборот не получается нифига :)

Uljahn: а баги все пофиксил?

amurushkin: добавил отслеживание пути и теперь отсекает намного лучше но блин теперь таймит )))

Alex.swift: ну так то до этого я тоже на 40 был))

wlesavo: Alex.swift я сейчас баги чищу и в селфплее проверяю, чтобы не ухудшилось, у меня как раз сид от id приколочен, смотрю симметрию

amurushkin: у меня теперь так https://www.codingame.com/share-replay/444578321

Alex.swift: на столько слился с багами, что они начали мне помогать

wlesavo: amurushkin лол

wlesavo: на сколько я знаю все вообще прунят против сайленс спама, но обычно от нескольких тысяч

amurushkin: так вот и я не пойму. там 200 путей всего

wlesavo: может ты по всем путям где то проверку делаешь вместо того чтобы по головам только

amurushkin: делаю. у меня так лучше стреляет и мины лучше взрывает. но до того как я добавил отслеживание пути оно работало то и с количеством 20000

wlesavo: откуда 20000 без пути?

amurushkin: https://www.codingame.com/share-replay/444581685 вот старый код на том же сиде прекрасно играет.

amurushkin: после кучи сайленсов с плохими отсечениями у меня и до 400к догоняет

wlesavo: в смысле, если ты хранил только координаты, то зачем дубликаты хранить?

wlesavo: если уж так хочется можно просто головам вес приделать в зависимости от количества путей, и с этим весом прогонять, в остальном дубликаты же смысла не имеют

wlesavo: а я решил переписать поиск пути из рекурсивного в обычный цикл и насыпать туда чуть чуть нумпай

amurushkin: дубликаты я хранил чтобы точнее посчитать сколько путей проходит через конкретную точку. ну и сразу планировал добавлять еще посещенные точки в эту структуру

amurushkin: фишка то в том что без отслеживания пути там намного больше точек и все успевает.а с ним точек меньше и не успевает ))

amurushkin: прийдется мерять походу

wlesavo: ну да, так просто врядли заработает

amurushkin: экспериментально выяснил что тормозит процесс удаление отсеченных точек ))

amurushkin: блин там сегфолт был оказывается. странно что перестали писать что код упал а не по времени затаймил

amurushkin: опять дебажить )) теперь он теряет и себя и противника ))))

Alex.swift: Ocean of Bugfix

wlesavo: amurushkin кстати да, часто не очевидно

amurushkin: раньше в других играх писало что сегфолт и все тут

wlesavo: охренеть, переписал с рекрсивной реализации на цикл, стало в два раза медленнее

735487: когда не учитываю прошедший путь то не теряю ничего )) правда и смерживания пока нет как надо

735487: wlesavo: прикол. обычно наоборот бывает

wlesavo: вот да, странно

wlesavo: блиин, нашел косяк, рассчет карты дамага один из самых долгих процессов не хранил результат, а дважды вызывал

wlesavo: ато и 3 даже, ух заживем ща

Alex.swift: wlesavo а через что ты батч запуски делаешь?

wlesavo: через сабмит :grinning:

wlesavo: скажу по секрету

wlesavo: я пишу код в ide

Alex.swift: not bad) ладно, поставлю фатал ерор на ситуацию, которую хочу воспроизвести чтоб быстрее найти и засабмичу :grinning:

wlesavo: Alex.swift ну да, и потом реплеи проигранные смотреть, а я наконец вычистил таймауты получается, ща тож заресабмичу

wlesavo: таки прилично их было

Alex.swift: за 40 очков перевалишь?)

amurushkin: блин и вот что мне теперь все пути принтить чтобы понять где косяк )))

wlesavo: я принчу головы тех которые выбрасываю, и смотрю когда выбросил настоящего

amurushkin: идея. спасибо

YurkovAS: Alex.swift батч запуски можно сделать так: в рефери есть юнит тесты, можно там модифицировать под многопоточность и запуск поменять на "GameResult result = gameRunner.simulate();" - чтобы без ui запускалось.


wlesavo: таки остались таймауты но конкретно против mchl чтото он такое делает

wlesavo: то ли он максимизирует возможные позиции для мин то ли что

amurushkin: пора переписывать на плюсы?

wlesavo: но с ним даже при небольшом числе мин и противников 40мс на карту урона тратится

Alex.swift: YurkovAS это если локально ранить или в ide где-то тесты есть?

wlesavo: ну ладно, зато обратно в топ 1

wlesavo: Alex.swift локально думаю через рефери

YurkovAS: Alex.swift я открываю в ide (Intellij IDEA) и запускаю метод в Main.java: public static void main(String[] args). Есть еще brutal tester, но что-то у меня не получалось последние игры в нем запускать. Сделал запуск из юнит тестов.

amurushkin: ахаха у меня сайленс умеет сквозь острова когда точки считает ))

Alex.swift: и сквозь свой путь?

Alex.swift: YurkovAS, понял, спасибо. До настройки рефери локально я пока тоже не дошел) просто синкаю файл из локальной ide

YurkovAS: Alex.swift вот там у меня: https://pastebin.com/BVT6Aqg1

YurkovAS: Alex.swift поменяй еще gameRunner.setLeagueLevel(3);

Alex.swift: это нужно репоз с кодом игры спуллить, сфетчить зависимости и запустить код с листинга в тест таргете?

amurushkin: оказалось что неправильно помечал путь при сайленсе. теперь стало так на том же сиде https://www.codingame.com/share-replay/444620138

YurkovAS: Alex.swift да, собрать проект в ide и потом из ide запустить метод public static void main, там кнопочка напротив названия метода появится.

Uljahn: wlesavo: "а я решил переписать поиск пути из рекурсивного в обычный цикл и насыпать туда чуть чуть нумпай" - обычно это не самая лучшая идея, т.к. потенциально огребаешь под капотом оверхед в виде преобразований из numpy-типов в питонячьи и обратно, но надо конечно тестить

Uljahn: лучше всего всё делать в numpy или всё в питоне

wlesavo: ну я понимаю, но без нумпай там тоже так же просадка в два раза

wlesavo: проверил уже, думал может в этом дело

Alex.swift: 10 сабмитов подряд выиграл mchl из-за правила "не юзать сайленс если я точно знаю где враг"

amurushkin: а как это вяжется? типа на добивание его оставляешь?

Alex.swift: если он рядом стрелять в него и уплывать сайленсом + можно сделать фаталити если жизней мало уже

wlesavo: надо будет проверить

wlesavo: можно вообще сайленс на выстрелы оставлять

amurushkin: блин я теперь видать мержу плохо пути. теряю противника :(

wlesavo: бгг 80% против кови

Alex.swift: siman догоняет по скорам

Alex.swift: а нет, неудачно ресабмитнулся)

amurushkin: забавно у меня еще и острова посещаются ))))

amurushkin: во теперь больше похоже на правду. а то видители он по островам ездит пока я не вижу :)

735487: 16 игра с pb4 это или высоко сразу прыгнул или он ресабмитит :)

735487: ох етить 9 место на 15%

amurushkin: вот что значит сайленс отсекать более правильно

wlesavo: неплохо неплохо

amurushkin: заявочка на легу :)

amurushkin: это я еще мины не трекаю совсем и ходы на 1 глубину без финишера. добавляет оптимизма

Uljahn: другое дело, когда без багов-то

amurushkin: тут еще фишка в том что отсекаю теперь ходы лучше за счет трека пути

wlesavo: еще сайленс с N0 переписать)

metahom: amurushkin, крутяк :metal:

amurushkin: не устоял в 10 )) под конец дофига проиграл

amurushkin: wlesavo чтобы сайленс переписать это надо делать выбор пути. пока пусть так.

wlesavo: amurushkin ну вроде не один я таргечу сайленс 0, хотя первый прыжок не на 0 точно помогает

wlesavo: мне кажется если бы кови прикрутил два прыжка на не 0 у нас бы сразу 50/50 стало

amurushkin: я пробовал добавить первый не на 0. в связи с тем что у меня это особо никак не оценивается получилось хуже и я убрал

wlesavo: потому что так у меня таргетинг работает отлично против него

wlesavo: запушили до 39 почти)

wlesavo: нормально так

Uljahn: жесть какая-то в топе

metahom: сижу не знаю за что браться. вроде все нужно делать. и на все столько времени...

MadKnight: в рашке продлили до конца месяца карантин

metahom: прикольно. опять за счет работодателя

Uljahn: трекинг противника сделал?

metahom: я? ну не идеальный, но пока не буду трогать

metahom: на мерже позиций бывает хватаю баг

metahom: мне нужно сделать: тактику боя (пока я просто хожу и стреляю когда могу), трекать себя, обходить мины, как-то сбалансировать заряд возможностей, юзать сайленс осмысленно.

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

amurushkin: MadKnight почему ты свою Родину обзываешь?

wlesavo: metahom у меня тактики боя так и не появилось, сначала была, но я отказался совсем от нее быстро

MadKnight: amurushkin а почему нет?

MadKnight: amurushkin ты тролишь или серьёзно?)

amurushkin: я серьезно. почему ты не уважаешь свою страну?

MadKnight: она не моя

amurushkin: а где твоя?

MadKnight: у меня нет своей страны

amurushkin: ни страны ни Родины?

MadKnight: мне надо уважать страну только потому что я там родился?

metahom: amurushkin, за что ее уважать?

Uljahn: потому что в мемесах так принято

Uljahn: ой, чат фризанул

metahom: wlesavo, почему? я просто по своим реплеям смотрю что дофига игр проигрываю

Uljahn: бери любой проигрыш и фикси, пока не начнёшь выигрывать :)

metahom: Uljahn, ахах, я так часто делаю. обычно ни к чему хорошему не приводит )))

Uljahn: очевидно, зад увяз, когда голову вытащили

amurushkin: MadKnight давай попробуем от обратно. за что ее не уважаешь?

Uljahn: amurushkin: моей родины как страны уже не существует, например. только если малая родина

amurushkin: Uljahn у меня тоже Родина СССР. а государство в котором я сейчас живу не выполняет полностью свои функции. но почему люди не довольны Россией мне тяжело понять

metahom: amurushkin, войны, воровство, разрушенное ВСЕ, убийства невиновных

Uljahn: потому что так в мемесах принято

wlesavo: metahom ну я не смог адекватно совместить разные минимизации и тактику, из тактики только фаталити и все

metahom: потому что масок медицинских в

Uljahn: ну и да, слов много, а реальных успехов нет

metahom: не достать уже месяц, а путлер их в США продает

Uljahn: у руля сплошные непрофессионалы

metahom: давайте закончим про политику, а то это больная тема

metahom: wlesavo, а фаталити это что?

amurushkin: масок нет нигде. и в сша и европе в том числе

amurushkin: а мы разве про политику? мы про страну и Родину :)

wlesavo: metahom когда точно знаешь что можешь убить в этот ход убиваешь

wlesavo: о, точно, знаю что надо делать, надо делать антифаталити

metahom: )))

wlesavo: а не, тыж кулдаунов не знаешь

amurushkin: тут есть обратная сторона медали. если противник его не найдет то ты можешь себе навредить

wlesavo: только по хп и трекеру не очень

wlesavo: хм, можно кулдаун рокеты и сайленса оценить у противника впринципе

wlesavo: короче надо подумать реально, может и норм идея

metahom: amurushkin, в Европе есть маски в больницах. у нас врачей заставляют самим из марли шить.

metahom: а путин их втихую распродает

metahom: wlesavo, ну логично что все заряжают торпеду в первую очередь. опять же раньше чем через через 3 мува не выстрелишь

wlesavo: да, можно заключить что если прошло 9 ходов то у противника есть и сайленс и торпеда

Alex.swift: а как торпедами лучше стрелять, когда точно задеваю или норм даже если просто вероятность попасть неплохая, процентов 50?

amurushkin: http://chat.codingame.com/pastebin/c8e83297-60b6-48cc-8462-774326355b99

metahom: "если бы не Путин уже бы и страны не было давно" - извини, но это бред

metahom: страны после Путина не будет, потому что все разворовано, отношения со всеми испорчены

metahom: больниц при нем стало в 2 раза меньше. и школ. заводов сколько позакрывалось - не счесть

Valdemar: Alex.swift тут подбирать надо, с одной стороны выстрелы тебя выдают, с другой пока колеблешься и не стреляешь соперник мочит тебя торпедами

metahom: а винить одного человека - не одного, конечно. их много. но главный виновник - тот кто отвечает за все

metahom: про "подрывную деятельность в государстве" - это как раз про путина и его дружков. сколько денег украдено и утащено зарубеж. никто ничего не делает для страны, только в карман и свинтить. а путин все это покрывает

metahom: я выхожу на улицу и вижу разруху.

Valdemar: я порог использую, пробовал поднять, против кого-то играет лучше, потому что не выдает себя, но сливает предыдущей версии, потому что получает 1-2 пули до того как начинает стрелять

metahom: все, я заткнулся

metahom: накипело :)

Alex.swift: Valdemar а по какому критерию порог меняешь? Я что-то все-таки без выстрелов наугад сильно уехал, хотя пока-что только 1 сабмит попробовал

Valdemar: порог константа, просто так поставил

Valdemar: 0.6

Valdemar: возможно, потюню кучей локальных игр, но мне кажется это не так важно

Valdemar: пока просто визуально. с поднятым слишком редко стреляет, не понравилось

Uljahn: наугад лучше не бить, либо бить, когда на детект со стороные противника не влияет

Uljahn: а то часто получается - бьёшь на единичку (рядом попал), соперник тебя детектит и бьёт на 2, и дальше всё, гг, тебе противника надо ещё минимум три раза поразить, а ему только два

Uljahn: это с полными хп когда

Alex.swift: пока-что лучше всего отиграл критерий: если задеваю больше половины

metahom: блин, я бью если вероятность попасть 0,2 для мины, и 0,4 для торпеды

Uljahn: мины-то ладно, они не так тебя выдают

metahom: надо попробовать прикрутить

BorisZ: черт опоздал к политсрачу, теряю чуйку (

BorisZ: 1) хорошо там где нас нет 2) у кого ресурсы, на том и ответственность

BorisZ: все, политсрач закончен, всем спасибо )

Uljahn: 3) государство не просило вас рожать

metahom: Uljahn, почему мины не выдают? у них радиус постановки меньше

metahom: если их много наставлено - наверное не так. а в начале игры выдают не хуже, я думаю

amurushkin: в начале их и не взрывают

Valdemar: взрыв мины выдает, но мне кажется у большинства это не реализовано

Valdemar: у меня, например, нет)

MadKnight: amurushkin а говорить рашка - это неуважение?)

735487: я считаю что да

Valdemar: в общаке msmith рассказывает про трекинг по минам

Valdemar: запишу в todo на реализацию)

wlesavo: как ктото правильно заметил, используя для зондирования мины, ты даешь информацю о том что тебя в этих 9ти точках тоже нет + информацию о том что ты там когда то был, то есть чисто с точки зрения информации это себе в убыток

Valdemar: да, но кажется это полезно в начале игры, когда путь не большой

wlesavo: взрывать в начале или трекерить? взрывать наоборот много информации вначале даешь

amurushkin: что то мой код который в топ 10 забегал уже не дает таких результатов :)

MadKnight: а я считаю это лишь отсутствием твоего уровня гордости за страну

MadKnight: отсутствие гордости != неуважение

Valdemar: wlesavo да, я имел ввиду, что такой трекинг в начале игры больше влияет

Alex.swift: интересно, в голд тоже 200 сразу возьмет?

Valdemar: надеюсь хотя бы 100, а лучше 50

735487: я думаю 150 будет

Valdemar: когда тяжело в следующую лигу пройти это мотивирует)

Valdemar: amurushkin я доработал бота, засабмитил, уехал с 35 на 65

Valdemar: думал как так, неужели в среднем плохо играет, ресабмитнул старый код, попал на 80 значит все в порядке)

wlesavo: о, уже же завтра голд

Uljahn: очень много свежака в топ заехало

Valdemar: для чистоты надо старый код ресабмитить, чтобы понять его реальное место

Uljahn: вот и потеснили

Valdemar: все как в пиратах прям

Valdemar: только туман войны мешает

wlesavo: Uljahn по моему те же лица пока

Uljahn: ну, значит, все ресабмитят, перемешивают лидерборд

Uljahn: Hamibar'a запушили что ли

735487: Valdemar: у меня просто через полтора часа это уже случилось

wlesavo: хехе, ускорил рассчет карты дамага в несколько раз

735487: ты имеешь ввиду от мин?

wlesavo: да

735487: у меня пока нет такой ))

735487: вот думаю стоит учитывать предполагаемый путь противника для своего движения или нет

wlesavo: ну просто это был самый медленный кусок, теперь я сначала посчитал дубликаты с весами правильными, а потом уже один раз сложил. помнится я сначала так и хотел, но подумал что будет медленнее

wlesavo: точнее еще сначала хотел просто сетировать

wlesavo: без весов

wlesavo: а ща решил словарь таки составить и посмотреть будет быстрее или нет

wlesavo: если раньше бывало часто за 40 переваливало , сейчас максимальное 15, а среднее вообще 2-3 секунды, так можно и за картой оппонента следить для оптимизации расстановки мин

metahom: у меня с взрывами с небольшой вероятностью попасть все равно лучше получается

735487: там все зависит от того как считать. у меня сначала тоже так было. а потом стал по-другому считать и заиграло с более высоким порогом

metahom: что именно считать?

735487: вероятность попадания

metahom: даже не знаю, как мне улучшить точность рассчета противника

metahom: ты когда мержишь позиции учитываешь сколько там штук внутри?

735487: я сегодня только сделал смерживание. оставляю только точки которые есть в обоих путях. что получается даже не проверял в результате

metahom: кстати да, точки я тупо из одного пути беру

metahom: я про то, что когда ты мержишь два пути в один - вероятность нахождения противника там в два раза больше чем в несмерженном пути. может это тоже учитывать стоит?

amurushkin: не факт наверное. если там через несколько сайленсов пересечения то вероятность не меняется я думаю

735487: я просто еще пути мержу когда их больше чем 20000. поэтому наверное у меня это очень редко вообще

metahom: надо попробовать. я мержу все что в одну точку приходит

metahom: опять все переписывать :(

Alex.swift: а какой лимит на вес исходников?

BorisZ: 100к раньше было, может уже добавили, не знаю

BorisZ: были случаи когда нехватало людям

BorisZ: если заморочиться то ужать то не проблема думаю

Alex.swift: ну я заблаговременно задумался, думал хранить 2 варианта трекера: со всеми путями и чисто с маской. Врага трекать со всеми путями а себя без них чтоб быстрее было + т. к. большенство игроков, думаю, без всех возможных путей это делают

wlesavo: metahom я тоже мержу все что приходит в одну точку

735487: вот это я сейчас обнаружил. что у меня сонар шпуляет не в тот сектор который хочет ))

735487: долго бы еще не знал если бы не увидел SONAR 10 ))

wlesavo: может поэтому без сонара лучше было? :slight_smile:

amurushkin: да наверное что он нифига не помогал :)

amurushkin: хотя я и сейчас не уверен что с ним хорошо

metahom: wlesavo, я тоже подумал, что если бы от этого были проблемы, у меня бы предсказание лажало. а оно почти уже не лажает )))