Chat:Ru/2020-03-28

From CG community
Jump to navigation Jump to search

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

BorisZ: в том же порядке что команды отдаешь

BorisZ: можно в одном туре дозарядить например торпеду и пульнуть

metahom: прикольно :)

metahom: а когда стреляешь/триггеришь, сначала взрыв или ход противника?

BorisZ: ты стреляешь или триггеришь в свой ход

BorisZ: рефери ходы не параллельно обсчитывает а по очереди

BorisZ: как в шахматах

metahom: ясно, спасибо

metahom: видимо показалось

MadKnight: smirok запилил?

metahom: MadKnight, а ты почему в контест не играешь?

MadKnight: да занят был

metahom: а будешь?

MadKnight: почему бы и нет

MadKnight: а у тебя как успехи?

metahom: ничего не получается :)

MadKnight: почему?

metahom: вот пытаюсь понять

MadKnight: типа код не работает?

metahom: да нет, много надо всего апгрейдить. и не понимаю, что делать если противник активно сайленс юзает

Uljahn: мины ставить, потом минами и сонаром отсекать, не?

Uljahn: на сники много зарядов уходит, т.е. активный сайленс == мало мин

metahom: наверное да. но сонар отсечет 1/9 вариантов (если не угадал). мина и того меньше

amurushkin: metahom: на самом деле если следить за его путем и где он может быть то сонар отсечь может намного больше да и мина тоже

metahom: наверное да. надо сонар подключать

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

BorisZ: меньше мин получается видимо хз

BorisZ: мины всех не только отсекают но и урон наносят

metahom: топы активно сонар юзают

amurushkin: я сонар в итоге отключил. мины лучше выходит

BorisZ: угу, я тоже - обработку оставил, но не заряжаю нафиг

metahom: как-то это сложно получается. что качать, в каких ситуациях

metahom: опять куча ифов

BorisZ: угу та же проблема, надо будет потом серьезно думать, разбирать по ситуации текущей

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

amurushkin: заряжай стрельбу всегда первой чтобы было готово в любой момент

metahom: столько всего писать что руки опускаются

gybson_samara: и не говори

wlesavo: я тут понял что часто стреляю после сайленса

metahom: и обидно что первые выхи пропустил, все уже далеко вперед ушли

MadKnight: Uljahn

MadKnight: я могу в питоне из tuple'ы взять по индексу элемент?

Uljahn: да

Uljahn: тупл как список, только иммутабельный

Default avatar.png Batya_S1: парни скажите как создавать нейронки если нельзя сохранять значения массивов в песочнице

Uljahn: создавать локально, загружать веса в код

MadKnight: на локалке

MadKnight: Uljahn если я хочу обрезать последний символ, то надо делать str[:-1] или -2 ?

Uljahn: :-1

MadKnight: а если хочу взять последние 2 символа?

MadKnight: [-2:] ?

Default avatar.png Batya_S1: не совсем понял 'на локалке'

MadKnight: на компе домашнем

MadKnight: запускать код

MadKnight: и игру

Uljahn: Мэд, правильно

MadKnight: не на сервере

Default avatar.png Batya_S1: а как это сделать

MadKnight: а на каком языке ты пишешь?

Default avatar.png Batya_S1: питон

MadKnight: ну запускать питон на компе

MadKnight: и скачать referee

MadKnight: исходники игры всмысле

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

Uljahn: угу, рефери

amurushkin: а разв не [:-2] ?

MadKnight: да не обязательно на питон переписывать, просто запустить надо

Default avatar.png Batya_S1: ща поищу

MadKnight: смотри, тебе нужен скрипт

Uljahn: amurushkin: это до препоследнего

Uljahn: *пред

MadKnight: который будет запускать движок игры и твоего бота дважды

MadKnight: за обе команды

MadKnight: и всё это в огромном цикле

amurushkin: а точно

MadKnight: а в конце - сохранять что тебе нужно откуда тебе нужно куда нужно

Default avatar.png Batya_S1: понял

MadKnight: ну или на локалке ты уже можешь с файлами работать

MadKnight: из бота прям

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

Default avatar.png Batya_S1: я скачал, какой файл необходимо запустить

amurushkin: wlesavo: если не секрет что у тебя цифры в MSG означают?

wlesavo: amurushkin s селфтрекинг и e противник

wlesavo: количество кандидатов просто

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

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

amurushkin: переделал детектилку по хп. теперь вроде все круто ищет

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

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

wlesavo: я могу выйграть против топ1 3 игры подряд например, но это мало достаточно значит

amurushkin: блин таки иногда теряет. надо дебажить :(

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

wlesavo: именно на временной шкале

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

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

wlesavo: в итоге я просто перебирал варианты и смотрел теряет или нет

amurushkin: я воткнул для врага после его действий. для себя после своих

amurushkin: надо теперь искать где теряет. как то резко с 12 до 0 бывает падает

amurushkin: после выстрелов зачастую. там что то не то наверное

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

wlesavo: ye tot j,yektybt ghfdbkmyj ljk;yj cnjznm

wlesavo: ну еще обнуления правильно должно стоять

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

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

amurushkin: вроде логично что свои делаю после всех своих действий а его после всех его

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

Hamibar: я на старте своего хода считаю сначала свой прошлый ход, а потом ход соперника

amurushkin: а почему надо после действий противника свои считать?

amurushkin: чтобы на свои предсказания реагировать быстрее?

wlesavo: потому что тебе в инпуте приходит урон с учетом действий противника и твоих

wlesavo: то есть отклик на твои действия и последствия действий противника

wlesavo: короче попробуй воткни просто фильтр в одно место

amurushkin: логично. пробую

amurushkin: норм пошло. только 2 поражения со старта

wlesavo: без таймаутов главное чтоб

Hamibar: такой баг нашел! я оказывается точки вычитал неправильно)

wlesavo: или ты нигде не делишь на количество кандидатов?

amurushkin: где то противника иногда теряю. надо искать баг

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

amurushkin: wlesavo: не так не делю нигде

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

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

wlesavo: я просто урон делю на число кандидатов

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

amurushkin: неплохо пошло. 20 уже. и это без фикса мин еще

amurushkin: на 22 завершил. лучше стало явно

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

BorisZ: у меня слишком активная разветка подрывами хуже играет

Hamibar: наверное потому-что разведка минами играет и против тебя

Hamibar: в смысле соперник тоже пользуется этой инфой

BorisZ: я ж не выдаю свою позицию при этом

BorisZ: я не придумал как это можно учитывать

Hamibar: ну как обычный взрыв

BorisZ: то что враг мину подорвал

Hamibar: если что-то взорвалось, но враг не получил урона - значит его там нет.

wlesavo: BorisZ выдаешь

BorisZ: это да, это простое рассуждение

wlesavo: не только, еще и по истории небольшое отсечение

BorisZ: но это децл совсем

BorisZ: вот по истории я пока не придумал отсечения

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

gybson_samara: до какой лиги я дойду просто всплывая реже оппонента?

wlesavo: вуд1

gybson_samara: для первого дня норм =)

wlesavo: и то не факт, с непонерфленным боссом не дошел бы

wlesavo: там он вполне неплохо вычислял и палил

amurushkin: а wlesavo придумал ))

wlesavo: ну у меня сейчас вполне неплохой мин эскейпинг, мне нравится

wlesavo: https://www.codingame.com/share-replay/443079796

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

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

Hamibar: я вот не знаю мне повезло или простая зарядка торпеды на ходу выстрела дала мне +30 мест

Hamibar: вы кстати стреляете рядом, если знаете, где противник но не можете догнать? или ждете момента для -2хп?

amurushkin: у меня сообщения опаздывают на 7 минут. нифига себе

wlesavo: Hamibar пока нет

wlesavo: всмысле не жду

Hamibar: я вот не знаю, надо попробовать)

amurushkin: Hamibar: я стреляю рядом если уверен что цель знаю где

amurushkin: блин офигеть таймауты стали появляться у меня

Hamibar: мб это баги) а не по времени

wlesavo: может изза сайленсов таки

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

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

metahom: блин, весь день пишу, на 50 мест поднялся

Hamibar: это еще хорошо

metahom: до 185 )))

Hamibar: бывает целый день пишешь и на -100 поднимаешься

Hamibar: выловил детский баг) написал == вместо =.

metahom: ну это тоже обидно :)

Default avatar.png Alex.swift: wlesavo а у тебя при сайленсе просто все возможные позиции добавляются в возможные или хранишь все возможные комбинации путей для того чтоб отсекать быстрее?

wlesavo: Alex.swift храню и мержу пути, фактически теряется часть информации, но зато очень хорошо по префомансу

gybson_samara: лол, был на 47 месте и неожиданно влетел в вуд 2

gybson_samara: в вуд1

amurushkin: еще топ багов у меня бывает x и y перепутан либо прибавлю и к x и к y иксы от другой точки

gybson_samara: бот команды выводит точно или может напихать пробелов для путаницы?

BorisZ: рефери тебе команды строго отформатированные дает если ты об этом

BorisZ: а если про то можно ли напихать самому пробелов и поймет ли тебя рефери то не знаю, не пробовал

BorisZ: если не поймет то сругается вроде - видно будет в дебакге

wlesavo: я видел что у некоторых есть пробелы перед "|"

gybson_samara: в копилку дурацких ошибок

gybson_samara: написал action_str.upper без скобок, получил не строку =)

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

BorisZ: сккладывались они что ли

gybson_samara: у меня тоже было такой, чт оисправление бага сильно уронило меня в рейтинге

gybson_samara: начал прикручивать гитхаб к вскоде

Hamibar: чем ближе к тому тем сложнее оценить стал твой код лучше или нет(

Uljahn: локальный гитхаб или приватную репу?

Uljahn: в смысле, наоборот

gybson_samara: ну изначально файл на моем компе

gybson_samara: а потом туда

gybson_samara: я пока не очень разобрался, до этого работал с системами контроля версий ms (хотя и гитхаб теперь мс) и 1с

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

Uljahn: *контестный

gybson_samara: Uljahn вроде приватный

gybson_samara: Uljahn как мне записать ходы противника так, чтобы потом по этому паттерну собрать информацию из массива

gybson_samara: ну типа там будет квадрат 3x3 и питон пробежится таким квадратом по массиву и выдаст сумму

gybson_samara: для каждого варианта расположения

gybson_samara: но фигура может быть сложнее

Uljahn: я сделал rolling window в numpy

gybson_samara: спасибо

Uljahn: беру большой пустой массив 40х40 примерно, начинаю рисовать траекторию противника из центра, потом обрезаю все пустые строки и столбцы - получается заготовка для rolling window, этой заготовкой прохожу по карте и проверяю, где траектория не пересекает сушу

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

Uljahn: от него надо ещё перейти в начало траектории, а от неё в конец траектории

Uljahn: это всё, что я пока придумал, сайленс не могу прикрутить, башка не варит :(

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

amurushkin: хехе когда у меня таймит то я храню 128384 путей. в то время когда они ужимаются в 40 точек

Uljahn: это разные пути или возможны дубли?

amurushkin: сделал компрессию. видать много инфы теряю. с 200к делает 80 ))

gybson_samara: мне кажется уже на 20 ходу положение должно быть очевидно

Uljahn: а сайленс?

gybson_samara: ну там 4 клетки в паттерне

gybson_samara: хз, считать надо

Hamibar: gybson_samara нее. Иногда и после 25 не понятно, если только муваться.

Uljahn: 4 клетки в три стороны

Default avatar.png Alex.swift: + вариант остаться на месте

gybson_samara: аааа

Uljahn: да

Default avatar.png Alex.swift: и так для каждого возможного положения в момент сайленса

Hamibar: Без сонара кстати лучше играется) не знаю как так получается)

Hamibar: Смог в 20 влезть

Uljahn: после всплытия так вообще во все 4 стороны

Uljahn: Hamibar: молодец, буду болеть за вас с wlesavo

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

wlesavo: не могу понять откуда

Hamibar: Ты лучше не болей а догоняй!

Uljahn: у меня лапки, как я догоню

wlesavo: сразу не сделал доп границу блин, теперь мучаюсь

wlesavo: все индексы не хочется смещать

Hamibar: У меня тоже пишу == вместо = :grinning:

wlesavo: мне отключение сонара не особо помогало вроде

wlesavo: мож потом еще раз проверю

Hamibar: wlesavo видимо у тебя хороший сонар

wlesavo: ну я пользую его только когда нормально информации может дать

metahom: а вы когда вычислили соперника догоняете его или продолжаете "гулять"?

Hamibar: я просто бегу к нему по пути который мне bfs дал

metahom: ясно, спс

Hamibar: Но на самом деле, эту часть надо улучшать

BorisZ: я продолжаю гулять

BorisZ: сам прибежит )

BorisZ: пока до него дойдешь - все поменяется сто раз

metahom: так обидно бывает, не добьешь, а он потом выигрывает

BorisZ: Но на самом деле эту часть надо улучшать)

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

BorisZ: не поспоришь

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

wlesavo: но сейчас прикрутил фаталити

wlesavo: у меня на весь код столько хардкодных ифов нет наверное

wlesavo: как на этот кусок

wlesavo: ща гляну че получится и проверю без сонара

gybson_samara: алгоритм рыскания закончил =) https://www.codingame.com/share-replay/443134422

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

MadKnight: теперь будешь рыскать?)

gybson_samara: ну пока да

gybson_samara: сегодня точно

metahom: а вы обходите мины??

Uljahn: если бы знать, где они стоят

wlesavo: я знаю)

Default avatar.png ДжБМ: а сегодня тоже есть стрим https://forum.codingame.com/t/stream-twenty-thousand-loc-under-the-c/168072/7?u=jbm

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

gybson_samara: очень прошлый эвент напоминает

wlesavo: кажись неплохой сабмит пошел, ща посмотрим че там

DenShlk: https://www.codingame.com/replay/443136103 33 фрейм, почему торпеда не запустилась?

gybson_samara: вообще смотрю на рейтинг участников чата и прям гордость берет меня за наш чат =)

Uljahn: DenShlk: остров мешает

Uljahn: торпеда плывёт по морю же

DenShlk: она обойти может

Uljahn: расстояние 4

Uljahn: максимум

Uljahn: это длина пути торпеды

DenShlk: аааа

DenShlk: я думал просто радиус

DenShlk: спасибо

Hamibar: wlesavo бросился в погоню за тобой)

wlesavo: ух ты, отошел покушать приготовить и топ 5

wlesavo: надо чаще готовить :slight_smile:

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

wlesavo: сейчас без него забрался

Hamibar: Но все равно стрелять надо бы пореже)

Hamibar: кстати избегать мест где был соперник выглядит как хорошая стратегия

wlesavo: ну как альтернатива трекеру мин да

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

Hamibar: хм убрал погоню. Вроде результат примерно такой же остался

amurushkin: тест. отправлено в 29 минут

amurushkin: у меня сообщения похоже не отправляются

amurushkin: 123

Hamibar: прошлое же отправилось с тестом

amurushkin: во внешнем клиенте я их не вижу (( сейчас с сайта пробую

Hamibar: есть какой-то клиент?

amurushkin: да любой который xmpp умеет

Hamibar: ааа, я думал клиент кодингаейма

amurushkin: тест из клиента

Default avatar.png Batya_S1: а где именно находится пакет package com.codingame.game

Uljahn: норм ты себе развлечение нашёл

Default avatar.png Batya_S1: просто бан

Default avatar.png Batya_S1: где должен referee находится,

Uljahn: я не спец в джаве, но вроде бы там надо мавен проект импортировать или типа того

Default avatar.png Batya_S1: а как ты локально запускал codingame

Uljahn: никак

Uljahn: думаешь, кто-то тут запускал?

Uljahn: мы просто знаем, что это потенциально возможно, но сопряжено с трудностями

StepanSmirnov: eulerSchezahl 100%

Uljahn: ну да, можно в общаке спросить

Uljahn: пока эйлер спать не ушёл

Uljahn: я про англоязычный канал

eulerscheZahl: or here in english language

Uljahn: euler: how do you run referee locally?

eulerscheZahl: you will need maven to import dependencies

eulerscheZahl: personally i use the intelliJ community version. you can do it from the command line too, but i don't know how

wlesavo: я тож запускал

wlesavo: )

Default avatar.png Batya_S1: в целом, как это сделать

wlesavo: скачай эклипс и импортируй игру как марвен проект

eulerscheZahl: https://www.codingame.com/forum/t/how-to-run-ocean-of-code-github-project-locally/168041/

Uljahn: wow nice

Uljahn: thanks euler

amurushkin: бляха почему внешний клиент не пашет?

Uljahn: c psi+ зашёл

Uljahn: и с pidgin

Uljahn: лагов нет

Uljahn: может, провайдер у тебя мутит чё? пакеты дропает?

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

Hamibar: https://www.codingame.com/replay/443231280 интересно. Подрывает мины на только на -2.

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

Hamibar: Эту часть я еще не придумал как улучшить

Uljahn: себя оцениваешь?

Hamibar: Вроде как эти подрывы на -2 не так тяжело реализовать

Hamibar: Я прохожусь по всем клеткам и смотрю на какой из них меня сложнее всего будет вычислить через 20+ ходов

Uljahn: я про текущий ход, количество твоих возможных позиций с точки зрения соперника

Hamibar: а это да.

Hamibar: Только сонар не сделал еще

Hamibar: Для себя

Uljahn: может, почаще сайленс юзать, когда их мало становится? или как у Мурушкина - при получении дамага

Hamibar: я так и делаю)

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

Uljahn: сайленс на 0 - плохая идея, мне кажется

Hamibar: это да :grinning:

Hamibar: но тут сложно.

Uljahn: эх, а у меня сил только на теоретизирование в чатике хватает

wlesavo: Hamibar у тебя фаталити есть?

Hamibar: нет

wlesavo: надо

wlesavo: хотяя бы оценивать можешь ли убить наверняка в этот ход

Hamibar: эта та часть, которую можно улучшить)

Hamibar: Но думаю для меня сейчас критично передвижение.

Hamibar: Я ведь просто дфс юзаю, пока не засеку противника

wlesavo: я сегодня делал как раз, потом проверил что реально много игр заканчиваются через фаталити, особенно со средними по силе противниками

amurushkin: у меня сайленс вообще на 1 вместо мува либо на 4 если после всплытия. полюбому надо улучшать но пока нет идей как

Uljahn: по сути вся игра - это создание условий для фаталити, перевес в информации, минах, зарядах, хп, диспозиции

Hamibar: Жаль нельзя мины все разом подорвать. Тогда точно фаталити

Hamibar: Еще можно в углу окопаться. Заминировать проходы, а потом начать палить по воздуху привлекая соперника:grinning:

Uljahn: а если не приплывёт? придётся всплывать

Hamibar: а если не приплывет, то не повезло.

Hamibar: у меня кстати стратегия не плыть к сопернику после его обнаружения плохо работает.

Uljahn: так надо мины тригерить

Hamibar: А, стоять на месте и тригерить?

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

Default avatar.png Alex.swift: фаталити, в смысле, когда у врага осталось 1-2 хп и его видно любой ценой плыть к нему и добивать?

Uljahn: ага

Uljahn: даже если всплыть придётся и заюзать сайленс

Uljahn: но это именно за один ход

Uljahn: некоторые так делают, ещё и в MSG пишут gg

Default avatar.png Alex.swift: а, у топ1 замечал такие мувы. Вообще тактика интересная, почти всю игру я точно вижу где он находится

amurushkin: я об этом думал еще в дереве но до сих пор не запилил ))))

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

BorisZ: это все вещи очевидные - у всех они будут через неделю

BorisZ: 22 до конца

Uljahn: не у всех :smirk:

BorisZ: все что мы пыхтим пишем сейчас - это прототипы, не более того

BorisZ: или заброшенные проекты (

BorisZ: я умею вдохновлять

Hamibar: на самом деле кажется, что 30 дней многовато.

Uljahn: летом было в самый раз, в жару, без фанатизма

amurushkin: для меня и сейчас в самый раз. работа же еще

BorisZ: да, мне 10 дневные тоже больше всего нравятся - если время удается выделить

BorisZ: интрига остается, времени достаточно, но тянуть тоже нельзя

BorisZ: а тут на неделю если отвлечешься - все, хрен потом вернешься, все вылетит из головы

Hamibar: да и устаешь/выдыхаешься

Hamibar: 30 дней думать какую бы фичу запилить)

BorisZ: вроде кажется что надо стремиться к минимаксу какому-то, с финальным добиванием или с оценкой

BorisZ: времени достаточно, всяко у лидеров к концу что-то такое будет

BorisZ: иначе все вничью будут играть к концу - количество тактических фишек ограничено

Hamibar: тут еще надо придумать как минимакс заюзать.

BorisZ: хотяб наивный на глубину 1 - перебор всех своих ходов и все ответы соперника с оценкой

BorisZ: хотя что оценивать если нихрена не известно о противнике )

BorisZ: ни заряды ни мины где стоят

BorisZ: может фантазии это конечно

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

Hamibar: Тогда наверное можно

BorisZ: а мины и заряды врага

Hamibar: Но я его никогда не писал, так что мое мнение не слишком обосновано)

BorisZ: может ты шагнешь на -2 хп в мину и торпедой влепят а может там и мины нет и торпеда не заряжена у врага

Hamibar: Ну примерно можно сделать

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

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

wlesavo: бгг, пока кто то ресабмитит аж на 3 закинуло