Выводы бета-тестера (SantiagoMunez)

Излагаем идеи и предложения и обсуждаем их
eXceibot
Сообщения: 41
Зарегистрирован: 19 июл 2010, 02:19
Имя героя: SantiagoMunez

Выводы бета-тестера (SantiagoMunez)

Сообщение eXceibot » 21 янв 2011, 01:58

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

В общем-то я играл некоторое время на стадии альфа-теста в эту игру. На момент завершения (когда мне надоело) я был 3 по темнице и лучшим чернокнижником. Затем я играл на стадии бета-теста, где к моменту завершения я достиг второго места в рейтинге оплота (рейнджером SantiagoMunez).
Если порыться на форуме то можно увидеть, что администрация сделала мне приблизительно -100000 денег за то, что я воспользовался косяком их программной реализации, что фактически эквивалентно бану. На самом же деле я бы мог вполне отыграться, но я и сам чувствую что игра на данной стадии являет собой "кач ради кача", но об этом подробнее чуть позже.
Как тестер этого проекта, я нахожу полезным сделать некоторые выводы о том, что же я увидел в этой игре, что мне понравилось, а что нет. Администрация может прочитать и может какое-то рациональное зерно из этого даже извлечь. Ну... Обо всем по порядку.

Интерфейс:
Случилось так, что я пришел в игру тогда, когда еще не было игровой карты. Первое что я увидел это web-клиент (кстати, тогда других не было). Очень хорошая разработка - кьют (QT) + WebKit приложение, неплохое быстродействие, приятный интерфейс. Понравилось и то, что интерфейс максимально приближен к тому, что мы видели в оригинале игры.

Искуственный интеллект:
Ну, после закупки армии, сразу же можно было приступить к поединку. Сейчас я опишу искусственный интеллект, который был при альфа-тестировании, а затем (на мой взгляд существенных изменений в нем не было сделано) шагнул в стадию бета-тестирования. Интеллект ориентирован на повышенное быстродействие, поэтому он по своей природе тупее, чем танчики из "Battle city" для "Nintendo64" (aka "Dendy"). Монстры на каждом своем полуходе действуют по вполне детерминированному алгоритму:
1) Если есть хотя бы один объект, который можно ударить за этот ход, то нужно ударить один из возможных объектов. Иначе шагать к ближайшей цели.
2) Если есть выбор кого бить, то бить того, кто потенциально наиболее опасен для атакующего юнита. Причем, оценочная функция вполне может быть просто уроном, который нанесет этот юнит по атакующему.
3) Если юнит - это мастер-джинн, то вне зависимости от ситуации, есть определенная постоянная вероятность, что он сколдует заклинание, причем вполне возможно, что на того, кто точно не доживет до следующего хода. Цель для заклинания выбирается опять же по схожему с выбором цели для атаки алгоритмом.
Периодически интеллект действительно тупил и, находясь на приличном расстоянии, просто не ходил или ходил на одну клетку в непонятном направлении. Бывали случаи, когда более чем на одну клетку, но направление по прежднему вызывало вопросы.
Очевидно, что пользователи способны приспособиться к такому "гению" и пользоваться его тупостью с помощью фиктивных юнитов - мяса. Причина очевидна - жадный алгоритм не очень-то подходит для написания искуственного интеллекта. Причем такое поведение даже не попадает под определение искусственного интеллекта, но я все же буду его так называть.
Решение такой поблемы очевидно, без существенной потери быстродействия можно реализовать brute-force алгоритм, который смотрит на несколько (в зависимости от количества юнитов на поле) шагов вперед и определяет оптимальный ход руководствуясь не только текущим положением. Где-то на форуме проблекснуло понятие "сила армии", а это означает, что какая-то оценочная функция для такого алгоритма уже имеется. Логично также ввести и какой-то элемент случайности для того, чтобы поведение не было детерминированным. Казалось бы просмотр хотя бы на два полухода вперед будет мало чем отличаться от жадного алгоритма, но это не так. Как минимум, многие существа уже проигнорируют мясные юниты (приманки), многие существа пробьют живой щит вокруг стрелков раньше, чем их успеют размазать.

Геймплей:
На стадии альфа-теста, когда не было карты, "Охота x2" была достаточно интересна и ни в какое сравнение не шла с одиночной охотой. Появление карты испортило эту радость и игра стала в разы скучнее. Затем ввели партии, но они скорее мешают процессу раскачки и просто превращают "Охоту x2" в две параллельные обычные охоты. Ходить в партии не выгодно и долго, но, правда, это способствует общению между двумя пользователями.
Отдельная история - это кланы. Такая структура на данный момент вообще бесполезна. Ну вот мы объеденились в клан. У нас есть общий чат и... ВСЁ?! Мы даже поделиться чем-то друг с другом не можем! Клан вообще ничем не может быть полезен. Да, кто-то там захватит замок, у кого-то там в далеком будующем будут какие-то плюшки, но у единиц!
Вообще вызывает удивление то, что нельзя ничем делиться с друзьями. Более того - это приследуется строгими администраторами. Это объясняется тем, что будет страшный "дядя дисбаланс", но это вполне нейтрализуется требованиями к уровням героя. Демпинг тоже зачем-то преследуют, не могу понять почему, но на нем останавливаться не буду.
Тропу, которую здесь нарекли "первым массовым ивентом" вряд ли можно назвать так. Просто тупой пробег по монстрам и приз, который вполне аналогичен тому, что можно выбить с монстров и сундуков.
В общем, это то, что я назвал в началии своего текста "кач ради кача". Просто тупое набивание уровня (~FACEPALM~).
Помимо всего прочего, имеет место некоторый дисбаланс, но о нем можно догадаться, если посмотреть рейтинги в игровом клиенте. Я думаю что это - дело поправимое, поэтому зацикливаться на этом не имеет смысла.

Графика:
Слава великим компаниям 3DO и New World Computing, которыми я восхищаюсь и по сей день. То, как интегрировали графику из оригинала в эту игру впринципе нравится и вряд ли здесь есть то, в чем можно упрекнуть разработчиков.

Наиболее ужасные баги:
Я много раз замечал этот баг, но я не сообщал о нем, так как видел, что товарищ bsL упоминал его на форуме. При стрельбе по наиболее удаленной клетке двухклеточного юнита (если она находится на расстоянии выстрела со штрафом, а ближайшая - нет) происходит выстрел со штрафом.
При однократном нажатии "защита", действие выполняется, бой продолжается, но на передний план выползает табличка "Сейчас ходит на этот юнит" / "Сейчас ходит не этот игрок" и тому подобное.
Иногда стрелки отказываются стрелять, а юниты атаковать. Причины "очевидны" - "Юнит не может совершить действие" / "Юнит не может стрелять" / "Юнит не найден".
При сдвиге карты (особенно на нейтральную территорию) происходит зависание героя - он просто отказывается двигаться.
В большинстве случаев спасает чудо-refresh, но этим багам действительно уже много месяцев и их за это время вполне можно было бы уже и пофиксить.

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

Аватара пользователя
Wolfson
Сообщения: 638
Зарегистрирован: 03 июн 2010, 22:34
Имя героя: Ричард
Откуда: г. Томск
Контактная информация:

Re: Выводы бета-тестера (SantiagoMunez)

Сообщение Wolfson » 21 янв 2011, 02:40

Ну, в общем мне понравилось. Только не совсем согласен про искусственный интеллект: он ведь и должен быть тупеньким :) Мы ведь не хотим сделать "кач на мобах" в "пвп со сложным противником" или Heroesland в специфические шахматы, где ни шагу шагнуть, не просчитав на 10 ходов вперед... Надо и отдыхать чуть-чуть...
Не понравилось еще кое-что:
Wikipedia писал(а):Полный перебор (или метод «грубой силы» от англ. brute force) — метод решения задачи путем перебора всех возможных вариантов.
Думаю, не совсем уместно тут употреблять этот термин.
Я все таки настаиваю, что с мобами все ок... Может за исключением кастов у джинов.

Хочу также заметить, что всей программной частью занимается один человек. Так что давайте проявим терпение и понимание. Пожалуйста :)
Ай дон вонт ту сет зэ ворлд он фааааайеееер!

Аватара пользователя
bsL
Сообщения: 1725
Зарегистрирован: 02 июн 2010, 22:40
Имя героя: bsL
Контактная информация:

Re: Выводы бета-тестера (SantiagoMunez)

Сообщение bsL » 21 янв 2011, 02:47

Про аи не всё - еще у него есть повышенный приоритет на атаку лучников и он выбирает их вместо гораздо более злого стека.И бежит в сторону лучников недобегая 2-3 клетки хотя если бы бежал в другую сторону то недобежал бы 1 клетку до примантки.Еще в бете мобы научились ждать.Вообще по сравнению с началом альфы до сейчас аи достаточно изменился в лучшую сторону.Но хотя что туп конечно спорить небуду.

По пункту геймплея - весь этот 'кач ради кача' нужен для пвп.Потомучто по большому счету партия в классике состоит из поединков с живым противником(или ботом его заменяющим) в бою и прокачки, добыча артов, отстройка - всё это прелюдия к битве.Тут ситуация аналогичная.Конечно кто занимается только уже неоднократно ранее упоминавшимся 'мободрочерством' теряет смысл дальнейшей игры =).Но радует что в бету сейчас набежало куча новичков с тойже гвд без комплексов в отношении пвп - там это также бОльшая часть геймплея.

eXceibot
Сообщения: 41
Зарегистрирован: 19 июл 2010, 02:19
Имя героя: SantiagoMunez

Re: Выводы бета-тестера (SantiagoMunez)

Сообщение eXceibot » 21 янв 2011, 03:10

Немного интерактива внесу...

Еще немного о brute force и АИ:
Все-таки "brute force" это не обязательно полный перебор всех возможных исходов. Это перебор всех элементов множества допустимых шагов. Мы можем сами задать это множество. Достаточно просматривать на несколько полушагов вперед. Я не даром написал про то, что глубину перебора можно ограничивать в зависимости от количества юнитов, а соответственно и количества возможных переходов между состояниями. То есть если на поле осталось 3 - 4 стека, то перебор будет точнее, чем если на поле много стеков.
Для программистов будет понятнее, если я скажу, что можно отсекать ветки дерева перебора, больше определенной длины, для чего на последнем состоянии ветки придется применить некоторую оценочную функцию.
Я не думаю, что монстры поумнеют в условиях требуемого быстродействия настолько, что будет играть намного сложнее. Это скорее просто отсечет тупейшие тактики. Я проверил, без них тоже можно играть и радоваться жизни. Не соглашусь с тем, что с монстрами все ок.

Немного о разработчиках:
Вообще я восхищаюсь программистом этого проекта, над ним работает больше идеологов, чем разработчиков. Будучи программистом, я и сам замечал, что иногда идеологи сами не понимают, чего хотят. Но все-таки наверное лучше поправить весомые баги перед тем, как делать что-то новое. Тем более, что это те же здания, в которых стоят те же монстры, охраняя те же плюшки.
Между тем, если я не ошибаюсь, то гражданин Wolfson подготовил скин для phpBB форума весьма приятного качества.
Вот попробую угадать, кто тут отвечает за программирование... RGCreator? Я раньше думал, что phdoc. В принципе, он мне кажется хорошим администратором (в плане модераторства и связи с общественностью). Но он сегодня столько раз продемонстрировал нелогичность в нашем с ним споре, что я не верю, что он - программист. Скорее всего его функционал - как раз идеология и администрирование форума и чата (может быть). Тех, кто был заметнее в разделе "Библиотека" сразу кидаем в идеологи, а Noe-Ren... Кто это... Я так и не понял. Я только заметил, что где phdoc, там и он. И мнения их на удивление совпадали. Я думаю, что тоже идеолог...
Хочу заметить, что в моем понимании карту в редакторе рисуют тоже идеологи, ведь каких-то технических навыков это не требует.
Я думаю, что не только мне, но и многим другим пользователям интересно, кто есть кто в команде разработчиков. Приоткроете завесу тайны?

Аватара пользователя
Wolfson
Сообщения: 638
Зарегистрирован: 03 июн 2010, 22:34
Имя героя: Ричард
Откуда: г. Томск
Контактная информация:

Re: Выводы бета-тестера (SantiagoMunez)

Сообщение Wolfson » 21 янв 2011, 03:20

Самый главный - phdoc :) Если и откроет, то только он. Могу лишь сказать, что вы во многом ошиблись... во многом.
Далее: то есть предлагается вместо "жадного" алгоритма использовать метод ветвей и границ? То есть при просчете глубиной примерно 4-5 ходов подразумевается, что АИ будет ходит безошибочно?
И как вы проверили, что без этих тупых тактик игра не станет сильно тяжелой? Просто интересно...
Ай дон вонт ту сет зэ ворлд он фааааайеееер!

eXceibot
Сообщения: 41
Зарегистрирован: 19 июл 2010, 02:19
Имя героя: SantiagoMunez

Re: Выводы бета-тестера (SantiagoMunez)

Сообщение eXceibot » 21 янв 2011, 03:34

Еще немного о брут-форсе:
Альфа-бета поиск (он же метод ветвей и границ) позволит избежать некоторых ситуаций, которые я уже подробнее описал еще в первом сообщении. Перечитайте повнимательнее. А почему он не даст идеальной тактики вполне логично, тут даже думать долго не надо. На какой-то глубине дерева перебора придется применить жадную оценку, а ее ничтожность можно доказать не только теоретически, но и практически (что было сделано за долгое время теста). Очевидно, что нельзя учесть всех тактических ухищрений. Сложно предугадать воздействие магии, морали и удачи.
Доказать, что смотреть альфа-бета поиском выгоднее чем сразу же жадным тоже просто. Если ввести понятия полезности хода, то сделав подряд два хода с полезностями P1 и P2 соответственно мы получим полезность P1 + P2. У нас есть некоторая оценочная функция, которая определяет эту полезность хода и, согласно ей, выбирает что же делать дальше. Жадный алгоритм выберет некоторую полезность P1, которая будет предпочтительнее полезности P3. Однако, на следующем ходу наибольшей полезностью будет P2, которая не так велика. В то время как при выборе P3, которая меньше P1 (возможно даже намного) далее будет возможен ход полезности P4, такой что P1 + P2 << P3 + P4. Однако жадный алгоритм выберет P1 + P2. Очевидно, что задача оптимального выбора NP-полная и можно лишь как-то оптимизировать свой выбор. Для этого можно воспользоваться "Теорией принятия решений", некоторые выкладки из нее, я даже постарался на языке "попроще" осветить.

Аватара пользователя
Мартовский_котя
Сообщения: 11030
Зарегистрирован: 06 сен 2010, 23:46
Имя героя: Мартовский_котя
Откуда: Томск

Re: Выводы бета-тестера (SantiagoMunez)

Сообщение Мартовский_котя » 21 янв 2011, 09:57

можно я ляпну...
если это не сильно сложно реализовать чтоб мобы просматривали на 1 или 2 или 3 и т.д. ходов вперед
то может быть ввести коэффициент который будет герой сам себе ставить.
т.е. например по умолчанию у всех стоит что мобы думают на 1 ход вперед и за кавалерию я получаю 4к с копейками и 2 птицы. а если я себе повышаю уровень до 2х ходов то к примеру получу 4к опыта и 4 птицы и шанс дропа больше и т.д.
возможно многим это будет интересней.

Аватара пользователя
Wolfson
Сообщения: 638
Зарегистрирован: 03 июн 2010, 22:34
Имя героя: Ричард
Откуда: г. Томск
Контактная информация:

Re: Выводы бета-тестера (SantiagoMunez)

Сообщение Wolfson » 21 янв 2011, 12:20

Интересная идейка. Подождем, что скажет по этому поводу phdoc.
Ай дон вонт ту сет зэ ворлд он фааааайеееер!

Аватара пользователя
Мартовский_котя
Сообщения: 11030
Зарегистрирован: 06 сен 2010, 23:46
Имя героя: Мартовский_котя
Откуда: Томск

Re: Выводы бета-тестера (SantiagoMunez)

Сообщение Мартовский_котя » 21 янв 2011, 12:33

кстати исходя из этого можно и снизить самим... тем кому сложно...

Аватара пользователя
Wolfson
Сообщения: 638
Зарегистрирован: 03 июн 2010, 22:34
Имя героя: Ричард
Откуда: г. Томск
Контактная информация:

Re: Выводы бета-тестера (SantiagoMunez)

Сообщение Wolfson » 21 янв 2011, 12:38

ММОРПГ с настраиваемой сложностью... Это что-то новенькое :)
Ай дон вонт ту сет зэ ворлд он фааааайеееер!

Ответить