Russian AI Cup

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

Голосование

Нужно ли убрать возможность хардкода людей просто по playerName?

Да, нужно убрать playerName
- 44 (56.4%)
Мне всё равно
- 15 (19.2%)
Нет, оставить как есть, это полезная фича
- 19 (24.4%)

Проголосовало пользователей: 78


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

Автор Тема: Передача playerName для стратегий  (Прочитано 3285 раз)

Commandos

  • Jr. Member
  • **
  • Сообщений: 27
Передача playerName для стратегий
« : Декабря 14, 2016, 08:15:20 pm »

В общем вопрос видно сверху... Ещё во временя codeTanks в стратегию передавались players, в которых были ники игроков... Ещё тогда мне это показалось странным и ни разу не нравилось, мол "это же аи, зачем ники? конртмеры надо по ходу игры думать".

Собственно хочется узнать мнение других по этому поводу (сейчас это всё особенно актуально, до финала хардкод имеет мало смысла).

Лично моё мнение по пунктам:
1. Открывает возможность игры в "поддавки", когда 1 участник специально поддаётся другому для того, чтобы помочь занять последнему место выше;
2. Открывает простор для хардкода, чтобы с нулевого тика игры применять конртмеры, которые можно было просчитать во время игры (существенно упрощая жизнь для того, чтобы обыграть определённого "не нравящегося" человека);
3. По сути является весомой причиной сидеть за компом перед запуском финала раунда для того, чтобы быстро вхардкодить контрмеры против тех, кто вот прямо сейчас меняет что-то в стратегии под тебя, и оно тебя стало выигрывать (антихардкод на хардкод);
4. Возможность смены ника перед финалом - она есть, её можно в теории использовать и я не уверен, что если победитель сменит ник перед началом финала, ему что-то за это будет. И "по слухам" эту возможность использовали (сам не в курсе), точно хотят использовать и возможно кто-то так и поступит (я сам хочу, очень, чтобы не дёргаться перед полночью субботы), но всё таки это очень сомнительная вещь с т.з. спортивного поведения.
Записан

tyamgin

  • Sr. Member
  • ****
  • Сообщений: 181
Re: Передача playerName для стратегий
« Ответ #1 : Декабря 14, 2016, 08:31:46 pm »

Я тоже ЗА то чтобы убрать playerName. Или чтобы не ломать обратную совместимость - заменить на рандомный во время финала.

У меня стретегия 1/2/2 с адаптивным переходом в начале игры (по ситуации).
Точно знаю что у Commandos 0/5/0, которому почти всегда проигрываю.

И как вы думаете что я должен сделать?
Записан

Romka

  • Jr. Member
  • **
  • Сообщений: 10
Re: Передача playerName для стратегий
« Ответ #2 : Декабря 14, 2016, 08:35:06 pm »

Моё мнение:

Лучше бы этой возможности не было, но то, что она есть, не столь страшно.

1. Не думаю, что это действительно поможет. Ребята из топ-10/20 друг другу вряд ли будут поддаваться, а рандомный призёр из топ-6, скорее всего, и без поддавков выиграет человека из нижней половины таблицы.
2. На мой взгляд, это скорее плюс, чем минус -- стратегически готовишь своего бота против конкретных людей, тратишь на это время и усилия. Так происходит абсолютно во всех видах спорта и, вроде бы, не так уж это и плохо.
3. Ну да :) Чтобы нельзя было так просто почивать на лаврах :)
4. Вот это плохо, я бы на месте администрации запретил.

Существенным недостатком вижу то, что решения в таком случае (добавление отдельной логики по нику) принимает не бот алгоритмически, а его автор, хотя соревнование всё-таки между ботами.
Записан

Spasitel

  • Jr. Member
  • **
  • Сообщений: 18
Re: Передача playerName для стратегий
« Ответ #3 : Декабря 14, 2016, 09:52:34 pm »

Возможность считывать PlayerName мотивирует не улучшать стратегию в общем, а хардкодить под конкретных соперников и играть в игру "кто последний переименуется/поменяет стратегию/добавит хардкод-антихардкод для конкретного противника" в последние минуты перед началом финала. По-моему это совсем не то, зачем создавался данный чемпионат.

Мое предложение - "декриминализировать" переименование перед финалом, честно и заранее предупредив, что многие участники это сделают. Таким образом никто не будет переживать за честность такого переименования, и у участников отпадет желание кого-то хардкодить.
Записан

Commandos

  • Jr. Member
  • **
  • Сообщений: 27
Re: Передача playerName для стратегий
« Ответ #4 : Декабря 14, 2016, 09:59:09 pm »

Мое предложение - "декриминализировать" переименование перед финалом, честно и заранее предупредив, что многие участники это сделают. Таким образом никто не будет переживать за честность такого переименования, и у участников отпадет желание кого-то хардкодить.

Ну или хотя бы предупредить, что переименовываться нельзя (например, приз не дадим, т.к. считаем это неспортивным)
Записан

DVS

  • Hero Member
  • *****
  • Сообщений: 688
Re: Передача playerName для стратегий
« Ответ #5 : Декабря 14, 2016, 10:07:29 pm »

я эту тему поднимал в позапрошлом году но был подвергнут обструкции со стороны некоторых участников..
Записан

lama

  • Full Member
  • ***
  • Сообщений: 84
Re: Передача playerName для стратегий
« Ответ #6 : Декабря 14, 2016, 10:58:25 pm »

По моим наблюдениям, в подобных дискуссиях обычно одна сторона утверждает, что что-то -- плохо, а вторая -- что не так уж это и страшно.
Т.е. фактически, спор идёт не между "плохо" и "хорошо", а между "плохо" и "не так уж и страшно".
Т.е. в данном случае, в том, что ничего хорошего в getPlayerName нет, насколько я понимаю, сходятся обе стороны.
Записан

DVS

  • Hero Member
  • *****
  • Сообщений: 688
Re: Передача playerName для стратегий
« Ответ #7 : Декабря 14, 2016, 11:05:28 pm »

По моим наблюдениям, в подобных дискуссиях обычно одна сторона утверждает, что что-то -- плохо, а вторая -- что не так уж это и страшно.
Т.е. фактически, спор идёт не между "плохо" и "хорошо", а между "плохо" и "не так уж и страшно".
Т.е. в данном случае, в том, что ничего хорошего в getPlayerName нет, насколько я понимаю, сходятся обе стороны.
в позапрошлом году были те кто говорили что это хорошо, может еще подключатся, тема недавно появилась :)
« Последнее редактирование: Декабря 14, 2016, 11:15:13 pm от DVS »
Записан

DVS

  • Hero Member
  • *****
  • Сообщений: 688
Re: Передача playerName для стратегий
« Ответ #8 : Декабря 14, 2016, 11:54:43 pm »

Возможность считывать PlayerName мотивирует не улучшать стратегию в общем, а хардкодить под конкретных соперников и играть в игру "кто последний переименуется/поменяет стратегию/добавит хардкод-антихардкод для конкретного противника" в последние минуты перед началом финала. По-моему это совсем не то, зачем создавался данный чемпионат.

Мое предложение - "декриминализировать" переименование перед финалом, честно и заранее предупредив, что многие участники это сделают. Таким образом никто не будет переживать за честность такого переименования, и у участников отпадет желание кого-то хардкодить.
раз есть такая возможность значит можно.

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

lama

  • Full Member
  • ***
  • Сообщений: 84
Re: Передача playerName для стратегий
« Ответ #9 : Декабря 15, 2016, 01:30:12 am »

if ( ![ "all", "players", "participating", "in", "the", "final" ].contains( your_opponent_name ) ) return "Commandos";
Пользуйтесь ;)
Записан

ilt

  • Jr. Member
  • **
  • Сообщений: 27
Re: Передача playerName для стратегий
« Ответ #10 : Декабря 15, 2016, 09:27:19 am »

Я тоже ЗА то чтобы убрать playerName. Или чтобы не ломать обратную совместимость - заменить на рандомный во время финала.

У меня стретегия 1/2/2 с адаптивным переходом в начале игры (по ситуации).
Точно знаю что у Commandos 0/5/0, которому почти всегда проигрываю.

И как вы думаете что я должен сделать?
Переделать на 1/3/1. Странно, что перед началом финала видеть, что кто-то лидеров не озаботился "приемом против лома" лидера. :)

Я тоже ЗА то чтобы убрать playerName в БУДУЩЕМ соревновании. Или по крайней мере на время проведения раундов/финала, отключать возможность получения этих данных.

Записан

Commandos

  • Jr. Member
  • **
  • Сообщений: 27
Re: Передача playerName для стратегий
« Ответ #11 : Декабря 15, 2016, 10:08:12 am »

Переделать на 1/3/1. Странно, что перед началом финала видеть, что кто-то лидеров не озаботился "приемом против лома" лидера. :)

Я тоже ЗА то чтобы убрать playerName в БУДУЩЕМ соревновании. Или по крайней мере на время проведения раундов/финала, отключать возможность получения этих данных.

Заботятся, да ещё как.
Записан

Adler

  • Jr. Member
  • **
  • Сообщений: 34
Re: Передача playerName для стратегий
« Ответ #12 : Декабря 15, 2016, 12:03:46 pm »

Палю метод:
0)Отсылаешь 3 версии своей стратегии.
1)Создаёшь со всеми игры с 3 разными версиями стратегии.
2)Выкладываешь финальную версию которая содержит в себе все 3 + std::map<t_playername,t_version> и нехитрую логику
3)...
4)profit
Записан

tyamgin

  • Sr. Member
  • ****
  • Сообщений: 181
Re: Передача playerName для стратегий
« Ответ #13 : Декабря 15, 2016, 01:13:23 pm »

Adler, что-то не вкурил в чем суть.

Есть ещё 1 метод:
1) За 30 минут до начала создаешь игры с ранними версиями топов.
2) Они смотрят WTF, и уходят в дебаг фиксить проблемы которых нет.
Это просто отвлечет на некоторое время и заставит попаниковать. :)
Записан

Commandos

  • Jr. Member
  • **
  • Сообщений: 27
Re: Передача playerName для стратегий
« Ответ #14 : Декабря 15, 2016, 01:19:39 pm »

Adler, что-то не вкурил в чем суть.

Adler предлагает запилить плохенькие 3 версии (за 1 неделю то одну проблема отполировать, если на работе загруз) и накостылить тех, кто лучше тебя (или равный, но если подправить "вот тут чуть чуть", то становится лучше). Только это ни разу не AIшный подход на мой взгляд.
Записан

SladeThe

  • Global Moderator
  • Sr. Member
  • *****
  • Сообщений: 187
Re: Передача playerName для стратегий
« Ответ #15 : Декабря 15, 2016, 01:46:20 pm »

Добавил пост на главной.
Записан

DVS

  • Hero Member
  • *****
  • Сообщений: 688
Re: Передача playerName для стратегий
« Ответ #16 : Декабря 17, 2016, 11:24:40 pm »

поиспользовал эту возможность в первой части финала, смог иногда выигрывать у более сильных стратегий..
Записан

DVS

  • Hero Member
  • *****
  • Сообщений: 688
Re: Передача playerName для стратегий
« Ответ #17 : Декабря 18, 2016, 12:04:44 pm »

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

удалил этот зловредный код, как то аморально такое использовать.
Записан

antmsu

  • Newbie
  • *
  • Сообщений: 5
Re: Передача playerName для стратегий
« Ответ #18 : Декабря 18, 2016, 01:24:00 pm »

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

удалил этот зловредный код, как то аморально такое использовать.

Я тоже в итоге не использую этот параметр)
Записан

DVS

  • Hero Member
  • *****
  • Сообщений: 688
Re: Передача playerName для стратегий
« Ответ #19 : Декабря 18, 2016, 03:33:43 pm »

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

удалил этот зловредный код, как то аморально такое использовать.

Я тоже в итоге не использую этот параметр)


это же не AI-тишно, я вот отключил его во второй части.

хотя мне всё равно без разницы 30 или 50 место :)
« Последнее редактирование: Декабря 18, 2016, 03:35:23 pm от DVS »
Записан

Commandos

  • Jr. Member
  • **
  • Сообщений: 27
Re: Передача playerName для стратегий
« Ответ #20 : Декабря 19, 2016, 10:09:43 am »

Я тоже в итоге не использую этот параметр)

Вы вдвоём меня заставили!)
Записан

DVS

  • Hero Member
  • *****
  • Сообщений: 688
Re: Передача playerName для стратегий
« Ответ #21 : Декабря 19, 2016, 10:33:53 am »

Моя страта для этого была слишком слаба, максимум это победить ud1.
Использование этого параметра есзмь кармический грех.
Истино вам говорю, покайтесь. :'(

Записан
Страницы: [1]