|
|
Результаты опроса: Хотите ли вы принять участие в турнире AOS AI (в первом посте почти вся инфа) | |||
Да (устраивают условия) | 26 | 52.00% | |
Условия не устраивают (хочу другой турнир AI, например по другому жанру и тд.) | 12 | 24.00% | |
Вообще не хочу туринир AI | 12 | 24.00% | |
Голосовавшие: 50. Вы еще не голосовали в этом опросе |
|
Alex_Hell
Mapmaker 'N' Programmer
offline
Опыт:
6,885Активность: |
Еще часик погодите, почти все)) |
21.07.2010, 20:08 | #381
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
AlexKARASb
Learning cpp
offline
Опыт:
22,103Активность: |
Alex_Hell, выкладывай. Сам начну через пару дней. |
21.07.2010, 20:10 | #382
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ZERO_01
offline
Опыт:
4,167Активность: |
А я через 4 =) В понедельник приезжаю!! наконец-то |
21.07.2010, 20:36 | #383
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Alex_Hell
Mapmaker 'N' Programmer
offline
Опыт:
6,885Активность: |
Вощем опять не успеваю, завтра карту выложу)) |
21.07.2010, 21:18 | #384
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ZERO_01
offline
Опыт:
4,167Активность: |
|
21.07.2010, 21:23 | #385
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ZERO_01
offline
Опыт:
4,167Активность: |
Alex_Hell, карта готова? |
25.07.2010, 15:52 | #386
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
PlayerDark
Coraline
offline
Опыт:
10,569Активность: |
Надеюсь я ничего не пропустил? Если так, то я только за. У меня как раз есть несколько готовых наработок по части АИ. Правда, с представленными правилами АИ получается весьма сложным.
PlayerDark добавил: Да, если там только этот ваш си жасс, то я пас. |
25.07.2010, 17:01 | #387
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Alex_Hell
Mapmaker 'N' Programmer
offline
Опыт:
6,885Активность: |
ZERO_01, не до конца)) 2 дня убивал вирусы - лечил винду)) седня вот тока сел доделывать.. спешу до завтра доделать..
PlayerDark, все создается на GUI или JASS, ниче замороченного нету, только есть некоторые правила создания AI, типа отдельно проверять что юнит = иллюзия нельзя, проверять характеристики (здоровье, ману и тд.) толко у видимых юнитов и тд. все правила подробно будут в начале турира выложены |
25.07.2010, 19:45 | #388
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
PlayerDark
Coraline
offline
Опыт:
10,569Активность: |
Alex_Hell, все это очень сложно будет. Кто будет проверять код ? Лучше сделать какие нибудь общедоступные функции, или, просто, некоторые запретить совсем, некоторые разрешить без ограничений.
PlayerDark добавил: PS Код сам писал или откуда позаимствовал ? |
25.07.2010, 21:10 | #389
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Alex_Hell
Mapmaker 'N' Programmer
offline
Опыт:
6,885Активность: |
PlayerDark, так и есть: много функций запрещено вообще, некоторые доступны без ограничений, но вот некоторые с ограничениями, но и обойти такое невозможно - ведь в редакторе изначально разрешено делать все что можно, и для разработки AI естественно разрешено близами применять любые JASS-функции включая проверки здоровья и маны невидимых юнитов, отдачи приказов на невидимую цель и тд.. я решил самым простым путем: написал в DOC-файле какие действия и в каком случаем можно применять разработчику AI.. когда все будет сделано - пороверять буду я, ну и если помогут - еще люди.. да это не на долго, но всеже код просмотреть хотябы нужно будет...
Другие варианты предлагай? Можно конечно сделать список общедоступных функций на JASS, куда уже встроены все проверки и тд, я такое предлагал в самом начале - что-то типа интерфейса - но многие отказались - это по их мнению сложнее, хотя ограничения как были так и останутся - никуда от них не уйти, разрешать делать нужно только то, что может делать человек в плане проверок, вот человек когда играет он смотрит всех юнитов вокруг себя и он не видит невидимок - так и AI не должен их видеть, когда человек применяет способность например Молот Бурь на героя врага, но враг убежал на базу, твой герой остановится, так и AI должен останавливаться (но это будет встроено в геймплей)..
Я сам не просто так эти ограничения придумываю, я начал создавать простенький AI, и тутже по ходу разработки дошло, что вот такое нужно запретить, а вот в данном случае нужно проверять так-то и так-то.. Вообще это не на много усложняет разработку, зато вот у каждого есть список того, что он может делать и что не может, чтобы было честное соревнование..
Код писал сам с нуля
Ладно, смотрите:
Одно из правил разработки AI:
Вот пример, как это может реализовать разработчик AI:
Это была часть AI - примера, который будет всем доступен в карте-основе...
Ну так вот разьве это на много осложнило разработку AI? Я думаю - нет... Тут присутствует функция GamePlay_IsVisible - она общедоступная и служит для определения видимости юнита для конкретного игрока.. Так вот можно конечно сократить и вышеприведенный какрас до нескольких общих функций, типа:
Как вам такое предложение? Я могу создать набор таких общедоступных функций, чтобы разработчикам было легче делать AI, так они больше будут контролироваться - вызывайте такие-то функции и получите такой-то список юнитов, а потом с ними делайте другие действия, но все-равно с этой группой к примеру даже видимых вражеских юнитов можно делать не все, что угодно, а например нельзя проверять изученные способности у вражеского героя, но можно смотреть его здоровье, силу, ловкость и тд. Отредактировано Alex_Hell, 25.07.2010 в 22:58. |
25.07.2010, 22:13 | #390
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
bee
vjass.optimizer
offline
Опыт:
16,615Активность: |
Alex_Hell, эти все запреты НЕ НУЖНЫ. С ними неинтересно...
|
25.07.2010, 22:33 | #391
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Alex_Hell
Mapmaker 'N' Programmer
offline
Опыт:
6,885Активность: |
bee, а как такой пример: играют 2 команды в доту 5х5, в первой все честные, а во 2й - все с MapHack-ом... так те что видят невидимок и изученные способности и их перезарядку будут выигрывать, тоже и у нас, нельзя все делать доступным, иначе даже тупой AI может видеть на всю карту и догонять того у кого мало здоровья до самой базы, а как вражеский герой применяет способность на крипов где-то в лесу, взять и на него напасть - зная что перезарядка еще идет.. вот это круто? |
25.07.2010, 23:12 | #392
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
PlayerDark
Coraline
offline
Опыт:
10,569Активность: |
Alex_Hell, насчет интерфейсных функций - тот кто водит правила, должен заботиться об их исполнении. Я разве должен контролировать - видна цель или нет ? Если у меня есть идентификатор цели, то я могу запросто получить ее координаты, этого не отнимешь. Напиши фреймворк, например функция GetVisibleUnits - возвращает всех видимых для игрока и его союзников юнитовю. Или, например, GetUnitPositionVisible - возвращает координаты цели, если цель невидима, то возвращает, допустим, ноль. Мне непонятно, почему я должен заботиться об соблюдении всех этих ограничений ? Зачем мне усложнять свой код лишними проверками ? |
25.07.2010, 23:42 | #393
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Alex_Hell
Mapmaker 'N' Programmer
offline
Опыт:
6,885Активность: |
PlayerDark, Ну вот допустим будет у тебя функция GetVisibleUnits() которая вернет группу видимых юнитов, че ты будеш с ними делать? все-равно ты с ними не все должен уметь делать, не должен давать приказы им, не должен отнимать здоровье и тд., но можеш использовать в качестве цели... хотя этот же список видимых юнитов ты можеш получить кучей других способов, например: получить всех юнитов на карте (или вокруг героя, по ситуации), а потом для каждого примениш функцию IsVisible() которая вернет True или False - видим он или нет, и получиш тоже самое.. 1 лишняя проверка с тебя, в другом случае эта же проверка будет выполняться в моем коде а не твоем - я такое предлагал, но не знаю понравится ли другим.. все хотят по-стандарту, хотя в любом случае проверять кто-то должен..
На счет лишних проверок: 1 случай: сначала проверяеш юнит видимый, если да получаеш его X,Y - координаты 2 случай: вызываеш GetUnitPositionVisible() и всеравно тут же в моем коде проверится видим он или нет, а ты опять же провериш 0 тебе вернула функция или не 0, одно и тоже! Хотя в любом случае идентификатор юнита у тебя если есть - формально с помощью JASS можеш отдать приказ на юнита даже если он не видим, так что по нашим правилам всеравно ты обязан проверить что юнит видим, а уже потом отдавать приказ на него... Но вот когда юнит станет невидимым - приказ сбрасывается - это уже заложено в геймплей, хотя тоже самое могу сделать и с отдачей приказа на невидимку, чтобы типа вызвал: GamePlay_TargetOrder(Unit, Target) и внутри проверится видимость - если не видима цель приказ не будет отдан... но вот беда, всеравно твой AI будет проверять видим юнит или нет, чтобы не тупить.. вот он вызвал функцию GamePlay_TargetOrder() на юнита, вернула она FALSE - не может отдать приказ, ты пытаешся на другого отдать приказ.. в результате всеравно ты просмотриш всех юнитов и провериш их видимость только другим способом.. Всем: Ну так что, создавать мне набор JASS-функций, которые будут гарантировать вам соблюдение правил: отдачу приказа только на видимых, получение списка только видимых юнитов врага, и тд.? Отредактировано Alex_Hell, 26.07.2010 в 00:21. |
26.07.2010, 00:11 | #394
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
bee
vjass.optimizer
offline
Опыт:
16,615Активность: |
Alex_Hell, извини, но это конченый бред, так как конкурс является возможностью продемонстрировать свои навыки кодинга. Ты ограничиваешь функции программиста из-за какой-то тревоги того что в карту будут играть с мх. Я кстате уверен что ты потом сделаешь аос с ии. Так как за такой короткий срок нельзя сделать столько всего на карте. Нет, конечно можно, но это выглядит так: хм.. вот сделал героев, надо бы ии. ой я не умею ии же делать, дай как конкурс замучу, замутил я знатит конкурс теперь удаляем все с карты (что может напомнить о признаках готовой карты) и оставляем только скрипт который отвечает за аосовые шнажги. убери запрет.
bee добавил: полный идиотизм также про ты там говорил что будет какая то специальная сравнивание.. типо какието специальные переменные.. короче уныло, вполне. желания нет, участников пару человек будет bee добавил: лучше сделать карту 32x32 и сделать простую 1 линию. убрать запрет и это будет намного интереснее, чем то что сделал ты. ^ imo |
26.07.2010, 00:22 | #395
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Alex_Hell
Mapmaker 'N' Programmer
offline
Опыт:
6,885Активность: |
bee, в карту будт играть с MapHack - ты не понял о чем я.. я сравнил что если AI будет видеть все на карте и сможет делать все что разрешает JASS-язык - получится полный бред, правила нужны в любом случае..
Что значит "за такой короткий срок нельзя сделать столько всего на карте"? Я делаю ее уже целый месяц, а та версия которая в первом посту Preview.w3x сделана примерно за неделю.. ты думаеш что если ты не можеш за неделю столько сделать, значит другие тоже не могут?)) я программист по профессии и писал и не такое за короткие сроки)) Ты предлагаеш чтобы разрешить все триги, чтобы AI мог делать все че разрешено JASS? Или я не понял? По твоим словам пока что думаю что ты в разрабокте AI полный NULL Отредактировано Alex_Hell, 26.07.2010 в 00:35. |
26.07.2010, 00:25 | #396
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
AlexKARASb
Learning cpp
offline
Опыт:
22,103Активность: |
Сообщаю об отказе о своем участии. Хелл не обижайся, но из-за работы, и разработкой 3ех проектов - успевать не смогу |
26.07.2010, 00:27 | #397
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
bee
vjass.optimizer
offline
Опыт:
16,615Активность: |
ты чо дурак чтоле. думаешь что если в конкурсе будут разрешены все jass функции из common.j то ии станет супер крутым? и будет гангать нубов? а ты не думал что программист сам может решить и сделать свои ограничения?
|
26.07.2010, 00:28 | #398
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Alex_Hell
Mapmaker 'N' Programmer
offline
Опыт:
6,885Активность: |
bee, может но не будет обязан, а следовательно он сможет сделать все че разрешено JASS... нафига придумывать свои ограничения если я уже даю тебе полный список че можно делать - тебе же легче, всеравно ты придумаеш 100% все что я напишу сдесь, а если что-то не учтеш - это уже твои проблемы - твой AI будет хакерский, если например забудеш что нельзя было проверять позицию невидимого вражеского героя у которого недавно было 10 ХП, и побежиш за ним |
26.07.2010, 00:29 | #399
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
bee
vjass.optimizer
offline
Опыт:
16,615Активность: |
ты не думаешь что если программист сделает читерский ии - это скажеться на решение жюри?
ладно, может быть и есть шанс на что-то нормальное |
26.07.2010, 00:30 | #400
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|